Compare commits
267 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ea4d7f9737 | ||
|
|
bd866de601 | ||
|
|
4d49fa47fa | ||
|
|
70c1b39337 | ||
|
|
bc4e4890c6 | ||
|
|
589b6bc92a | ||
|
|
ad3f0ff143 | ||
|
|
8ffb519ec6 | ||
|
|
4eed59213e | ||
|
|
f6c674683c | ||
|
|
8459f5dd43 | ||
|
|
0427eab5c6 | ||
|
|
9d119889d1 | ||
|
|
44c7cc19b8 | ||
|
|
dbb9fa9b6f | ||
|
|
7b1902a8b0 | ||
|
|
b880e93416 | ||
|
|
6832b8ff31 | ||
|
|
315bcaab30 | ||
|
|
1b6eb4829c | ||
|
|
9cb1ebf0c1 | ||
|
|
d51517d548 | ||
|
|
fde3be923c | ||
|
|
bed585d1ea | ||
|
|
ba6a3cd4a4 | ||
|
|
4d369cbeb2 | ||
|
|
8cccaceda8 | ||
|
|
db5aac4d51 | ||
|
|
9910e38534 | ||
|
|
2ca3174436 | ||
|
|
241bd7277d | ||
|
|
dee909d23f | ||
|
|
1acfc90c98 | ||
|
|
948c30ee63 | ||
|
|
3949f87465 | ||
|
|
26f6a01580 | ||
|
|
1efdce0358 | ||
|
|
e80df6ae8e | ||
|
|
607d73f872 | ||
|
|
a737180146 | ||
|
|
f048c692f1 | ||
|
|
3980253155 | ||
|
|
40ad95c98c | ||
|
|
ab36c6b189 | ||
|
|
e375bf460b | ||
|
|
fb803563b7 | ||
|
|
693ae0cf84 | ||
|
|
754ec97141 | ||
|
|
de3a9955d0 | ||
|
|
58bb93fd59 | ||
|
|
47b4e2d339 | ||
|
|
47798e7364 | ||
|
|
a37ae35b29 | ||
|
|
a4ab459e5a | ||
|
|
a2539bc50d | ||
|
|
cdb07d9960 | ||
|
|
866d9c71bc | ||
|
|
a7cc30e2c7 | ||
|
|
7a952eddbe | ||
|
|
befad1d00f | ||
|
|
836b8b9406 | ||
|
|
7d90871a36 | ||
|
|
55ef341194 | ||
|
|
90320ddaed | ||
|
|
347a543d9e | ||
|
|
6daf1a3dd5 | ||
|
|
a1cdf3be27 | ||
|
|
6d3cb7b41e | ||
|
|
b4d123d916 | ||
|
|
672f285218 | ||
|
|
f11b06ff6a | ||
|
|
f9595543ca | ||
|
|
9aa335aca3 | ||
|
|
05aed133c7 | ||
|
|
b9ea4f07e4 | ||
|
|
8b5bd34a65 | ||
|
|
72090f39ce | ||
|
|
de61dadaa9 | ||
|
|
d52a66642d | ||
|
|
d92d807e1d | ||
|
|
60f85dbc37 | ||
|
|
dbba489fcf | ||
|
|
dd70d0ad85 | ||
|
|
a8c5f8a10b | ||
|
|
ef258b1686 | ||
|
|
3265e56294 | ||
|
|
5e7f9cc22c | ||
|
|
f3b8ff0e17 | ||
|
|
c3d134793f | ||
|
|
59c356ad39 | ||
|
|
2514cf3c5c | ||
|
|
1eb20db8db | ||
|
|
32ead3aba6 | ||
|
|
cae0b46e38 | ||
|
|
4f8a2c2999 | ||
|
|
9932f4ea50 | ||
|
|
0a5a06c431 | ||
|
|
d570120e17 | ||
|
|
abbbeb752a | ||
|
|
9afe3d77e6 | ||
|
|
6362e29ad7 | ||
|
|
bc0501e96f | ||
|
|
7e6f00c85a | ||
|
|
bf07420916 | ||
|
|
21b196d5c4 | ||
|
|
26b7500f3b | ||
|
|
9a203b2b2c | ||
|
|
c3eae71778 | ||
|
|
b1d3b9544e | ||
|
|
45c866cbd1 | ||
|
|
f8f57ab46f | ||
|
|
ef48195ffa | ||
|
|
967c2ed56c | ||
|
|
037bd14ed8 | ||
|
|
8eb53fa1a0 | ||
|
|
4b14a84510 | ||
|
|
4e1b0eda94 | ||
|
|
bf727cb26a | ||
|
|
e609c936a4 | ||
|
|
59ce9b4d2f | ||
|
|
ceee558fe5 | ||
|
|
2bc7e5a8e2 | ||
|
|
8d1d271cda | ||
|
|
c454cc09b3 | ||
|
|
4a9dbfbe65 | ||
|
|
da31bb7e66 | ||
|
|
9623c6bfd2 | ||
|
|
f138d2645c | ||
|
|
747d429fb3 | ||
|
|
910d87d5c5 | ||
|
|
6d59c9e9d5 | ||
|
|
cc638cb825 | ||
|
|
0f45d014a0 | ||
|
|
5108cf6c58 | ||
|
|
503e6c9876 | ||
|
|
abbe0a4a0a | ||
|
|
e85e585f3e | ||
|
|
b98ad2036a | ||
|
|
de194454b6 | ||
|
|
73c4b2673b | ||
|
|
7c185bc75e | ||
|
|
6c658cb0f5 | ||
|
|
fd84cfa196 | ||
|
|
066a20c696 | ||
|
|
5b2f316cda | ||
|
|
1c0c2b7345 | ||
|
|
561ce3ee7f | ||
|
|
0be22efffc | ||
|
|
4f8b2aa003 | ||
|
|
57f01188c2 | ||
|
|
bcb6174bf3 | ||
|
|
7b56a630aa | ||
|
|
4e5be077ff | ||
|
|
7aaaa2c5f5 | ||
|
|
c9c208f78e | ||
|
|
522069d146 | ||
|
|
e379c818b3 | ||
|
|
eb5ae95c90 | ||
|
|
e8965d32d9 | ||
|
|
790b4f3076 | ||
|
|
4f0f113887 | ||
|
|
53ce868185 | ||
|
|
144ed59aef | ||
|
|
40f7d085f4 | ||
|
|
1f34264017 | ||
|
|
fa57e33dfe | ||
|
|
dee9d6dfd4 | ||
|
|
961cda50bc | ||
|
|
fe43c2d18f | ||
|
|
59406363bb | ||
|
|
cbc1d0c893 | ||
|
|
3d0c109d82 | ||
|
|
e0594d6cac | ||
|
|
51cb9e71e5 | ||
|
|
27630d255c | ||
|
|
d04423251b | ||
|
|
9e5ab59eab | ||
|
|
898c61d457 | ||
|
|
ec8abd072d | ||
|
|
0f962aaf03 | ||
|
|
eeb6e9d417 | ||
|
|
0434cc017b | ||
|
|
5905fdb26e | ||
|
|
4ffe7131cb | ||
|
|
aadc7beccc | ||
|
|
9d233bb7d4 | ||
|
|
5c6b43832c | ||
|
|
5cbbb0d17b | ||
|
|
19b3f777c4 | ||
|
|
24ddedad38 | ||
|
|
30313bb396 | ||
|
|
35aff633bd | ||
|
|
c6312a8ebf | ||
|
|
3976f2deed | ||
|
|
a7cb2d8d00 | ||
|
|
7021468ee3 | ||
|
|
d6a4b67df7 | ||
|
|
0b51290a1e | ||
|
|
3a6b811559 | ||
|
|
d02aae7a9c | ||
|
|
78285207ce | ||
|
|
300391465a | ||
|
|
306d80be49 | ||
|
|
5af537026f | ||
|
|
a8a838c24c | ||
|
|
4cfcbcfbaa | ||
|
|
34606b7cbd | ||
|
|
f0f87ee0dc | ||
|
|
9acb8f7d2c | ||
|
|
fb23ee6add | ||
|
|
1d039c86cb | ||
|
|
7c7f747ad8 | ||
|
|
6ad10ffb54 | ||
|
|
5210515f24 | ||
|
|
403ff8badd | ||
|
|
bd80ec7cff | ||
|
|
935debbf6f | ||
|
|
4eac2163f5 | ||
|
|
150341ba29 | ||
|
|
183df5c981 | ||
|
|
7fb12afc4f | ||
|
|
92f966821e | ||
|
|
903bd3d750 | ||
|
|
edbae9ad6c | ||
|
|
a931a18d05 | ||
|
|
b36b1a8cf9 | ||
|
|
b8af503ff5 | ||
|
|
766b9895bf | ||
|
|
2b78c22349 | ||
|
|
4bcc3a4f3f | ||
|
|
d5b8829fb4 | ||
|
|
872d1f1396 | ||
|
|
1e905dea20 | ||
|
|
cedc5c4de8 | ||
|
|
13b1e585da | ||
|
|
6dcc7f93c3 | ||
|
|
9496990f53 | ||
|
|
d700db0e7d | ||
|
|
ae0b641768 | ||
|
|
eff2376871 | ||
|
|
3fae244f54 | ||
|
|
d77d0c9a5f | ||
|
|
0b6e84f4cf | ||
|
|
14692bf2e4 | ||
|
|
1f8bd4a8d7 | ||
|
|
10d5fc46f9 | ||
|
|
28aeedc4e7 | ||
|
|
5802f61e42 | ||
|
|
4e51cd1a03 | ||
|
|
70117d3b82 | ||
|
|
4d3b14af6f | ||
|
|
da55c7c69f | ||
|
|
2c93c3b9cb | ||
|
|
ea484bc9a6 | ||
|
|
8e6522acef | ||
|
|
3a3fb37dfe | ||
|
|
2272de80e2 | ||
|
|
38b506ecd6 | ||
|
|
df96bcf75c | ||
|
|
63f6ae30e2 | ||
|
|
87def2fd9e | ||
|
|
6c93f02ff9 | ||
|
|
78c60cc896 | ||
|
|
463537d0ec | ||
|
|
f2ed31a2de | ||
|
|
952f9e9793 | ||
|
|
1c0338dc36 |
4
.github/workflows/ci-build.yml
vendored
4
.github/workflows/ci-build.yml
vendored
@@ -94,7 +94,7 @@ jobs:
|
|||||||
- name: Test
|
- name: Test
|
||||||
run: |
|
run: |
|
||||||
cd build
|
cd build
|
||||||
ctest -j $(nproc)
|
ctest -j $(nproc) --timeout 120
|
||||||
|
|
||||||
macos:
|
macos:
|
||||||
name: Mac OS
|
name: Mac OS
|
||||||
@@ -175,5 +175,5 @@ jobs:
|
|||||||
- name: Test
|
- name: Test
|
||||||
run: |
|
run: |
|
||||||
cd build
|
cd build
|
||||||
ctest -j $(sysctl -n hw.logicalcpu)
|
ctest -j $(sysctl -n hw.logicalcpu) --timeout 120
|
||||||
|
|
||||||
|
|||||||
4
.github/workflows/release.yml
vendored
4
.github/workflows/release.yml
vendored
@@ -96,7 +96,7 @@ jobs:
|
|||||||
TZ='UTC' date +"%Y-%m-%d %H:%M UTC" > .release_date
|
TZ='UTC' date +"%Y-%m-%d %H:%M UTC" > .release_date
|
||||||
cat .ottdrev | cut -f 1 -d$'\t' > .version
|
cat .ottdrev | cut -f 1 -d$'\t' > .version
|
||||||
|
|
||||||
if [ $(cat .ottdrev | cut -f 6 -d$'\t') = '1' ]; then
|
if [ $(cat .ottdrev | cut -f 5 -d$'\t') = '1' ]; then
|
||||||
# Assume that all tags are always releases. Why else make a tag?
|
# Assume that all tags are always releases. Why else make a tag?
|
||||||
IS_TAG="true"
|
IS_TAG="true"
|
||||||
|
|
||||||
@@ -379,6 +379,8 @@ jobs:
|
|||||||
bundle_name: "groovy"
|
bundle_name: "groovy"
|
||||||
- container_image: "debian:buster"
|
- container_image: "debian:buster"
|
||||||
bundle_name: "buster"
|
bundle_name: "buster"
|
||||||
|
- container_image: "debian:bullseye"
|
||||||
|
bundle_name: "bullseye"
|
||||||
|
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
container:
|
container:
|
||||||
|
|||||||
2
.ottdrev
2
.ottdrev
@@ -1 +1 @@
|
|||||||
1.11.0-beta2 20210228 0 f30f4b68921544099e7278c0a9c57b9658a45a50 1 1 2021
|
1.11.2 20210503 0 672f285218c6817784d86f737987b75db4bc78fc 1 1 2021
|
||||||
|
|||||||
@@ -4,10 +4,12 @@ if(NOT BINARY_NAME)
|
|||||||
set(BINARY_NAME openttd)
|
set(BINARY_NAME openttd)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
project(${BINARY_NAME})
|
project(${BINARY_NAME}
|
||||||
|
VERSION 1.11.2
|
||||||
|
)
|
||||||
|
|
||||||
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR)
|
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR)
|
||||||
message(FATAL_ERROR "In-source builds not allowed. Please run \"cmake ..\" from the bin directory")
|
message(FATAL_ERROR "In-source builds not allowed. Please run \"cmake ..\" from the build directory. You may need to delete \"${CMAKE_SOURCE_DIR}/CMakeCache.txt\" first.")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Debug mode by default.
|
# Debug mode by default.
|
||||||
@@ -72,6 +74,9 @@ add_custom_target(find_version
|
|||||||
${CMAKE_COMMAND}
|
${CMAKE_COMMAND}
|
||||||
-DFIND_VERSION_BINARY_DIR=${CMAKE_BINARY_DIR}/generated
|
-DFIND_VERSION_BINARY_DIR=${CMAKE_BINARY_DIR}/generated
|
||||||
-DCPACK_BINARY_DIR=${CMAKE_BINARY_DIR}
|
-DCPACK_BINARY_DIR=${CMAKE_BINARY_DIR}
|
||||||
|
-DREV_MAJOR=${PROJECT_VERSION_MAJOR}
|
||||||
|
-DREV_MINOR=${PROJECT_VERSION_MINOR}
|
||||||
|
-DREV_BUILD=${PROJECT_VERSION_PATCH}
|
||||||
$<$<BOOL:ANDROID>:-DANDROID=TRUE>
|
$<$<BOOL:ANDROID>:-DANDROID=TRUE>
|
||||||
-P "${CMAKE_SOURCE_DIR}/cmake/scripts/FindVersion.cmake"
|
-P "${CMAKE_SOURCE_DIR}/cmake/scripts/FindVersion.cmake"
|
||||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||||
@@ -233,6 +238,7 @@ if(MSVC)
|
|||||||
target_sources(openttd PRIVATE "${CMAKE_SOURCE_DIR}/os/windows/openttd.manifest")
|
target_sources(openttd PRIVATE "${CMAKE_SOURCE_DIR}/os/windows/openttd.manifest")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
add_subdirectory(${CMAKE_SOURCE_DIR}/bin)
|
||||||
add_subdirectory(${CMAKE_SOURCE_DIR}/src)
|
add_subdirectory(${CMAKE_SOURCE_DIR}/src)
|
||||||
add_subdirectory(${CMAKE_SOURCE_DIR}/media)
|
add_subdirectory(${CMAKE_SOURCE_DIR}/media)
|
||||||
|
|
||||||
@@ -253,7 +259,7 @@ if(IPO_FOUND)
|
|||||||
set_target_properties(openttd PROPERTIES INTERPROCEDURAL_OPTIMIZATION_MINSIZEREL True)
|
set_target_properties(openttd PROPERTIES INTERPROCEDURAL_OPTIMIZATION_MINSIZEREL True)
|
||||||
set_target_properties(openttd PROPERTIES INTERPROCEDURAL_OPTIMIZATION_RELWITHDEBINFO True)
|
set_target_properties(openttd PROPERTIES INTERPROCEDURAL_OPTIMIZATION_RELWITHDEBINFO True)
|
||||||
endif()
|
endif()
|
||||||
set_target_properties(openttd PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/bin")
|
set_target_properties(openttd PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_BINARY_DIR}")
|
||||||
process_compile_flags()
|
process_compile_flags()
|
||||||
|
|
||||||
include(LinkPackage)
|
include(LinkPackage)
|
||||||
@@ -291,6 +297,11 @@ if(ANDROID)
|
|||||||
# A bug in Android NDK r22: https://github.com/android/ndk/issues/1418
|
# A bug in Android NDK r22: https://github.com/android/ndk/issues/1418
|
||||||
if(ANDROID_ABI STREQUAL "armeabi-v7a" OR ANDROID_ABI STREQUAL "x86")
|
if(ANDROID_ABI STREQUAL "armeabi-v7a" OR ANDROID_ABI STREQUAL "x86")
|
||||||
set_source_files_properties(${CMAKE_SOURCE_DIR}/src/settings.cpp PROPERTIES COMPILE_FLAGS "-O0")
|
set_source_files_properties(${CMAKE_SOURCE_DIR}/src/settings.cpp PROPERTIES COMPILE_FLAGS "-O0")
|
||||||
|
else()
|
||||||
|
if(NOT CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||||
|
target_compile_options(openttd PRIVATE -flto=thin)
|
||||||
|
target_link_libraries(openttd -flto=thin)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif(ANDROID)
|
endif(ANDROID)
|
||||||
|
|
||||||
@@ -319,7 +330,7 @@ if(EMSCRIPTEN)
|
|||||||
add_definitions(-s DISABLE_EXCEPTION_CATCHING=0)
|
add_definitions(-s DISABLE_EXCEPTION_CATCHING=0)
|
||||||
|
|
||||||
# Export functions to Javascript.
|
# Export functions to Javascript.
|
||||||
target_link_libraries(WASM::WASM INTERFACE "-s EXPORTED_FUNCTIONS='[\"_main\", \"_em_openttd_add_server\"]' -s EXTRA_EXPORTED_RUNTIME_METHODS='[\"cwrap\"]'")
|
target_link_libraries(WASM::WASM INTERFACE "-s EXPORTED_FUNCTIONS='[\"_main\"]' -s EXPORTED_RUNTIME_METHODS='[\"cwrap\"]'")
|
||||||
|
|
||||||
# Preload all the files we generate during build.
|
# Preload all the files we generate during build.
|
||||||
# As we do not compile with FreeType / FontConfig, we also have no way to
|
# As we do not compile with FreeType / FontConfig, we also have no way to
|
||||||
@@ -328,13 +339,20 @@ if(EMSCRIPTEN)
|
|||||||
# the more languages you add the slower downloading becomes, we decided to
|
# the more languages you add the slower downloading becomes, we decided to
|
||||||
# only ship the English language.
|
# only ship the English language.
|
||||||
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/baseset@/baseset")
|
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/baseset@/baseset")
|
||||||
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/lang/english.lng@/lang/english.lng")
|
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/lang@/lang")
|
||||||
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_SOURCE_DIR}/bin/ai@/ai")
|
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_SOURCE_DIR}/bin/ai@/ai")
|
||||||
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_SOURCE_DIR}/bin/game@/game")
|
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_SOURCE_DIR}/bin/game@/game")
|
||||||
|
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_SOURCE_DIR}/bin/scripts@/scripts")
|
||||||
|
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/fonts@/fonts")
|
||||||
|
target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/icudt68l.dat@/usr/share/icu/68.2/icudt68l.dat")
|
||||||
|
#target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/timidity@/timidity")
|
||||||
|
|
||||||
# We use IDBFS for persistent storage.
|
# We use IDBFS for persistent storage.
|
||||||
target_link_libraries(WASM::WASM INTERFACE "-lidbfs.js")
|
target_link_libraries(WASM::WASM INTERFACE "-lidbfs.js")
|
||||||
|
|
||||||
|
# Socket proxy
|
||||||
|
target_link_libraries(WASM::WASM INTERFACE "-lwebsocket.js")
|
||||||
|
|
||||||
# Use custom pre-js and shell.html.
|
# Use custom pre-js and shell.html.
|
||||||
target_link_libraries(WASM::WASM INTERFACE "--pre-js ${CMAKE_SOURCE_DIR}/os/emscripten/pre.js")
|
target_link_libraries(WASM::WASM INTERFACE "--pre-js ${CMAKE_SOURCE_DIR}/os/emscripten/pre.js")
|
||||||
target_link_libraries(WASM::WASM INTERFACE "--shell-file ${CMAKE_SOURCE_DIR}/os/emscripten/shell.html")
|
target_link_libraries(WASM::WASM INTERFACE "--shell-file ${CMAKE_SOURCE_DIR}/os/emscripten/shell.html")
|
||||||
|
|||||||
42
COMPILING.md
42
COMPILING.md
@@ -2,26 +2,27 @@
|
|||||||
|
|
||||||
## Required/optional libraries
|
## Required/optional libraries
|
||||||
|
|
||||||
The following libraries are used by OpenTTD for:
|
OpenTTD makes use of the following external libraries:
|
||||||
|
|
||||||
- zlib: (de)compressing of old (0.3.0-1.0.5) savegames, content downloads,
|
- (encouraged) zlib: (de)compressing of old (0.3.0-1.0.5) savegames, content downloads,
|
||||||
heightmaps
|
heightmaps
|
||||||
- liblzo2: (de)compressing of old (pre 0.3.0) savegames
|
- (encouraged) liblzma: (de)compressing of savegames (1.1.0 and later)
|
||||||
- liblzma: (de)compressing of savegames (1.1.0 and later)
|
- (encouraged) libpng: making screenshots and loading heightmaps
|
||||||
- libpng: making screenshots and loading heightmaps
|
- (optional) liblzo2: (de)compressing of old (pre 0.3.0) savegames
|
||||||
|
|
||||||
|
For Linux, the following additional libraries are used (for non-dedicated only):
|
||||||
|
|
||||||
|
- libSDL2: hardware access (video, sound, mouse)
|
||||||
- libfreetype: loading generic fonts and rendering them
|
- libfreetype: loading generic fonts and rendering them
|
||||||
- libfontconfig: searching for fonts, resolving font names to actual fonts
|
- libfontconfig: searching for fonts, resolving font names to actual fonts
|
||||||
- libicu: handling of right-to-left scripts (e.g. Arabic and Persian) and
|
- libicu: handling of right-to-left scripts (e.g. Arabic and Persian) and
|
||||||
natural sorting of strings (Linux only)
|
natural sorting of strings
|
||||||
- libSDL2: hardware access (video, sound, mouse) (not required for Windows or macOS)
|
|
||||||
|
|
||||||
OpenTTD does not require any of the libraries to be present, but without
|
OpenTTD does not require any of the libraries to be present, but without
|
||||||
liblzma you cannot open most recent savegames and without zlib you cannot
|
liblzma you cannot open most recent savegames and without zlib you cannot
|
||||||
open most older savegames or use the content downloading system.
|
open most older savegames or use the content downloading system.
|
||||||
Without libSDL/liballegro on non-Windows and non-macOS machines you have
|
|
||||||
no graphical user interface; you would be building a dedicated server.
|
|
||||||
|
|
||||||
## Windows:
|
## Windows
|
||||||
|
|
||||||
You need Microsoft Visual Studio 2017 or more recent.
|
You need Microsoft Visual Studio 2017 or more recent.
|
||||||
|
|
||||||
@@ -77,6 +78,8 @@ files himself via the `ZERO_CHECK` project.
|
|||||||
|
|
||||||
## All other platforms
|
## All other platforms
|
||||||
Minimum required version of CMake is 3.9.
|
Minimum required version of CMake is 3.9.
|
||||||
|
By default this produces a Debug build with assertations enabled.
|
||||||
|
This is a far slower build than release builds.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mkdir build
|
mkdir build
|
||||||
@@ -88,6 +91,25 @@ make
|
|||||||
For more information on how to use CMake (including how to make Release builds),
|
For more information on how to use CMake (including how to make Release builds),
|
||||||
we urge you to read [their excellent manual](https://cmake.org/cmake/help/latest/guide/user-interaction/index.html).
|
we urge you to read [their excellent manual](https://cmake.org/cmake/help/latest/guide/user-interaction/index.html).
|
||||||
|
|
||||||
|
## CMake Options
|
||||||
|
|
||||||
|
Via CMake, several options can be influenced to get different types of
|
||||||
|
builds.
|
||||||
|
|
||||||
|
- `-DCMAKE_BUILD_TYPE=RelWithDebInfo`: build a release build. This is
|
||||||
|
significant faster than a debug build, but has far less useful information
|
||||||
|
in case of a crash.
|
||||||
|
- `-DOPTION_DEDICATED=ON`: build OpenTTD without a GUI. Useful if you are
|
||||||
|
running a headless server, as it requires less libraries to operate.
|
||||||
|
- `-DOPTION_USE_ASSERTS=OFF`: disable asserts. Use with care, as assert
|
||||||
|
statements capture early signs of trouble. Release builds have them
|
||||||
|
disabled by default.
|
||||||
|
- `-DOPTION_USE_THREADS=OFF`: disable the use of threads. This will block
|
||||||
|
the interface in many places, and in general gives a worse experience of
|
||||||
|
the game. Use with care.
|
||||||
|
- `-DOPTION_TOOLS_ONLY=ON`: only build tools like `strgen`. Does not build
|
||||||
|
the game itself. Useful for cross-compiling.
|
||||||
|
|
||||||
## Supported compilers
|
## Supported compilers
|
||||||
|
|
||||||
Every compiler that is supported by CMake and supports C++17, should be
|
Every compiler that is supported by CMake and supports C++17, should be
|
||||||
|
|||||||
20
README.md
20
README.md
@@ -46,15 +46,13 @@ OpenTTD has a [community-maintained wiki](https://wiki.openttd.org/), including
|
|||||||
|
|
||||||
OpenTTD has been ported to several platforms and operating systems.
|
OpenTTD has been ported to several platforms and operating systems.
|
||||||
|
|
||||||
The currently working platforms are:
|
The currently supported platforms are:
|
||||||
|
|
||||||
- FreeBSD (SDL)
|
- Linux (SDL (OpenGL and non-OpenGL))
|
||||||
- Haiku (SDL)
|
- macOS (universal) (Cocoa)
|
||||||
- Linux (SDL)
|
- Windows (Win32 GDI / OpenGL)
|
||||||
- macOS (universal) (Cocoa video and sound drivers)
|
|
||||||
- OpenBSD (SDL)
|
Other platforms may also work (in particular various BSD systems), but we don't actively test or maintain these.
|
||||||
- OS/2 (SDL)
|
|
||||||
- Windows (Win32 GDI (faster) or SDL)
|
|
||||||
|
|
||||||
### 1.3.1) Legacy support
|
### 1.3.1) Legacy support
|
||||||
Platforms, languages and compilers change.
|
Platforms, languages and compilers change.
|
||||||
@@ -79,9 +77,9 @@ For some platforms, you will need to refer to [the installation guide](https://w
|
|||||||
The free data files, split into OpenGFX for graphics, OpenSFX for sounds and
|
The free data files, split into OpenGFX for graphics, OpenSFX for sounds and
|
||||||
OpenMSX for music can be found at:
|
OpenMSX for music can be found at:
|
||||||
|
|
||||||
- https://www.openttd.org/download-opengfx for OpenGFX
|
- https://www.openttd.org/downloads/opengfx-releases/ for OpenGFX
|
||||||
- https://www.openttd.org/download-opensfx for OpenSFX
|
- https://www.openttd.org/downloads/opensfx-releases/ for OpenSFX
|
||||||
- https://www.openttd.org/download-openmsx for OpenMSX
|
- https://www.openttd.org/downloads/openmsx-releases/ for OpenMSX
|
||||||
|
|
||||||
Please follow the readme of these packages about the installation procedure.
|
Please follow the readme of these packages about the installation procedure.
|
||||||
The Windows installer can optionally download and install these packages.
|
The Windows installer can optionally download and install these packages.
|
||||||
|
|||||||
2
bin/CMakeLists.txt
Normal file
2
bin/CMakeLists.txt
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
add_subdirectory(ai)
|
||||||
|
add_subdirectory(game)
|
||||||
39
bin/ai/CMakeLists.txt
Normal file
39
bin/ai/CMakeLists.txt
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
set(AI_COMPAT_SOURCE_FILES
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_0.7.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.0.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.1.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.2.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.3.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.4.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.5.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.6.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.7.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.8.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.9.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.10.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.11.nut
|
||||||
|
)
|
||||||
|
|
||||||
|
foreach(AI_COMPAT_SOURCE_FILE IN LISTS AI_COMPAT_SOURCE_FILES)
|
||||||
|
string(REPLACE "${CMAKE_SOURCE_DIR}/bin/" "" AI_COMPAT_SOURCE_FILE_NAME "${AI_COMPAT_SOURCE_FILE}")
|
||||||
|
string(CONCAT AI_COMPAT_BINARY_FILE "${CMAKE_BINARY_DIR}/" "${AI_COMPAT_SOURCE_FILE_NAME}")
|
||||||
|
|
||||||
|
add_custom_command(OUTPUT ${AI_COMPAT_BINARY_FILE}
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
|
${AI_COMPAT_SOURCE_FILE}
|
||||||
|
${AI_COMPAT_BINARY_FILE}
|
||||||
|
MAIN_DEPENDENCY ${AI_COMPAT_SOURCE_FILE}
|
||||||
|
COMMENT "Copying ${AI_COMPAT_SOURCE_FILE_NAME}"
|
||||||
|
)
|
||||||
|
|
||||||
|
list(APPEND AI_COMPAT_BINARY_FILES ${AI_COMPAT_BINARY_FILE})
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
# Create a new target which copies all compat files
|
||||||
|
add_custom_target(ai_compat_files
|
||||||
|
DEPENDS ${AI_COMPAT_BINARY_FILES}
|
||||||
|
)
|
||||||
|
|
||||||
|
add_dependencies(openttd
|
||||||
|
ai_compat_files
|
||||||
|
)
|
||||||
36
bin/game/CMakeLists.txt
Normal file
36
bin/game/CMakeLists.txt
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
set(GS_COMPAT_SOURCE_FILES
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.2.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.3.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.4.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.5.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.6.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.7.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.8.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.9.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.10.nut
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/compat_1.11.nut
|
||||||
|
)
|
||||||
|
|
||||||
|
foreach(GS_COMPAT_SOURCE_FILE IN LISTS GS_COMPAT_SOURCE_FILES)
|
||||||
|
string(REPLACE "${CMAKE_SOURCE_DIR}/bin/" "" GS_COMPAT_SOURCE_FILE_NAME "${GS_COMPAT_SOURCE_FILE}")
|
||||||
|
string(CONCAT GS_COMPAT_BINARY_FILE "${CMAKE_BINARY_DIR}/" "${GS_COMPAT_SOURCE_FILE_NAME}")
|
||||||
|
|
||||||
|
add_custom_command(OUTPUT ${GS_COMPAT_BINARY_FILE}
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
|
${GS_COMPAT_SOURCE_FILE}
|
||||||
|
${GS_COMPAT_BINARY_FILE}
|
||||||
|
MAIN_DEPENDENCY ${GS_COMPAT_SOURCE_FILE}
|
||||||
|
COMMENT "Copying ${GS_COMPAT_SOURCE_FILE_NAME}"
|
||||||
|
)
|
||||||
|
|
||||||
|
list(APPEND GS_COMPAT_BINARY_FILES ${GS_COMPAT_BINARY_FILE})
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
# Create a new target which copies all compat files
|
||||||
|
add_custom_target(gs_compat_files
|
||||||
|
DEPENDS ${GS_COMPAT_BINARY_FILES}
|
||||||
|
)
|
||||||
|
|
||||||
|
add_dependencies(openttd
|
||||||
|
gs_compat_files
|
||||||
|
)
|
||||||
@@ -1,3 +1,77 @@
|
|||||||
|
1.11.2 (2021-05-03)
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
Change: [Win32] Limit hardware accelerated video driver to OpenGL 3.2 or higher (#9077)
|
||||||
|
Change: More improvements to the GUI at different scales (#9075, #9102, #9107, #9133, #9174, #9183)
|
||||||
|
Fix: Query windows could be partially drawn (#9184)
|
||||||
|
Fix #9113: Crash when removing an airport that exists in an aircraft's orders (#9182)
|
||||||
|
Fix #9117: [Fluidsynth] Hang when changing song (#9181)
|
||||||
|
Fix: String validation could leave invalid UTF-8 encoded strings (#9096)
|
||||||
|
Fix: [Network] Out-of-bounds memory access with modified servers sending too short password salts (#9176)
|
||||||
|
Fix: Crash when extra viewport with zero height has sign in view (#9175)
|
||||||
|
Fix #9147: Crash when taking screenshots (#9169)
|
||||||
|
Fix #6598: [Network] Prevent crashes when (re)joining network game by falling back to main menu first (#9163)
|
||||||
|
Fix #9152: Screenshot success popup window was treated as an error (#9159)
|
||||||
|
Fix: Fast-forward stuttering when vsync is enabled (#9140)
|
||||||
|
Fix: [Network, Win32] Network errors were handled badly (#9116)
|
||||||
|
Fix: [Network] Savegame transfer could stall in rare cases (#9106)
|
||||||
|
Fix #9097: [NewGRF] Cargo initial payment variable was being truncated (#9098)
|
||||||
|
Fix: [NewGRF] Industry variable 66 and object variable 46 erroneously truncated the distance (#9088)
|
||||||
|
Fix: [NewGRF] Industry variables 65 and 66 ignored the parameter, and always used the north tile (#9088)
|
||||||
|
Fix: Do not include regression test AI in bundle (#9068, #9164)
|
||||||
|
Fix #9062: [Win32] Version in executable was not set to current release version (#9066, #9154)
|
||||||
|
|
||||||
|
|
||||||
|
1.11.1 (2021-04-18)
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
Feature: Toggle to enable/disable vsync (#8997)
|
||||||
|
Feature: Volume controls in the Game Options window, and better defaults (#8943)
|
||||||
|
Add: Hotkey to focus object and rail filters (#8908)
|
||||||
|
Add: Better plural support for Romanian (#8936)
|
||||||
|
Change: Improve layout and spacing of several windows at different GUI scales (#9041, #9042, #9044, #9050)
|
||||||
|
Change: [Win32] Use user UI language setting for initial language selection (#8974)
|
||||||
|
Change: Make effect volume scale more intuitively (#8945, #8950)
|
||||||
|
Change: Improve padding of Object & Rail station windows (#8929)
|
||||||
|
Fix #6322: [Script] Crash when script allocates too much memory, now kills script instead (#9047)
|
||||||
|
Fix #7513: [Script] Crash on garbage collection with misbehaving script (#9040)
|
||||||
|
Fix #9028: [OpenGL] Crash when changing max sprite zoom level (#9032)
|
||||||
|
Fix #8874: show a warning when a NewGRF scan is requested multiple times (#9022)
|
||||||
|
Fix: Desync when GS unlocks railtype with wagon unlock (#9021)
|
||||||
|
Fix #9015: [Win32] Crash on running "pwd" command in the console (#9016)
|
||||||
|
Fix #9008: Validate starting year given on the command line (-t) (#9014)
|
||||||
|
Fix #8878: [Network] Slow DNS queries could block the server and disconnect clients (#9013)
|
||||||
|
Fix: Improve validation of OpenGL video driver to avoid crashes (#9007)
|
||||||
|
Fix: Credits scrolled too slowly with larger font sizes (#8994)
|
||||||
|
Fix #8977: Crash when altering max sprite resolution (#8993)
|
||||||
|
Fix #8956: Industry disaster news messages showed the wrong location (#8992)
|
||||||
|
Fix: [Win32] Font glyphs of certain widths had broken rendering (#8990)
|
||||||
|
Fix #8930: [Win32] Duplicate text input issue for systems using IME (#8976)
|
||||||
|
Fix: [Network] Potential stale client entries in client list (#8959)
|
||||||
|
Fix: Graphical issues when dragging measurement tooltips (#8951)
|
||||||
|
Fix: [Fluidsynth] Use provided default soundfont if available (#8948, #8953)
|
||||||
|
Fix #8935: [macOS] Crash on save (#8944)
|
||||||
|
Fix #8922: Crash when selling shared vehicles with shared vehicle window open (#8926)
|
||||||
|
Fix: Compiling on armhf (Raspberry Pi) (#8924)
|
||||||
|
|
||||||
|
|
||||||
|
1.11.0 (2021-04-01)
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
Feature: Allow setting a custom terrain type to define highest peak (#8891)
|
||||||
|
Feature: Auto-detect map height limit based on generated map (#8891)
|
||||||
|
Feature: Setting to indicate desert coverage for tropic climate and snow coverage for arctic climate (replaces snow line height) (#8891)
|
||||||
|
Add: Allow setting the highest mountain for heightmaps (#8891)
|
||||||
|
Change: Scale exported heightmaps to highest peak and inform the user of this value (#8891)
|
||||||
|
Change: Remove "maximum map height" from the New Game GUI (#8891)
|
||||||
|
Fix #8803: Only auto-remove signals when rail can be built (#8904)
|
||||||
|
Fix #8565: Stopped road vehicle displays a speed different than 0 (#8901)
|
||||||
|
Fix #8886: Don't try to resolve folders within tars named '.' (#8893)
|
||||||
|
Fix: Placing random trees in SE crashes the game (#8892)
|
||||||
|
Fix #8875: Filter string in station window breaks flow in user interface (#8885)
|
||||||
|
Fix #8871: [OpenGL] Initialize all buffers after resize and clear back buffer (#8877)
|
||||||
|
Fix: OpenGL performance with some AMD GPUs (#8876)
|
||||||
|
Fix: Recompute road/railtype availability after disabling the engine (#8872)
|
||||||
|
Fix: OSK layout not scaled for 2x or 4x GUI scale (#8868)
|
||||||
|
|
||||||
|
|
||||||
1.11.0-RC1 (2021-03-14)
|
1.11.0-RC1 (2021-03-14)
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Feature: Option to (dis-)allow hardware accelerated video drivers (#8819)
|
Feature: Option to (dis-)allow hardware accelerated video drivers (#8819)
|
||||||
|
|||||||
@@ -4,20 +4,22 @@
|
|||||||
#
|
#
|
||||||
macro(compile_flags)
|
macro(compile_flags)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# Switch to MT (static) instead of MD (dynamic) binary
|
if(VCPKG_TARGET_TRIPLET MATCHES "-static" AND NOT VCPKG_TARGET_TRIPLET MATCHES "-md")
|
||||||
|
# Switch to MT (static) instead of MD (dynamic) binary
|
||||||
|
|
||||||
# For MSVC two generators are available
|
# For MSVC two generators are available
|
||||||
# - a command line generator (Ninja) using CMAKE_BUILD_TYPE to specify the
|
# - a command line generator (Ninja) using CMAKE_BUILD_TYPE to specify the
|
||||||
# configuration of the build tree
|
# configuration of the build tree
|
||||||
# - an IDE generator (Visual Studio) using CMAKE_CONFIGURATION_TYPES to
|
# - an IDE generator (Visual Studio) using CMAKE_CONFIGURATION_TYPES to
|
||||||
# specify all configurations that will be available in the generated solution
|
# specify all configurations that will be available in the generated solution
|
||||||
list(APPEND MSVC_CONFIGS "${CMAKE_BUILD_TYPE}" "${CMAKE_CONFIGURATION_TYPES}")
|
list(APPEND MSVC_CONFIGS "${CMAKE_BUILD_TYPE}" "${CMAKE_CONFIGURATION_TYPES}")
|
||||||
|
|
||||||
# Set usage of static runtime for all configurations
|
# Set usage of static runtime for all configurations
|
||||||
foreach(MSVC_CONFIG ${MSVC_CONFIGS})
|
foreach(MSVC_CONFIG ${MSVC_CONFIGS})
|
||||||
string(TOUPPER "CMAKE_CXX_FLAGS_${MSVC_CONFIG}" MSVC_FLAGS)
|
string(TOUPPER "CMAKE_CXX_FLAGS_${MSVC_CONFIG}" MSVC_FLAGS)
|
||||||
string(REPLACE "/MD" "/MT" ${MSVC_FLAGS} "${${MSVC_FLAGS}}")
|
string(REPLACE "/MD" "/MT" ${MSVC_FLAGS} "${${MSVC_FLAGS}}")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
endif()
|
||||||
|
|
||||||
# "If /Zc:rvalueCast is specified, the compiler follows section 5.4 of the
|
# "If /Zc:rvalueCast is specified, the compiler follows section 5.4 of the
|
||||||
# C++11 standard". We need C++11 for the way we use threads.
|
# C++11 standard". We need C++11 for the way we use threads.
|
||||||
|
|||||||
@@ -35,9 +35,9 @@ function(create_grf_command)
|
|||||||
-DNFORENUM_EXECUTABLE=${NFORENUM_EXECUTABLE}
|
-DNFORENUM_EXECUTABLE=${NFORENUM_EXECUTABLE}
|
||||||
-DGRFCODEC_EXECUTABLE=${GRFCODEC_EXECUTABLE}
|
-DGRFCODEC_EXECUTABLE=${GRFCODEC_EXECUTABLE}
|
||||||
-P ${CMAKE_SOURCE_DIR}/cmake/scripts/CreateGRF.cmake
|
-P ${CMAKE_SOURCE_DIR}/cmake/scripts/CreateGRF.cmake
|
||||||
MAIN_DEPENDENCY ${GRF_NFO_SOURCE_FILES}
|
MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/cmake/scripts/CreateGRF.cmake
|
||||||
DEPENDS ${GRF_PNG_BINARY_FILES}
|
DEPENDS ${GRF_PNG_BINARY_FILES}
|
||||||
${CMAKE_SOURCE_DIR}/cmake/scripts/CreateGRF.cmake
|
${GRF_NFO_SOURCE_FILES}
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
COMMENT "Generating ${GRF_SOURCE_FOLDER_NAME}.grf"
|
COMMENT "Generating ${GRF_SOURCE_FOLDER_NAME}.grf"
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -27,11 +27,13 @@ install(TARGETS openttd
|
|||||||
install(DIRECTORY
|
install(DIRECTORY
|
||||||
${CMAKE_BINARY_DIR}/lang
|
${CMAKE_BINARY_DIR}/lang
|
||||||
${CMAKE_BINARY_DIR}/baseset
|
${CMAKE_BINARY_DIR}/baseset
|
||||||
${CMAKE_SOURCE_DIR}/bin/ai
|
${CMAKE_BINARY_DIR}/ai
|
||||||
${CMAKE_SOURCE_DIR}/bin/game
|
${CMAKE_BINARY_DIR}/game
|
||||||
${CMAKE_SOURCE_DIR}/bin/scripts
|
${CMAKE_SOURCE_DIR}/bin/scripts
|
||||||
DESTINATION ${DATA_DESTINATION_DIR}
|
DESTINATION ${DATA_DESTINATION_DIR}
|
||||||
COMPONENT language_files)
|
COMPONENT language_files
|
||||||
|
REGEX "ai/[^\.]+$" EXCLUDE # Ignore subdirs in ai dir
|
||||||
|
)
|
||||||
|
|
||||||
install(FILES
|
install(FILES
|
||||||
${CMAKE_SOURCE_DIR}/COPYING.md
|
${CMAKE_SOURCE_DIR}/COPYING.md
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ function(set_options)
|
|||||||
|
|
||||||
option(OPTION_DEDICATED "Build dedicated server only (no GUI)" OFF)
|
option(OPTION_DEDICATED "Build dedicated server only (no GUI)" OFF)
|
||||||
option(OPTION_INSTALL_FHS "Install with Filesystem Hierarchy Standard folders" ${DEFAULT_OPTION_INSTALL_FHS})
|
option(OPTION_INSTALL_FHS "Install with Filesystem Hierarchy Standard folders" ${DEFAULT_OPTION_INSTALL_FHS})
|
||||||
option(OPTION_USE_ASSERTS "Use assertions; leave enabled for nightlies, betas, and RCs" ON)
|
option(OPTION_USE_ASSERTS "Use assertions; leave enabled for nightlies, betas, and RCs" OFF)
|
||||||
if(EMSCRIPTEN)
|
if(EMSCRIPTEN)
|
||||||
# Although pthreads is supported, it is not in a way yet that is
|
# Although pthreads is supported, it is not in a way yet that is
|
||||||
# useful for us.
|
# useful for us.
|
||||||
|
|||||||
@@ -39,6 +39,20 @@ foreach(NFO_LINE IN LISTS NFO_LINES)
|
|||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
execute_process(COMMAND ${NFORENUM_EXECUTABLE} -s sprites/${GRF_SOURCE_FOLDER_NAME}.nfo)
|
execute_process(COMMAND ${NFORENUM_EXECUTABLE} -s sprites/${GRF_SOURCE_FOLDER_NAME}.nfo RESULT_VARIABLE RESULT)
|
||||||
execute_process(COMMAND ${GRFCODEC_EXECUTABLE} -n -s -e -p1 ${GRF_SOURCE_FOLDER_NAME}.grf)
|
if(RESULT)
|
||||||
|
if(NOT RESULT MATCHES "^[0-9]*$")
|
||||||
|
message(FATAL_ERROR "Failed to run NFORenum (${RESULT}), please check NFORENUM_EXECUTABLE variable")
|
||||||
|
endif()
|
||||||
|
message(FATAL_ERROR "NFORenum failed")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
execute_process(COMMAND ${GRFCODEC_EXECUTABLE} -n -s -e -p1 ${GRF_SOURCE_FOLDER_NAME}.grf RESULT_VARIABLE RESULT)
|
||||||
|
if(RESULT)
|
||||||
|
if(NOT RESULT MATCHES "^[0-9]*$")
|
||||||
|
message(FATAL_ERROR "Failed to run GRFCodec (${RESULT}), please check GRFCODEC_EXECUTABLE variable")
|
||||||
|
endif()
|
||||||
|
message(FATAL_ERROR "GRFCodec failed")
|
||||||
|
endif()
|
||||||
|
|
||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E copy ${GRF_SOURCE_FOLDER_NAME}.grf ${GRF_BINARY_FILE})
|
execute_process(COMMAND ${CMAKE_COMMAND} -E copy ${GRF_SOURCE_FOLDER_NAME}.grf ${GRF_BINARY_FILE})
|
||||||
|
|||||||
@@ -1,5 +1,15 @@
|
|||||||
cmake_minimum_required(VERSION 3.5)
|
cmake_minimum_required(VERSION 3.5)
|
||||||
|
|
||||||
|
if(NOT REV_MAJOR)
|
||||||
|
set(REV_MAJOR 0)
|
||||||
|
endif()
|
||||||
|
if(NOT REV_MINOR)
|
||||||
|
set(REV_MINOR 0)
|
||||||
|
endif()
|
||||||
|
if(NOT REV_BUILD)
|
||||||
|
set(REV_BUILD 0)
|
||||||
|
endif()
|
||||||
|
|
||||||
#
|
#
|
||||||
# Finds the current version of the current folder.
|
# Finds the current version of the current folder.
|
||||||
#
|
#
|
||||||
@@ -83,7 +93,7 @@ if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git" AND NOT ANDROID)
|
|||||||
set(REV_ISTAG 1)
|
set(REV_ISTAG 1)
|
||||||
|
|
||||||
string(REGEX REPLACE "^[0-9.]+$" "" STABLETAG "${TAG}")
|
string(REGEX REPLACE "^[0-9.]+$" "" STABLETAG "${TAG}")
|
||||||
if(NOT STABLETAG STREQUAL "")
|
if(STABLETAG STREQUAL "")
|
||||||
set(REV_ISSTABLETAG 1)
|
set(REV_ISSTABLETAG 1)
|
||||||
else()
|
else()
|
||||||
set(REV_ISSTABLETAG 0)
|
set(REV_ISSTABLETAG 0)
|
||||||
|
|||||||
@@ -211,3 +211,10 @@ Last updated: 2011-02-16
|
|||||||
communication from an admin tool reach the programme. See section 1
|
communication from an admin tool reach the programme. See section 1
|
||||||
'Starting a server' further up for the ports and protocols used by OpenTTD.
|
'Starting a server' further up for the ports and protocols used by OpenTTD.
|
||||||
The ports can be configured in the config file.
|
The ports can be configured in the config file.
|
||||||
|
|
||||||
|
- My advertising server warns a lot about getaddrinfo taking N seconds
|
||||||
|
This could be a transient issue with your (local) DNS server, but if the
|
||||||
|
problem persists there is likely a configuration issue in DNS resolving
|
||||||
|
on your computer. This seems to be a common configuration issue for
|
||||||
|
Docker instances, where the DNS resolving waits for a time out of usually
|
||||||
|
5 seconds.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
OpenTTD's known bugs
|
OpenTTD's known bugs
|
||||||
Last updated: 2021-03-14
|
Last updated: 2021-04-01
|
||||||
Release version: 1.11.0-RC1
|
Release version: 1.11.0
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
13
os/emscripten/deploy-webapp.sh
Executable file
13
os/emscripten/deploy-webapp.sh
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
INSTALL_PATH=`pwd`/../../../openttd-touch-webapp
|
||||||
|
MESSAGE="`git log --format=%B -n 1 HEAD`"
|
||||||
|
[ -n "$1" ] && MESSAGE="$1"
|
||||||
|
|
||||||
|
export NO_CLEAN=1
|
||||||
|
|
||||||
|
./emscripten-build.sh release $INSTALL_PATH || exit 1
|
||||||
|
|
||||||
|
cd $INSTALL_PATH || exit 1
|
||||||
|
|
||||||
|
git commit -a -m "$MESSAGE" && git push
|
||||||
3
os/emscripten/emscripten-build-debug.sh
Executable file
3
os/emscripten/emscripten-build-debug.sh
Executable file
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
./emscripten-build.sh debug
|
||||||
281
os/emscripten/emscripten-build.sh
Executable file
281
os/emscripten/emscripten-build.sh
Executable file
@@ -0,0 +1,281 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
BUILD_TYPE=Release
|
||||||
|
[ "$1" = "debug" ] && BUILD_TYPE=Debug
|
||||||
|
[ "$1" = "release" ] && BUILD_TYPE=Release
|
||||||
|
|
||||||
|
OPT="-O3 -flto=thin"
|
||||||
|
[ "$BUILD_TYPE" = "Debug" ] && OPT="-g -O1"
|
||||||
|
|
||||||
|
INSTALL_PATH=/var/www/html/
|
||||||
|
[ -n "$2" ] && INSTALL_PATH="$2"
|
||||||
|
|
||||||
|
cd ../..
|
||||||
|
|
||||||
|
[ -z "`which emsdk`" ] && export PATH=`pwd`/../emsdk:$PATH
|
||||||
|
|
||||||
|
[ -z "`which emsdk`" ] && { echo "Put emsdk into your PATH"; exit 1 ; }
|
||||||
|
|
||||||
|
[ -z "$PATH_EMSDK" ] && PATH_EMSDK="`which emsdk | xargs dirname`"
|
||||||
|
|
||||||
|
source "$PATH_EMSDK/emsdk_env.sh"
|
||||||
|
|
||||||
|
mkdir -p build-wasm-$BUILD_TYPE
|
||||||
|
cd build-wasm-$BUILD_TYPE
|
||||||
|
|
||||||
|
# ===== Build dependency libraries =====
|
||||||
|
|
||||||
|
embuilder build liblzma ogg vorbis zlib sdl2 freetype icu harfbuzz
|
||||||
|
embuilder build --lto liblzma ogg vorbis zlib sdl2 freetype icu harfbuzz
|
||||||
|
|
||||||
|
autoreconf -V || exit 1 # No autotools installed
|
||||||
|
|
||||||
|
[ -e icu-le-hb-1.0.3/build-wasm/lib/libicu-le-hb.a ] || {
|
||||||
|
wget -nc https://github.com/harfbuzz/icu-le-hb/archive/refs/tags/1.0.3.tar.gz || exit 1
|
||||||
|
tar xvf 1.0.3.tar.gz || exit 1
|
||||||
|
cd icu-le-hb-1.0.3
|
||||||
|
autoreconf -fi
|
||||||
|
emconfigure ./configure --prefix=`pwd`/build-wasm \
|
||||||
|
--disable-shared --enable-static \
|
||||||
|
HARFBUZZ_CFLAGS="-I`em-config EMSCRIPTEN_ROOT`/cache/sysroot/include/harfbuzz" \
|
||||||
|
HARFBUZZ_LIBS="-lharfbuzz" \
|
||||||
|
ICU_CFLAGS="-I`em-config EMSCRIPTEN_ROOT`/cache/sysroot/include -DU_DEFINE_FALSE_AND_TRUE=1" \
|
||||||
|
ICU_LIBS="-licuuc" \
|
||||||
|
CFLAGS="$OPT" \
|
||||||
|
LDFLAGS="$OPT" \
|
||||||
|
|| exit 1
|
||||||
|
make -j8 V=1 || exit 1
|
||||||
|
make install || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
# ===== Compile libicu twice, because libiculx requires icu-le-hb, which requires libicuuc =====
|
||||||
|
# Same libicu version as in emscripten ports and with the same compilation flags taken from $PATH_EMSDK/upstream/emscripten/tools/ports/icu.py
|
||||||
|
# We cannot use zip archive from emscripten ports, because it has Windows line endings in configure script and it won't run
|
||||||
|
# CFLAGS="-DU_USING_ICU_NAMESPACE=0 \
|
||||||
|
# -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1 \
|
||||||
|
# -DUNISTR_FROM_CHAR_EXPLICIT=explicit \
|
||||||
|
# -DUNISTR_FROM_STRING_EXPLICIT=explicit \
|
||||||
|
# -DU_STATIC_IMPLEMENTATION"
|
||||||
|
[ -e icu/build-wasm/lib/libiculx.a ] || {
|
||||||
|
wget -nc https://github.com/unicode-org/icu/releases/download/release-68-2/icu4c-68_2-src.tgz || exit 1
|
||||||
|
tar xvf icu4c-68_2-src.tgz || exit 1
|
||||||
|
cd icu/source || exit 1
|
||||||
|
|
||||||
|
autoreconf -fi
|
||||||
|
|
||||||
|
# Cross-compile host tools
|
||||||
|
[ -d cross ] || {
|
||||||
|
mkdir -p cross
|
||||||
|
cd cross
|
||||||
|
../configure || exit 1
|
||||||
|
make -j8 || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
emconfigure ./configure --prefix=`pwd`/../build-wasm \
|
||||||
|
--disable-shared --enable-static \
|
||||||
|
--enable-layoutex --disable-extras \
|
||||||
|
--disable-tools --disable-tests --disable-samples \
|
||||||
|
--with-cross-build=`pwd`/cross \
|
||||||
|
--with-data-packaging=archive \
|
||||||
|
--datadir=/usr/share \
|
||||||
|
ICULEHB_CFLAGS="-I`pwd`/../../icu-le-hb-1.0.3/build-wasm/include/icu-le-hb" \
|
||||||
|
ICULEHB_LIBS="-L`pwd`/../../icu-le-hb-1.0.3/build-wasm/lib -licu-le-hb" \
|
||||||
|
CFLAGS="$OPT" \
|
||||||
|
LDFLAGS="$OPT" \
|
||||||
|
|| exit 1
|
||||||
|
|
||||||
|
make -j8 || exit 1
|
||||||
|
|
||||||
|
sed -i "s@^datadir *= *.*@datadir = `pwd`/../build-wasm/share@" icudefs.mk || exit 1
|
||||||
|
|
||||||
|
make install || exit 1
|
||||||
|
cd ../..
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e libtimidity-0.2.7/build-wasm/lib/libtimidity.a ] || {
|
||||||
|
wget -nc https://sourceforge.net/projects/libtimidity/files/libtimidity/0.2.7/libtimidity-0.2.7.tar.gz || exit 1
|
||||||
|
tar xvf libtimidity-0.2.7.tar.gz || exit 1
|
||||||
|
cd libtimidity-0.2.7 || exit 1
|
||||||
|
autoreconf -fi
|
||||||
|
emconfigure ./configure --prefix=`pwd`/build-wasm \
|
||||||
|
--disable-shared --enable-static \
|
||||||
|
--disable-ao --disable-aotest \
|
||||||
|
CFLAGS="$OPT" \
|
||||||
|
LDFLAGS="$OPT" \
|
||||||
|
--with-timidity-cfg="/timidity/timidity.cfg" || exit 1
|
||||||
|
make -j8 || exit 1
|
||||||
|
make install || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e expat-2.3.0/build-wasm/lib/libexpat.a ] || {
|
||||||
|
wget -nc https://github.com/libexpat/libexpat/releases/download/R_2_3_0/expat-2.3.0.tar.gz || exit 1
|
||||||
|
tar xvf expat-2.3.0.tar.gz || exit 1
|
||||||
|
cd expat-2.3.0
|
||||||
|
autoreconf -fi
|
||||||
|
emconfigure ./configure --prefix=`pwd`/build-wasm \
|
||||||
|
--disable-shared --enable-static \
|
||||||
|
--without-xmlwf --without-docbook --without-examples --without-tests \
|
||||||
|
CFLAGS="$OPT" \
|
||||||
|
LDFLAGS="$OPT" \
|
||||||
|
|| exit 1
|
||||||
|
make -j8 || exit 1
|
||||||
|
make install || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e libuuid-1.0.3/build-wasm/lib/libuuid.a ] || {
|
||||||
|
wget -nc https://sourceforge.net/projects/libuuid/files/libuuid-1.0.3.tar.gz || exit 1
|
||||||
|
tar xvf libuuid-1.0.3.tar.gz || exit 1
|
||||||
|
cd libuuid-1.0.3
|
||||||
|
autoreconf -fi
|
||||||
|
emconfigure ./configure --prefix=`pwd`/build-wasm \
|
||||||
|
--disable-shared --enable-static \
|
||||||
|
CFLAGS="$OPT" \
|
||||||
|
LDFLAGS="$OPT" \
|
||||||
|
|| exit 1
|
||||||
|
make -j8 || exit 1
|
||||||
|
make install || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
# ===== Fontconfig is convoluted shit =====
|
||||||
|
|
||||||
|
[ -e fontconfig-2.13.1/build-wasm/lib/libfontconfig.a ] || {
|
||||||
|
wget -nc https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.13.1.tar.gz || exit 1
|
||||||
|
tar xvf fontconfig-2.13.1.tar.gz || exit 1
|
||||||
|
cd fontconfig-2.13.1
|
||||||
|
# Tests do not compile, disable them
|
||||||
|
#sed -i 's/po-conf test/po-conf/' Makefile.am
|
||||||
|
patch -p1 < ../../os/emscripten/fontconfig-2.13.1.patch || exit 1
|
||||||
|
autoreconf -fi
|
||||||
|
emconfigure ./configure --prefix=`pwd`/build-wasm \
|
||||||
|
--disable-shared --enable-static \
|
||||||
|
--disable-docs cross_compiling=yes \
|
||||||
|
ac_cv_func_fstatfs=no ac_cv_func_fstatvfs=no \
|
||||||
|
FREETYPE_CFLAGS="-I`em-config EMSCRIPTEN_ROOT`/cache/sysroot/include/freetype2 \
|
||||||
|
-I`em-config EMSCRIPTEN_ROOT`/cache/sysroot/include/freetype2/freetype" \
|
||||||
|
FREETYPE_LIBS="-lfreetype" \
|
||||||
|
EXPAT_CFLAGS="-I`pwd`/../expat-2.3.0/build-wasm/include" \
|
||||||
|
EXPAT_LIBS="-L`pwd`/../expat-2.3.0/build-wasm/lib -lexpat" \
|
||||||
|
UUID_CFLAGS="-I`pwd`/../libuuid-1.0.3/build-wasm/include" \
|
||||||
|
UUID_LIBS="-L`pwd`/../libuuid-1.0.3/build-wasm/lib -luuid" \
|
||||||
|
CFLAGS="$OPT" \
|
||||||
|
LDFLAGS="$OPT" \
|
||||||
|
|| exit 1
|
||||||
|
make -j8 V=1 || exit 1
|
||||||
|
make install || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
# -s EXPORTED_FUNCTIONS=['_main','_memchr']
|
||||||
|
[ -e lzo-2.10/build-wasm/lib/liblzo2.a ] || {
|
||||||
|
wget -nc https://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz || exit 1
|
||||||
|
tar xvf lzo-2.10.tar.gz || exit 1
|
||||||
|
cd lzo-2.10
|
||||||
|
autoreconf -fi
|
||||||
|
emconfigure ./configure --prefix=`pwd`/build-wasm \
|
||||||
|
--disable-shared --enable-static \
|
||||||
|
--disable-asm \
|
||||||
|
CFLAGS="$OPT" \
|
||||||
|
LDFLAGS="$OPT -s EXPORTED_FUNCTIONS=['_main','_memchr']" \
|
||||||
|
|| exit 1
|
||||||
|
make -j8 || exit 1
|
||||||
|
make install || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
# ===== Download data files =====
|
||||||
|
|
||||||
|
mkdir -p baseset
|
||||||
|
|
||||||
|
[ -e baseset/opengfx-0.6.1.tar ] || {
|
||||||
|
wget -nc https://cdn.openttd.org/opengfx-releases/0.6.1/opengfx-0.6.1-all.zip || exit 1
|
||||||
|
unzip opengfx-0.6.1-all.zip || exit 1
|
||||||
|
rm opengfx-0.6.1-all.zip
|
||||||
|
mv opengfx-0.6.1.tar baseset/ || exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e baseset/opensfx-1.0.1.tar ] || {
|
||||||
|
wget -nc https://cdn.openttd.org/opensfx-releases/1.0.1/opensfx-1.0.1-all.zip || exit 1
|
||||||
|
unzip opensfx-1.0.1-all.zip || exit 1
|
||||||
|
rm opensfx-1.0.1-all.zip
|
||||||
|
mv opensfx-1.0.1.tar baseset/ || exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e baseset/openmsx-0.4.0 ] || {
|
||||||
|
wget -nc https://cdn.openttd.org/openmsx-releases/0.4.0/openmsx-0.4.0-all.zip || exit 1
|
||||||
|
unzip openmsx-0.4.0-all.zip || exit 1
|
||||||
|
rm openmsx-0.4.0-all.zip
|
||||||
|
cd baseset || exit 1
|
||||||
|
tar xvf ../openmsx-0.4.0.tar || exit 1
|
||||||
|
cd ..
|
||||||
|
rm openmsx-0.4.0.tar
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e icudt68l.dat ] || {
|
||||||
|
cp -f "icu/source/data/in/icudt68l.dat" ./ || exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -e fonts/fonts.conf ] || {
|
||||||
|
wget -nc https://sourceforge.net/projects/libsdl-android/files/openttd-fonts.zip || exit 1
|
||||||
|
unzip openttd-fonts.zip || exit 1
|
||||||
|
rm openttd-fonts.zip
|
||||||
|
sed 's@/usr/share/fonts@/fonts@g' fontconfig-2.13.1/build-wasm/etc/fonts/fonts.conf > fonts/fonts.conf || exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
#[ -e TimGM6mb.sf2 ] || {
|
||||||
|
# wget -nc 'https://sourceforge.net/p/mscore/code/HEAD/tree/trunk/mscore/share/sound/TimGM6mb.sf2?format=raw' -O TimGM6mb.sf2 || exit 1
|
||||||
|
#}
|
||||||
|
|
||||||
|
#[ -e timidity/timidity.cfg ] || {
|
||||||
|
# wget -nc https://sourceforge.net/projects/libsdl-android/files/timidity.zip || exit 1
|
||||||
|
# unzip timidity.zip
|
||||||
|
#}
|
||||||
|
|
||||||
|
# ===== Build OpenTTD code generation tools =====
|
||||||
|
|
||||||
|
[ -e build-host ] || {
|
||||||
|
rm -rf build-host
|
||||||
|
mkdir -p build-host
|
||||||
|
cd build-host
|
||||||
|
cmake ../.. -DOPTION_TOOLS_ONLY=ON || exit 1
|
||||||
|
make -j8 tools || exit 1
|
||||||
|
cd ..
|
||||||
|
}
|
||||||
|
|
||||||
|
# ===== Build OpenTTD itself =====
|
||||||
|
|
||||||
|
[ -e Makefile ] || emcmake cmake .. \
|
||||||
|
-DHOST_BINARY_DIR=$(pwd)/build-host -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPTION_USE_ASSERTS=OFF \
|
||||||
|
-DFREETYPE_INCLUDE_DIRS=`em-config EMSCRIPTEN_ROOT`/cache/sysroot/include/freetype2 \
|
||||||
|
-DFREETYPE_LIBRARY=-lfreetype \
|
||||||
|
-DFontconfig_INCLUDE_DIR=`pwd`/fontconfig-2.13.1/build-wasm/include \
|
||||||
|
-DFontconfig_LIBRARY=`pwd`/fontconfig-2.13.1/build-wasm/lib/libfontconfig.a \
|
||||||
|
-DLZO_INCLUDE_DIR=`pwd`/lzo-2.10/build-wasm/include \
|
||||||
|
-DLZO_LIBRARY=`pwd`/lzo-2.10/build-wasm/lib/liblzo2.a \
|
||||||
|
-DPC_ICU_i18n_FOUND=YES \
|
||||||
|
-DPC_ICU_i18n_INCLUDE_DIRS=`pwd`/icu/build-wasm/include \
|
||||||
|
-DICU_i18n_LIBRARY=`pwd`/icu/build-wasm/lib/libicui18n.a \
|
||||||
|
-DPC_ICU_lx_FOUND=YES \
|
||||||
|
-DPC_ICU_lx_INCLUDE_DIRS=`pwd`/icu-le-hb-1.0.3/build-wasm/include/icu-le-hb \
|
||||||
|
-DICU_lx_LIBRARY=`pwd`/icu/build-wasm/lib/libiculx.a \
|
||||||
|
-DLZO_LIBRARY=`pwd`/lzo-2.10/build-wasm/lib/liblzo2.a \
|
||||||
|
-DCMAKE_CXX_FLAGS="-sUSE_FREETYPE=1" \
|
||||||
|
-DCMAKE_EXE_LINKER_FLAGS="-sUSE_FREETYPE=1 \
|
||||||
|
-L`pwd`/icu-le-hb-1.0.3/build-wasm/lib -licu-le-hb -lharfbuzz \
|
||||||
|
-L`pwd`/icu/build-wasm/lib -licudata -licuuc \
|
||||||
|
-L`pwd`/expat-2.3.0/build-wasm/lib -lexpat \
|
||||||
|
-L`pwd`/libuuid-1.0.3/build-wasm/lib -luuid" \
|
||||||
|
|| exit 1
|
||||||
|
|
||||||
|
# -I`em-config EMSCRIPTEN_ROOT`/cache/sysroot/include/freetype2/freetype
|
||||||
|
# -DTimidity_LIBRARY=`pwd`/libtimidity-0.2.7/build-wasm/lib/libtimidity.a \
|
||||||
|
# -DTimidity_INCLUDE_DIR=`pwd`/libtimidity-0.2.7/build-wasm/include \
|
||||||
|
|
||||||
|
[ -z "$NO_CLEAN" ] && rm -f openttd.html
|
||||||
|
emmake make -j8 VERBOSE=1 || exit 1
|
||||||
|
|
||||||
|
cp -f *.html *.js *.data *.wasm ../media/openttd.256.png ../os/emscripten/openttd.webapp "$INSTALL_PATH"
|
||||||
@@ -14,7 +14,7 @@ diff --git a/embuilder.py b/embuilder.py
|
|||||||
index 818262190ed..ab7d5adb7b2 100755
|
index 818262190ed..ab7d5adb7b2 100755
|
||||||
--- a/embuilder.py
|
--- a/embuilder.py
|
||||||
+++ b/embuilder.py
|
+++ b/embuilder.py
|
||||||
@@ -60,6 +60,7 @@
|
@@ -69,6 +69,7 @@
|
||||||
'harfbuzz',
|
'harfbuzz',
|
||||||
'icu',
|
'icu',
|
||||||
'libjpeg',
|
'libjpeg',
|
||||||
@@ -22,14 +22,14 @@ index 818262190ed..ab7d5adb7b2 100755
|
|||||||
'libpng',
|
'libpng',
|
||||||
'ogg',
|
'ogg',
|
||||||
'regal',
|
'regal',
|
||||||
@@ -197,6 +198,8 @@ def main():
|
@@ -203,6 +204,8 @@
|
||||||
build_port('ogg', libname('libogg'))
|
build_port('giflib')
|
||||||
elif what == 'libjpeg':
|
elif what == 'libjpeg':
|
||||||
build_port('libjpeg', libname('libjpeg'))
|
build_port('libjpeg')
|
||||||
+ elif what == 'liblzma':
|
+ elif what == 'liblzma':
|
||||||
+ build_port('liblzma', libname('liblzma'))
|
+ build_port('liblzma')
|
||||||
elif what == 'libpng':
|
elif what == 'libpng':
|
||||||
build_port('libpng', libname('libpng'))
|
build_port('libpng')
|
||||||
elif what == 'sdl2':
|
elif what == 'sdl2':
|
||||||
diff --git a/src/settings.js b/src/settings.js
|
diff --git a/src/settings.js b/src/settings.js
|
||||||
index 61cd98939ba..be6fcb678c6 100644
|
index 61cd98939ba..be6fcb678c6 100644
|
||||||
@@ -50,7 +50,7 @@ new file mode 100644
|
|||||||
index 00000000000..e9567ef36ff
|
index 00000000000..e9567ef36ff
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/tools/ports/liblzma.py
|
+++ b/tools/ports/liblzma.py
|
||||||
@@ -0,0 +1,160 @@
|
@@ -0,0 +1,159 @@
|
||||||
+# Copyright 2020 The Emscripten Authors. All rights reserved.
|
+# Copyright 2020 The Emscripten Authors. All rights reserved.
|
||||||
+# Emscripten is available under two separate licenses, the MIT license and the
|
+# Emscripten is available under two separate licenses, the MIT license and the
|
||||||
+# University of Illinois/NCSA Open Source License. Both these licenses can be
|
+# University of Illinois/NCSA Open Source License. Both these licenses can be
|
||||||
@@ -68,10 +68,10 @@ index 00000000000..e9567ef36ff
|
|||||||
+
|
+
|
||||||
+
|
+
|
||||||
+def get(ports, settings, shared):
|
+def get(ports, settings, shared):
|
||||||
+ libname = ports.get_lib_name('liblzma')
|
+ libname = 'liblzma.a'
|
||||||
+ ports.fetch_project('liblzma', 'https://tukaani.org/xz/xz-' + VERSION + '.tar.gz', 'xz-' + VERSION, sha512hash=HASH)
|
+ ports.fetch_project('liblzma', 'https://tukaani.org/xz/xz-' + VERSION + '.tar.gz', 'xz-' + VERSION, sha512hash=HASH)
|
||||||
+
|
+
|
||||||
+ def create():
|
+ def create(final):
|
||||||
+ ports.clear_project_build('liblzma')
|
+ ports.clear_project_build('liblzma')
|
||||||
+
|
+
|
||||||
+ source_path = os.path.join(ports.get_dir(), 'liblzma', 'xz-' + VERSION)
|
+ source_path = os.path.join(ports.get_dir(), 'liblzma', 'xz-' + VERSION)
|
||||||
@@ -90,7 +90,6 @@ index 00000000000..e9567ef36ff
|
|||||||
+
|
+
|
||||||
+ open(os.path.join(dest_path, 'src', 'config.h'), 'w').write(config_h)
|
+ open(os.path.join(dest_path, 'src', 'config.h'), 'w').write(config_h)
|
||||||
+
|
+
|
||||||
+ final = os.path.join(dest_path, libname)
|
|
||||||
+ include_dirs = [os.path.join(dest_path, 'src', 'liblzma', p) for p in include_dirs_rel]
|
+ include_dirs = [os.path.join(dest_path, 'src', 'liblzma', p) for p in include_dirs_rel]
|
||||||
+ ports.build_port(os.path.join(dest_path, 'src'), final, flags=build_flags, exclude_dirs=exclude_dirs, exclude_files=exclude_files, includes=include_dirs)
|
+ ports.build_port(os.path.join(dest_path, 'src'), final, flags=build_flags, exclude_dirs=exclude_dirs, exclude_files=exclude_files, includes=include_dirs)
|
||||||
+
|
+
|
||||||
@@ -99,11 +98,11 @@ index 00000000000..e9567ef36ff
|
|||||||
+
|
+
|
||||||
+ return final
|
+ return final
|
||||||
+
|
+
|
||||||
+ return [shared.Cache.get(libname, create, what='port')]
|
+ return [shared.Cache.get_lib(libname, create, what='port')]
|
||||||
+
|
+
|
||||||
+
|
+
|
||||||
+def clear(ports, settings, shared):
|
+def clear(ports, settings, shared):
|
||||||
+ shared.Cache.erase_file(ports.get_lib_name('liblzma'))
|
+ shared.Cache.erase_file('liblzma.a')
|
||||||
+
|
+
|
||||||
+
|
+
|
||||||
+def process_args(ports):
|
+def process_args(ports):
|
||||||
|
|||||||
13
os/emscripten/fontconfig-2.13.1.patch
Normal file
13
os/emscripten/fontconfig-2.13.1.patch
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
Only in fontconfig-2.13.1-new: Makefile
|
||||||
|
diff -u -r fontconfig-2.13.1/Makefile.am fontconfig-2.13.1-new/Makefile.am
|
||||||
|
--- fontconfig-2.13.1/Makefile.am 2018-06-05 13:36:38.000000000 +0300
|
||||||
|
+++ fontconfig-2.13.1-new/Makefile.am 2021-05-05 22:32:49.230804234 +0300
|
||||||
|
@@ -24,7 +24,7 @@
|
||||||
|
SUBDIRS=fontconfig fc-case fc-lang src \
|
||||||
|
fc-cache fc-cat fc-conflist fc-list fc-match \
|
||||||
|
fc-pattern fc-query fc-scan fc-validate conf.d \
|
||||||
|
- its po po-conf test
|
||||||
|
+ its po po-conf
|
||||||
|
if ENABLE_DOCS
|
||||||
|
SUBDIRS += doc
|
||||||
|
endif
|
||||||
16
os/emscripten/openttd.webapp
Normal file
16
os/emscripten/openttd.webapp
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"name": "OpenTTD",
|
||||||
|
"short_name": "OpenTTD",
|
||||||
|
"description": "Open-source transport business simulation game",
|
||||||
|
"display": "fullscreen",
|
||||||
|
"orientation": "landscape",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "openttd.256.png",
|
||||||
|
"sizes": "256x256",
|
||||||
|
"type": "image/png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"start_url": "openttd.html",
|
||||||
|
"background_color": "green"
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
Module.arguments.push('-mnull', '-snull', '-vsdl:relative_mode');
|
Module.arguments.push('-d1');
|
||||||
Module['websocket'] = { url: function(host, port, proto) {
|
Module['websocket'] = { url: function(host, port, proto) {
|
||||||
/* openttd.org hosts a WebSocket proxy for the content service. */
|
/* openttd.org hosts a WebSocket proxy for the content service. */
|
||||||
if (host == "content.openttd.org" && port == 3978 && proto == "tcp") {
|
if (host == "content.openttd.org" && port == 3978 && proto == "tcp") {
|
||||||
@@ -13,16 +13,20 @@ Module['websocket'] = { url: function(host, port, proto) {
|
|||||||
} };
|
} };
|
||||||
|
|
||||||
Module.preRun.push(function() {
|
Module.preRun.push(function() {
|
||||||
personal_dir = '/home/web_user/.openttd';
|
const personal_dir = '/home/web_user/.local/share/openttd';
|
||||||
content_download_dir = personal_dir + '/content_download'
|
const content_download_dir = personal_dir + '/content_download'
|
||||||
|
|
||||||
/* Because of the "-c" above, all user-data is stored in /user_data. */
|
/* Because of the "-c" above, all user-data is stored in /user_data. */
|
||||||
FS.mkdir(personal_dir);
|
FS.mount(IDBFS, {}, '/home/web_user');
|
||||||
FS.mount(IDBFS, {}, personal_dir);
|
|
||||||
|
|
||||||
Module.addRunDependency('syncfs');
|
Module.addRunDependency('syncfs');
|
||||||
FS.syncfs(true, function (err) {
|
FS.syncfs(true, function (err) {
|
||||||
/* FS.mkdir() tends to fail if parent folders do not exist. */
|
/* FS.mkdir() tends to fail if parent folders do not exist. */
|
||||||
|
if (!FS.analyzePath(personal_dir).exists) {
|
||||||
|
FS.mkdir('/home/web_user/.local');
|
||||||
|
FS.mkdir('/home/web_user/.local/share');
|
||||||
|
FS.mkdir(personal_dir);
|
||||||
|
}
|
||||||
if (!FS.analyzePath(content_download_dir).exists) {
|
if (!FS.analyzePath(content_download_dir).exists) {
|
||||||
FS.mkdir(content_download_dir);
|
FS.mkdir(content_download_dir);
|
||||||
}
|
}
|
||||||
@@ -31,7 +35,7 @@ Module.preRun.push(function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Check if the OpenGFX baseset is already downloaded. */
|
/* Check if the OpenGFX baseset is already downloaded. */
|
||||||
if (!FS.analyzePath(content_download_dir + '/baseset/opengfx-0.6.0.tar').exists) {
|
if (false && !FS.analyzePath(content_download_dir + '/baseset/opengfx-0.6.0.tar').exists) {
|
||||||
window.openttd_downloaded_opengfx = true;
|
window.openttd_downloaded_opengfx = true;
|
||||||
FS.createPreloadedFile(content_download_dir + '/baseset', 'opengfx-0.6.0.tar', 'https://installer.cdn.openttd.org/emscripten/opengfx-0.6.0.tar', true, true);
|
FS.createPreloadedFile(content_download_dir + '/baseset', 'opengfx-0.6.0.tar', 'https://installer.cdn.openttd.org/emscripten/opengfx-0.6.0.tar', true, true);
|
||||||
} else {
|
} else {
|
||||||
@@ -64,13 +68,6 @@ Module.preRun.push(function() {
|
|||||||
Module.onAbort();
|
Module.onAbort();
|
||||||
}
|
}
|
||||||
|
|
||||||
window.openttd_server_list = function() {
|
|
||||||
add_server = Module.cwrap("em_openttd_add_server", null, ["string", "number"]);
|
|
||||||
|
|
||||||
/* Add servers that support WebSocket here. Example:
|
|
||||||
* add_server("localhost", 3979); */
|
|
||||||
}
|
|
||||||
|
|
||||||
var leftButtonDown = false;
|
var leftButtonDown = false;
|
||||||
document.addEventListener("mousedown", e => {
|
document.addEventListener("mousedown", e => {
|
||||||
if (e.button == 0) {
|
if (e.button == 0) {
|
||||||
|
|||||||
@@ -3,7 +3,10 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||||
<title>OpenTTD</title>
|
<title>OpenTTD</title>
|
||||||
|
<link rel="manifest" href="openttd.webapp">
|
||||||
|
<link rel="icon" href="openttd.256.png">
|
||||||
<style>
|
<style>
|
||||||
body {
|
body {
|
||||||
font-family: Tahoma, Arial, Helvetica, sans-serif;
|
font-family: Tahoma, Arial, Helvetica, sans-serif;
|
||||||
@@ -79,6 +82,22 @@
|
|||||||
padding: 4px 4px;
|
padding: 4px 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div.textinput {
|
||||||
|
position: absolute;
|
||||||
|
width: 100%;
|
||||||
|
z-index: 4;
|
||||||
|
display: "none";
|
||||||
|
}
|
||||||
|
|
||||||
|
#textinputbox {
|
||||||
|
width: 100%;
|
||||||
|
font-size: xx-large;
|
||||||
|
}
|
||||||
|
|
||||||
|
#textinputbutton {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
canvas.emscripten {
|
canvas.emscripten {
|
||||||
border: 0px none;
|
border: 0px none;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@@ -90,6 +109,9 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="background">
|
<div class="background">
|
||||||
|
<a href="https://hits.seeyoufarm.com">
|
||||||
|
<img src="https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fpelya.github.io%2Fopenttd-touch-webapp&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false"/>
|
||||||
|
</a>
|
||||||
<div id="box">
|
<div id="box">
|
||||||
<div id="title">
|
<div id="title">
|
||||||
Loading ...
|
Loading ...
|
||||||
@@ -103,6 +125,11 @@
|
|||||||
Warning: savegames are stored in the Indexed DB of your browser.<br/>Your browser can delete savegames without notice!
|
Warning: savegames are stored in the Indexed DB of your browser.<br/>Your browser can delete savegames without notice!
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="textinput" id="textinput">
|
||||||
|
<input type="textinput" id="textinputbox" value="" onfocusout="Module.finishTextInput();" tabindex=1></input>
|
||||||
|
<br/>
|
||||||
|
<input type="submit" id="textinputbutton" value="OK" onclick="Module.finishTextInput();" ></input>
|
||||||
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()" tabindex=-1></canvas>
|
<canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()" tabindex=-1></canvas>
|
||||||
</div>
|
</div>
|
||||||
@@ -174,6 +201,8 @@
|
|||||||
|
|
||||||
document.getElementById("title").innerHTML = "Thank you for playing!";
|
document.getElementById("title").innerHTML = "Thank you for playing!";
|
||||||
document.getElementById("message").innerHTML = "We hope you enjoyed OpenTTD!<br/><br/>Reload your browser to restart the game.";
|
document.getElementById("message").innerHTML = "We hope you enjoyed OpenTTD!<br/><br/>Reload your browser to restart the game.";
|
||||||
|
|
||||||
|
FS.syncfs(false, function (err) { window.close('','_parent',''); });
|
||||||
},
|
},
|
||||||
|
|
||||||
onAbort: function() {
|
onAbort: function() {
|
||||||
@@ -193,9 +222,53 @@
|
|||||||
document.getElementById("filesystem").style.display = "none";
|
document.getElementById("filesystem").style.display = "none";
|
||||||
}, 300);
|
}, 300);
|
||||||
}, 10000);
|
}, 10000);
|
||||||
}
|
},
|
||||||
|
|
||||||
|
textInputValue: null,
|
||||||
|
|
||||||
|
startTextInput: function(text) {
|
||||||
|
if (document.getElementById("textinput").style.display != "none") {
|
||||||
|
//Module.print("Text input already started");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
//Module.print("Start text input!");
|
||||||
|
Module.textInputValue = null;
|
||||||
|
document.getElementById("textinput").style.display = "block";
|
||||||
|
document.getElementById("textinputbox").value = text;
|
||||||
|
document.getElementById("textinputbox").focus();
|
||||||
|
document.getElementById("textinputbox").onkeyup = function(evt) {
|
||||||
|
if (evt.key === "Enter") {
|
||||||
|
Module.finishTextInput();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
getTextInput: function() {
|
||||||
|
if (Module.textInputValue !== null) {
|
||||||
|
var value = Module.textInputValue;
|
||||||
|
Module.textInputValue = null;
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
|
|
||||||
|
finishTextInput: function() {
|
||||||
|
if (document.getElementById("textinput").style.display == "none") {
|
||||||
|
//Module.print("Text input not started");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
//Module.print("Text input finished!");
|
||||||
|
Module.textInputValue = document.getElementById("textinputbox").value;
|
||||||
|
Module.print(Module.textInputValue);
|
||||||
|
document.getElementById("textinput").style.display = "none";
|
||||||
|
document.getElementById("canvas").focus();
|
||||||
|
},
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
document.getElementById("textinput").style.display = "none"; // It's not hiding with CSS
|
||||||
|
document.getElementById("canvas").focus();
|
||||||
|
|
||||||
window.onerror = function() {
|
window.onerror = function() {
|
||||||
Module.onAbort();
|
Module.onAbort();
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ class Regression extends AIInfo {
|
|||||||
function GetAPIVersion() { return "1.11"; }
|
function GetAPIVersion() { return "1.11"; }
|
||||||
function GetDate() { return "2007-03-18"; }
|
function GetDate() { return "2007-03-18"; }
|
||||||
function CreateInstance() { return "Regression"; }
|
function CreateInstance() { return "Regression"; }
|
||||||
|
function UseAsRandomAI() { return false; }
|
||||||
}
|
}
|
||||||
|
|
||||||
RegisterAI(Regression());
|
RegisterAI(Regression());
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ class StationList extends AIInfo {
|
|||||||
function GetAPIVersion() { return "1.11"; }
|
function GetAPIVersion() { return "1.11"; }
|
||||||
function GetDate() { return "2007-03-18"; }
|
function GetDate() { return "2007-03-18"; }
|
||||||
function CreateInstance() { return "StationList"; }
|
function CreateInstance() { return "StationList"; }
|
||||||
|
function UseAsRandomAI() { return false; }
|
||||||
}
|
}
|
||||||
|
|
||||||
RegisterAI(StationList());
|
RegisterAI(StationList());
|
||||||
|
|||||||
12
src/3rdparty/squirrel/squirrel/sqarray.h
vendored
12
src/3rdparty/squirrel/squirrel/sqarray.h
vendored
@@ -17,9 +17,9 @@ public:
|
|||||||
return newarray;
|
return newarray;
|
||||||
}
|
}
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue) override;
|
||||||
#endif
|
#endif
|
||||||
void Finalize(){
|
void Finalize() override {
|
||||||
_values.resize(0);
|
_values.resize(0);
|
||||||
}
|
}
|
||||||
bool Get(const SQInteger nidx,SQObjectPtr &val)
|
bool Get(const SQInteger nidx,SQObjectPtr &val)
|
||||||
@@ -78,9 +78,13 @@ public:
|
|||||||
ShrinkIfNeeded();
|
ShrinkIfNeeded();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
void Release()
|
void Release() override
|
||||||
{
|
{
|
||||||
sq_delete(this,SQArray);
|
this->_sharedstate->DelayFinalFree(this);
|
||||||
|
}
|
||||||
|
void FinalFree() override
|
||||||
|
{
|
||||||
|
sq_delete(this, SQArray);
|
||||||
}
|
}
|
||||||
SQObjectPtrVec _values;
|
SQObjectPtrVec _values;
|
||||||
};
|
};
|
||||||
|
|||||||
18
src/3rdparty/squirrel/squirrel/sqclass.h
vendored
18
src/3rdparty/squirrel/squirrel/sqclass.h
vendored
@@ -59,7 +59,7 @@ public:
|
|||||||
}
|
}
|
||||||
void Finalize();
|
void Finalize();
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable ** );
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue);
|
||||||
#endif
|
#endif
|
||||||
SQInteger Next(const SQObjectPtr &refpos, SQObjectPtr &outkey, SQObjectPtr &outval);
|
SQInteger Next(const SQObjectPtr &refpos, SQObjectPtr &outkey, SQObjectPtr &outval);
|
||||||
SQInstance *CreateInstance();
|
SQInstance *CreateInstance();
|
||||||
@@ -126,31 +126,33 @@ public:
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
void Release() {
|
void Release() override {
|
||||||
_uiRef++;
|
_uiRef++;
|
||||||
try {
|
try {
|
||||||
if (_hook) { _hook(_userpointer,0);}
|
if (_hook) { _hook(_userpointer,0);}
|
||||||
} catch (...) {
|
} catch (...) {
|
||||||
_uiRef--;
|
_uiRef--;
|
||||||
if (_uiRef == 0) {
|
if (_uiRef == 0) {
|
||||||
SQInteger size = _memsize;
|
this->_sharedstate->DelayFinalFree(this);
|
||||||
this->~SQInstance();
|
|
||||||
SQ_FREE(this, size);
|
|
||||||
}
|
}
|
||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
_uiRef--;
|
_uiRef--;
|
||||||
if(_uiRef > 0) return;
|
if(_uiRef > 0) return;
|
||||||
|
this->_sharedstate->DelayFinalFree(this);
|
||||||
|
}
|
||||||
|
void FinalFree() override
|
||||||
|
{
|
||||||
SQInteger size = _memsize;
|
SQInteger size = _memsize;
|
||||||
this->~SQInstance();
|
this->~SQInstance();
|
||||||
SQ_FREE(this, size);
|
SQ_FREE(this, size);
|
||||||
}
|
}
|
||||||
void Finalize();
|
void Finalize() override;
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable ** );
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue) override;
|
||||||
#endif
|
#endif
|
||||||
bool InstanceOf(SQClass *trg);
|
bool InstanceOf(SQClass *trg);
|
||||||
bool GetMetaMethod(SQVM *v,SQMetaMethod mm,SQObjectPtr &res);
|
bool GetMetaMethod(SQVM *v,SQMetaMethod mm,SQObjectPtr &res) override;
|
||||||
|
|
||||||
SQClass *_class;
|
SQClass *_class;
|
||||||
SQUserPointer _userpointer;
|
SQUserPointer _userpointer;
|
||||||
|
|||||||
6
src/3rdparty/squirrel/squirrel/sqclosure.h
vendored
6
src/3rdparty/squirrel/squirrel/sqclosure.h
vendored
@@ -32,7 +32,7 @@ public:
|
|||||||
bool Save(SQVM *v,SQUserPointer up,SQWRITEFUNC write);
|
bool Save(SQVM *v,SQUserPointer up,SQWRITEFUNC write);
|
||||||
static bool Load(SQVM *v,SQUserPointer up,SQREADFUNC read,SQObjectPtr &ret);
|
static bool Load(SQVM *v,SQUserPointer up,SQREADFUNC read,SQObjectPtr &ret);
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue);
|
||||||
void Finalize(){_outervalues.resize(0); }
|
void Finalize(){_outervalues.resize(0); }
|
||||||
#endif
|
#endif
|
||||||
SQObjectPtr _env;
|
SQObjectPtr _env;
|
||||||
@@ -66,7 +66,7 @@ public:
|
|||||||
bool Yield(SQVM *v);
|
bool Yield(SQVM *v);
|
||||||
bool Resume(SQVM *v,SQInteger target);
|
bool Resume(SQVM *v,SQInteger target);
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue);
|
||||||
void Finalize(){_stack.resize(0);_closure=_null_;}
|
void Finalize(){_stack.resize(0);_closure=_null_;}
|
||||||
#endif
|
#endif
|
||||||
SQObjectPtr _closure;
|
SQObjectPtr _closure;
|
||||||
@@ -106,7 +106,7 @@ public:
|
|||||||
sq_delete(this,SQNativeClosure);
|
sq_delete(this,SQNativeClosure);
|
||||||
}
|
}
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue);
|
||||||
void Finalize(){_outervalues.resize(0);}
|
void Finalize(){_outervalues.resize(0);}
|
||||||
#endif
|
#endif
|
||||||
SQInteger _nparamscheck;
|
SQInteger _nparamscheck;
|
||||||
|
|||||||
@@ -836,6 +836,7 @@ public:
|
|||||||
SQInteger val = _fs->PopTarget();
|
SQInteger val = _fs->PopTarget();
|
||||||
SQInteger key = _fs->PopTarget();
|
SQInteger key = _fs->PopTarget();
|
||||||
SQInteger attrs = hasattrs ? _fs->PopTarget():-1;
|
SQInteger attrs = hasattrs ? _fs->PopTarget():-1;
|
||||||
|
(void)attrs; // assert only
|
||||||
assert((hasattrs && attrs == key-1) || !hasattrs);
|
assert((hasattrs && attrs == key-1) || !hasattrs);
|
||||||
unsigned char flags = (hasattrs?NEW_SLOT_ATTRIBUTES_FLAG:0)|(isstatic?NEW_SLOT_STATIC_FLAG:0);
|
unsigned char flags = (hasattrs?NEW_SLOT_ATTRIBUTES_FLAG:0)|(isstatic?NEW_SLOT_STATIC_FLAG:0);
|
||||||
SQInteger table = _fs->TopTarget(); //<<BECAUSE OF THIS NO COMMON EMIT FUNC IS POSSIBLE
|
SQInteger table = _fs->TopTarget(); //<<BECAUSE OF THIS NO COMMON EMIT FUNC IS POSSIBLE
|
||||||
|
|||||||
131
src/3rdparty/squirrel/squirrel/sqobject.cpp
vendored
131
src/3rdparty/squirrel/squirrel/sqobject.cpp
vendored
@@ -486,104 +486,81 @@ bool SQFunctionProto::Load(SQVM *v,SQUserPointer up,SQREADFUNC read,SQObjectPtr
|
|||||||
|
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
|
|
||||||
#define START_MARK() if(!(_uiRef&MARK_FLAG)){ \
|
void SQVM::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
_uiRef|=MARK_FLAG;
|
|
||||||
|
|
||||||
#define END_MARK() RemoveFromChain(&_sharedstate->_gc_chain, this); \
|
|
||||||
AddToChain(chain, this); }
|
|
||||||
|
|
||||||
void SQVM::Mark(SQCollectable **chain)
|
|
||||||
{
|
{
|
||||||
START_MARK()
|
SQSharedState::EnqueueMarkObject(_lasterror,queue);
|
||||||
SQSharedState::MarkObject(_lasterror,chain);
|
SQSharedState::EnqueueMarkObject(_errorhandler,queue);
|
||||||
SQSharedState::MarkObject(_errorhandler,chain);
|
SQSharedState::EnqueueMarkObject(_debughook,queue);
|
||||||
SQSharedState::MarkObject(_debughook,chain);
|
SQSharedState::EnqueueMarkObject(_roottable, queue);
|
||||||
SQSharedState::MarkObject(_roottable, chain);
|
SQSharedState::EnqueueMarkObject(temp_reg, queue);
|
||||||
SQSharedState::MarkObject(temp_reg, chain);
|
for(SQUnsignedInteger i = 0; i < _stack.size(); i++) SQSharedState::EnqueueMarkObject(_stack[i], queue);
|
||||||
for(SQUnsignedInteger i = 0; i < _stack.size(); i++) SQSharedState::MarkObject(_stack[i], chain);
|
for(SQUnsignedInteger j = 0; j < _vargsstack.size(); j++) SQSharedState::EnqueueMarkObject(_vargsstack[j], queue);
|
||||||
for(SQUnsignedInteger j = 0; j < _vargsstack.size(); j++) SQSharedState::MarkObject(_vargsstack[j], chain);
|
for(SQInteger k = 0; k < _callsstacksize; k++) SQSharedState::EnqueueMarkObject(_callsstack[k]._closure, queue);
|
||||||
for(SQInteger k = 0; k < _callsstacksize; k++) SQSharedState::MarkObject(_callsstack[k]._closure, chain);
|
|
||||||
END_MARK()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQArray::Mark(SQCollectable **chain)
|
void SQArray::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
START_MARK()
|
SQInteger len = _values.size();
|
||||||
SQInteger len = _values.size();
|
for(SQInteger i = 0;i < len; i++) SQSharedState::EnqueueMarkObject(_values[i], queue);
|
||||||
for(SQInteger i = 0;i < len; i++) SQSharedState::MarkObject(_values[i], chain);
|
|
||||||
END_MARK()
|
|
||||||
}
|
|
||||||
void SQTable::Mark(SQCollectable **chain)
|
|
||||||
{
|
|
||||||
START_MARK()
|
|
||||||
if(_delegate) _delegate->Mark(chain);
|
|
||||||
SQInteger len = _numofnodes;
|
|
||||||
for(SQInteger i = 0; i < len; i++){
|
|
||||||
SQSharedState::MarkObject(_nodes[i].key, chain);
|
|
||||||
SQSharedState::MarkObject(_nodes[i].val, chain);
|
|
||||||
}
|
|
||||||
END_MARK()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQClass::Mark(SQCollectable **chain)
|
void SQTable::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
START_MARK()
|
if(_delegate) queue.Enqueue(_delegate);
|
||||||
_members->Mark(chain);
|
SQInteger len = _numofnodes;
|
||||||
if(_base) _base->Mark(chain);
|
for(SQInteger i = 0; i < len; i++){
|
||||||
SQSharedState::MarkObject(_attributes, chain);
|
SQSharedState::EnqueueMarkObject(_nodes[i].key, queue);
|
||||||
for(SQUnsignedInteger i =0; i< _defaultvalues.size(); i++) {
|
SQSharedState::EnqueueMarkObject(_nodes[i].val, queue);
|
||||||
SQSharedState::MarkObject(_defaultvalues[i].val, chain);
|
}
|
||||||
SQSharedState::MarkObject(_defaultvalues[i].attrs, chain);
|
|
||||||
}
|
|
||||||
for(SQUnsignedInteger j =0; j< _methods.size(); j++) {
|
|
||||||
SQSharedState::MarkObject(_methods[j].val, chain);
|
|
||||||
SQSharedState::MarkObject(_methods[j].attrs, chain);
|
|
||||||
}
|
|
||||||
for(SQUnsignedInteger k =0; k< _metamethods.size(); k++) {
|
|
||||||
SQSharedState::MarkObject(_metamethods[k], chain);
|
|
||||||
}
|
|
||||||
END_MARK()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQInstance::Mark(SQCollectable **chain)
|
void SQClass::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
START_MARK()
|
queue.Enqueue(_members);
|
||||||
_class->Mark(chain);
|
if(_base) queue.Enqueue(_base);
|
||||||
SQUnsignedInteger nvalues = _class->_defaultvalues.size();
|
SQSharedState::EnqueueMarkObject(_attributes, queue);
|
||||||
for(SQUnsignedInteger i =0; i< nvalues; i++) {
|
for(SQUnsignedInteger i =0; i< _defaultvalues.size(); i++) {
|
||||||
SQSharedState::MarkObject(_values[i], chain);
|
SQSharedState::EnqueueMarkObject(_defaultvalues[i].val, queue);
|
||||||
}
|
SQSharedState::EnqueueMarkObject(_defaultvalues[i].attrs, queue);
|
||||||
END_MARK()
|
}
|
||||||
|
for(SQUnsignedInteger j =0; j< _methods.size(); j++) {
|
||||||
|
SQSharedState::EnqueueMarkObject(_methods[j].val, queue);
|
||||||
|
SQSharedState::EnqueueMarkObject(_methods[j].attrs, queue);
|
||||||
|
}
|
||||||
|
for(SQUnsignedInteger k =0; k< _metamethods.size(); k++) {
|
||||||
|
SQSharedState::EnqueueMarkObject(_metamethods[k], queue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQGenerator::Mark(SQCollectable **chain)
|
void SQInstance::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
START_MARK()
|
queue.Enqueue(_class);
|
||||||
for(SQUnsignedInteger i = 0; i < _stack.size(); i++) SQSharedState::MarkObject(_stack[i], chain);
|
SQUnsignedInteger nvalues = _class->_defaultvalues.size();
|
||||||
for(SQUnsignedInteger j = 0; j < _vargsstack.size(); j++) SQSharedState::MarkObject(_vargsstack[j], chain);
|
for(SQUnsignedInteger i =0; i< nvalues; i++) {
|
||||||
SQSharedState::MarkObject(_closure, chain);
|
SQSharedState::EnqueueMarkObject(_values[i], queue);
|
||||||
END_MARK()
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQClosure::Mark(SQCollectable **chain)
|
void SQGenerator::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
START_MARK()
|
for(SQUnsignedInteger i = 0; i < _stack.size(); i++) SQSharedState::EnqueueMarkObject(_stack[i], queue);
|
||||||
for(SQUnsignedInteger i = 0; i < _outervalues.size(); i++) SQSharedState::MarkObject(_outervalues[i], chain);
|
for(SQUnsignedInteger j = 0; j < _vargsstack.size(); j++) SQSharedState::EnqueueMarkObject(_vargsstack[j], queue);
|
||||||
for(SQUnsignedInteger i = 0; i < _defaultparams.size(); i++) SQSharedState::MarkObject(_defaultparams[i], chain);
|
SQSharedState::EnqueueMarkObject(_closure, queue);
|
||||||
END_MARK()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQNativeClosure::Mark(SQCollectable **chain)
|
void SQClosure::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
START_MARK()
|
for(SQUnsignedInteger i = 0; i < _outervalues.size(); i++) SQSharedState::EnqueueMarkObject(_outervalues[i], queue);
|
||||||
for(SQUnsignedInteger i = 0; i < _outervalues.size(); i++) SQSharedState::MarkObject(_outervalues[i], chain);
|
for(SQUnsignedInteger i = 0; i < _defaultparams.size(); i++) SQSharedState::EnqueueMarkObject(_defaultparams[i], queue);
|
||||||
END_MARK()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQUserData::Mark(SQCollectable **chain){
|
void SQNativeClosure::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue)
|
||||||
START_MARK()
|
{
|
||||||
if(_delegate) _delegate->Mark(chain);
|
for(SQUnsignedInteger i = 0; i < _outervalues.size(); i++) SQSharedState::EnqueueMarkObject(_outervalues[i], queue);
|
||||||
END_MARK()
|
}
|
||||||
|
|
||||||
|
void SQUserData::EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue){
|
||||||
|
if(_delegate) queue.Enqueue(_delegate);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SQCollectable::UnMark() { _uiRef&=~MARK_FLAG; }
|
void SQCollectable::UnMark() { _uiRef&=~MARK_FLAG; }
|
||||||
|
|||||||
47
src/3rdparty/squirrel/squirrel/sqobject.h
vendored
47
src/3rdparty/squirrel/squirrel/sqobject.h
vendored
@@ -2,7 +2,7 @@
|
|||||||
#ifndef _SQOBJECT_H_
|
#ifndef _SQOBJECT_H_
|
||||||
#define _SQOBJECT_H_
|
#define _SQOBJECT_H_
|
||||||
|
|
||||||
#include <limits>
|
#include <vector>
|
||||||
#include "squtils.h"
|
#include "squtils.h"
|
||||||
|
|
||||||
#define SQ_CLOSURESTREAM_HEAD (('S'<<24)|('Q'<<16)|('I'<<8)|('R'))
|
#define SQ_CLOSURESTREAM_HEAD (('S'<<24)|('Q'<<16)|('I'<<8)|('R'))
|
||||||
@@ -345,11 +345,54 @@ struct SQCollectable : public SQRefCounted {
|
|||||||
SQCollectable *_prev;
|
SQCollectable *_prev;
|
||||||
SQSharedState *_sharedstate;
|
SQSharedState *_sharedstate;
|
||||||
virtual void Release()=0;
|
virtual void Release()=0;
|
||||||
virtual void Mark(SQCollectable **chain)=0;
|
virtual void EnqueueMarkObjectForChildren(class SQGCMarkerQueue &queue)=0;
|
||||||
void UnMark();
|
void UnMark();
|
||||||
virtual void Finalize()=0;
|
virtual void Finalize()=0;
|
||||||
static void AddToChain(SQCollectable **chain,SQCollectable *c);
|
static void AddToChain(SQCollectable **chain,SQCollectable *c);
|
||||||
static void RemoveFromChain(SQCollectable **chain,SQCollectable *c);
|
static void RemoveFromChain(SQCollectable **chain,SQCollectable *c);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper to perform the final memory freeing of this instance. Since the destructor might
|
||||||
|
* release more objects, this can cause a very deep recursion. As such, the calls to this
|
||||||
|
* are to be done via _sharedstate->DelayFinalFree which ensures the calls to this method
|
||||||
|
* are done in an iterative instead of recursive approach.
|
||||||
|
*/
|
||||||
|
virtual void FinalFree() {}
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper container for state to change the garbage collection from a recursive to an iterative approach.
|
||||||
|
* The iterative approach provides effectively a depth first search approach.
|
||||||
|
*/
|
||||||
|
class SQGCMarkerQueue {
|
||||||
|
std::vector<SQCollectable*> stack; ///< The elements to still process, with the most recent elements at the back.
|
||||||
|
public:
|
||||||
|
/** Whether there are any elements left to process. */
|
||||||
|
bool IsEmpty() { return this->stack.empty(); }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the most recently added element from the queue.
|
||||||
|
* Removal when the queue is empty results in undefined behaviour.
|
||||||
|
*/
|
||||||
|
SQCollectable *Pop()
|
||||||
|
{
|
||||||
|
SQCollectable *collectable = this->stack.back();
|
||||||
|
this->stack.pop_back();
|
||||||
|
return collectable;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a collectable to the queue, but only when it has not been marked yet.
|
||||||
|
* When adding it to the queue, the collectable will be marked, so subsequent calls
|
||||||
|
* will not add it again.
|
||||||
|
*/
|
||||||
|
void Enqueue(SQCollectable *collectable)
|
||||||
|
{
|
||||||
|
if ((collectable->_uiRef & MARK_FLAG) == 0) {
|
||||||
|
collectable->_uiRef |= MARK_FLAG;
|
||||||
|
this->stack.push_back(collectable);
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
98
src/3rdparty/squirrel/squirrel/sqstate.cpp
vendored
98
src/3rdparty/squirrel/squirrel/sqstate.cpp
vendored
@@ -99,6 +99,7 @@ SQSharedState::SQSharedState()
|
|||||||
_notifyallexceptions = false;
|
_notifyallexceptions = false;
|
||||||
_scratchpad=NULL;
|
_scratchpad=NULL;
|
||||||
_scratchpadsize=0;
|
_scratchpadsize=0;
|
||||||
|
_collectable_free_processing = false;
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
_gc_chain=NULL;
|
_gc_chain=NULL;
|
||||||
#endif
|
#endif
|
||||||
@@ -226,20 +227,48 @@ SQInteger SQSharedState::GetMetaMethodIdxByName(const SQObjectPtr &name)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper function that is to be used instead of calling FinalFree directly on the instance,
|
||||||
|
* so the frees can happen iteratively. This as in the FinalFree the references to any other
|
||||||
|
* objects are released, which can cause those object to be freed yielding a potentially
|
||||||
|
* very deep stack in case of for example a link list.
|
||||||
|
*
|
||||||
|
* This is done internally by a vector onto which the to be freed instances are pushed. When
|
||||||
|
* this is called when not already processing, this method will actually call the FinalFree
|
||||||
|
* function which might cause more elements to end up in the queue which this method then
|
||||||
|
* picks up continueing until it has processed all instances in that queue.
|
||||||
|
* @param collectable The collectable to (eventually) free.
|
||||||
|
*/
|
||||||
|
void SQSharedState::DelayFinalFree(SQCollectable *collectable)
|
||||||
|
{
|
||||||
|
this->_collectable_free_queue.push_back(collectable);
|
||||||
|
|
||||||
|
if (!this->_collectable_free_processing) {
|
||||||
|
this->_collectable_free_processing = true;
|
||||||
|
while (!this->_collectable_free_queue.empty()) {
|
||||||
|
SQCollectable *collectable = this->_collectable_free_queue.back();
|
||||||
|
this->_collectable_free_queue.pop_back();
|
||||||
|
collectable->FinalFree();
|
||||||
|
}
|
||||||
|
this->_collectable_free_processing = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
|
|
||||||
void SQSharedState::MarkObject(SQObjectPtr &o,SQCollectable **chain)
|
void SQSharedState::EnqueueMarkObject(SQObjectPtr &o,SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
switch(type(o)){
|
switch(type(o)){
|
||||||
case OT_TABLE:_table(o)->Mark(chain);break;
|
case OT_TABLE:queue.Enqueue(_table(o));break;
|
||||||
case OT_ARRAY:_array(o)->Mark(chain);break;
|
case OT_ARRAY:queue.Enqueue(_array(o));break;
|
||||||
case OT_USERDATA:_userdata(o)->Mark(chain);break;
|
case OT_USERDATA:queue.Enqueue(_userdata(o));break;
|
||||||
case OT_CLOSURE:_closure(o)->Mark(chain);break;
|
case OT_CLOSURE:queue.Enqueue(_closure(o));break;
|
||||||
case OT_NATIVECLOSURE:_nativeclosure(o)->Mark(chain);break;
|
case OT_NATIVECLOSURE:queue.Enqueue(_nativeclosure(o));break;
|
||||||
case OT_GENERATOR:_generator(o)->Mark(chain);break;
|
case OT_GENERATOR:queue.Enqueue(_generator(o));break;
|
||||||
case OT_THREAD:_thread(o)->Mark(chain);break;
|
case OT_THREAD:queue.Enqueue(_thread(o));break;
|
||||||
case OT_CLASS:_class(o)->Mark(chain);break;
|
case OT_CLASS:queue.Enqueue(_class(o));break;
|
||||||
case OT_INSTANCE:_instance(o)->Mark(chain);break;
|
case OT_INSTANCE:queue.Enqueue(_instance(o));break;
|
||||||
default: break; //shutup compiler
|
default: break; //shutup compiler
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -248,25 +277,36 @@ void SQSharedState::MarkObject(SQObjectPtr &o,SQCollectable **chain)
|
|||||||
SQInteger SQSharedState::CollectGarbage(SQVM *vm)
|
SQInteger SQSharedState::CollectGarbage(SQVM *vm)
|
||||||
{
|
{
|
||||||
SQInteger n=0;
|
SQInteger n=0;
|
||||||
SQCollectable *tchain=NULL;
|
|
||||||
SQVM *vms = _thread(_root_vm);
|
SQVM *vms = _thread(_root_vm);
|
||||||
|
|
||||||
vms->Mark(&tchain);
|
SQGCMarkerQueue queue;
|
||||||
|
queue.Enqueue(vms);
|
||||||
|
#ifdef WITH_ASSERT
|
||||||
SQInteger x = _table(_thread(_root_vm)->_roottable)->CountUsed();
|
SQInteger x = _table(_thread(_root_vm)->_roottable)->CountUsed();
|
||||||
_refs_table.Mark(&tchain);
|
#endif
|
||||||
MarkObject(_registry,&tchain);
|
_refs_table.EnqueueMarkObject(queue);
|
||||||
MarkObject(_consts,&tchain);
|
EnqueueMarkObject(_registry,queue);
|
||||||
MarkObject(_metamethodsmap,&tchain);
|
EnqueueMarkObject(_consts,queue);
|
||||||
MarkObject(_table_default_delegate,&tchain);
|
EnqueueMarkObject(_metamethodsmap,queue);
|
||||||
MarkObject(_array_default_delegate,&tchain);
|
EnqueueMarkObject(_table_default_delegate,queue);
|
||||||
MarkObject(_string_default_delegate,&tchain);
|
EnqueueMarkObject(_array_default_delegate,queue);
|
||||||
MarkObject(_number_default_delegate,&tchain);
|
EnqueueMarkObject(_string_default_delegate,queue);
|
||||||
MarkObject(_generator_default_delegate,&tchain);
|
EnqueueMarkObject(_number_default_delegate,queue);
|
||||||
MarkObject(_thread_default_delegate,&tchain);
|
EnqueueMarkObject(_generator_default_delegate,queue);
|
||||||
MarkObject(_closure_default_delegate,&tchain);
|
EnqueueMarkObject(_thread_default_delegate,queue);
|
||||||
MarkObject(_class_default_delegate,&tchain);
|
EnqueueMarkObject(_closure_default_delegate,queue);
|
||||||
MarkObject(_instance_default_delegate,&tchain);
|
EnqueueMarkObject(_class_default_delegate,queue);
|
||||||
MarkObject(_weakref_default_delegate,&tchain);
|
EnqueueMarkObject(_instance_default_delegate,queue);
|
||||||
|
EnqueueMarkObject(_weakref_default_delegate,queue);
|
||||||
|
|
||||||
|
SQCollectable *tchain=NULL;
|
||||||
|
|
||||||
|
while (!queue.IsEmpty()) {
|
||||||
|
SQCollectable *q = queue.Pop();
|
||||||
|
q->EnqueueMarkObjectForChildren(queue);
|
||||||
|
SQCollectable::RemoveFromChain(&_gc_chain, q);
|
||||||
|
SQCollectable::AddToChain(&tchain, q);
|
||||||
|
}
|
||||||
|
|
||||||
SQCollectable *t = _gc_chain;
|
SQCollectable *t = _gc_chain;
|
||||||
SQCollectable *nx = NULL;
|
SQCollectable *nx = NULL;
|
||||||
@@ -289,8 +329,10 @@ SQInteger SQSharedState::CollectGarbage(SQVM *vm)
|
|||||||
t = t->_next;
|
t = t->_next;
|
||||||
}
|
}
|
||||||
_gc_chain = tchain;
|
_gc_chain = tchain;
|
||||||
|
#ifdef WITH_ASSERT
|
||||||
SQInteger z = _table(_thread(_root_vm)->_roottable)->CountUsed();
|
SQInteger z = _table(_thread(_root_vm)->_roottable)->CountUsed();
|
||||||
assert(z == x);
|
assert(z == x);
|
||||||
|
#endif
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -353,12 +395,12 @@ RefTable::~RefTable()
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void RefTable::Mark(SQCollectable **chain)
|
void RefTable::EnqueueMarkObject(SQGCMarkerQueue &queue)
|
||||||
{
|
{
|
||||||
RefNode *nodes = (RefNode *)_nodes;
|
RefNode *nodes = (RefNode *)_nodes;
|
||||||
for(SQUnsignedInteger n = 0; n < _numofslots; n++) {
|
for(SQUnsignedInteger n = 0; n < _numofslots; n++) {
|
||||||
if(type(nodes->obj) != OT_NULL) {
|
if(type(nodes->obj) != OT_NULL) {
|
||||||
SQSharedState::MarkObject(nodes->obj,chain);
|
SQSharedState::EnqueueMarkObject(nodes->obj,queue);
|
||||||
}
|
}
|
||||||
nodes++;
|
nodes++;
|
||||||
}
|
}
|
||||||
|
|||||||
9
src/3rdparty/squirrel/squirrel/sqstate.h
vendored
9
src/3rdparty/squirrel/squirrel/sqstate.h
vendored
@@ -34,7 +34,7 @@ struct RefTable {
|
|||||||
void AddRef(SQObject &obj);
|
void AddRef(SQObject &obj);
|
||||||
SQBool Release(SQObject &obj);
|
SQBool Release(SQObject &obj);
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObject(SQGCMarkerQueue &queue);
|
||||||
#endif
|
#endif
|
||||||
void Finalize();
|
void Finalize();
|
||||||
private:
|
private:
|
||||||
@@ -61,9 +61,10 @@ struct SQSharedState
|
|||||||
public:
|
public:
|
||||||
SQChar* GetScratchPad(SQInteger size);
|
SQChar* GetScratchPad(SQInteger size);
|
||||||
SQInteger GetMetaMethodIdxByName(const SQObjectPtr &name);
|
SQInteger GetMetaMethodIdxByName(const SQObjectPtr &name);
|
||||||
|
void DelayFinalFree(SQCollectable *collectable);
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
SQInteger CollectGarbage(SQVM *vm);
|
SQInteger CollectGarbage(SQVM *vm);
|
||||||
static void MarkObject(SQObjectPtr &o,SQCollectable **chain);
|
static void EnqueueMarkObject(SQObjectPtr &o,SQGCMarkerQueue &queue);
|
||||||
#endif
|
#endif
|
||||||
SQObjectPtrVec *_metamethods;
|
SQObjectPtrVec *_metamethods;
|
||||||
SQObjectPtr _metamethodsmap;
|
SQObjectPtr _metamethodsmap;
|
||||||
@@ -74,6 +75,10 @@ public:
|
|||||||
SQObjectPtr _registry;
|
SQObjectPtr _registry;
|
||||||
SQObjectPtr _consts;
|
SQObjectPtr _consts;
|
||||||
SQObjectPtr _constructoridx;
|
SQObjectPtr _constructoridx;
|
||||||
|
/** Queue to make freeing of collectables iterative. */
|
||||||
|
std::vector<SQCollectable *> _collectable_free_queue;
|
||||||
|
/** Whether someone is already processing the _collectable_free_queue. */
|
||||||
|
bool _collectable_free_processing;
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
SQCollectable *_gc_chain;
|
SQCollectable *_gc_chain;
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
10
src/3rdparty/squirrel/squirrel/sqtable.h
vendored
10
src/3rdparty/squirrel/squirrel/sqtable.h
vendored
@@ -50,7 +50,7 @@ public:
|
|||||||
newtable->_delegate = NULL;
|
newtable->_delegate = NULL;
|
||||||
return newtable;
|
return newtable;
|
||||||
}
|
}
|
||||||
void Finalize();
|
void Finalize() override;
|
||||||
SQTable *Clone();
|
SQTable *Clone();
|
||||||
~SQTable()
|
~SQTable()
|
||||||
{
|
{
|
||||||
@@ -60,7 +60,7 @@ public:
|
|||||||
SQ_FREE(_nodes, _numofnodes * sizeof(_HashNode));
|
SQ_FREE(_nodes, _numofnodes * sizeof(_HashNode));
|
||||||
}
|
}
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue) override;
|
||||||
#endif
|
#endif
|
||||||
inline _HashNode *_Get(const SQObjectPtr &key,SQHash hash)
|
inline _HashNode *_Get(const SQObjectPtr &key,SQHash hash)
|
||||||
{
|
{
|
||||||
@@ -81,7 +81,11 @@ public:
|
|||||||
|
|
||||||
SQInteger CountUsed(){ return _usednodes;}
|
SQInteger CountUsed(){ return _usednodes;}
|
||||||
void Clear();
|
void Clear();
|
||||||
void Release()
|
void Release() override
|
||||||
|
{
|
||||||
|
this->_sharedstate->DelayFinalFree(this);
|
||||||
|
}
|
||||||
|
void FinalFree() override
|
||||||
{
|
{
|
||||||
sq_delete(this, SQTable);
|
sq_delete(this, SQTable);
|
||||||
}
|
}
|
||||||
|
|||||||
2
src/3rdparty/squirrel/squirrel/squserdata.h
vendored
2
src/3rdparty/squirrel/squirrel/squserdata.h
vendored
@@ -18,7 +18,7 @@ struct SQUserData : SQDelegable
|
|||||||
return ud;
|
return ud;
|
||||||
}
|
}
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue);
|
||||||
void Finalize(){SetDelegate(NULL);}
|
void Finalize(){SetDelegate(NULL);}
|
||||||
#endif
|
#endif
|
||||||
void Release() {
|
void Release() {
|
||||||
|
|||||||
16
src/3rdparty/squirrel/squirrel/sqvm.cpp
vendored
16
src/3rdparty/squirrel/squirrel/sqvm.cpp
vendored
@@ -1460,7 +1460,7 @@ bool SQVM::DeleteSlot(const SQObjectPtr &self,const SQObjectPtr &key,SQObjectPtr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
res = t;
|
res = t;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
Raise_Error("attempt to delete a slot from a %s",GetTypeName(self));
|
Raise_Error("attempt to delete a slot from a %s",GetTypeName(self));
|
||||||
@@ -1471,8 +1471,8 @@ bool SQVM::DeleteSlot(const SQObjectPtr &self,const SQObjectPtr &key,SQObjectPtr
|
|||||||
|
|
||||||
bool SQVM::Call(SQObjectPtr &closure,SQInteger nparams,SQInteger stackbase,SQObjectPtr &outres,SQBool raiseerror,SQBool can_suspend)
|
bool SQVM::Call(SQObjectPtr &closure,SQInteger nparams,SQInteger stackbase,SQObjectPtr &outres,SQBool raiseerror,SQBool can_suspend)
|
||||||
{
|
{
|
||||||
#ifdef _DEBUG
|
#ifdef WITH_ASSERT
|
||||||
SQInteger prevstackbase = _stackbase;
|
SQInteger prevstackbase = _stackbase;
|
||||||
#endif
|
#endif
|
||||||
switch(type(closure)) {
|
switch(type(closure)) {
|
||||||
case OT_CLOSURE: {
|
case OT_CLOSURE: {
|
||||||
@@ -1482,13 +1482,13 @@ SQInteger prevstackbase = _stackbase;
|
|||||||
bool ret = Execute(closure, _top - nparams, nparams, stackbase,outres,raiseerror);
|
bool ret = Execute(closure, _top - nparams, nparams, stackbase,outres,raiseerror);
|
||||||
this->_can_suspend = backup_suspend;
|
this->_can_suspend = backup_suspend;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case OT_NATIVECLOSURE:{
|
case OT_NATIVECLOSURE: {
|
||||||
bool suspend;
|
bool suspend;
|
||||||
return CallNative(_nativeclosure(closure), nparams, stackbase, outres,suspend);
|
return CallNative(_nativeclosure(closure), nparams, stackbase, outres,suspend);
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case OT_CLASS: {
|
case OT_CLASS: {
|
||||||
SQObjectPtr constr;
|
SQObjectPtr constr;
|
||||||
@@ -1499,12 +1499,12 @@ SQInteger prevstackbase = _stackbase;
|
|||||||
return Call(constr,nparams,stackbase,temp,raiseerror,false);
|
return Call(constr,nparams,stackbase,temp,raiseerror,false);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
#ifdef _DEBUG
|
#ifdef WITH_ASSERT
|
||||||
if(!_suspended) {
|
if(!_suspended) {
|
||||||
assert(_stackbase == prevstackbase);
|
assert(_stackbase == prevstackbase);
|
||||||
}
|
}
|
||||||
|
|||||||
2
src/3rdparty/squirrel/squirrel/sqvm.h
vendored
2
src/3rdparty/squirrel/squirrel/sqvm.h
vendored
@@ -113,7 +113,7 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef NO_GARBAGE_COLLECTOR
|
#ifndef NO_GARBAGE_COLLECTOR
|
||||||
void Mark(SQCollectable **chain);
|
void EnqueueMarkObjectForChildren(SQGCMarkerQueue &queue);
|
||||||
#endif
|
#endif
|
||||||
void Finalize();
|
void Finalize();
|
||||||
void GrowCallStack() {
|
void GrowCallStack() {
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ struct AIListWindow : public Window {
|
|||||||
{
|
{
|
||||||
if (widget == WID_AIL_LIST) {
|
if (widget == WID_AIL_LIST) {
|
||||||
this->line_height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM;
|
this->line_height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM;
|
||||||
this->line_height = GetMinSizing(NWST_STEP, this->line_height);
|
this->line_height = GetMinButtonSize(this->line_height);
|
||||||
|
|
||||||
resize->width = 1;
|
resize->width = 1;
|
||||||
resize->height = this->line_height;
|
resize->height = this->line_height;
|
||||||
@@ -352,7 +352,7 @@ struct AISettingsWindow : public Window {
|
|||||||
{
|
{
|
||||||
if (widget == WID_AIS_BACKGROUND) {
|
if (widget == WID_AIS_BACKGROUND) {
|
||||||
this->line_height = std::max(SETTING_BUTTON_HEIGHT, FONT_HEIGHT_NORMAL) + WD_MATRIX_TOP + WD_MATRIX_BOTTOM;
|
this->line_height = std::max(SETTING_BUTTON_HEIGHT, FONT_HEIGHT_NORMAL) + WD_MATRIX_TOP + WD_MATRIX_BOTTOM;
|
||||||
this->line_height = GetMinSizing(NWST_STEP, this->line_height);
|
this->line_height = GetMinButtonSize(this->line_height);
|
||||||
|
|
||||||
resize->width = 1;
|
resize->width = 1;
|
||||||
resize->height = this->line_height;
|
resize->height = this->line_height;
|
||||||
@@ -703,19 +703,19 @@ static const NWidgetPart _nested_ai_config_widgets[] = {
|
|||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_SPACER), SetMinimalSize(0, 9),
|
NWidget(NWID_SPACER), SetMinimalSize(0, 9),
|
||||||
NWidget(WWT_FRAME, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_GAMESCRIPT, STR_NULL), SetPadding(0, 5, 4, 5),
|
NWidget(WWT_FRAME, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_GAMESCRIPT, STR_NULL), SetPadding(0, 5, 4, 5),
|
||||||
NWidget(WWT_MATRIX, COLOUR_MAUVE, WID_AIC_GAMELIST), SetSizingType(NWST_STEP), SetMinimalSize(288, 14), SetFill(1, 0), SetMatrixDataTip(1, 1, STR_AI_CONFIG_GAMELIST_TOOLTIP),
|
NWidget(WWT_MATRIX, COLOUR_MAUVE, WID_AIC_GAMELIST), SetSizingType(NWST_BUTTON), SetMinimalSize(288, 14), SetFill(1, 0), SetMatrixDataTip(1, 1, STR_AI_CONFIG_GAMELIST_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7),
|
NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CHANGE), SetFill(1, 0), SetMinimalSize(93, 12), SetDataTip(STR_AI_CONFIG_CHANGE, STR_AI_CONFIG_CHANGE_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CHANGE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_CONFIG_CHANGE, STR_AI_CONFIG_CHANGE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CONFIGURE), SetFill(1, 0), SetMinimalSize(93, 12), SetDataTip(STR_AI_CONFIG_CONFIGURE, STR_AI_CONFIG_CONFIGURE_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CONFIGURE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_CONFIG_CONFIGURE, STR_AI_CONFIG_CONFIGURE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CLOSE), SetFill(1, 0), SetMinimalSize(93, 12), SetDataTip(STR_AI_SETTINGS_CLOSE, STR_NULL),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CLOSE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_SETTINGS_CLOSE, STR_NULL),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7),
|
NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_README), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_README, STR_NULL),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_README), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_README, STR_NULL),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_CHANGELOG), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_CHANGELOG, STR_NULL),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_CHANGELOG), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_CHANGELOG, STR_NULL),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_LICENSE), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_LICENCE, STR_NULL),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_LICENSE), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_LICENCE, STR_NULL),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CONTENT_DOWNLOAD), SetFill(1, 0), SetMinimalSize(279, 12), SetPadding(0, 7, 9, 7), SetDataTip(STR_INTRO_ONLINE_CONTENT, STR_INTRO_TOOLTIP_ONLINE_CONTENT),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CONTENT_DOWNLOAD), SetFill(1, 0), SetMinimalSize(279, 0), SetPadding(0, 7, 9, 7), SetDataTip(STR_INTRO_ONLINE_CONTENT, STR_INTRO_TOOLTIP_ONLINE_CONTENT),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -782,12 +782,12 @@ struct AIConfigWindow : public Window {
|
|||||||
{
|
{
|
||||||
switch (widget) {
|
switch (widget) {
|
||||||
case WID_AIC_GAMELIST:
|
case WID_AIC_GAMELIST:
|
||||||
this->line_height = GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
this->line_height = GetMinButtonSize(FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
||||||
size->height = this->line_height;
|
size->height = this->line_height;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_AIC_LIST:
|
case WID_AIC_LIST:
|
||||||
this->line_height = GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
this->line_height = GetMinButtonSize(FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
||||||
size->height = 8 * this->line_height;
|
size->height = 8 * this->line_height;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -1109,7 +1109,7 @@ struct AIDebugWindow : public Window {
|
|||||||
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) override
|
||||||
{
|
{
|
||||||
if (widget == WID_AID_LOG_PANEL) {
|
if (widget == WID_AID_LOG_PANEL) {
|
||||||
resize->height = GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL);
|
resize->height = GetMinButtonSize(FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL);
|
||||||
size->height = 14 * resize->height + this->top_offset + this->bottom_offset;
|
size->height = 14 * resize->height + this->top_offset + this->bottom_offset;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1126,7 +1126,7 @@ struct AIDebugWindow : public Window {
|
|||||||
bool dirty = false;
|
bool dirty = false;
|
||||||
|
|
||||||
Dimension d = GetSpriteSize(SPR_COMPANY_ICON);
|
Dimension d = GetSpriteSize(SPR_COMPANY_ICON);
|
||||||
uint offset_y = Center(0, GetMinSizing(NWST_STEP, d.height + WD_MATRIX_TOP + WD_MATRIX_BOTTOM + 1), d.height);
|
uint offset_y = Center(0, GetMinButtonSize(d.height + WD_MATRIX_TOP + WD_MATRIX_BOTTOM + 1), d.height);
|
||||||
/* Paint the company icons */
|
/* Paint the company icons */
|
||||||
for (CompanyID i = COMPANY_FIRST; i < MAX_COMPANIES; i++) {
|
for (CompanyID i = COMPANY_FIRST; i < MAX_COMPANIES; i++) {
|
||||||
NWidgetCore *button = this->GetWidget<NWidgetCore>(i + WID_AID_COMPANY_BUTTON_START);
|
NWidgetCore *button = this->GetWidget<NWidgetCore>(i + WID_AID_COMPANY_BUTTON_START);
|
||||||
|
|||||||
@@ -335,7 +335,7 @@ public:
|
|||||||
d.width += padding.width;
|
d.width += padding.width;
|
||||||
d.height += padding.height;
|
d.height += padding.height;
|
||||||
*size = maxdim(*size, d);
|
*size = maxdim(*size, d);
|
||||||
size->height = GetMinSizing(NWST_STEP, size->height);
|
size->height = GetMinButtonSize(size->height);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -347,7 +347,7 @@ public:
|
|||||||
size->width = std::max(size->width, GetStringBoundingBox(as->name).width);
|
size->width = std::max(size->width, GetStringBoundingBox(as->name).width);
|
||||||
}
|
}
|
||||||
|
|
||||||
this->line_height = GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
this->line_height = GetMinButtonSize(FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
||||||
size->height = 5 * this->line_height;
|
size->height = 5 * this->line_height;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -591,7 +591,7 @@ static const NWidgetPart _nested_build_airport_widgets[] = {
|
|||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
/* Airport dropdown selector and picture. */
|
/* Airport dropdown selector and picture. */
|
||||||
NWidget(WWT_PANEL, COLOUR_DARK_GREEN), SetFill(1, 0), SetPIP(2, 0, 2),
|
NWidget(WWT_PANEL, COLOUR_DARK_GREEN), SetFill(1, 0), SetPIP(2, 0, 2),
|
||||||
NWidget(WWT_LABEL, COLOUR_DARK_GREEN), SetSizingType(NWST_STEP), SetDataTip(STR_STATION_BUILD_AIRPORT_CLASS_LABEL, STR_NULL), SetFill(1, 0),
|
NWidget(WWT_LABEL, COLOUR_DARK_GREEN), SetSizingType(NWST_BUTTON), SetDataTip(STR_STATION_BUILD_AIRPORT_CLASS_LABEL, STR_NULL), SetFill(1, 0),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_AP_CLASS_DROPDOWN), SetFill(1, 0), SetDataTip(STR_BLACK_STRING, STR_STATION_BUILD_AIRPORT_TOOLTIP),
|
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_AP_CLASS_DROPDOWN), SetFill(1, 0), SetDataTip(STR_BLACK_STRING, STR_STATION_BUILD_AIRPORT_TOOLTIP),
|
||||||
NWidget(WWT_EMPTY, COLOUR_DARK_GREEN, WID_AP_AIRPORT_SPRITE), SetFill(1, 0),
|
NWidget(WWT_EMPTY, COLOUR_DARK_GREEN, WID_AP_AIRPORT_SPRITE), SetFill(1, 0),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -602,9 +602,9 @@ static const NWidgetPart _nested_build_airport_widgets[] = {
|
|||||||
NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_AP_SCROLLBAR),
|
NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_AP_SCROLLBAR),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_AP_LAYOUT_DECREASE), SetSizingType(NWST_STEP), SetMinimalSize(12, 0), SetDataTip(AWV_DECREASE, STR_NULL),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_AP_LAYOUT_DECREASE), SetSizingType(NWST_BUTTON), SetMinimalSize(12, 0), SetDataTip(AWV_DECREASE, STR_NULL),
|
||||||
NWidget(WWT_LABEL, COLOUR_GREY, WID_AP_LAYOUT_NUM), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_BLACK_STRING, STR_NULL),
|
NWidget(WWT_LABEL, COLOUR_GREY, WID_AP_LAYOUT_NUM), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_BLACK_STRING, STR_NULL),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_AP_LAYOUT_INCREASE), SetSizingType(NWST_STEP), SetMinimalSize(12, 0), SetDataTip(AWV_INCREASE, STR_NULL),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_AP_LAYOUT_INCREASE), SetSizingType(NWST_BUTTON), SetMinimalSize(12, 0), SetDataTip(AWV_INCREASE, STR_NULL),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(WWT_EMPTY, COLOUR_DARK_GREEN, WID_AP_EXTRA_TEXT), SetFill(1, 0), SetMinimalSize(150, 0),
|
NWidget(WWT_EMPTY, COLOUR_DARK_GREEN, WID_AP_EXTRA_TEXT), SetFill(1, 0), SetMinimalSize(150, 0),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
|
|||||||
@@ -597,6 +597,7 @@ static CommandCost ReplaceChain(Vehicle **chain, DoCommandFlag flags, bool wagon
|
|||||||
|
|
||||||
/* Sell wagon */
|
/* Sell wagon */
|
||||||
CommandCost ret = DoCommand(0, wagon->index, 0, DC_EXEC, GetCmdSellVeh(wagon));
|
CommandCost ret = DoCommand(0, wagon->index, 0, DC_EXEC, GetCmdSellVeh(wagon));
|
||||||
|
(void)ret; // assert only
|
||||||
assert(ret.Succeeded());
|
assert(ret.Succeeded());
|
||||||
new_vehs[i] = nullptr;
|
new_vehs[i] = nullptr;
|
||||||
|
|
||||||
@@ -652,6 +653,7 @@ static CommandCost ReplaceChain(Vehicle **chain, DoCommandFlag flags, bool wagon
|
|||||||
|
|
||||||
for (int i = num_units - 1; i > 0; i--) {
|
for (int i = num_units - 1; i > 0; i--) {
|
||||||
CommandCost ret = CmdMoveVehicle(old_vehs[i], old_head, DC_EXEC | DC_AUTOREPLACE, false);
|
CommandCost ret = CmdMoveVehicle(old_vehs[i], old_head, DC_EXEC | DC_AUTOREPLACE, false);
|
||||||
|
(void)ret; // assert only
|
||||||
assert(ret.Succeeded());
|
assert(ret.Succeeded());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ class ReplaceVehicleWindow : public Window {
|
|||||||
bool replace_engines; ///< If \c true, engines are replaced, if \c false, wagons are replaced (only for trains).
|
bool replace_engines; ///< If \c true, engines are replaced, if \c false, wagons are replaced (only for trains).
|
||||||
bool reset_sel_engine; ///< Also reset #sel_engine while updating left and/or right and no valid engine selected.
|
bool reset_sel_engine; ///< Also reset #sel_engine while updating left and/or right and no valid engine selected.
|
||||||
GroupID sel_group; ///< Group selected to replace.
|
GroupID sel_group; ///< Group selected to replace.
|
||||||
int details_height; ///< Minimal needed height of the details panels (found so far).
|
int details_height; ///< Minimal needed height of the details panels, in text lines (found so far).
|
||||||
byte sort_criteria; ///< Criteria of sorting vehicles.
|
byte sort_criteria; ///< Criteria of sorting vehicles.
|
||||||
bool descending_sort_order; ///< Order of sorting vehicles.
|
bool descending_sort_order; ///< Order of sorting vehicles.
|
||||||
bool show_hidden_engines; ///< Whether to show the hidden engines.
|
bool show_hidden_engines; ///< Whether to show the hidden engines.
|
||||||
@@ -230,7 +230,7 @@ public:
|
|||||||
this->engines[0].ForceRebuild();
|
this->engines[0].ForceRebuild();
|
||||||
this->engines[1].ForceRebuild();
|
this->engines[1].ForceRebuild();
|
||||||
this->reset_sel_engine = true;
|
this->reset_sel_engine = true;
|
||||||
this->details_height = ((vehicletype == VEH_TRAIN) ? 10 : 9) * FONT_HEIGHT_NORMAL + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
this->details_height = ((vehicletype == VEH_TRAIN) ? 10 : 9);
|
||||||
this->sel_engine[0] = INVALID_ENGINE;
|
this->sel_engine[0] = INVALID_ENGINE;
|
||||||
this->sel_engine[1] = INVALID_ENGINE;
|
this->sel_engine[1] = INVALID_ENGINE;
|
||||||
this->show_hidden_engines = _engine_sort_show_hidden_engines[vehicletype];
|
this->show_hidden_engines = _engine_sort_show_hidden_engines[vehicletype];
|
||||||
@@ -275,7 +275,7 @@ public:
|
|||||||
|
|
||||||
case WID_RV_LEFT_DETAILS:
|
case WID_RV_LEFT_DETAILS:
|
||||||
case WID_RV_RIGHT_DETAILS:
|
case WID_RV_RIGHT_DETAILS:
|
||||||
size->height = this->details_height;
|
size->height = FONT_HEIGHT_NORMAL * this->details_height + padding.height;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_RV_TRAIN_WAGONREMOVE_TOGGLE: {
|
case WID_RV_TRAIN_WAGONREMOVE_TOGGLE: {
|
||||||
@@ -478,7 +478,7 @@ public:
|
|||||||
NWidgetBase *nwi = this->GetWidget<NWidgetBase>(side == 0 ? WID_RV_LEFT_DETAILS : WID_RV_RIGHT_DETAILS);
|
NWidgetBase *nwi = this->GetWidget<NWidgetBase>(side == 0 ? WID_RV_LEFT_DETAILS : WID_RV_RIGHT_DETAILS);
|
||||||
int text_end = DrawVehiclePurchaseInfo(nwi->pos_x + WD_FRAMETEXT_LEFT, nwi->pos_x + nwi->current_x - WD_FRAMETEXT_RIGHT,
|
int text_end = DrawVehiclePurchaseInfo(nwi->pos_x + WD_FRAMETEXT_LEFT, nwi->pos_x + nwi->current_x - WD_FRAMETEXT_RIGHT,
|
||||||
nwi->pos_y + WD_FRAMERECT_TOP, this->sel_engine[side], ted);
|
nwi->pos_y + WD_FRAMERECT_TOP, this->sel_engine[side], ted);
|
||||||
needed_height = std::max(needed_height, text_end - (int)nwi->pos_y + WD_FRAMERECT_BOTTOM);
|
needed_height = std::max(needed_height, (text_end - (int)nwi->pos_y - WD_FRAMERECT_TOP) / FONT_HEIGHT_NORMAL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (needed_height != this->details_height) { // Details window are not high enough, enlarge them.
|
if (needed_height != this->details_height) { // Details window are not high enough, enlarge them.
|
||||||
|
|||||||
@@ -274,7 +274,7 @@ template <class Tbase_set>
|
|||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
#include "network/network_content.h"
|
#include "network/core/tcp_content_type.h"
|
||||||
|
|
||||||
template <class Tbase_set> const char *TryGetBaseSetFile(const ContentInfo *ci, bool md5sum, const Tbase_set *s)
|
template <class Tbase_set> const char *TryGetBaseSetFile(const ContentInfo *ci, bool md5sum, const Tbase_set *s)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -61,13 +61,14 @@ protected:
|
|||||||
name(name), description(description)
|
name(name), description(description)
|
||||||
{
|
{
|
||||||
if (usable) {
|
if (usable) {
|
||||||
|
Blitters &blitters = GetBlitters();
|
||||||
|
assert(blitters.find(this->name) == blitters.end());
|
||||||
/*
|
/*
|
||||||
* Only add when the blitter is usable. Do not bail out or
|
* Only add when the blitter is usable. Do not bail out or
|
||||||
* do more special things since the blitters are always
|
* do more special things since the blitters are always
|
||||||
* instantiated upon start anyhow and freed upon shutdown.
|
* instantiated upon start anyhow and freed upon shutdown.
|
||||||
*/
|
*/
|
||||||
std::pair<Blitters::iterator, bool> P = GetBlitters().insert(Blitters::value_type(this->name, this));
|
blitters.insert(Blitters::value_type(this->name, this));
|
||||||
assert(P.second);
|
|
||||||
} else {
|
} else {
|
||||||
DEBUG(driver, 1, "Not registering blitter %s as it is not usable", name);
|
DEBUG(driver, 1, "Not registering blitter %s as it is not usable", name);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -199,7 +199,7 @@ public:
|
|||||||
sprite_dim.height++; // Sprite is rendered one pixel down in the matrix field.
|
sprite_dim.height++; // Sprite is rendered one pixel down in the matrix field.
|
||||||
text_dim.height++; // Allowing the bottom row pixels to be rendered on the edge of the matrix field.
|
text_dim.height++; // Allowing the bottom row pixels to be rendered on the edge of the matrix field.
|
||||||
resize->height = std::max(sprite_dim.height, text_dim.height) + 2; // Max of both sizes + account for matrix edges.
|
resize->height = std::max(sprite_dim.height, text_dim.height) + 2; // Max of both sizes + account for matrix edges.
|
||||||
resize->height = GetMinSizing(NWST_STEP, resize->height);
|
resize->height = GetMinButtonSize(resize->height);
|
||||||
|
|
||||||
this->bridgetext_offset = WD_MATRIX_LEFT + sprite_dim.width + 1; // Left edge of text, 1 pixel distance from the sprite.
|
this->bridgetext_offset = WD_MATRIX_LEFT + sprite_dim.width + 1; // Left edge of text, 1 pixel distance from the sprite.
|
||||||
size->width = this->bridgetext_offset + text_dim.width + WD_MATRIX_RIGHT;
|
size->width = this->bridgetext_offset + text_dim.width + WD_MATRIX_RIGHT;
|
||||||
|
|||||||
@@ -83,16 +83,15 @@ struct BuildInfoWindow : public Window
|
|||||||
|
|
||||||
/* Increase slightly to have some space around the box. */
|
/* Increase slightly to have some space around the box. */
|
||||||
size->width += 2 + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
|
size->width += 2 + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
|
||||||
size->height += 2 + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
size->height += 6 + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
||||||
}
|
}
|
||||||
|
|
||||||
void DrawWidget(const Rect &r, int widget) const override
|
void DrawWidget(const Rect &r, int widget) const override
|
||||||
{
|
{
|
||||||
/* There is only one widget. */
|
/* There is only one widget. */
|
||||||
GfxFillRect(r.left, r.top, r.right, r.bottom, PC_BLACK);
|
DrawFrameRect(r.left, r.top, r.right, r.bottom, COLOUR_GREY, FR_NONE);
|
||||||
GfxFillRect(r.left + 1, r.top + 1, r.right - 1, r.bottom - 1, PC_LIGHT_YELLOW);
|
|
||||||
|
|
||||||
int top = r.top + WD_FRAMERECT_TOP;
|
int top = r.top + WD_FRAMERECT_TOP + 4;
|
||||||
Money cost = BuildInfoWindow::cost;
|
Money cost = BuildInfoWindow::cost;
|
||||||
StringID msg = STR_MESSAGE_ESTIMATED_COST;
|
StringID msg = STR_MESSAGE_ESTIMATED_COST;
|
||||||
SetDParam(0, cost);
|
SetDParam(0, cost);
|
||||||
@@ -189,8 +188,8 @@ struct BuildConfirmationWindow : Window {
|
|||||||
{
|
{
|
||||||
switch (widget) {
|
switch (widget) {
|
||||||
case WID_BC_OK:
|
case WID_BC_OK:
|
||||||
size->width = GetMinSizing(NWST_BUTTON) * 2;
|
size->width = GetMinButtonSize() * 2;
|
||||||
size->height = GetMinSizing(NWST_BUTTON) * 3;
|
size->height = GetMinButtonSize() * 3;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,7 @@
|
|||||||
uint GetEngineListHeight(VehicleType type)
|
uint GetEngineListHeight(VehicleType type)
|
||||||
{
|
{
|
||||||
uint size = std::max<uint>(FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM, GetVehicleImageCellSize(type, EIT_PURCHASE).height);
|
uint size = std::max<uint>(FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM, GetVehicleImageCellSize(type, EIT_PURCHASE).height);
|
||||||
return GetMinSizing(NWST_STEP, size);
|
return GetMinButtonSize(size);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const NWidgetPart _nested_build_vehicle_widgets[] = {
|
static const NWidgetPart _nested_build_vehicle_widgets[] = {
|
||||||
@@ -61,12 +61,12 @@ static const NWidgetPart _nested_build_vehicle_widgets[] = {
|
|||||||
NWidget(WWT_PANEL, COLOUR_GREY),
|
NWidget(WWT_PANEL, COLOUR_GREY),
|
||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_BV_SORT_ASCENDING_DESCENDING), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), SetSizingType(NWST_STEP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_BV_SORT_ASCENDING_DESCENDING), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_BV_SORT_DROPDOWN), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA), SetSizingType(NWST_STEP),
|
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_BV_SORT_DROPDOWN), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA), SetSizingType(NWST_BUTTON),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_BV_SHOW_HIDDEN_ENGINES), SetSizingType(NWST_STEP),
|
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_BV_SHOW_HIDDEN_ENGINES), SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_BV_CARGO_FILTER_DROPDOWN), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_FILTER_CRITERIA), SetSizingType(NWST_STEP),
|
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_BV_CARGO_FILTER_DROPDOWN), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_FILTER_CRITERIA), SetSizingType(NWST_BUTTON),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_SPACER), SetFill(1, 1),
|
NWidget(NWID_SPACER), SetFill(1, 1),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -1061,7 +1061,7 @@ struct BuildVehicleWindow : Window {
|
|||||||
CargoID cargo_filter[NUM_CARGO + 3]; ///< Available cargo filters; CargoID or CF_ANY or CF_NONE or CF_ENGINES
|
CargoID cargo_filter[NUM_CARGO + 3]; ///< Available cargo filters; CargoID or CF_ANY or CF_NONE or CF_ENGINES
|
||||||
StringID cargo_filter_texts[NUM_CARGO + 4]; ///< Texts for filter_cargo, terminated by INVALID_STRING_ID
|
StringID cargo_filter_texts[NUM_CARGO + 4]; ///< Texts for filter_cargo, terminated by INVALID_STRING_ID
|
||||||
byte cargo_filter_criteria; ///< Selected cargo filter
|
byte cargo_filter_criteria; ///< Selected cargo filter
|
||||||
int details_height; ///< Minimal needed height of the details panels (found so far).
|
int details_height; ///< Minimal needed height of the details panels, in text lines (found so far).
|
||||||
Scrollbar *vscroll;
|
Scrollbar *vscroll;
|
||||||
TestedEngineDetails te; ///< Tested cost and capacity after refit.
|
TestedEngineDetails te; ///< Tested cost and capacity after refit.
|
||||||
|
|
||||||
@@ -1121,7 +1121,7 @@ struct BuildVehicleWindow : Window {
|
|||||||
widget->tool_tip = STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP + type;
|
widget->tool_tip = STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP + type;
|
||||||
widget->SetLowered(this->show_hidden_engines);
|
widget->SetLowered(this->show_hidden_engines);
|
||||||
|
|
||||||
this->details_height = ((this->vehicle_type == VEH_TRAIN) ? 10 : 9) * FONT_HEIGHT_NORMAL + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
this->details_height = ((this->vehicle_type == VEH_TRAIN) ? 10 : 9);
|
||||||
|
|
||||||
this->FinishInitNested(tile == INVALID_TILE ? (int)type : tile);
|
this->FinishInitNested(tile == INVALID_TILE ? (int)type : tile);
|
||||||
|
|
||||||
@@ -1559,14 +1559,14 @@ struct BuildVehicleWindow : Window {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_BV_PANEL:
|
case WID_BV_PANEL:
|
||||||
size->height = this->details_height;
|
size->height = FONT_HEIGHT_NORMAL * this->details_height + padding.height;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_BV_SORT_ASCENDING_DESCENDING: {
|
case WID_BV_SORT_ASCENDING_DESCENDING: {
|
||||||
Dimension d = GetStringBoundingBox(this->GetWidget<NWidgetCore>(widget)->widget_data);
|
Dimension d = GetStringBoundingBox(this->GetWidget<NWidgetCore>(widget)->widget_data);
|
||||||
d.width += padding.width + Window::SortButtonWidth() * 2; // Doubled since the string is centred and it also looks better.
|
d.width += padding.width + Window::SortButtonWidth() * 2; // Doubled since the string is centred and it also looks better.
|
||||||
d.height += padding.height;
|
d.height += padding.height;
|
||||||
d.height = GetMinSizing(NWST_STEP, d.height);
|
d.height = GetMinButtonSize(d.height);
|
||||||
*size = maxdim(*size, d);
|
*size = maxdim(*size, d);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -1627,12 +1627,12 @@ struct BuildVehicleWindow : Window {
|
|||||||
NWidgetBase *nwi = this->GetWidget<NWidgetBase>(WID_BV_PANEL);
|
NWidgetBase *nwi = this->GetWidget<NWidgetBase>(WID_BV_PANEL);
|
||||||
int text_end = DrawVehiclePurchaseInfo(nwi->pos_x + WD_FRAMETEXT_LEFT, nwi->pos_x + nwi->current_x - WD_FRAMETEXT_RIGHT,
|
int text_end = DrawVehiclePurchaseInfo(nwi->pos_x + WD_FRAMETEXT_LEFT, nwi->pos_x + nwi->current_x - WD_FRAMETEXT_RIGHT,
|
||||||
nwi->pos_y + WD_FRAMERECT_TOP, this->sel_engine, this->te);
|
nwi->pos_y + WD_FRAMERECT_TOP, this->sel_engine, this->te);
|
||||||
needed_height = std::max(needed_height, text_end - (int)nwi->pos_y + WD_FRAMERECT_BOTTOM);
|
needed_height = std::max(needed_height, (text_end - (int)nwi->pos_y - WD_FRAMERECT_TOP) / FONT_HEIGHT_NORMAL);
|
||||||
}
|
}
|
||||||
if (needed_height != this->details_height) { // Details window are not high enough, enlarge them.
|
if (needed_height != this->details_height) { // Details window are not high enough, enlarge them.
|
||||||
int resize = needed_height - this->details_height;
|
int resize = needed_height - this->details_height;
|
||||||
this->details_height = needed_height;
|
this->details_height = needed_height;
|
||||||
this->ReInit(0, resize);
|
this->ReInit(0, resize * FONT_HEIGHT_NORMAL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ struct CargoSpec {
|
|||||||
uint8 rating_colour;
|
uint8 rating_colour;
|
||||||
uint8 weight; ///< Weight of a single unit of this cargo type in 1/16 ton (62.5 kg).
|
uint8 weight; ///< Weight of a single unit of this cargo type in 1/16 ton (62.5 kg).
|
||||||
uint16 multiplier; ///< Capacity multiplier for vehicles. (8 fractional bits)
|
uint16 multiplier; ///< Capacity multiplier for vehicles. (8 fractional bits)
|
||||||
uint16 initial_payment;
|
uint32 initial_payment; ///< Initial payment rate before inflation is applied.
|
||||||
uint8 transit_days[2];
|
uint8 transit_days[2];
|
||||||
|
|
||||||
bool is_freight; ///< Cargo type is considered to be freight (affects train freight multiplier).
|
bool is_freight; ///< Cargo type is considered to be freight (affects train freight multiplier).
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ static int32 ClickChangeDateCheat(int32 p1, int32 p2)
|
|||||||
*/
|
*/
|
||||||
static int32 ClickChangeMaxHlCheat(int32 p1, int32 p2)
|
static int32 ClickChangeMaxHlCheat(int32 p1, int32 p2)
|
||||||
{
|
{
|
||||||
p1 = Clamp(p1, MIN_MAX_HEIGHTLEVEL, MAX_MAX_HEIGHTLEVEL);
|
p1 = Clamp(p1, MIN_MAP_HEIGHT_LIMIT, MAX_MAP_HEIGHT_LIMIT);
|
||||||
|
|
||||||
/* Check if at least one mountain on the map is higher than the new value.
|
/* Check if at least one mountain on the map is higher than the new value.
|
||||||
* If yes, disallow the change. */
|
* If yes, disallow the change. */
|
||||||
@@ -133,18 +133,18 @@ static int32 ClickChangeMaxHlCheat(int32 p1, int32 p2)
|
|||||||
if ((int32)TileHeight(t) > p1) {
|
if ((int32)TileHeight(t) > p1) {
|
||||||
ShowErrorMessage(STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN, INVALID_STRING_ID, WL_ERROR);
|
ShowErrorMessage(STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN, INVALID_STRING_ID, WL_ERROR);
|
||||||
/* Return old, unchanged value */
|
/* Return old, unchanged value */
|
||||||
return _settings_game.construction.max_heightlevel;
|
return _settings_game.construction.map_height_limit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Execute the change and reload GRF Data */
|
/* Execute the change and reload GRF Data */
|
||||||
_settings_game.construction.max_heightlevel = p1;
|
_settings_game.construction.map_height_limit = p1;
|
||||||
ReloadNewGRFData();
|
ReloadNewGRFData();
|
||||||
|
|
||||||
/* The smallmap uses an index from heightlevels to colours. Trigger rebuilding it. */
|
/* The smallmap uses an index from heightlevels to colours. Trigger rebuilding it. */
|
||||||
InvalidateWindowClassesData(WC_SMALLMAP, 2);
|
InvalidateWindowClassesData(WC_SMALLMAP, 2);
|
||||||
|
|
||||||
return _settings_game.construction.max_heightlevel;
|
return _settings_game.construction.map_height_limit;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Available cheats. */
|
/** Available cheats. */
|
||||||
@@ -182,14 +182,14 @@ struct CheatEntry {
|
|||||||
* Order matches with the values of #CheatNumbers
|
* Order matches with the values of #CheatNumbers
|
||||||
*/
|
*/
|
||||||
static const CheatEntry _cheats_ui[] = {
|
static const CheatEntry _cheats_ui[] = {
|
||||||
{SLE_INT32, STR_CHEAT_MONEY, &_money_cheat_amount, &_cheats.money.been_used, &ClickMoneyCheat },
|
{SLE_INT32, STR_CHEAT_MONEY, &_money_cheat_amount, &_cheats.money.been_used, &ClickMoneyCheat },
|
||||||
{SLE_UINT8, STR_CHEAT_CHANGE_COMPANY, &_local_company, &_cheats.switch_company.been_used, &ClickChangeCompanyCheat },
|
{SLE_UINT8, STR_CHEAT_CHANGE_COMPANY, &_local_company, &_cheats.switch_company.been_used, &ClickChangeCompanyCheat },
|
||||||
{SLE_BOOL, STR_CHEAT_EXTRA_DYNAMITE, &_cheats.magic_bulldozer.value, &_cheats.magic_bulldozer.been_used, nullptr },
|
{SLE_BOOL, STR_CHEAT_EXTRA_DYNAMITE, &_cheats.magic_bulldozer.value, &_cheats.magic_bulldozer.been_used, nullptr },
|
||||||
{SLE_BOOL, STR_CHEAT_CROSSINGTUNNELS, &_cheats.crossing_tunnels.value, &_cheats.crossing_tunnels.been_used, nullptr },
|
{SLE_BOOL, STR_CHEAT_CROSSINGTUNNELS, &_cheats.crossing_tunnels.value, &_cheats.crossing_tunnels.been_used, nullptr },
|
||||||
{SLE_BOOL, STR_CHEAT_NO_JETCRASH, &_cheats.no_jetcrash.value, &_cheats.no_jetcrash.been_used, nullptr },
|
{SLE_BOOL, STR_CHEAT_NO_JETCRASH, &_cheats.no_jetcrash.value, &_cheats.no_jetcrash.been_used, nullptr },
|
||||||
{SLE_BOOL, STR_CHEAT_SETUP_PROD, &_cheats.setup_prod.value, &_cheats.setup_prod.been_used, &ClickSetProdCheat },
|
{SLE_BOOL, STR_CHEAT_SETUP_PROD, &_cheats.setup_prod.value, &_cheats.setup_prod.been_used, &ClickSetProdCheat },
|
||||||
{SLE_UINT8, STR_CHEAT_EDIT_MAX_HL, &_settings_game.construction.max_heightlevel, &_cheats.edit_max_hl.been_used, &ClickChangeMaxHlCheat },
|
{SLE_UINT8, STR_CHEAT_EDIT_MAX_HL, &_settings_game.construction.map_height_limit, &_cheats.edit_max_hl.been_used, &ClickChangeMaxHlCheat },
|
||||||
{SLE_INT32, STR_CHEAT_CHANGE_DATE, &_cur_year, &_cheats.change_date.been_used, &ClickChangeDateCheat },
|
{SLE_INT32, STR_CHEAT_CHANGE_DATE, &_cur_year, &_cheats.change_date.been_used, &ClickChangeDateCheat },
|
||||||
};
|
};
|
||||||
|
|
||||||
static_assert(CHT_NUM_CHEATS == lengthof(_cheats_ui));
|
static_assert(CHT_NUM_CHEATS == lengthof(_cheats_ui));
|
||||||
|
|||||||
@@ -527,7 +527,7 @@ public:
|
|||||||
|
|
||||||
uint Height(uint width) const override
|
uint Height(uint width) const override
|
||||||
{
|
{
|
||||||
return GetMinSizing(NWST_STEP, std::max(FONT_HEIGHT_NORMAL, ScaleGUITrad(12) + 2));
|
return GetMinButtonSize(std::max(FONT_HEIGHT_NORMAL, ScaleGUITrad(12) + 2));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Selectable() const override
|
bool Selectable() const override
|
||||||
@@ -1216,65 +1216,65 @@ static const NWidgetPart _nested_select_company_manager_face_widgets[] = {
|
|||||||
NWidget(NWID_SPACER), SetMinimalSize(0, 2), SetFill(1, 0),
|
NWidget(NWID_SPACER), SetMinimalSize(0, 2), SetFill(1, 0),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_HAIR_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_HAIR_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_HAIR_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_HAIR_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_HAIR_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_HAIR_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_HAIR), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_HAIR_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_HAIR), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_HAIR_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_HAIR_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_HAIR_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_HAIR_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_HAIR_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_EYEBROWS_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_EYEBROWS_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYEBROWS_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_EYEBROWS_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYEBROWS_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_EYEBROWS_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_EYEBROWS), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_EYEBROWS_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_EYEBROWS), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_EYEBROWS_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYEBROWS_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_EYEBROWS_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYEBROWS_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_EYEBROWS_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_EYECOLOUR_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_EYECOLOUR_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYECOLOUR_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_EYECOLOUR_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYECOLOUR_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_EYECOLOUR_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_EYECOLOUR), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_EYECOLOUR_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_EYECOLOUR), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_EYECOLOUR_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYECOLOUR_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_EYECOLOUR_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_EYECOLOUR_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_EYECOLOUR_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_GLASSES_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_GLASSES_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_GLASSES_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_GLASSES_TOOLTIP_2),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_GLASSES_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_GLASSES_TOOLTIP_2),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_GLASSES), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_GLASSES_TOOLTIP_2),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_GLASSES), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_GLASSES_TOOLTIP_2),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_GLASSES_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_GLASSES_TOOLTIP_2),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_GLASSES_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_GLASSES_TOOLTIP_2),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_NOSE_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_NOSE_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_NOSE_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_NOSE_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_NOSE_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_NOSE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_NOSE), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_NOSE_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_NOSE), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_NOSE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_NOSE_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_NOSE_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_NOSE_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_NOSE_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_LIPS_MOUSTACHE_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_LIPS_MOUSTACHE_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_LIPS_MOUSTACHE_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_LIPS_MOUSTACHE_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_LIPS_MOUSTACHE_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_LIPS_MOUSTACHE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_LIPS_MOUSTACHE), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_LIPS_MOUSTACHE_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_LIPS_MOUSTACHE), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_LIPS_MOUSTACHE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_LIPS_MOUSTACHE_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_LIPS_MOUSTACHE_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_LIPS_MOUSTACHE_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_LIPS_MOUSTACHE_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_CHIN_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_CHIN_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_CHIN_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_CHIN_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_CHIN_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_CHIN_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_CHIN), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_CHIN_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_CHIN), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_CHIN_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_CHIN_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_CHIN_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_CHIN_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_CHIN_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_JACKET_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_JACKET_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_JACKET_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_JACKET_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_JACKET_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_JACKET_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_JACKET), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_JACKET_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_JACKET), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_JACKET_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_JACKET_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_JACKET_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_JACKET_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_JACKET_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_COLLAR_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_COLLAR_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_COLLAR_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_COLLAR_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_COLLAR_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_COLLAR_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_COLLAR), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_COLLAR_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_COLLAR), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_COLLAR_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_COLLAR_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_COLLAR_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_COLLAR_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_COLLAR_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_TIE_EARRING_TEXT), SetFill(1, 0),
|
NWidget(WWT_EMPTY, INVALID_COLOUR, WID_SCMF_TIE_EARRING_TEXT), SetFill(1, 0),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_TIE_EARRING_L), SetSizingType(NWST_STEP), SetDataTip(AWV_DECREASE, STR_FACE_TIE_EARRING_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_TIE_EARRING_L), SetSizingType(NWST_BUTTON), SetDataTip(AWV_DECREASE, STR_FACE_TIE_EARRING_TOOLTIP),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_TIE_EARRING), SetSizingType(NWST_STEP), SetDataTip(STR_EMPTY, STR_FACE_TIE_EARRING_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SCMF_TIE_EARRING), SetSizingType(NWST_BUTTON), SetDataTip(STR_EMPTY, STR_FACE_TIE_EARRING_TOOLTIP),
|
||||||
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_TIE_EARRING_R), SetSizingType(NWST_STEP), SetDataTip(AWV_INCREASE, STR_FACE_TIE_EARRING_TOOLTIP),
|
NWidget(WWT_PUSHARROWBTN, COLOUR_GREY, WID_SCMF_TIE_EARRING_R), SetSizingType(NWST_BUTTON), SetDataTip(AWV_INCREASE, STR_FACE_TIE_EARRING_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -1382,8 +1382,8 @@ public:
|
|||||||
yesno_dim.width += WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
|
yesno_dim.width += WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
|
||||||
yesno_dim.height += WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
yesno_dim.height += WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
||||||
|
|
||||||
yesno_dim.width = GetMinSizing(NWST_STEP, yesno_dim.width);
|
yesno_dim.width = GetMinButtonSize(yesno_dim.width);
|
||||||
yesno_dim.height = GetMinSizing(NWST_STEP, yesno_dim.height);
|
yesno_dim.height = GetMinButtonSize(yesno_dim.height);
|
||||||
|
|
||||||
/* Size of the number button + arrows. */
|
/* Size of the number button + arrows. */
|
||||||
Dimension number_dim = {0, 0};
|
Dimension number_dim = {0, 0};
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
#include "engine_func.h"
|
#include "engine_func.h"
|
||||||
#include "landscape.h"
|
#include "landscape.h"
|
||||||
#include "saveload/saveload.h"
|
#include "saveload/saveload.h"
|
||||||
|
#include "network/core/game_info.h"
|
||||||
#include "network/network.h"
|
#include "network/network.h"
|
||||||
#include "network/network_func.h"
|
#include "network/network_func.h"
|
||||||
#include "network/network_base.h"
|
#include "network/network_base.h"
|
||||||
@@ -907,7 +908,7 @@ DEF_CONSOLE_CMD(ConNetworkReconnect)
|
|||||||
/* Don't resolve the address first, just print it directly as it comes from the config file. */
|
/* Don't resolve the address first, just print it directly as it comes from the config file. */
|
||||||
IConsolePrintF(CC_DEFAULT, "Reconnecting to %s:%d...", _settings_client.network.last_host, _settings_client.network.last_port);
|
IConsolePrintF(CC_DEFAULT, "Reconnecting to %s:%d...", _settings_client.network.last_host, _settings_client.network.last_port);
|
||||||
|
|
||||||
NetworkClientConnectGame(NetworkAddress(_settings_client.network.last_host, _settings_client.network.last_port), playas);
|
NetworkClientConnectGame(_settings_client.network.last_host, _settings_client.network.last_port, playas);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -921,7 +922,6 @@ DEF_CONSOLE_CMD(ConNetworkConnect)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (argc < 2) return false;
|
if (argc < 2) return false;
|
||||||
if (_networking) NetworkDisconnect(); // we are in network-mode, first close it!
|
|
||||||
|
|
||||||
const char *port = nullptr;
|
const char *port = nullptr;
|
||||||
const char *company = nullptr;
|
const char *company = nullptr;
|
||||||
@@ -949,7 +949,7 @@ DEF_CONSOLE_CMD(ConNetworkConnect)
|
|||||||
IConsolePrintF(CC_DEFAULT, " port: %s", port);
|
IConsolePrintF(CC_DEFAULT, " port: %s", port);
|
||||||
}
|
}
|
||||||
|
|
||||||
NetworkClientConnectGame(NetworkAddress(ip, rport), join_as);
|
NetworkClientConnectGame(ip, rport, join_as);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -1365,7 +1365,9 @@ DEF_CONSOLE_CMD(ConRescanNewGRF)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
RequestNewGRFScan();
|
if (!RequestNewGRFScan()) {
|
||||||
|
IConsoleWarning("NewGRF scanning is already running. Please wait until completed to run again.");
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -1451,7 +1453,7 @@ DEF_CONSOLE_CMD(ConScreenShot)
|
|||||||
ScreenshotType type = SC_VIEWPORT;
|
ScreenshotType type = SC_VIEWPORT;
|
||||||
uint32 width = 0;
|
uint32 width = 0;
|
||||||
uint32 height = 0;
|
uint32 height = 0;
|
||||||
const char *name = nullptr;
|
std::string name{};
|
||||||
uint32 arg_index = 1;
|
uint32 arg_index = 1;
|
||||||
|
|
||||||
if (argc > arg_index) {
|
if (argc > arg_index) {
|
||||||
|
|||||||
@@ -32,6 +32,9 @@
|
|||||||
#ifdef __ANDROID__
|
#ifdef __ANDROID__
|
||||||
#include <SDL_screenkeyboard.h>
|
#include <SDL_screenkeyboard.h>
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef __EMSCRIPTEN__
|
||||||
|
#include <emscripten.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
static const uint ICON_HISTORY_SIZE = 20;
|
static const uint ICON_HISTORY_SIZE = 20;
|
||||||
static const uint ICON_LINE_SPACING = 2;
|
static const uint ICON_LINE_SPACING = 2;
|
||||||
@@ -187,7 +190,15 @@ struct IConsoleWindow : Window
|
|||||||
|
|
||||||
this->InitNested(0);
|
this->InitNested(0);
|
||||||
this->truncate_timer.SetInterval(3000);
|
this->truncate_timer.SetInterval(3000);
|
||||||
ResizeWindow(this, _screen.width, _screen.height / 3);
|
ResizeWindow(this, _screen.width - GetMinButtonSize() * 2, _screen.height / 3);
|
||||||
|
this->left = GetMinButtonSize();
|
||||||
|
|
||||||
|
#ifdef __EMSCRIPTEN__
|
||||||
|
// TODO: move this code to SDL2 Emscripten backend
|
||||||
|
EM_ASM({
|
||||||
|
Module.startTextInput(UTF8ToString($0));
|
||||||
|
}, "");
|
||||||
|
#endif // __EMSCRIPTEN__
|
||||||
}
|
}
|
||||||
|
|
||||||
~IConsoleWindow()
|
~IConsoleWindow()
|
||||||
@@ -233,6 +244,23 @@ struct IConsoleWindow : Window
|
|||||||
if (_focused_window == this && _iconsole_cmdline.caret) {
|
if (_focused_window == this && _iconsole_cmdline.caret) {
|
||||||
DrawString(this->line_offset + delta + _iconsole_cmdline.caretxoffs, right, this->height - this->line_height, "_", TC_WHITE, SA_LEFT | SA_FORCE);
|
DrawString(this->line_offset + delta + _iconsole_cmdline.caretxoffs, right, this->height - this->line_height, "_", TC_WHITE, SA_LEFT | SA_FORCE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef __EMSCRIPTEN__
|
||||||
|
// TODO: move this code to SDL2 Emscripten backend
|
||||||
|
char buf[512] = "";
|
||||||
|
int status = EM_ASM_INT({
|
||||||
|
var value = Module.getTextInput();
|
||||||
|
if (value == null) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
var lengthBytes = Math.min(512, lengthBytesUTF8(value) + 1);
|
||||||
|
stringToUTF8(value, $0, lengthBytes);
|
||||||
|
return 1;
|
||||||
|
}, buf);
|
||||||
|
if (status) {
|
||||||
|
this->OnQueryTextFinished(buf);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnQueryTextFinished(char *str) override
|
void OnQueryTextFinished(char *str) override
|
||||||
@@ -261,6 +289,16 @@ struct IConsoleWindow : Window
|
|||||||
if (_iconsole_cmdline.HandleCaret()) this->SetDirty();
|
if (_iconsole_cmdline.HandleCaret()) this->SetDirty();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void OnClick(Point pt, int widget, int click_count) override
|
||||||
|
{
|
||||||
|
#ifdef __EMSCRIPTEN__
|
||||||
|
// TODO: move this code to SDL2 Emscripten backend
|
||||||
|
EM_ASM({
|
||||||
|
Module.startTextInput(UTF8ToString($0));
|
||||||
|
}, "");
|
||||||
|
#endif // __EMSCRIPTEN__
|
||||||
|
}
|
||||||
|
|
||||||
EventState OnKeyPress(WChar key, uint16 keycode) override
|
EventState OnKeyPress(WChar key, uint16 keycode) override
|
||||||
{
|
{
|
||||||
if (_focused_window != this) return ES_NOT_HANDLED;
|
if (_focused_window != this) return ES_NOT_HANDLED;
|
||||||
@@ -436,11 +474,11 @@ void IConsoleResize(Window *w)
|
|||||||
switch (_iconsole_mode) {
|
switch (_iconsole_mode) {
|
||||||
case ICONSOLE_OPENED:
|
case ICONSOLE_OPENED:
|
||||||
w->height = _screen.height / 3;
|
w->height = _screen.height / 3;
|
||||||
w->width = _screen.width;
|
w->width = _screen.width - GetMinButtonSize() * 2;
|
||||||
break;
|
break;
|
||||||
case ICONSOLE_FULL:
|
case ICONSOLE_FULL:
|
||||||
w->height = _screen.height - ICON_BOTTOM_BORDERWIDTH;
|
w->height = _screen.height - ICON_BOTTOM_BORDERWIDTH;
|
||||||
w->width = _screen.width;
|
w->width = _screen.width - GetMinButtonSize() * 2;
|
||||||
break;
|
break;
|
||||||
default: return;
|
default: return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ struct Pool : PoolBase {
|
|||||||
/* Ensure Tmax_size is within the bounds of Tindex. */
|
/* Ensure Tmax_size is within the bounds of Tindex. */
|
||||||
static_assert((uint64)(Tmax_size - 1) >> 8 * sizeof(Tindex) == 0);
|
static_assert((uint64)(Tmax_size - 1) >> 8 * sizeof(Tindex) == 0);
|
||||||
|
|
||||||
static const size_t MAX_SIZE = Tmax_size; ///< Make template parameter accessible from outside
|
static constexpr size_t MAX_SIZE = Tmax_size; ///< Make template parameter accessible from outside
|
||||||
|
|
||||||
const char * const name; ///< Name of this pool
|
const char * const name; ///< Name of this pool
|
||||||
|
|
||||||
|
|||||||
@@ -678,7 +678,7 @@ struct DepotWindow : Window {
|
|||||||
int base_width = this->count_width + this->header_width;
|
int base_width = this->count_width + this->header_width;
|
||||||
|
|
||||||
resize->height = std::max<uint>(GetVehicleImageCellSize(this->type, EIT_IN_DEPOT).height, min_height);
|
resize->height = std::max<uint>(GetVehicleImageCellSize(this->type, EIT_IN_DEPOT).height, min_height);
|
||||||
resize->height = GetMinSizing(NWST_STEP, resize->height);
|
resize->height = GetMinButtonSize(resize->height);
|
||||||
if (this->type == VEH_TRAIN) {
|
if (this->type == VEH_TRAIN) {
|
||||||
resize->width = 1;
|
resize->width = 1;
|
||||||
size->width = base_width + 2 * ScaleGUITrad(29); // about 2 parts
|
size->width = base_width + 2 * ScaleGUITrad(29); // about 2 parts
|
||||||
|
|||||||
@@ -456,7 +456,7 @@ static bool DisasterTick_Aircraft(DisasterVehicle *v, uint16 image_override, boo
|
|||||||
DestructIndustry(i);
|
DestructIndustry(i);
|
||||||
|
|
||||||
SetDParam(0, i->town->index);
|
SetDParam(0, i->town->index);
|
||||||
AddTileNewsItem(news_message, NT_ACCIDENT, v->dest_tile);
|
AddIndustryNewsItem(news_message, NT_ACCIDENT, i->index);
|
||||||
if (_settings_client.sound.disaster) SndPlayTileFx(SND_12_EXPLOSION, i->location.tile);
|
if (_settings_client.sound.disaster) SndPlayTileFx(SND_12_EXPLOSION, i->location.tile);
|
||||||
}
|
}
|
||||||
} else if (v->current_order.GetDestination() == 0) {
|
} else if (v->current_order.GetDestination() == 0) {
|
||||||
|
|||||||
@@ -221,8 +221,9 @@ DriverFactoryBase::DriverFactoryBase(Driver::Type type, int priority, const char
|
|||||||
strecpy(buf, GetDriverTypeName(type), lastof(buf));
|
strecpy(buf, GetDriverTypeName(type), lastof(buf));
|
||||||
strecpy(buf + 5, name, lastof(buf));
|
strecpy(buf + 5, name, lastof(buf));
|
||||||
|
|
||||||
std::pair<Drivers::iterator, bool> P = GetDrivers().insert(Drivers::value_type(buf, this));
|
Drivers &drivers = GetDrivers();
|
||||||
assert(P.second);
|
assert(drivers.find(buf) == drivers.end());
|
||||||
|
drivers.insert(Drivers::value_type(buf, this));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -549,6 +549,7 @@ void SetupEngines()
|
|||||||
* in any case, and we just cleaned the pool. */
|
* in any case, and we just cleaned the pool. */
|
||||||
assert(Engine::CanAllocateItem());
|
assert(Engine::CanAllocateItem());
|
||||||
const Engine *e = new Engine(eid.type, eid.internal_id);
|
const Engine *e = new Engine(eid.type, eid.internal_id);
|
||||||
|
(void)e; // assert only
|
||||||
assert(e->index == index);
|
assert(e->index == index);
|
||||||
index++;
|
index++;
|
||||||
}
|
}
|
||||||
@@ -721,11 +722,9 @@ static void EnableEngineForCompany(EngineID eid, CompanyID company)
|
|||||||
|
|
||||||
SetBit(e->company_avail, company);
|
SetBit(e->company_avail, company);
|
||||||
if (e->type == VEH_TRAIN) {
|
if (e->type == VEH_TRAIN) {
|
||||||
assert(e->u.rail.railtype < RAILTYPE_END);
|
c->avail_railtypes = GetCompanyRailtypes(c->index);
|
||||||
c->avail_railtypes = AddDateIntroducedRailTypes(c->avail_railtypes | GetRailTypeInfo(e->u.rail.railtype)->introduces_railtypes, _date);
|
|
||||||
} else if (e->type == VEH_ROAD) {
|
} else if (e->type == VEH_ROAD) {
|
||||||
assert(e->u.road.roadtype < ROADTYPE_END);
|
c->avail_roadtypes = GetCompanyRoadTypes(c->index);
|
||||||
c->avail_roadtypes = AddDateIntroducedRoadTypes(c->avail_roadtypes | GetRoadTypeInfo(e->u.road.roadtype)->introduces_roadtypes, _date);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (company == _local_company) {
|
if (company == _local_company) {
|
||||||
@@ -747,8 +746,14 @@ static void EnableEngineForCompany(EngineID eid, CompanyID company)
|
|||||||
static void DisableEngineForCompany(EngineID eid, CompanyID company)
|
static void DisableEngineForCompany(EngineID eid, CompanyID company)
|
||||||
{
|
{
|
||||||
Engine *e = Engine::Get(eid);
|
Engine *e = Engine::Get(eid);
|
||||||
|
Company *c = Company::Get(company);
|
||||||
|
|
||||||
ClrBit(e->company_avail, company);
|
ClrBit(e->company_avail, company);
|
||||||
|
if (e->type == VEH_TRAIN) {
|
||||||
|
c->avail_railtypes = GetCompanyRailtypes(c->index);
|
||||||
|
} else if (e->type == VEH_ROAD) {
|
||||||
|
c->avail_roadtypes = GetCompanyRoadTypes(c->index);
|
||||||
|
}
|
||||||
|
|
||||||
if (company == _local_company) {
|
if (company == _local_company) {
|
||||||
AddRemoveEngineFromAutoreplaceAndBuildWindows(e->type);
|
AddRemoveEngineFromAutoreplaceAndBuildWindows(e->type);
|
||||||
@@ -997,8 +1002,7 @@ static void NewVehicleAvailable(Engine *e)
|
|||||||
|
|
||||||
if (e->type == VEH_TRAIN) {
|
if (e->type == VEH_TRAIN) {
|
||||||
/* maybe make another rail type available */
|
/* maybe make another rail type available */
|
||||||
RailType railtype = e->u.rail.railtype;
|
assert(e->u.rail.railtype < RAILTYPE_END);
|
||||||
assert(railtype < RAILTYPE_END);
|
|
||||||
for (Company *c : Company::Iterate()) c->avail_railtypes = AddDateIntroducedRailTypes(c->avail_railtypes | GetRailTypeInfo(e->u.rail.railtype)->introduces_railtypes, _date);
|
for (Company *c : Company::Iterate()) c->avail_railtypes = AddDateIntroducedRailTypes(c->avail_railtypes | GetRailTypeInfo(e->u.rail.railtype)->introduces_railtypes, _date);
|
||||||
} else if (e->type == VEH_ROAD) {
|
} else if (e->type == VEH_ROAD) {
|
||||||
/* maybe make another road type available */
|
/* maybe make another road type available */
|
||||||
|
|||||||
@@ -429,6 +429,9 @@ FILE *FioFOpenFile(const std::string &filename, const char *mode, Subdirectory s
|
|||||||
if (token == "..") {
|
if (token == "..") {
|
||||||
if (tokens.size() < 2) return nullptr;
|
if (tokens.size() < 2) return nullptr;
|
||||||
tokens.pop_back();
|
tokens.pop_back();
|
||||||
|
} else if (token == ".") {
|
||||||
|
/* Do nothing. "." means current folder, but you can create tar files with "." in the path.
|
||||||
|
* This confuses our file resolver. So, act like this folder doesn't exist. */
|
||||||
} else {
|
} else {
|
||||||
tokens.push_back(token);
|
tokens.push_back(token);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
#include "gfx_type.h"
|
#include "gfx_type.h"
|
||||||
#include "company_base.h"
|
#include "company_base.h"
|
||||||
#include "newgrf_config.h"
|
#include "newgrf_config.h"
|
||||||
#include "network/core/tcp_content.h"
|
#include "network/core/tcp_content_type.h"
|
||||||
|
|
||||||
|
|
||||||
/** Special values for save-load window for the data parameter of #InvalidateWindowData. */
|
/** Special values for save-load window for the data parameter of #InvalidateWindowData. */
|
||||||
|
|||||||
@@ -42,7 +42,6 @@ LoadCheckData _load_check_data; ///< Data loaded from save during SL_LOAD_CHE
|
|||||||
|
|
||||||
static bool _fios_path_changed;
|
static bool _fios_path_changed;
|
||||||
static bool _savegame_sort_dirty;
|
static bool _savegame_sort_dirty;
|
||||||
static const char *NETWORK_SAVE_FILENAME = "network-save.sav";
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -569,7 +568,7 @@ public:
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_SL_DRIVES_DIRECTORIES_LIST:
|
case WID_SL_DRIVES_DIRECTORIES_LIST:
|
||||||
resize->height = GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL);
|
resize->height = GetMinButtonSize(FONT_HEIGHT_NORMAL);
|
||||||
size->height = resize->height * 5 + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
size->height = resize->height * 5 + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
||||||
break;
|
break;
|
||||||
case WID_SL_SORT_BYNAME:
|
case WID_SL_SORT_BYNAME:
|
||||||
@@ -731,19 +730,10 @@ public:
|
|||||||
this->SetDirty();
|
this->SetDirty();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_SL_LOAD_NETWORK_BUTTON: {
|
case WID_SL_LOAD_NETWORK_BUTTON:
|
||||||
std::string savePath = FiosMakeSavegameName(NETWORK_SAVE_FILENAME);
|
_file_to_saveload.cloud_load = true;
|
||||||
#ifdef __ANDROID__
|
delete this;
|
||||||
if (!SDL_ANDROID_CloudLoad(savePath.c_str(), NULL, "OpenTTD")) {
|
break;
|
||||||
break;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
_file_to_saveload.SetMode(FIOS_TYPE_FILE);
|
|
||||||
_file_to_saveload.SetName(savePath.c_str());
|
|
||||||
_file_to_saveload.SetTitle("Network Save");
|
|
||||||
_switch_mode = SM_LOAD_GAME;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -33,6 +33,7 @@
|
|||||||
#include "game/game_instance.hpp"
|
#include "game/game_instance.hpp"
|
||||||
#include "string_func.h"
|
#include "string_func.h"
|
||||||
#include "thread.h"
|
#include "thread.h"
|
||||||
|
#include "tgp.h"
|
||||||
|
|
||||||
#include "safeguards.h"
|
#include "safeguards.h"
|
||||||
|
|
||||||
@@ -118,6 +119,8 @@ static void _GenerateWorld()
|
|||||||
|
|
||||||
ConvertGroundTilesIntoWaterTiles();
|
ConvertGroundTilesIntoWaterTiles();
|
||||||
IncreaseGeneratingWorldProgress(GWP_OBJECT);
|
IncreaseGeneratingWorldProgress(GWP_OBJECT);
|
||||||
|
|
||||||
|
_settings_game.game_creation.snow_line_height = DEF_SNOWLINE_HEIGHT;
|
||||||
} else {
|
} else {
|
||||||
GenerateLandscape(_gw.mode);
|
GenerateLandscape(_gw.mode);
|
||||||
GenerateClearTile();
|
GenerateClearTile();
|
||||||
@@ -283,6 +286,22 @@ void GenerateWorld(GenWorldMode mode, uint size_x, uint size_y, bool reset_setti
|
|||||||
InitializeGame(_gw.size_x, _gw.size_y, true, reset_settings);
|
InitializeGame(_gw.size_x, _gw.size_y, true, reset_settings);
|
||||||
PrepareGenerateWorldProgress();
|
PrepareGenerateWorldProgress();
|
||||||
|
|
||||||
|
if (_settings_game.construction.map_height_limit == 0) {
|
||||||
|
uint estimated_height = 0;
|
||||||
|
|
||||||
|
if (_gw.mode == GWM_EMPTY && _game_mode != GM_MENU) {
|
||||||
|
estimated_height = _settings_game.game_creation.se_flat_world_height;
|
||||||
|
} else if (_gw.mode == GWM_HEIGHTMAP) {
|
||||||
|
estimated_height = _settings_game.game_creation.heightmap_height;
|
||||||
|
} else if (_settings_game.game_creation.land_generator == LG_TERRAGENESIS) {
|
||||||
|
estimated_height = GetEstimationTGPMapHeight();
|
||||||
|
} else {
|
||||||
|
estimated_height = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
_settings_game.construction.map_height_limit = std::max(MAP_HEIGHT_LIMIT_AUTO_MINIMUM, std::min(MAX_MAP_HEIGHT_LIMIT, estimated_height + MAP_HEIGHT_LIMIT_AUTO_CEILING_ROOM));
|
||||||
|
}
|
||||||
|
|
||||||
/* Load the right landscape stuff, and the NewGRFs! */
|
/* Load the right landscape stuff, and the NewGRFs! */
|
||||||
GfxLoadSprites();
|
GfxLoadSprites();
|
||||||
LoadStringWidthTable();
|
LoadStringWidthTable();
|
||||||
|
|||||||
@@ -42,10 +42,15 @@ enum TgenSmoothness {
|
|||||||
TGEN_SMOOTHNESS_END, ///< Used to iterate.
|
TGEN_SMOOTHNESS_END, ///< Used to iterate.
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const uint CUSTOM_TERRAIN_TYPE_NUMBER_DIFFICULTY = 5; ///< Value for custom terrain type in difficulty settings.
|
||||||
|
|
||||||
static const uint CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY = 4; ///< Value for custom sea level in difficulty settings.
|
static const uint CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY = 4; ///< Value for custom sea level in difficulty settings.
|
||||||
static const uint CUSTOM_SEA_LEVEL_MIN_PERCENTAGE = 1; ///< Minimum percentage a user can specify for custom sea level.
|
static const uint CUSTOM_SEA_LEVEL_MIN_PERCENTAGE = 1; ///< Minimum percentage a user can specify for custom sea level.
|
||||||
static const uint CUSTOM_SEA_LEVEL_MAX_PERCENTAGE = 90; ///< Maximum percentage a user can specify for custom sea level.
|
static const uint CUSTOM_SEA_LEVEL_MAX_PERCENTAGE = 90; ///< Maximum percentage a user can specify for custom sea level.
|
||||||
|
|
||||||
|
static const uint MAP_HEIGHT_LIMIT_AUTO_MINIMUM = 30; ///< When map height limit is auto, make this the lowest possible map height limit.
|
||||||
|
static const uint MAP_HEIGHT_LIMIT_AUTO_CEILING_ROOM = 15; ///< When map height limit is auto, the map height limit will be the higest peak plus this value.
|
||||||
|
|
||||||
typedef void GWDoneProc(); ///< Procedure called when the genworld process finishes
|
typedef void GWDoneProc(); ///< Procedure called when the genworld process finishes
|
||||||
typedef void GWAbortProc(); ///< Called when genworld is aborted
|
typedef void GWAbortProc(); ///< Called when genworld is aborted
|
||||||
|
|
||||||
|
|||||||
@@ -46,6 +46,15 @@ enum GenerateLandscapeWindowMode {
|
|||||||
GLWM_SCENARIO, ///< Generate flat land.
|
GLWM_SCENARIO, ///< Generate flat land.
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the map height limit, or if set to "auto", the absolute limit.
|
||||||
|
*/
|
||||||
|
static uint GetMapHeightLimit()
|
||||||
|
{
|
||||||
|
if (_settings_newgame.construction.map_height_limit == 0) return MAX_MAP_HEIGHT_LIMIT;
|
||||||
|
return _settings_newgame.construction.map_height_limit;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Changes landscape type and sets genworld window dirty
|
* Changes landscape type and sets genworld window dirty
|
||||||
* @param landscape new landscape type
|
* @param landscape new landscape type
|
||||||
@@ -107,8 +116,10 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = {
|
|||||||
NWidget(NWID_VERTICAL), SetPIP(0, 4, 0),
|
NWidget(NWID_VERTICAL), SetPIP(0, 4, 0),
|
||||||
NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0),
|
NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0),
|
||||||
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAX_HEIGHTLEVEL, STR_NULL), SetFill(1, 1),
|
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_LABEL),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_LINE_HEIGHT, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_COVERAGE, STR_NULL), SetFill(1, 1),
|
||||||
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DESERT_COVERAGE, STR_NULL), SetFill(1, 1),
|
||||||
|
EndContainer(),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SMOOTHNESS, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SMOOTHNESS, STR_NULL), SetFill(1, 1),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1),
|
||||||
@@ -116,17 +127,19 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = {
|
|||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
||||||
/* Max. heightlevel. */
|
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_SELECTOR),
|
||||||
NWidget(NWID_HORIZONTAL),
|
/* Snow coverage. */
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN), SetFill(0, 1),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_COVERAGE_DOWN), SetFill(0, 1),
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_MAX_HEIGHTLEVEL_UP), SetFill(0, 1),
|
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_TEXT), SetDataTip(STR_MAPGEN_SNOW_COVERAGE_TEXT, STR_NULL), SetFill(1, 0),
|
||||||
EndContainer(),
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_COVERAGE_UP), SetFill(0, 1),
|
||||||
/* Snow line. */
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
/* Desert coverage. */
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_DESERT_COVERAGE_DOWN), SetFill(0, 1),
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1),
|
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_TEXT), SetDataTip(STR_MAPGEN_DESERT_COVERAGE_TEXT, STR_NULL), SetFill(1, 0),
|
||||||
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_DESERT_COVERAGE_UP), SetFill(0, 1),
|
||||||
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
/* Starting date. */
|
/* Starting date. */
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
@@ -208,21 +221,31 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = {
|
|||||||
NWidget(NWID_VERTICAL), SetPIP(0, 4, 0),
|
NWidget(NWID_VERTICAL), SetPIP(0, 4, 0),
|
||||||
NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0),
|
NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0),
|
||||||
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAX_HEIGHTLEVEL, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_HEIGHT, STR_NULL), SetFill(1, 1),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_LINE_HEIGHT, STR_NULL), SetFill(1, 1),
|
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_LABEL),
|
||||||
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_COVERAGE, STR_NULL), SetFill(1, 1),
|
||||||
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DESERT_COVERAGE, STR_NULL), SetFill(1, 1),
|
||||||
|
EndContainer(),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1),
|
||||||
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_GAME_OPTIONS_TOWN_NAMES_FRAME, STR_NULL), SetFill(1, 1),
|
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_GAME_OPTIONS_TOWN_NAMES_FRAME, STR_NULL), SetFill(1, 1),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN), SetFill(0, 1),
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN), SetFill(0, 1),
|
||||||
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
|
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_MAX_HEIGHTLEVEL_UP), SetFill(0, 1),
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_HEIGHTMAP_HEIGHT_UP), SetFill(0, 1),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_SELECTOR),
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_COVERAGE_DOWN), SetFill(0, 1),
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1),
|
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_TEXT), SetDataTip(STR_MAPGEN_SNOW_COVERAGE_TEXT, STR_NULL), SetFill(1, 0),
|
||||||
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_COVERAGE_UP), SetFill(0, 1),
|
||||||
|
EndContainer(),
|
||||||
|
NWidget(NWID_HORIZONTAL),
|
||||||
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_DESERT_COVERAGE_DOWN), SetFill(0, 1),
|
||||||
|
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_TEXT), SetDataTip(STR_MAPGEN_DESERT_COVERAGE_TEXT, STR_NULL), SetFill(1, 0),
|
||||||
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_DESERT_COVERAGE_UP), SetFill(0, 1),
|
||||||
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD), SetFill(0, 1),
|
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD), SetFill(0, 1),
|
||||||
@@ -305,7 +328,7 @@ static DropDownList BuildTownNameDropDown()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static const StringID _elevations[] = {STR_TERRAIN_TYPE_VERY_FLAT, STR_TERRAIN_TYPE_FLAT, STR_TERRAIN_TYPE_HILLY, STR_TERRAIN_TYPE_MOUNTAINOUS, STR_TERRAIN_TYPE_ALPINIST, INVALID_STRING_ID};
|
static const StringID _elevations[] = {STR_TERRAIN_TYPE_VERY_FLAT, STR_TERRAIN_TYPE_FLAT, STR_TERRAIN_TYPE_HILLY, STR_TERRAIN_TYPE_MOUNTAINOUS, STR_TERRAIN_TYPE_ALPINIST, STR_TERRAIN_TYPE_CUSTOM, INVALID_STRING_ID};
|
||||||
static const StringID _sea_lakes[] = {STR_SEA_LEVEL_VERY_LOW, STR_SEA_LEVEL_LOW, STR_SEA_LEVEL_MEDIUM, STR_SEA_LEVEL_HIGH, STR_SEA_LEVEL_CUSTOM, INVALID_STRING_ID};
|
static const StringID _sea_lakes[] = {STR_SEA_LEVEL_VERY_LOW, STR_SEA_LEVEL_LOW, STR_SEA_LEVEL_MEDIUM, STR_SEA_LEVEL_HIGH, STR_SEA_LEVEL_CUSTOM, INVALID_STRING_ID};
|
||||||
static const StringID _rivers[] = {STR_RIVERS_NONE, STR_RIVERS_FEW, STR_RIVERS_MODERATE, STR_RIVERS_LOT, INVALID_STRING_ID};
|
static const StringID _rivers[] = {STR_RIVERS_NONE, STR_RIVERS_FEW, STR_RIVERS_MODERATE, STR_RIVERS_LOT, INVALID_STRING_ID};
|
||||||
static const StringID _smoothness[] = {STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH, INVALID_STRING_ID};
|
static const StringID _smoothness[] = {STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH, INVALID_STRING_ID};
|
||||||
@@ -336,6 +359,10 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
this->SetWidgetDisabledState(WID_GL_TOWN_PULLDOWN, _game_mode == GM_EDITOR);
|
this->SetWidgetDisabledState(WID_GL_TOWN_PULLDOWN, _game_mode == GM_EDITOR);
|
||||||
this->SetWidgetDisabledState(WID_GL_INDUSTRY_PULLDOWN, _game_mode == GM_EDITOR);
|
this->SetWidgetDisabledState(WID_GL_INDUSTRY_PULLDOWN, _game_mode == GM_EDITOR);
|
||||||
|
|
||||||
|
/* In case the map_height_limit is changed, clamp heightmap_height and custom_terrain_type. */
|
||||||
|
_settings_newgame.game_creation.heightmap_height = Clamp(_settings_newgame.game_creation.heightmap_height, MIN_HEIGHTMAP_HEIGHT, GetMapHeightLimit());
|
||||||
|
_settings_newgame.game_creation.custom_terrain_type = Clamp(_settings_newgame.game_creation.custom_terrain_type, MIN_CUSTOM_TERRAIN_TYPE, GetMapHeightLimit());
|
||||||
|
|
||||||
this->OnInvalidateData();
|
this->OnInvalidateData();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -346,8 +373,9 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
case WID_GL_START_DATE_TEXT: SetDParam(0, ConvertYMDToDate(_settings_newgame.game_creation.starting_year, 0, 1)); break;
|
case WID_GL_START_DATE_TEXT: SetDParam(0, ConvertYMDToDate(_settings_newgame.game_creation.starting_year, 0, 1)); break;
|
||||||
case WID_GL_MAPSIZE_X_PULLDOWN: SetDParam(0, 1LL << _settings_newgame.game_creation.map_x); break;
|
case WID_GL_MAPSIZE_X_PULLDOWN: SetDParam(0, 1LL << _settings_newgame.game_creation.map_x); break;
|
||||||
case WID_GL_MAPSIZE_Y_PULLDOWN: SetDParam(0, 1LL << _settings_newgame.game_creation.map_y); break;
|
case WID_GL_MAPSIZE_Y_PULLDOWN: SetDParam(0, 1LL << _settings_newgame.game_creation.map_y); break;
|
||||||
case WID_GL_MAX_HEIGHTLEVEL_TEXT: SetDParam(0, _settings_newgame.construction.max_heightlevel); break;
|
case WID_GL_HEIGHTMAP_HEIGHT_TEXT: SetDParam(0, _settings_newgame.game_creation.heightmap_height); break;
|
||||||
case WID_GL_SNOW_LEVEL_TEXT: SetDParam(0, _settings_newgame.game_creation.snow_line_height); break;
|
case WID_GL_SNOW_COVERAGE_TEXT: SetDParam(0, _settings_newgame.game_creation.snow_coverage); break;
|
||||||
|
case WID_GL_DESERT_COVERAGE_TEXT: SetDParam(0, _settings_newgame.game_creation.desert_coverage); break;
|
||||||
|
|
||||||
case WID_GL_TOWN_PULLDOWN:
|
case WID_GL_TOWN_PULLDOWN:
|
||||||
if (_game_mode == GM_EDITOR) {
|
if (_game_mode == GM_EDITOR) {
|
||||||
@@ -371,7 +399,14 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
|
|
||||||
case WID_GL_INDUSTRY_PULLDOWN: SetDParam(0, _game_mode == GM_EDITOR ? STR_CONFIG_SETTING_OFF : _num_inds[_settings_newgame.difficulty.industry_density]); break;
|
case WID_GL_INDUSTRY_PULLDOWN: SetDParam(0, _game_mode == GM_EDITOR ? STR_CONFIG_SETTING_OFF : _num_inds[_settings_newgame.difficulty.industry_density]); break;
|
||||||
case WID_GL_LANDSCAPE_PULLDOWN: SetDParam(0, _landscape[_settings_newgame.game_creation.land_generator]); break;
|
case WID_GL_LANDSCAPE_PULLDOWN: SetDParam(0, _landscape[_settings_newgame.game_creation.land_generator]); break;
|
||||||
case WID_GL_TERRAIN_PULLDOWN: SetDParam(0, _elevations[_settings_newgame.difficulty.terrain_type]); break;
|
case WID_GL_TERRAIN_PULLDOWN:
|
||||||
|
if (_settings_newgame.difficulty.terrain_type == CUSTOM_TERRAIN_TYPE_NUMBER_DIFFICULTY) {
|
||||||
|
SetDParam(0, STR_TERRAIN_TYPE_CUSTOM_VALUE);
|
||||||
|
SetDParam(1, _settings_newgame.game_creation.custom_terrain_type);
|
||||||
|
} else {
|
||||||
|
SetDParam(0, _elevations[_settings_newgame.difficulty.terrain_type]); break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case WID_GL_WATER_PULLDOWN:
|
case WID_GL_WATER_PULLDOWN:
|
||||||
if (_settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) {
|
if (_settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) {
|
||||||
@@ -438,20 +473,41 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Disable snowline if not arctic */
|
/* Disable snowline if not arctic */
|
||||||
this->SetWidgetDisabledState(WID_GL_SNOW_LEVEL_TEXT, _settings_newgame.game_creation.landscape != LT_ARCTIC);
|
this->SetWidgetDisabledState(WID_GL_SNOW_COVERAGE_TEXT, _settings_newgame.game_creation.landscape != LT_ARCTIC);
|
||||||
|
/* Disable desert if not tropic */
|
||||||
|
this->SetWidgetDisabledState(WID_GL_DESERT_COVERAGE_TEXT, _settings_newgame.game_creation.landscape != LT_TROPIC);
|
||||||
|
|
||||||
|
/* Set snow/rainforest selections */
|
||||||
|
int climate_plane = 0;
|
||||||
|
switch (_settings_newgame.game_creation.landscape) {
|
||||||
|
case LT_TEMPERATE: climate_plane = SZSP_VERTICAL; break;
|
||||||
|
case LT_ARCTIC: climate_plane = 0; break;
|
||||||
|
case LT_TROPIC: climate_plane = 1; break;
|
||||||
|
case LT_TOYLAND: climate_plane = SZSP_VERTICAL; break;
|
||||||
|
}
|
||||||
|
this->GetWidget<NWidgetStacked>(WID_GL_CLIMATE_SEL_LABEL)->SetDisplayedPlane(climate_plane);
|
||||||
|
this->GetWidget<NWidgetStacked>(WID_GL_CLIMATE_SEL_SELECTOR)->SetDisplayedPlane(climate_plane);
|
||||||
|
|
||||||
/* Update availability of decreasing / increasing start date and snow level */
|
/* Update availability of decreasing / increasing start date and snow level */
|
||||||
this->SetWidgetDisabledState(WID_GL_MAX_HEIGHTLEVEL_DOWN, _settings_newgame.construction.max_heightlevel <= MIN_MAX_HEIGHTLEVEL);
|
if (mode == GLWM_HEIGHTMAP) {
|
||||||
this->SetWidgetDisabledState(WID_GL_MAX_HEIGHTLEVEL_UP, _settings_newgame.construction.max_heightlevel >= MAX_MAX_HEIGHTLEVEL);
|
this->SetWidgetDisabledState(WID_GL_HEIGHTMAP_HEIGHT_DOWN, _settings_newgame.game_creation.heightmap_height <= MIN_HEIGHTMAP_HEIGHT);
|
||||||
|
this->SetWidgetDisabledState(WID_GL_HEIGHTMAP_HEIGHT_UP, _settings_newgame.game_creation.heightmap_height >= GetMapHeightLimit());
|
||||||
|
}
|
||||||
this->SetWidgetDisabledState(WID_GL_START_DATE_DOWN, _settings_newgame.game_creation.starting_year <= MIN_YEAR);
|
this->SetWidgetDisabledState(WID_GL_START_DATE_DOWN, _settings_newgame.game_creation.starting_year <= MIN_YEAR);
|
||||||
this->SetWidgetDisabledState(WID_GL_START_DATE_UP, _settings_newgame.game_creation.starting_year >= MAX_YEAR);
|
this->SetWidgetDisabledState(WID_GL_START_DATE_UP, _settings_newgame.game_creation.starting_year >= MAX_YEAR);
|
||||||
this->SetWidgetDisabledState(WID_GL_SNOW_LEVEL_DOWN, _settings_newgame.game_creation.snow_line_height <= MIN_SNOWLINE_HEIGHT || _settings_newgame.game_creation.landscape != LT_ARCTIC);
|
this->SetWidgetDisabledState(WID_GL_SNOW_COVERAGE_DOWN, _settings_newgame.game_creation.snow_coverage <= 0 || _settings_newgame.game_creation.landscape != LT_ARCTIC);
|
||||||
this->SetWidgetDisabledState(WID_GL_SNOW_LEVEL_UP, _settings_newgame.game_creation.snow_line_height >= MAX_SNOWLINE_HEIGHT || _settings_newgame.game_creation.landscape != LT_ARCTIC);
|
this->SetWidgetDisabledState(WID_GL_SNOW_COVERAGE_UP, _settings_newgame.game_creation.snow_coverage >= 100 || _settings_newgame.game_creation.landscape != LT_ARCTIC);
|
||||||
|
this->SetWidgetDisabledState(WID_GL_DESERT_COVERAGE_DOWN, _settings_newgame.game_creation.desert_coverage <= 0 || _settings_newgame.game_creation.landscape != LT_TROPIC);
|
||||||
|
this->SetWidgetDisabledState(WID_GL_DESERT_COVERAGE_UP, _settings_newgame.game_creation.desert_coverage >= 100 || _settings_newgame.game_creation.landscape != LT_TROPIC);
|
||||||
|
|
||||||
/* Do not allow a custom sea level with the original land generator. */
|
/* Do not allow a custom sea level or terrain type with the original land generator. */
|
||||||
if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL &&
|
if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL) {
|
||||||
_settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) {
|
if (_settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) {
|
||||||
_settings_newgame.difficulty.quantity_sea_lakes = CUSTOM_SEA_LEVEL_MIN_PERCENTAGE;
|
_settings_newgame.difficulty.quantity_sea_lakes = 1;
|
||||||
|
}
|
||||||
|
if (_settings_newgame.difficulty.terrain_type == CUSTOM_TERRAIN_TYPE_NUMBER_DIFFICULTY) {
|
||||||
|
_settings_newgame.difficulty.terrain_type = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -460,7 +516,7 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
{
|
{
|
||||||
const StringID *strs = nullptr;
|
const StringID *strs = nullptr;
|
||||||
switch (widget) {
|
switch (widget) {
|
||||||
case WID_GL_MAX_HEIGHTLEVEL_TEXT:
|
case WID_GL_HEIGHTMAP_HEIGHT_TEXT:
|
||||||
SetDParam(0, MAX_TILE_HEIGHT);
|
SetDParam(0, MAX_TILE_HEIGHT);
|
||||||
*size = GetStringBoundingBox(STR_JUST_INT);
|
*size = GetStringBoundingBox(STR_JUST_INT);
|
||||||
break;
|
break;
|
||||||
@@ -474,12 +530,17 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
case WID_GL_MAPSIZE_Y_PULLDOWN:
|
case WID_GL_MAPSIZE_Y_PULLDOWN:
|
||||||
SetDParamMaxValue(0, MAX_MAP_SIZE);
|
SetDParamMaxValue(0, MAX_MAP_SIZE);
|
||||||
*size = maxdim(*size, GetStringBoundingBox(STR_JUST_INT));
|
*size = maxdim(*size, GetStringBoundingBox(STR_JUST_INT));
|
||||||
size->width = size->width + GetMinSizing(NWST_BUTTON);
|
size->width = size->width + GetMinButtonSize();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_SNOW_LEVEL_TEXT:
|
case WID_GL_SNOW_COVERAGE_TEXT:
|
||||||
SetDParamMaxValue(0, MAX_TILE_HEIGHT);
|
SetDParamMaxValue(0, MAX_TILE_HEIGHT);
|
||||||
*size = maxdim(*size, GetStringBoundingBox(STR_JUST_INT));
|
*size = maxdim(*size, GetStringBoundingBox(STR_MAPGEN_SNOW_COVERAGE_TEXT));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case WID_GL_DESERT_COVERAGE_TEXT:
|
||||||
|
SetDParamMaxValue(0, MAX_TILE_HEIGHT);
|
||||||
|
*size = maxdim(*size, GetStringBoundingBox(STR_MAPGEN_DESERT_COVERAGE_TEXT));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_HEIGHTMAP_SIZE_TEXT:
|
case WID_GL_HEIGHTMAP_SIZE_TEXT:
|
||||||
@@ -497,7 +558,13 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
|
|
||||||
case WID_GL_INDUSTRY_PULLDOWN: strs = _num_inds; break;
|
case WID_GL_INDUSTRY_PULLDOWN: strs = _num_inds; break;
|
||||||
case WID_GL_LANDSCAPE_PULLDOWN: strs = _landscape; break;
|
case WID_GL_LANDSCAPE_PULLDOWN: strs = _landscape; break;
|
||||||
case WID_GL_TERRAIN_PULLDOWN: strs = _elevations; break;
|
|
||||||
|
case WID_GL_TERRAIN_PULLDOWN:
|
||||||
|
strs = _elevations;
|
||||||
|
SetDParamMaxValue(0, MAX_MAP_HEIGHT_LIMIT);
|
||||||
|
*size = maxdim(*size, GetStringBoundingBox(STR_TERRAIN_TYPE_CUSTOM_VALUE));
|
||||||
|
break;
|
||||||
|
|
||||||
case WID_GL_WATER_PULLDOWN:
|
case WID_GL_WATER_PULLDOWN:
|
||||||
strs = _sea_lakes;
|
strs = _sea_lakes;
|
||||||
SetDParamMaxValue(0, CUSTOM_SEA_LEVEL_MAX_PERCENTAGE);
|
SetDParamMaxValue(0, CUSTOM_SEA_LEVEL_MAX_PERCENTAGE);
|
||||||
@@ -603,22 +670,22 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case WID_GL_MAX_HEIGHTLEVEL_DOWN:
|
case WID_GL_HEIGHTMAP_HEIGHT_DOWN:
|
||||||
case WID_GL_MAX_HEIGHTLEVEL_UP: // Height level buttons
|
case WID_GL_HEIGHTMAP_HEIGHT_UP: // Height level buttons
|
||||||
/* Don't allow too fast scrolling */
|
/* Don't allow too fast scrolling */
|
||||||
if (!(this->flags & WF_TIMEOUT) || this->timeout_timer <= 1) {
|
if (!(this->flags & WF_TIMEOUT) || this->timeout_timer <= 1) {
|
||||||
this->HandleButtonClick(widget);
|
this->HandleButtonClick(widget);
|
||||||
|
|
||||||
_settings_newgame.construction.max_heightlevel = Clamp(_settings_newgame.construction.max_heightlevel + widget - WID_GL_MAX_HEIGHTLEVEL_TEXT, MIN_MAX_HEIGHTLEVEL, MAX_MAX_HEIGHTLEVEL);
|
_settings_newgame.game_creation.heightmap_height = Clamp(_settings_newgame.game_creation.heightmap_height + widget - WID_GL_HEIGHTMAP_HEIGHT_TEXT, MIN_HEIGHTMAP_HEIGHT, GetMapHeightLimit());
|
||||||
this->InvalidateData();
|
this->InvalidateData();
|
||||||
}
|
}
|
||||||
_left_button_clicked = false;
|
_left_button_clicked = false;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_MAX_HEIGHTLEVEL_TEXT: // Height level text
|
case WID_GL_HEIGHTMAP_HEIGHT_TEXT: // Height level text
|
||||||
this->widget_id = WID_GL_MAX_HEIGHTLEVEL_TEXT;
|
this->widget_id = WID_GL_HEIGHTMAP_HEIGHT_TEXT;
|
||||||
SetDParam(0, _settings_newgame.construction.max_heightlevel);
|
SetDParam(0, _settings_newgame.game_creation.heightmap_height);
|
||||||
ShowQueryString(STR_JUST_INT, STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
|
ShowQueryString(STR_JUST_INT, STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
@@ -640,22 +707,40 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
ShowQueryString(STR_JUST_INT, STR_MAPGEN_START_DATE_QUERY_CAPT, 8, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
|
ShowQueryString(STR_JUST_INT, STR_MAPGEN_START_DATE_QUERY_CAPT, 8, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_SNOW_LEVEL_DOWN:
|
case WID_GL_SNOW_COVERAGE_DOWN:
|
||||||
case WID_GL_SNOW_LEVEL_UP: // Snow line buttons
|
case WID_GL_SNOW_COVERAGE_UP: // Snow coverage buttons
|
||||||
/* Don't allow too fast scrolling */
|
/* Don't allow too fast scrolling */
|
||||||
if (!(this->flags & WF_TIMEOUT) || this->timeout_timer <= 1) {
|
if (!(this->flags & WF_TIMEOUT) || this->timeout_timer <= 1) {
|
||||||
this->HandleButtonClick(widget);
|
this->HandleButtonClick(widget);
|
||||||
|
|
||||||
_settings_newgame.game_creation.snow_line_height = Clamp(_settings_newgame.game_creation.snow_line_height + widget - WID_GL_SNOW_LEVEL_TEXT, MIN_SNOWLINE_HEIGHT, MAX_SNOWLINE_HEIGHT);
|
_settings_newgame.game_creation.snow_coverage = Clamp(_settings_newgame.game_creation.snow_coverage + (widget - WID_GL_SNOW_COVERAGE_TEXT) * 10, 0, 100);
|
||||||
this->InvalidateData();
|
this->InvalidateData();
|
||||||
}
|
}
|
||||||
_left_button_clicked = false;
|
_left_button_clicked = false;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_SNOW_LEVEL_TEXT: // Snow line text
|
case WID_GL_SNOW_COVERAGE_TEXT: // Snow coverage text
|
||||||
this->widget_id = WID_GL_SNOW_LEVEL_TEXT;
|
this->widget_id = WID_GL_SNOW_COVERAGE_TEXT;
|
||||||
SetDParam(0, _settings_newgame.game_creation.snow_line_height);
|
SetDParam(0, _settings_newgame.game_creation.snow_coverage);
|
||||||
ShowQueryString(STR_JUST_INT, STR_MAPGEN_SNOW_LINE_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
|
ShowQueryString(STR_JUST_INT, STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case WID_GL_DESERT_COVERAGE_DOWN:
|
||||||
|
case WID_GL_DESERT_COVERAGE_UP: // Desert coverage buttons
|
||||||
|
/* Don't allow too fast scrolling */
|
||||||
|
if (!(this->flags & WF_TIMEOUT) || this->timeout_timer <= 1) {
|
||||||
|
this->HandleButtonClick(widget);
|
||||||
|
|
||||||
|
_settings_newgame.game_creation.desert_coverage = Clamp(_settings_newgame.game_creation.desert_coverage + (widget - WID_GL_DESERT_COVERAGE_TEXT) * 10, 0, 100);
|
||||||
|
this->InvalidateData();
|
||||||
|
}
|
||||||
|
_left_button_clicked = false;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case WID_GL_DESERT_COVERAGE_TEXT: // Desert line text
|
||||||
|
this->widget_id = WID_GL_DESERT_COVERAGE_TEXT;
|
||||||
|
SetDParam(0, _settings_newgame.game_creation.desert_coverage);
|
||||||
|
ShowQueryString(STR_JUST_INT, STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_LANDSCAPE_PULLDOWN: // Landscape generator
|
case WID_GL_LANDSCAPE_PULLDOWN: // Landscape generator
|
||||||
@@ -723,8 +808,12 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
|
|
||||||
void OnTimeout() override
|
void OnTimeout() override
|
||||||
{
|
{
|
||||||
static const int raise_widgets[] = {WID_GL_MAX_HEIGHTLEVEL_DOWN, WID_GL_MAX_HEIGHTLEVEL_UP, WID_GL_START_DATE_DOWN, WID_GL_START_DATE_UP, WID_GL_SNOW_LEVEL_UP, WID_GL_SNOW_LEVEL_DOWN, WIDGET_LIST_END};
|
static const int newgame_raise_widgets[] = {WID_GL_START_DATE_DOWN, WID_GL_START_DATE_UP, WID_GL_SNOW_COVERAGE_UP, WID_GL_SNOW_COVERAGE_DOWN, WID_GL_DESERT_COVERAGE_UP, WID_GL_DESERT_COVERAGE_DOWN, WIDGET_LIST_END};
|
||||||
for (const int *widget = raise_widgets; *widget != WIDGET_LIST_END; widget++) {
|
static const int heightmap_raise_widgets[] = {WID_GL_HEIGHTMAP_HEIGHT_DOWN, WID_GL_HEIGHTMAP_HEIGHT_UP, WID_GL_START_DATE_DOWN, WID_GL_START_DATE_UP, WID_GL_SNOW_COVERAGE_UP, WID_GL_SNOW_COVERAGE_DOWN, WID_GL_DESERT_COVERAGE_UP, WID_GL_DESERT_COVERAGE_DOWN, WIDGET_LIST_END};
|
||||||
|
|
||||||
|
const int *widget = (mode == GLWM_HEIGHTMAP) ? heightmap_raise_widgets : newgame_raise_widgets;
|
||||||
|
|
||||||
|
for (; *widget != WIDGET_LIST_END; widget++) {
|
||||||
if (this->IsWidgetLowered(*widget)) {
|
if (this->IsWidgetLowered(*widget)) {
|
||||||
this->RaiseWidget(*widget);
|
this->RaiseWidget(*widget);
|
||||||
this->SetWidgetDirty(*widget);
|
this->SetWidgetDirty(*widget);
|
||||||
@@ -767,7 +856,15 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_INDUSTRY_PULLDOWN: _settings_newgame.difficulty.industry_density = index; break;
|
case WID_GL_INDUSTRY_PULLDOWN: _settings_newgame.difficulty.industry_density = index; break;
|
||||||
case WID_GL_TERRAIN_PULLDOWN: _settings_newgame.difficulty.terrain_type = index; break;
|
case WID_GL_TERRAIN_PULLDOWN: {
|
||||||
|
if ((uint)index == CUSTOM_TERRAIN_TYPE_NUMBER_DIFFICULTY) {
|
||||||
|
this->widget_id = widget;
|
||||||
|
SetDParam(0, _settings_newgame.game_creation.custom_terrain_type);
|
||||||
|
ShowQueryString(STR_JUST_INT, STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_NONE);
|
||||||
|
}
|
||||||
|
_settings_newgame.difficulty.terrain_type = index;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case WID_GL_WATER_PULLDOWN: {
|
case WID_GL_WATER_PULLDOWN: {
|
||||||
if ((uint)index == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) {
|
if ((uint)index == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) {
|
||||||
@@ -793,19 +890,21 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
} else {
|
} else {
|
||||||
/* An empty string means revert to the default */
|
/* An empty string means revert to the default */
|
||||||
switch (this->widget_id) {
|
switch (this->widget_id) {
|
||||||
case WID_GL_MAX_HEIGHTLEVEL_TEXT: value = DEF_MAX_HEIGHTLEVEL; break;
|
case WID_GL_HEIGHTMAP_HEIGHT_TEXT: value = MAP_HEIGHT_LIMIT_AUTO_MINIMUM; break;
|
||||||
case WID_GL_START_DATE_TEXT: value = DEF_START_YEAR; break;
|
case WID_GL_START_DATE_TEXT: value = DEF_START_YEAR; break;
|
||||||
case WID_GL_SNOW_LEVEL_TEXT: value = DEF_SNOWLINE_HEIGHT; break;
|
case WID_GL_SNOW_COVERAGE_TEXT: value = DEF_SNOW_COVERAGE; break;
|
||||||
case WID_GL_TOWN_PULLDOWN: value = 1; break;
|
case WID_GL_DESERT_COVERAGE_TEXT: value = DEF_DESERT_COVERAGE; break;
|
||||||
case WID_GL_WATER_PULLDOWN: value = CUSTOM_SEA_LEVEL_MIN_PERCENTAGE; break;
|
case WID_GL_TOWN_PULLDOWN: value = 1; break;
|
||||||
|
case WID_GL_TERRAIN_PULLDOWN: value = MIN_MAP_HEIGHT_LIMIT; break;
|
||||||
|
case WID_GL_WATER_PULLDOWN: value = CUSTOM_SEA_LEVEL_MIN_PERCENTAGE; break;
|
||||||
default: NOT_REACHED();
|
default: NOT_REACHED();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (this->widget_id) {
|
switch (this->widget_id) {
|
||||||
case WID_GL_MAX_HEIGHTLEVEL_TEXT:
|
case WID_GL_HEIGHTMAP_HEIGHT_TEXT:
|
||||||
this->SetWidgetDirty(WID_GL_MAX_HEIGHTLEVEL_TEXT);
|
this->SetWidgetDirty(WID_GL_HEIGHTMAP_HEIGHT_TEXT);
|
||||||
_settings_newgame.construction.max_heightlevel = Clamp(value, MIN_MAX_HEIGHTLEVEL, MAX_MAX_HEIGHTLEVEL);
|
_settings_newgame.game_creation.heightmap_height = Clamp(value, MIN_HEIGHTMAP_HEIGHT, GetMapHeightLimit());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_START_DATE_TEXT:
|
case WID_GL_START_DATE_TEXT:
|
||||||
@@ -813,15 +912,24 @@ struct GenerateLandscapeWindow : public Window {
|
|||||||
_settings_newgame.game_creation.starting_year = Clamp(value, MIN_YEAR, MAX_YEAR);
|
_settings_newgame.game_creation.starting_year = Clamp(value, MIN_YEAR, MAX_YEAR);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_SNOW_LEVEL_TEXT:
|
case WID_GL_SNOW_COVERAGE_TEXT:
|
||||||
this->SetWidgetDirty(WID_GL_SNOW_LEVEL_TEXT);
|
this->SetWidgetDirty(WID_GL_SNOW_COVERAGE_TEXT);
|
||||||
_settings_newgame.game_creation.snow_line_height = Clamp(value, MIN_SNOWLINE_HEIGHT, MAX_SNOWLINE_HEIGHT);
|
_settings_newgame.game_creation.snow_coverage = Clamp(value, 0, 100);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case WID_GL_DESERT_COVERAGE_TEXT:
|
||||||
|
this->SetWidgetDirty(WID_GL_DESERT_COVERAGE_TEXT);
|
||||||
|
_settings_newgame.game_creation.desert_coverage = Clamp(value, 0, 100);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_TOWN_PULLDOWN:
|
case WID_GL_TOWN_PULLDOWN:
|
||||||
_settings_newgame.game_creation.custom_town_number = Clamp(value, 1, CUSTOM_TOWN_MAX_NUMBER);
|
_settings_newgame.game_creation.custom_town_number = Clamp(value, 1, CUSTOM_TOWN_MAX_NUMBER);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case WID_GL_TERRAIN_PULLDOWN:
|
||||||
|
_settings_newgame.game_creation.custom_terrain_type = Clamp(value, MIN_CUSTOM_TERRAIN_TYPE, GetMapHeightLimit());
|
||||||
|
break;
|
||||||
|
|
||||||
case WID_GL_WATER_PULLDOWN:
|
case WID_GL_WATER_PULLDOWN:
|
||||||
_settings_newgame.game_creation.custom_sea_level = Clamp(value, CUSTOM_SEA_LEVEL_MIN_PERCENTAGE, CUSTOM_SEA_LEVEL_MAX_PERCENTAGE);
|
_settings_newgame.game_creation.custom_sea_level = Clamp(value, CUSTOM_SEA_LEVEL_MIN_PERCENTAGE, CUSTOM_SEA_LEVEL_MAX_PERCENTAGE);
|
||||||
break;
|
break;
|
||||||
@@ -938,7 +1046,7 @@ struct CreateScenarioWindow : public Window
|
|||||||
this->SetWidgetDisabledState(WID_CS_START_DATE_DOWN, _settings_newgame.game_creation.starting_year <= MIN_YEAR);
|
this->SetWidgetDisabledState(WID_CS_START_DATE_DOWN, _settings_newgame.game_creation.starting_year <= MIN_YEAR);
|
||||||
this->SetWidgetDisabledState(WID_CS_START_DATE_UP, _settings_newgame.game_creation.starting_year >= MAX_YEAR);
|
this->SetWidgetDisabledState(WID_CS_START_DATE_UP, _settings_newgame.game_creation.starting_year >= MAX_YEAR);
|
||||||
this->SetWidgetDisabledState(WID_CS_FLAT_LAND_HEIGHT_DOWN, _settings_newgame.game_creation.se_flat_world_height <= 0);
|
this->SetWidgetDisabledState(WID_CS_FLAT_LAND_HEIGHT_DOWN, _settings_newgame.game_creation.se_flat_world_height <= 0);
|
||||||
this->SetWidgetDisabledState(WID_CS_FLAT_LAND_HEIGHT_UP, _settings_newgame.game_creation.se_flat_world_height >= MAX_TILE_HEIGHT);
|
this->SetWidgetDisabledState(WID_CS_FLAT_LAND_HEIGHT_UP, _settings_newgame.game_creation.se_flat_world_height >= GetMapHeightLimit());
|
||||||
|
|
||||||
this->SetWidgetLoweredState(WID_CS_TEMPERATE, _settings_newgame.game_creation.landscape == LT_TEMPERATE);
|
this->SetWidgetLoweredState(WID_CS_TEMPERATE, _settings_newgame.game_creation.landscape == LT_TEMPERATE);
|
||||||
this->SetWidgetLoweredState(WID_CS_ARCTIC, _settings_newgame.game_creation.landscape == LT_ARCTIC);
|
this->SetWidgetLoweredState(WID_CS_ARCTIC, _settings_newgame.game_creation.landscape == LT_ARCTIC);
|
||||||
@@ -971,9 +1079,9 @@ struct CreateScenarioWindow : public Window
|
|||||||
}
|
}
|
||||||
*size = maxdim(*size, GetStringBoundingBox(str));
|
*size = maxdim(*size, GetStringBoundingBox(str));
|
||||||
size->width += padding.width;
|
size->width += padding.width;
|
||||||
size->width = GetMinSizing(NWST_BUTTON, size->width);
|
size->width = GetMinButtonSize(size->width);
|
||||||
size->height += padding.height;
|
size->height += padding.height;
|
||||||
size->height = GetMinSizing(NWST_BUTTON, size->height);
|
size->height = GetMinButtonSize(size->height);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnClick(Point pt, int widget, int click_count) override
|
void OnClick(Point pt, int widget, int click_count) override
|
||||||
@@ -1028,7 +1136,7 @@ struct CreateScenarioWindow : public Window
|
|||||||
this->HandleButtonClick(widget);
|
this->HandleButtonClick(widget);
|
||||||
this->SetDirty();
|
this->SetDirty();
|
||||||
|
|
||||||
_settings_newgame.game_creation.se_flat_world_height = Clamp(_settings_newgame.game_creation.se_flat_world_height + widget - WID_CS_FLAT_LAND_HEIGHT_TEXT, 0, _settings_game.construction.max_heightlevel);
|
_settings_newgame.game_creation.se_flat_world_height = Clamp(_settings_newgame.game_creation.se_flat_world_height + widget - WID_CS_FLAT_LAND_HEIGHT_TEXT, 0, GetMapHeightLimit());
|
||||||
}
|
}
|
||||||
_left_button_clicked = false;
|
_left_button_clicked = false;
|
||||||
break;
|
break;
|
||||||
@@ -1074,7 +1182,7 @@ struct CreateScenarioWindow : public Window
|
|||||||
|
|
||||||
case WID_CS_FLAT_LAND_HEIGHT_TEXT:
|
case WID_CS_FLAT_LAND_HEIGHT_TEXT:
|
||||||
this->SetWidgetDirty(WID_CS_FLAT_LAND_HEIGHT_TEXT);
|
this->SetWidgetDirty(WID_CS_FLAT_LAND_HEIGHT_TEXT);
|
||||||
_settings_newgame.game_creation.se_flat_world_height = Clamp(value, 0, _settings_game.construction.max_heightlevel);
|
_settings_newgame.game_creation.se_flat_world_height = Clamp(value, 0, GetMapHeightLimit());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1304,6 +1412,12 @@ static void _SetGeneratingWorldProgress(GenWorldProgress cls, uint progress, uin
|
|||||||
static_assert(lengthof(percent_table) == GWP_CLASS_COUNT + 1);
|
static_assert(lengthof(percent_table) == GWP_CLASS_COUNT + 1);
|
||||||
assert(cls < GWP_CLASS_COUNT);
|
assert(cls < GWP_CLASS_COUNT);
|
||||||
|
|
||||||
|
/* Check if we really are generating the world.
|
||||||
|
* For example, placing trees via the SE also calls this function, but
|
||||||
|
* shouldn't try to update the progress.
|
||||||
|
*/
|
||||||
|
if (!HasModalProgress()) return;
|
||||||
|
|
||||||
if (IsGeneratingWorldAborted()) {
|
if (IsGeneratingWorldAborted()) {
|
||||||
HandleGeneratingWorldAbortion();
|
HandleGeneratingWorldAbortion();
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -1399,7 +1399,7 @@ void ScreenSizeChanged()
|
|||||||
void UndrawMouseCursor()
|
void UndrawMouseCursor()
|
||||||
{
|
{
|
||||||
/* Don't undraw mouse cursor if it is handled by the video driver. */
|
/* Don't undraw mouse cursor if it is handled by the video driver. */
|
||||||
if (VideoDriver::GetInstance()->UseSystemCursor()) return;
|
if (VideoDriver::GetInstance()->UseSystemCursor() || !_settings_client.gui.draw_mouse_cursor) return;
|
||||||
|
|
||||||
/* Don't undraw the mouse cursor if the screen is not ready */
|
/* Don't undraw the mouse cursor if the screen is not ready */
|
||||||
if (_screen.dst_ptr == nullptr) return;
|
if (_screen.dst_ptr == nullptr) return;
|
||||||
@@ -1415,7 +1415,7 @@ void UndrawMouseCursor()
|
|||||||
void DrawMouseCursor()
|
void DrawMouseCursor()
|
||||||
{
|
{
|
||||||
/* Don't draw mouse cursor if it is handled by the video driver. */
|
/* Don't draw mouse cursor if it is handled by the video driver. */
|
||||||
if (VideoDriver::GetInstance()->UseSystemCursor()) return;
|
if (VideoDriver::GetInstance()->UseSystemCursor() || !_settings_client.gui.draw_mouse_cursor) return;
|
||||||
|
|
||||||
/* Don't draw the mouse cursor if the screen is not ready */
|
/* Don't draw the mouse cursor if the screen is not ready */
|
||||||
if (_screen.dst_ptr == nullptr) return;
|
if (_screen.dst_ptr == nullptr) return;
|
||||||
|
|||||||
@@ -244,6 +244,28 @@ static void LoadSpriteTables()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static void RealChangeBlitter(const char *repl_blitter)
|
||||||
|
{
|
||||||
|
const char *cur_blitter = BlitterFactory::GetCurrentBlitter()->GetName();
|
||||||
|
if (strcmp(cur_blitter, repl_blitter) == 0) return;
|
||||||
|
|
||||||
|
DEBUG(driver, 1, "Switching blitter from '%s' to '%s'... ", cur_blitter, repl_blitter);
|
||||||
|
Blitter *new_blitter = BlitterFactory::SelectBlitter(repl_blitter);
|
||||||
|
if (new_blitter == nullptr) NOT_REACHED();
|
||||||
|
DEBUG(driver, 1, "Successfully switched to %s.", repl_blitter);
|
||||||
|
|
||||||
|
if (!VideoDriver::GetInstance()->AfterBlitterChange()) {
|
||||||
|
/* Failed to switch blitter, let's hope we can return to the old one. */
|
||||||
|
if (BlitterFactory::SelectBlitter(cur_blitter) == nullptr || !VideoDriver::GetInstance()->AfterBlitterChange()) usererror("Failed to reinitialize video driver. Specify a fixed blitter in the config");
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Clear caches that might have sprites for another blitter. */
|
||||||
|
VideoDriver::GetInstance()->ClearSystemSprites();
|
||||||
|
ClearFontCache();
|
||||||
|
GfxClearSpriteCache();
|
||||||
|
ReInitAllWindows();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check blitter needed by NewGRF config and switch if needed.
|
* Check blitter needed by NewGRF config and switch if needed.
|
||||||
* @return False when nothing changed, true otherwise.
|
* @return False when nothing changed, true otherwise.
|
||||||
@@ -309,7 +331,7 @@ static bool SwitchNewGRFBlitter()
|
|||||||
if (BlitterFactory::GetBlitterFactory(repl_blitter) == nullptr) continue;
|
if (BlitterFactory::GetBlitterFactory(repl_blitter) == nullptr) continue;
|
||||||
|
|
||||||
/* Inform the video driver we want to switch blitter as soon as possible. */
|
/* Inform the video driver we want to switch blitter as soon as possible. */
|
||||||
VideoDriver::GetInstance()->ChangeBlitter(repl_blitter);
|
VideoDriver::GetInstance()->QueueOnMainThread(std::bind(&RealChangeBlitter, repl_blitter));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -114,7 +114,7 @@ static NWidgetBase *MakeNWidgetCompanyLines(int *biggest_index)
|
|||||||
|
|
||||||
for (int widnum = WID_GL_FIRST_COMPANY; widnum <= WID_GL_LAST_COMPANY; widnum++) {
|
for (int widnum = WID_GL_FIRST_COMPANY; widnum <= WID_GL_LAST_COMPANY; widnum++) {
|
||||||
NWidgetBackground *panel = new NWidgetBackground(WWT_PANEL, COLOUR_BROWN, widnum);
|
NWidgetBackground *panel = new NWidgetBackground(WWT_PANEL, COLOUR_BROWN, widnum);
|
||||||
panel->sizing_type = NWST_STEP;
|
panel->sizing_type = NWST_BUTTON;
|
||||||
panel->SetMinimalSize(246, line_height);
|
panel->SetMinimalSize(246, line_height);
|
||||||
panel->SetFill(1, 0);
|
panel->SetFill(1, 0);
|
||||||
panel->SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP);
|
panel->SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP);
|
||||||
@@ -647,7 +647,7 @@ static const NWidgetPart _nested_operating_profit_widgets[] = {
|
|||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
||||||
SetSizingType(NWST_STEP),
|
SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -699,7 +699,7 @@ static const NWidgetPart _nested_income_graph_widgets[] = {
|
|||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
||||||
SetSizingType(NWST_STEP),
|
SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -749,7 +749,7 @@ static const NWidgetPart _nested_delivered_cargo_graph_widgets[] = {
|
|||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
||||||
SetSizingType(NWST_STEP),
|
SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -805,9 +805,9 @@ static const NWidgetPart _nested_performance_history_widgets[] = {
|
|||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_PHG_DETAILED_PERFORMANCE), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_PERFORMANCE_DETAIL_KEY, STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_PHG_DETAILED_PERFORMANCE), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_PERFORMANCE_DETAIL_KEY, STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP),
|
||||||
SetSizingType(NWST_STEP),
|
SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_PHG_KEY), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_PHG_KEY), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
||||||
SetSizingType(NWST_STEP),
|
SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_PHG_RESIZE),
|
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_PHG_RESIZE),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -857,7 +857,7 @@ static const NWidgetPart _nested_company_value_graph_widgets[] = {
|
|||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
NWidget(NWID_SPACER), SetFill(0, 1), SetResize(0, 1),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_CV_KEY_BUTTON), SetMinimalSize(50, 0), SetMinimalTextLines(1, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM + 2), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
|
||||||
SetSizingType(NWST_STEP),
|
SetSizingType(NWST_BUTTON),
|
||||||
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_CV_RESIZE),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
|
|||||||
@@ -46,37 +46,37 @@ static const NWidgetPart _nested_group_widgets[] = {
|
|||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
/* left part */
|
/* left part */
|
||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY, WID_GL_ALL_VEHICLES), SetFill(1, 0), SetMinimalTextLines(1, WD_DROPDOWNTEXT_TOP + WD_DROPDOWNTEXT_BOTTOM), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY, WID_GL_ALL_VEHICLES), SetFill(1, 0), EndContainer(),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY, WID_GL_DEFAULT_VEHICLES), SetFill(1, 0), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY, WID_GL_DEFAULT_VEHICLES), SetFill(1, 0), EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_MATRIX, COLOUR_GREY, WID_GL_LIST_GROUP), SetMatrixDataTip(1, 0, STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP),
|
NWidget(WWT_MATRIX, COLOUR_GREY, WID_GL_LIST_GROUP), SetMatrixDataTip(1, 0, STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP),
|
||||||
SetFill(1, 0), SetResize(0, 1), SetScrollbar(WID_GL_LIST_GROUP_SCROLLBAR),
|
SetFill(1, 0), SetResize(0, 1), SetScrollbar(WID_GL_LIST_GROUP_SCROLLBAR),
|
||||||
NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_GL_LIST_GROUP_SCROLLBAR),
|
NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_GL_LIST_GROUP_SCROLLBAR),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY, WID_GL_INFO), SetFill(1, 0), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY, WID_GL_INFO), SetFill(1, 1), SetMinimalTextLines(3, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM), EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_CREATE_GROUP), SetFill(0, 1),
|
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_CREATE_GROUP),
|
||||||
SetDataTip(SPR_GROUP_CREATE_TRAIN, STR_GROUP_CREATE_TOOLTIP),
|
SetDataTip(SPR_GROUP_CREATE_TRAIN, STR_GROUP_CREATE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_DELETE_GROUP), SetFill(0, 1),
|
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_DELETE_GROUP),
|
||||||
SetDataTip(SPR_GROUP_DELETE_TRAIN, STR_GROUP_DELETE_TOOLTIP),
|
SetDataTip(SPR_GROUP_DELETE_TRAIN, STR_GROUP_DELETE_TOOLTIP),
|
||||||
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_RENAME_GROUP), SetFill(0, 1),
|
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_RENAME_GROUP),
|
||||||
SetDataTip(SPR_GROUP_RENAME_TRAIN, STR_GROUP_RENAME_TOOLTIP),
|
SetDataTip(SPR_GROUP_RENAME_TRAIN, STR_GROUP_RENAME_TOOLTIP),
|
||||||
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_LIVERY_GROUP), SetFill(0, 1),
|
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_LIVERY_GROUP),
|
||||||
SetDataTip(SPR_GROUP_LIVERY_TRAIN, STR_GROUP_LIVERY_TOOLTIP),
|
SetDataTip(SPR_GROUP_LIVERY_TRAIN, STR_GROUP_LIVERY_TOOLTIP),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY), SetFill(1, 1), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY), SetFill(1, 0), EndContainer(),
|
||||||
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_REPLACE_PROTECTION), SetFill(0, 1),
|
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_REPLACE_PROTECTION),
|
||||||
SetDataTip(SPR_GROUP_REPLACE_OFF_TRAIN, STR_GROUP_REPLACE_PROTECTION_TOOLTIP),
|
SetDataTip(SPR_GROUP_REPLACE_OFF_TRAIN, STR_GROUP_REPLACE_PROTECTION_TOOLTIP),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
/* right part */
|
/* right part */
|
||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_GL_GROUP_BY_ORDER), SetSizingType(NWST_STEP), SetMinimalSize(81, 12), SetDataTip(STR_STATION_VIEW_GROUP, STR_TOOLTIP_GROUP_ORDER),
|
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_GL_GROUP_BY_ORDER), SetSizingType(NWST_BUTTON), SetMinimalSize(81, 12), SetDataTip(STR_STATION_VIEW_GROUP, STR_TOOLTIP_GROUP_ORDER),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_GROUP_BY_DROPDOWN), SetSizingType(NWST_STEP), SetMinimalSize(167, 12), SetDataTip(0x0, STR_TOOLTIP_GROUP_ORDER),
|
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_GROUP_BY_DROPDOWN), SetSizingType(NWST_BUTTON), SetMinimalSize(167, 12), SetDataTip(0x0, STR_TOOLTIP_GROUP_ORDER),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(12, 12), SetResize(1, 0), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(12, 12), SetResize(1, 0), EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_GL_SORT_BY_ORDER), SetSizingType(NWST_STEP), SetMinimalSize(81, 12), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_GL_SORT_BY_ORDER), SetSizingType(NWST_BUTTON), SetMinimalSize(81, 12), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_SORT_BY_DROPDOWN), SetMinimalSize(167, 12), SetDataTip(0x0, STR_TOOLTIP_SORT_CRITERIA),
|
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_SORT_BY_DROPDOWN), SetMinimalSize(167, 12), SetDataTip(0x0, STR_TOOLTIP_SORT_CRITERIA),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(12, 12), SetResize(1, 0), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(12, 12), SetResize(1, 0), EndContainer(),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -86,14 +86,14 @@ static const NWidgetPart _nested_group_widgets[] = {
|
|||||||
EndContainer(),
|
EndContainer(),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY), SetFill(1, 1), SetResize(1, 0), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY), SetFill(1, 1), SetResize(1, 0), EndContainer(),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_GL_AVAILABLE_VEHICLES), SetMinimalSize(106, 12), SetFill(0, 1),
|
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_GL_AVAILABLE_VEHICLES), SetMinimalSize(106, 12),
|
||||||
SetDataTip(STR_BLACK_STRING, STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP),
|
SetDataTip(STR_BLACK_STRING, STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP),
|
||||||
NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(0, 12), SetFill(1, 1), SetResize(1, 0), EndContainer(),
|
NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(0, 12), SetFill(1, 0), SetResize(1, 0), EndContainer(),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_MANAGE_VEHICLES_DROPDOWN), SetMinimalSize(118, 12), SetFill(0, 1),
|
NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_MANAGE_VEHICLES_DROPDOWN), SetMinimalSize(118, 12),
|
||||||
SetDataTip(STR_VEHICLE_LIST_MANAGE_LIST, STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP),
|
SetDataTip(STR_VEHICLE_LIST_MANAGE_LIST, STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP),
|
||||||
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_STOP_ALL), SetMinimalSize(12, 12), SetFill(0, 1),
|
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_STOP_ALL), SetMinimalSize(12, 12),
|
||||||
SetDataTip(SPR_FLAG_VEH_STOPPED, STR_VEHICLE_LIST_MASS_STOP_LIST_TOOLTIP),
|
SetDataTip(SPR_FLAG_VEH_STOPPED, STR_VEHICLE_LIST_MASS_STOP_LIST_TOOLTIP),
|
||||||
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_START_ALL), SetMinimalSize(12, 12), SetFill(0, 1),
|
NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_GL_START_ALL), SetMinimalSize(12, 12),
|
||||||
SetDataTip(SPR_FLAG_VEH_RUNNING, STR_VEHICLE_LIST_MASS_START_LIST_TOOLTIP),
|
SetDataTip(SPR_FLAG_VEH_RUNNING, STR_VEHICLE_LIST_MASS_START_LIST_TOOLTIP),
|
||||||
NWidget(WWT_RESIZEBOX, COLOUR_GREY),
|
NWidget(WWT_RESIZEBOX, COLOUR_GREY),
|
||||||
EndContainer(),
|
EndContainer(),
|
||||||
@@ -229,8 +229,8 @@ private:
|
|||||||
this->column_size[VGC_NUMBER] = GetStringBoundingBox(STR_GROUP_COUNT_WITH_SUBGROUP);
|
this->column_size[VGC_NUMBER] = GetStringBoundingBox(STR_GROUP_COUNT_WITH_SUBGROUP);
|
||||||
this->tiny_step_height = std::max(this->tiny_step_height, this->column_size[VGC_NUMBER].height);
|
this->tiny_step_height = std::max(this->tiny_step_height, this->column_size[VGC_NUMBER].height);
|
||||||
|
|
||||||
this->tiny_step_height += WD_MATRIX_TOP;
|
this->tiny_step_height += WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
||||||
this->tiny_step_height = GetMinSizing(NWST_STEP, this->tiny_step_height);
|
this->tiny_step_height = GetMinButtonSize(this->tiny_step_height);
|
||||||
|
|
||||||
return WD_FRAMERECT_LEFT + 8 +
|
return WD_FRAMERECT_LEFT + 8 +
|
||||||
this->column_size[VGC_FOLD].width + 2 +
|
this->column_size[VGC_FOLD].width + 2 +
|
||||||
@@ -256,7 +256,7 @@ private:
|
|||||||
{
|
{
|
||||||
/* Highlight the group if a vehicle is dragged over it */
|
/* Highlight the group if a vehicle is dragged over it */
|
||||||
if (g_id == this->group_over) {
|
if (g_id == this->group_over) {
|
||||||
GfxFillRect(left + WD_FRAMERECT_LEFT, y + WD_FRAMERECT_TOP + WD_MATRIX_TOP, right - WD_FRAMERECT_RIGHT, y + this->tiny_step_height - WD_FRAMERECT_BOTTOM - WD_MATRIX_TOP, _colour_gradient[COLOUR_GREY][7]);
|
GfxFillRect(left + WD_FRAMERECT_LEFT, y + WD_FRAMERECT_TOP + 1, right - WD_FRAMERECT_RIGHT, y + this->tiny_step_height - WD_FRAMERECT_BOTTOM - 1, _colour_gradient[COLOUR_GREY][7]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_id == NEW_GROUP) return;
|
if (g_id == NEW_GROUP) return;
|
||||||
@@ -387,7 +387,7 @@ public:
|
|||||||
resize->height = this->tiny_step_height;
|
resize->height = this->tiny_step_height;
|
||||||
|
|
||||||
/* Minimum height is the height of the list widget minus all and default vehicles... */
|
/* Minimum height is the height of the list widget minus all and default vehicles... */
|
||||||
size->height = (this->vli.vtype >= VEH_SHIP ? 3.5 : 7) * GetVehicleListHeight(this->vli.vtype, this->tiny_step_height) - 2 * this->tiny_step_height;
|
size->height = (this->vli.vtype >= VEH_SHIP ? 3.5 : 7) * GetVehicleListHeight(this->vli.vtype, this->tiny_step_height);
|
||||||
|
|
||||||
/* ... minus the buttons at the bottom ... */
|
/* ... minus the buttons at the bottom ... */
|
||||||
uint max_icon_height = GetSpriteSize(this->GetWidget<NWidgetCore>(WID_GL_CREATE_GROUP)->widget_data).height;
|
uint max_icon_height = GetSpriteSize(this->GetWidget<NWidgetCore>(WID_GL_CREATE_GROUP)->widget_data).height;
|
||||||
@@ -430,11 +430,6 @@ public:
|
|||||||
*size = maxdim(*size, d);
|
*size = maxdim(*size, d);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case WID_GL_INFO: {
|
|
||||||
size->height = (FONT_HEIGHT_NORMAL * 3) + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -556,11 +551,11 @@ public:
|
|||||||
{
|
{
|
||||||
switch (widget) {
|
switch (widget) {
|
||||||
case WID_GL_ALL_VEHICLES:
|
case WID_GL_ALL_VEHICLES:
|
||||||
DrawGroupInfo(r.top + WD_FRAMERECT_TOP, r.left, r.right, ALL_GROUP);
|
DrawGroupInfo(r.top, r.left, r.right, ALL_GROUP);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_DEFAULT_VEHICLES:
|
case WID_GL_DEFAULT_VEHICLES:
|
||||||
DrawGroupInfo(r.top + WD_FRAMERECT_TOP, r.left, r.right, DEFAULT_GROUP);
|
DrawGroupInfo(r.top, r.left, r.right, DEFAULT_GROUP);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WID_GL_INFO: {
|
case WID_GL_INFO: {
|
||||||
@@ -601,7 +596,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
case WID_GL_LIST_GROUP: {
|
case WID_GL_LIST_GROUP: {
|
||||||
int y1 = r.top + WD_FRAMERECT_TOP;
|
int y1 = r.top;
|
||||||
int max = std::min<size_t>(this->group_sb->GetPosition() + this->group_sb->GetCapacity(), this->groups.size());
|
int max = std::min<size_t>(this->group_sb->GetPosition() + this->group_sb->GetCapacity(), this->groups.size());
|
||||||
for (int i = this->group_sb->GetPosition(); i < max; ++i) {
|
for (int i = this->group_sb->GetPosition(); i < max; ++i) {
|
||||||
const Group *g = this->groups[i];
|
const Group *g = this->groups[i];
|
||||||
@@ -893,7 +888,11 @@ public:
|
|||||||
/* We do not support VehicleClicked() here since the contextual action may only make sense for individual vehicles */
|
/* We do not support VehicleClicked() here since the contextual action may only make sense for individual vehicles */
|
||||||
|
|
||||||
if (vindex == v->index) {
|
if (vindex == v->index) {
|
||||||
ShowVehicleListWindow(v);
|
if (vehgroup.NumVehicles() == 1) {
|
||||||
|
ShowVehicleViewWindow(v);
|
||||||
|
} else {
|
||||||
|
ShowVehicleListWindow(v);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -368,7 +368,7 @@ static void GrayscaleToMapHeights(uint img_width, uint img_height, byte *map)
|
|||||||
/* 0 is sea level.
|
/* 0 is sea level.
|
||||||
* Other grey scales are scaled evenly to the available height levels > 0.
|
* Other grey scales are scaled evenly to the available height levels > 0.
|
||||||
* (The coastline is independent from the number of height levels) */
|
* (The coastline is independent from the number of height levels) */
|
||||||
heightmap_height = 1 + (heightmap_height - 1) * _settings_game.construction.max_heightlevel / 255;
|
heightmap_height = 1 + (heightmap_height - 1) * _settings_game.game_creation.heightmap_height / 255;
|
||||||
}
|
}
|
||||||
|
|
||||||
SetTileHeight(tile, heightmap_height);
|
SetTileHeight(tile, heightmap_height);
|
||||||
|
|||||||
@@ -2140,6 +2140,7 @@ static Industry *CreateNewIndustry(TileIndex tile, IndustryType type, IndustryAv
|
|||||||
Industry *i = nullptr;
|
Industry *i = nullptr;
|
||||||
size_t layout_index = RandomRange((uint32)indspec->layouts.size());
|
size_t layout_index = RandomRange((uint32)indspec->layouts.size());
|
||||||
CommandCost ret = CreateNewIndustryHelper(tile, type, DC_EXEC, indspec, layout_index, seed, GB(seed2, 0, 16), OWNER_NONE, creation_type, &i);
|
CommandCost ret = CreateNewIndustryHelper(tile, type, DC_EXEC, indspec, layout_index, seed, GB(seed2, 0, 16), OWNER_NONE, creation_type, &i);
|
||||||
|
(void)ret; // assert only
|
||||||
assert(i != nullptr || ret.Failed());
|
assert(i != nullptr || ret.Failed());
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -421,7 +421,7 @@ public:
|
|||||||
if (this->index[i] == INVALID_INDUSTRYTYPE) continue;
|
if (this->index[i] == INVALID_INDUSTRYTYPE) continue;
|
||||||
d = maxdim(d, GetStringBoundingBox(GetIndustrySpec(this->index[i])->name));
|
d = maxdim(d, GetStringBoundingBox(GetIndustrySpec(this->index[i])->name));
|
||||||
}
|
}
|
||||||
resize->height = GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
resize->height = GetMinButtonSize(FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM);
|
||||||
d.width += FONT_HEIGHT_NORMAL * 5 / 4 + padding.width;
|
d.width += FONT_HEIGHT_NORMAL * 5 / 4 + padding.width;
|
||||||
d.height = 5 * resize->height;
|
d.height = 5 * resize->height;
|
||||||
*size = maxdim(*size, d);
|
*size = maxdim(*size, d);
|
||||||
@@ -927,7 +927,7 @@ public:
|
|||||||
if (first) {
|
if (first) {
|
||||||
if (has_accept) y += WD_PAR_VSEP_WIDE;
|
if (has_accept) y += WD_PAR_VSEP_WIDE;
|
||||||
DrawString(left + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, y, STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE);
|
DrawString(left + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, y, STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE);
|
||||||
y += this->editable == EA_RATE ? GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL) : FONT_HEIGHT_NORMAL;
|
y += this->editable == EA_RATE ? GetMinButtonSize(FONT_HEIGHT_NORMAL) : FONT_HEIGHT_NORMAL;
|
||||||
if (this->editable == EA_RATE) this->production_offset_y = y;
|
if (this->editable == EA_RATE) this->production_offset_y = y;
|
||||||
first = false;
|
first = false;
|
||||||
}
|
}
|
||||||
@@ -942,7 +942,7 @@ public:
|
|||||||
if (this->editable == EA_RATE) {
|
if (this->editable == EA_RATE) {
|
||||||
DrawArrowButtons(left + WD_FRAMETEXT_LEFT, y, COLOUR_YELLOW, (this->clicked_line == IL_RATE1 + j) ? this->clicked_button : 0,
|
DrawArrowButtons(left + WD_FRAMETEXT_LEFT, y, COLOUR_YELLOW, (this->clicked_line == IL_RATE1 + j) ? this->clicked_button : 0,
|
||||||
i->production_rate[j] > 0, i->production_rate[j] < 255);
|
i->production_rate[j] > 0, i->production_rate[j] < 255);
|
||||||
y += GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL);
|
y += GetMinButtonSize(FONT_HEIGHT_NORMAL);
|
||||||
} else {
|
} else {
|
||||||
y += FONT_HEIGHT_NORMAL;
|
y += FONT_HEIGHT_NORMAL;
|
||||||
}
|
}
|
||||||
@@ -957,7 +957,7 @@ public:
|
|||||||
DrawString(x, right - WD_FRAMERECT_RIGHT, y, STR_INDUSTRY_VIEW_PRODUCTION_LEVEL);
|
DrawString(x, right - WD_FRAMERECT_RIGHT, y, STR_INDUSTRY_VIEW_PRODUCTION_LEVEL);
|
||||||
DrawArrowButtons(left + WD_FRAMETEXT_LEFT, y, COLOUR_YELLOW, (this->clicked_line == IL_MULTIPLIER) ? this->clicked_button : 0,
|
DrawArrowButtons(left + WD_FRAMETEXT_LEFT, y, COLOUR_YELLOW, (this->clicked_line == IL_MULTIPLIER) ? this->clicked_button : 0,
|
||||||
i->prod_level > PRODLEVEL_MINIMUM, i->prod_level < PRODLEVEL_MAXIMUM);
|
i->prod_level > PRODLEVEL_MINIMUM, i->prod_level < PRODLEVEL_MAXIMUM);
|
||||||
y += GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL);
|
y += GetMinButtonSize(FONT_HEIGHT_NORMAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Get the extra message for the GUI */
|
/* Get the extra message for the GUI */
|
||||||
@@ -1017,9 +1017,9 @@ public:
|
|||||||
|
|
||||||
case EA_RATE:
|
case EA_RATE:
|
||||||
if (pt.y >= this->production_offset_y) {
|
if (pt.y >= this->production_offset_y) {
|
||||||
if ((pt.y - this->production_offset_y) % GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL) > (uint)SETTING_BUTTON_HEIGHT) break;;
|
if ((pt.y - this->production_offset_y) % GetMinButtonSize(FONT_HEIGHT_NORMAL) > (uint)SETTING_BUTTON_HEIGHT) break;;
|
||||||
|
|
||||||
int row = (pt.y - this->production_offset_y) / GetMinSizing(NWST_STEP, FONT_HEIGHT_NORMAL);
|
int row = (pt.y - this->production_offset_y) / GetMinButtonSize(FONT_HEIGHT_NORMAL);
|
||||||
for (uint j = 0; j < lengthof(i->produced_cargo); j++) {
|
for (uint j = 0; j < lengthof(i->produced_cargo); j++) {
|
||||||
if (i->produced_cargo[j] == CT_INVALID) continue;
|
if (i->produced_cargo[j] == CT_INVALID) continue;
|
||||||
row--;
|
row--;
|
||||||
@@ -1235,7 +1235,7 @@ static const NWidgetPart _nested_industry_directory_widgets[] = {
|
|||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(NWID_VERTICAL),
|
NWidget(NWID_VERTICAL),
|
||||||
NWidget(NWID_HORIZONTAL),
|
NWidget(NWID_HORIZONTAL),
|
||||||
NWidget(WWT_TEXTBTN, COLOUR_BROWN, WID_ID_DROPDOWN_ORDER), SetSizingType(NWST_STEP), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER),
|
NWidget(WWT_TEXTBTN, COLOUR_BROWN, WID_ID_DROPDOWN_ORDER), SetSizingType(NWST_BUTTON), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_DROPDOWN_CRITERIA), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA),
|
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_DROPDOWN_CRITERIA), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_FILTER_BY_ACC_CARGO), SetMinimalSize(225, 12), SetFill(0, 1), SetDataTip(STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER, STR_TOOLTIP_FILTER_CRITERIA),
|
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_FILTER_BY_ACC_CARGO), SetMinimalSize(225, 12), SetFill(0, 1), SetDataTip(STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER, STR_TOOLTIP_FILTER_CRITERIA),
|
||||||
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_FILTER_BY_PROD_CARGO), SetMinimalSize(225, 12), SetFill(0, 1), SetDataTip(STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER, STR_TOOLTIP_FILTER_CRITERIA),
|
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_FILTER_BY_PROD_CARGO), SetMinimalSize(225, 12), SetFill(0, 1), SetDataTip(STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER, STR_TOOLTIP_FILTER_CRITERIA),
|
||||||
@@ -1669,7 +1669,7 @@ public:
|
|||||||
for (uint i = 0; i < this->industries.size(); i++) {
|
for (uint i = 0; i < this->industries.size(); i++) {
|
||||||
d = maxdim(d, GetStringBoundingBox(this->GetIndustryString(this->industries[i])));
|
d = maxdim(d, GetStringBoundingBox(this->GetIndustryString(this->industries[i])));
|
||||||
}
|
}
|
||||||
resize->height = d.height = GetMinSizing(NWST_STEP, d.height);
|
resize->height = d.height = GetMinButtonSize(d.height);
|
||||||
d.height *= 5;
|
d.height *= 5;
|
||||||
d.width += padding.width + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
|
d.width += padding.width + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
|
||||||
d.height += padding.height + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
d.height += padding.height + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
|
||||||
|
|||||||
@@ -31,6 +31,7 @@
|
|||||||
#include "pathfinder/npf/aystar.h"
|
#include "pathfinder/npf/aystar.h"
|
||||||
#include "saveload/saveload.h"
|
#include "saveload/saveload.h"
|
||||||
#include "framerate_type.h"
|
#include "framerate_type.h"
|
||||||
|
#include <array>
|
||||||
#include <list>
|
#include <list>
|
||||||
#include <set>
|
#include <set>
|
||||||
|
|
||||||
@@ -116,7 +117,7 @@ Point InverseRemapCoords2(int x, int y, bool clamp_to_map, bool *clamped)
|
|||||||
/* Bring the coordinates near to a valid range. At the top we allow a number
|
/* Bring the coordinates near to a valid range. At the top we allow a number
|
||||||
* of extra tiles. This is mostly due to the tiles on the north side of
|
* of extra tiles. This is mostly due to the tiles on the north side of
|
||||||
* the map possibly being drawn higher due to the extra height levels. */
|
* the map possibly being drawn higher due to the extra height levels. */
|
||||||
int extra_tiles = CeilDiv(_settings_game.construction.max_heightlevel * TILE_HEIGHT, TILE_PIXELS);
|
int extra_tiles = CeilDiv(_settings_game.construction.map_height_limit * TILE_HEIGHT, TILE_PIXELS);
|
||||||
Point old_pt = pt;
|
Point old_pt = pt;
|
||||||
pt.x = Clamp(pt.x, -extra_tiles * TILE_SIZE, max_x);
|
pt.x = Clamp(pt.x, -extra_tiles * TILE_SIZE, max_x);
|
||||||
pt.y = Clamp(pt.y, -extra_tiles * TILE_SIZE, max_y);
|
pt.y = Clamp(pt.y, -extra_tiles * TILE_SIZE, max_y);
|
||||||
@@ -967,11 +968,10 @@ static void GenerateTerrain(int type, uint flag)
|
|||||||
|
|
||||||
#include "table/genland.h"
|
#include "table/genland.h"
|
||||||
|
|
||||||
static void CreateDesertOrRainForest()
|
static void CreateDesertOrRainForest(uint desert_tropic_line)
|
||||||
{
|
{
|
||||||
TileIndex update_freq = MapSize() / 4;
|
TileIndex update_freq = MapSize() / 4;
|
||||||
const TileIndexDiffC *data;
|
const TileIndexDiffC *data;
|
||||||
uint max_desert_height = CeilDiv(_settings_game.construction.max_heightlevel, 4);
|
|
||||||
|
|
||||||
for (TileIndex tile = 0; tile != MapSize(); ++tile) {
|
for (TileIndex tile = 0; tile != MapSize(); ++tile) {
|
||||||
if ((tile % update_freq) == 0) IncreaseGeneratingWorldProgress(GWP_LANDSCAPE);
|
if ((tile % update_freq) == 0) IncreaseGeneratingWorldProgress(GWP_LANDSCAPE);
|
||||||
@@ -981,7 +981,7 @@ static void CreateDesertOrRainForest()
|
|||||||
for (data = _make_desert_or_rainforest_data;
|
for (data = _make_desert_or_rainforest_data;
|
||||||
data != endof(_make_desert_or_rainforest_data); ++data) {
|
data != endof(_make_desert_or_rainforest_data); ++data) {
|
||||||
TileIndex t = AddTileIndexDiffCWrap(tile, *data);
|
TileIndex t = AddTileIndexDiffCWrap(tile, *data);
|
||||||
if (t != INVALID_TILE && (TileHeight(t) >= max_desert_height || IsTileType(t, MP_WATER))) break;
|
if (t != INVALID_TILE && (TileHeight(t) >= desert_tropic_line || IsTileType(t, MP_WATER))) break;
|
||||||
}
|
}
|
||||||
if (data == endof(_make_desert_or_rainforest_data)) {
|
if (data == endof(_make_desert_or_rainforest_data)) {
|
||||||
SetTropicZone(tile, TROPICZONE_DESERT);
|
SetTropicZone(tile, TROPICZONE_DESERT);
|
||||||
@@ -1294,6 +1294,115 @@ static void CreateRivers()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calculate what height would be needed to cover N% of the landmass.
|
||||||
|
*
|
||||||
|
* The function allows both snow and desert/tropic line to be calculated. It
|
||||||
|
* tries to find the closests height which covers N% of the landmass; it can
|
||||||
|
* be below or above it.
|
||||||
|
*
|
||||||
|
* Tropic has a mechanism where water and tropic tiles in mountains grow
|
||||||
|
* inside the desert. To better approximate the requested coverage, this is
|
||||||
|
* taken into account via an edge histogram, which tells how many neighbouring
|
||||||
|
* tiles are lower than the tiles of that height. The multiplier indicates how
|
||||||
|
* severe this has to be taken into account.
|
||||||
|
*
|
||||||
|
* @param coverage A value between 0 and 100 indicating a percentage of landmass that should be covered.
|
||||||
|
* @param edge_multiplier How much effect neighbouring tiles that are of a lower height level have on the score.
|
||||||
|
* @return The estimated best height to use to cover N% of the landmass.
|
||||||
|
*/
|
||||||
|
static uint CalculateCoverageLine(uint coverage, uint edge_multiplier)
|
||||||
|
{
|
||||||
|
const DiagDirection neighbour_dir[] = {
|
||||||
|
DIAGDIR_NE,
|
||||||
|
DIAGDIR_SE,
|
||||||
|
DIAGDIR_SW,
|
||||||
|
DIAGDIR_NW,
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Histogram of how many tiles per height level exist. */
|
||||||
|
std::array<int, MAX_TILE_HEIGHT + 1> histogram = {};
|
||||||
|
/* Histogram of how many neighbour tiles are lower than the tiles of the height level. */
|
||||||
|
std::array<int, MAX_TILE_HEIGHT + 1> edge_histogram = {};
|
||||||
|
|
||||||
|
/* Build a histogram of the map height. */
|
||||||
|
for (TileIndex tile = 0; tile < MapSize(); tile++) {
|
||||||
|
uint h = TileHeight(tile);
|
||||||
|
histogram[h]++;
|
||||||
|
|
||||||
|
if (edge_multiplier != 0) {
|
||||||
|
/* Check if any of our neighbours is below us. */
|
||||||
|
for (auto dir : neighbour_dir) {
|
||||||
|
TileIndex neighbour_tile = AddTileIndexDiffCWrap(tile, TileIndexDiffCByDiagDir(dir));
|
||||||
|
if (IsValidTile(neighbour_tile) && TileHeight(neighbour_tile) < h) {
|
||||||
|
edge_histogram[h]++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The amount of land we have is the map size minus the first (sea) layer. */
|
||||||
|
uint land_tiles = MapSizeX() * MapSizeY() - histogram[0];
|
||||||
|
int best_score = land_tiles;
|
||||||
|
|
||||||
|
/* Our goal is the coverage amount of the land-mass. */
|
||||||
|
int goal_tiles = land_tiles * coverage / 100;
|
||||||
|
|
||||||
|
/* We scan from top to bottom. */
|
||||||
|
uint h = MAX_TILE_HEIGHT;
|
||||||
|
uint best_h = h;
|
||||||
|
|
||||||
|
int current_tiles = 0;
|
||||||
|
for (; h > 0; h--) {
|
||||||
|
current_tiles += histogram[h];
|
||||||
|
int current_score = goal_tiles - current_tiles;
|
||||||
|
|
||||||
|
/* Tropic grows from water and mountains into the desert. This is a
|
||||||
|
* great visual, but it also means we* need to take into account how
|
||||||
|
* much less desert tiles are being created if we are on this
|
||||||
|
* height-level. We estimate this based on how many neighbouring
|
||||||
|
* tiles are below us for a given length, assuming that is where
|
||||||
|
* tropic is growing from.
|
||||||
|
*/
|
||||||
|
if (edge_multiplier != 0 && h > 1) {
|
||||||
|
/* From water tropic tiles grow for a few tiles land inward. */
|
||||||
|
current_score -= edge_histogram[1] * edge_multiplier;
|
||||||
|
/* Tropic tiles grow into the desert for a few tiles. */
|
||||||
|
current_score -= edge_histogram[h] * edge_multiplier;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (std::abs(current_score) < std::abs(best_score)) {
|
||||||
|
best_score = current_score;
|
||||||
|
best_h = h;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Always scan all height-levels, as h == 1 might give a better
|
||||||
|
* score than any before. This is true for example with 0% desert
|
||||||
|
* coverage. */
|
||||||
|
}
|
||||||
|
|
||||||
|
return best_h;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calculate the line from which snow begins.
|
||||||
|
*/
|
||||||
|
static void CalculateSnowLine()
|
||||||
|
{
|
||||||
|
/* We do not have snow sprites on coastal tiles, so never allow "1" as height. */
|
||||||
|
_settings_game.game_creation.snow_line_height = std::max(CalculateCoverageLine(_settings_game.game_creation.snow_coverage, 0), 2u);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calculate the line (in height) between desert and tropic.
|
||||||
|
* @return The height of the line between desert and tropic.
|
||||||
|
*/
|
||||||
|
static uint8 CalculateDesertLine()
|
||||||
|
{
|
||||||
|
/* CalculateCoverageLine() runs from top to bottom, so we need to invert the coverage. */
|
||||||
|
return CalculateCoverageLine(100 - _settings_game.game_creation.desert_coverage, 4);
|
||||||
|
}
|
||||||
|
|
||||||
void GenerateLandscape(byte mode)
|
void GenerateLandscape(byte mode)
|
||||||
{
|
{
|
||||||
/** Number of steps of landscape generation */
|
/** Number of steps of landscape generation */
|
||||||
@@ -1378,7 +1487,20 @@ void GenerateLandscape(byte mode)
|
|||||||
MarkWholeScreenDirty();
|
MarkWholeScreenDirty();
|
||||||
IncreaseGeneratingWorldProgress(GWP_LANDSCAPE);
|
IncreaseGeneratingWorldProgress(GWP_LANDSCAPE);
|
||||||
|
|
||||||
if (_settings_game.game_creation.landscape == LT_TROPIC) CreateDesertOrRainForest();
|
switch (_settings_game.game_creation.landscape) {
|
||||||
|
case LT_ARCTIC:
|
||||||
|
CalculateSnowLine();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LT_TROPIC: {
|
||||||
|
uint desert_tropic_line = CalculateDesertLine();
|
||||||
|
CreateDesertOrRainForest(desert_tropic_line);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
CreateRivers();
|
CreateRivers();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -990,6 +990,7 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Kies die
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :ander
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :ander
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK} Koppelvlak groote
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK} Koppelvlak groote
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK} Kies die koppelvlak element groote om te gebruik
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK} Kies die koppelvlak element groote om te gebruik
|
||||||
|
|
||||||
@@ -1180,8 +1181,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Skakel rampe aa
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Stadsraad se gesindheid teenoor omgewings-konstruksie: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Stadsraad se gesindheid teenoor omgewings-konstruksie: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Kies hoeveel invloed klank en skade aan die omgewing deur maatskappye aan die stadswaardering het en verderde bouwerk in die stad.
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Kies hoeveel invloed klank en skade aan die omgewing deur maatskappye aan die stadswaardering het en verderde bouwerk in die stad.
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimum kaarthoogte: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Stel die maksimum toegelate berghoogte
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Kan nie die berghoogte verander nie - daar is hoër berge as hierdie op die kaart
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Kan nie die berghoogte verander nie - daar is hoër berge as hierdie op die kaart
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Laat landargitektuur toe onder geboue, spore, ens.: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Laat landargitektuur toe onder geboue, spore, ens.: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Laat Landargitektuur onder geboue en spore sonder om dit te verwyder
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Laat Landargitektuur onder geboue en spore sonder om dit te verwyder
|
||||||
@@ -2790,12 +2789,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Hoev. dorpe:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Hoev. dorpe:
|
||||||
STR_MAPGEN_DATE :{BLACK}Datum:
|
STR_MAPGEN_DATE :{BLACK}Datum:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Hoev. nywerhede:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Hoev. nywerhede:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimum kaarthoogte
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Verhoog berge met een teël
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Verminder berghoogte met een teël
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Sneeu lyn hoogte:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Beweeg die sneeu lyn een op
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Beweeg die sneeu lyn een af
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land genereerder:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land genereerder:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrein tipe:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrein tipe:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Seevlak:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Seevlak:
|
||||||
@@ -2821,8 +2814,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Reliëfk
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grootte:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grootte:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Verander maksimum kaarthoogte
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Verander sneeu lyn hoogte
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Verander begin jaar
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Verander begin jaar
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -187,6 +187,7 @@ STR_COLOUR_ORANGE :برتقالي
|
|||||||
STR_COLOUR_BROWN :بني
|
STR_COLOUR_BROWN :بني
|
||||||
STR_COLOUR_GREY :رمادي
|
STR_COLOUR_GREY :رمادي
|
||||||
STR_COLOUR_WHITE :ابيض
|
STR_COLOUR_WHITE :ابيض
|
||||||
|
STR_COLOUR_DEFAULT :الإفتراضي
|
||||||
|
|
||||||
# Units used in OpenTTD
|
# Units used in OpenTTD
|
||||||
STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}ميل/س
|
STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}ميل/س
|
||||||
@@ -218,19 +219,23 @@ STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}
|
|||||||
STR_UNITS_HEIGHT_SI :{COMMA}{NBSP} متر
|
STR_UNITS_HEIGHT_SI :{COMMA}{NBSP} متر
|
||||||
|
|
||||||
# Common window strings
|
# Common window strings
|
||||||
|
STR_LIST_FILTER_TITLE :{BLACK}تصفية القائمة
|
||||||
STR_LIST_FILTER_OSKTITLE :{BLACK} ادخل فلتر
|
STR_LIST_FILTER_OSKTITLE :{BLACK} ادخل فلتر
|
||||||
STR_LIST_FILTER_TOOLTIP :{BLACK} اختر كلمة اساسية لفلترة القائمة
|
STR_LIST_FILTER_TOOLTIP :{BLACK} اختر كلمة اساسية لفلترة القائمة
|
||||||
|
|
||||||
|
STR_TOOLTIP_GROUP_ORDER :{BLACK}حدد ترتيب التجميع
|
||||||
STR_TOOLTIP_SORT_ORDER :{BLACK} اختر طريقة الترتيب - تنازلي / تصاعدي
|
STR_TOOLTIP_SORT_ORDER :{BLACK} اختر طريقة الترتيب - تنازلي / تصاعدي
|
||||||
STR_TOOLTIP_SORT_CRITERIA :{BLACK} اختر نوع الترتيب
|
STR_TOOLTIP_SORT_CRITERIA :{BLACK} اختر نوع الترتيب
|
||||||
STR_TOOLTIP_FILTER_CRITERIA :{BLACK}حدد معايير المُرَشِح
|
STR_TOOLTIP_FILTER_CRITERIA :{BLACK}حدد معايير المُرَشِح
|
||||||
STR_BUTTON_SORT_BY :{BLACK} رتب بـ
|
STR_BUTTON_SORT_BY :{BLACK} رتب بـ
|
||||||
STR_BUTTON_CATCHMENT :{BLACK}مدى التغطية
|
STR_BUTTON_CATCHMENT :{BLACK}مدى التغطية
|
||||||
|
STR_TOOLTIP_CATCHMENT :{BLACK}عرض منطقة التغطية
|
||||||
|
|
||||||
STR_TOOLTIP_CLOSE_WINDOW :{BLACK}اغلاق الاطار
|
STR_TOOLTIP_CLOSE_WINDOW :{BLACK}اغلاق الاطار
|
||||||
STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}عنوان الاطار- اسحب لتحريك الاطار
|
STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}عنوان الاطار- اسحب لتحريك الاطار
|
||||||
STR_TOOLTIP_SHADE :{BLACK}نافذة الظل - تعرض العنوان فقط
|
STR_TOOLTIP_SHADE :{BLACK}نافذة الظل - تعرض العنوان فقط
|
||||||
STR_TOOLTIP_DEBUG :{BLACK}اظهر معلومات صائد اخطاء الاضافات الجديدة.
|
STR_TOOLTIP_DEBUG :{BLACK}اظهر معلومات صائد اخطاء الاضافات الجديدة.
|
||||||
|
STR_TOOLTIP_DEFSIZE :{BLACK}تغيير حجم النافذة إلى الحجم الافتراضي. Ctrl + Click لتخزين الحجم الحالي كإعداد افتراضي
|
||||||
STR_TOOLTIP_STICKY :{BLACK}علم هذه النافذة كغير قابلة للإقفال باستخدام زر إغلاق كل النوافذ, اضغط مع Ctrl لجعل الأمر إفتراضيا
|
STR_TOOLTIP_STICKY :{BLACK}علم هذه النافذة كغير قابلة للإقفال باستخدام زر إغلاق كل النوافذ, اضغط مع Ctrl لجعل الأمر إفتراضيا
|
||||||
STR_TOOLTIP_RESIZE :{BLACK}اضغط واسحب لتعديل حجم الاطار
|
STR_TOOLTIP_RESIZE :{BLACK}اضغط واسحب لتعديل حجم الاطار
|
||||||
STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}تبديل حجم الاطار كبير / صغير
|
STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}تبديل حجم الاطار كبير / صغير
|
||||||
@@ -239,7 +244,15 @@ STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}عمود
|
|||||||
STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}هدم المباني و غيرها في مربع من الأرض.
|
STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}هدم المباني و غيرها في مربع من الأرض.
|
||||||
|
|
||||||
# Show engines button
|
# Show engines button
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}عرض المخفي
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}عرض المخفي
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}عرض المخفي
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}عرض المخفي
|
||||||
|
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}من خلال تمكين هذا الزر ، يتم أيضًا عرض عربات القطار المخفية
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}من خلال تمكين هذا الزر ، يتم أيضًا عرض مركبات الطرق المخفية
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}من خلال تمكين هذا الزر ، يتم أيضًا عرض السفن المخفية
|
||||||
|
STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}من خلال تمكين هذا الزر ، يتم أيضًا عرض الطائرات المخفية
|
||||||
|
|
||||||
# Query window
|
# Query window
|
||||||
STR_BUTTON_DEFAULT :{BLACK}افتراضي
|
STR_BUTTON_DEFAULT :{BLACK}افتراضي
|
||||||
@@ -292,6 +305,8 @@ STR_SORT_BY_RANGE :مدى
|
|||||||
STR_SORT_BY_POPULATION :عدد السكان
|
STR_SORT_BY_POPULATION :عدد السكان
|
||||||
|
|
||||||
# Group by options for vehicle list
|
# Group by options for vehicle list
|
||||||
|
STR_GROUP_BY_NONE :لا شيء
|
||||||
|
STR_GROUP_BY_SHARED_ORDERS :لأوامر المشتركة
|
||||||
|
|
||||||
# Tooltips for the main toolbar
|
# Tooltips for the main toolbar
|
||||||
STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}ايقاف اللعبة
|
STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}ايقاف اللعبة
|
||||||
@@ -304,6 +319,8 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}اظها
|
|||||||
STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}عرض قائمة محطات الشركة.
|
STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}عرض قائمة محطات الشركة.
|
||||||
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}عرض السجل المالي للشركة
|
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}عرض السجل المالي للشركة
|
||||||
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}عرض معلومات الشركة
|
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}عرض معلومات الشركة
|
||||||
|
STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}عرض كتاب القصص
|
||||||
|
STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}عرض قائمة الأهداف
|
||||||
STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}عرض المخططات
|
STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}عرض المخططات
|
||||||
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}عرض جدول ترتيب الشركات
|
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}عرض جدول ترتيب الشركات
|
||||||
STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}موّل انشاء مصنع / عرض كل المصانع
|
STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}موّل انشاء مصنع / عرض كل المصانع
|
||||||
@@ -315,6 +332,7 @@ STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}تكبي
|
|||||||
STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}تصغير الصورة
|
STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}تصغير الصورة
|
||||||
STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}ادوات بناء سكة حديد
|
STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}ادوات بناء سكة حديد
|
||||||
STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}ادوات بناء الطرق
|
STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}ادوات بناء الطرق
|
||||||
|
STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}بناء خطوط الترام
|
||||||
STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}ادوات السفن
|
STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}ادوات السفن
|
||||||
STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}بناء مطارات
|
STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}بناء مطارات
|
||||||
STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}افتح مدير تحرير التضاريس لرفع / خفض الارض, زراعة الاشجار, الخ.
|
STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}افتح مدير تحرير التضاريس لرفع / خفض الارض, زراعة الاشجار, الخ.
|
||||||
@@ -377,6 +395,7 @@ STR_FILE_MENU_EXIT :خروج
|
|||||||
# map menu
|
# map menu
|
||||||
STR_MAP_MENU_MAP_OF_WORLD :خريطة العالم
|
STR_MAP_MENU_MAP_OF_WORLD :خريطة العالم
|
||||||
STR_MAP_MENU_EXTRA_VIEWPORT :شاشة عرض اضافية
|
STR_MAP_MENU_EXTRA_VIEWPORT :شاشة عرض اضافية
|
||||||
|
STR_MAP_MENU_LINGRAPH_LEGEND :مفتاح تدفق البضائع
|
||||||
STR_MAP_MENU_SIGN_LIST :قائمة العلامات
|
STR_MAP_MENU_SIGN_LIST :قائمة العلامات
|
||||||
|
|
||||||
############ range for town menu starts
|
############ range for town menu starts
|
||||||
@@ -400,10 +419,12 @@ STR_GRAPH_MENU_CARGO_PAYMENT_RATES :معدل تكل
|
|||||||
############ range for company league menu starts
|
############ range for company league menu starts
|
||||||
STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :ترتيب الشركات
|
STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :ترتيب الشركات
|
||||||
STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :تقييم أداء مفصل
|
STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :تقييم أداء مفصل
|
||||||
|
STR_GRAPH_MENU_HIGHSCORE :قائمه المتفوقين
|
||||||
############ range ends here
|
############ range ends here
|
||||||
|
|
||||||
############ range for industry menu starts
|
############ range for industry menu starts
|
||||||
STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :دليل المصانع
|
STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :دليل المصانع
|
||||||
|
STR_INDUSTRY_MENU_INDUSTRY_CHAIN :سلاسل الصناعة
|
||||||
STR_INDUSTRY_MENU_FUND_NEW_INDUSTRY :مول بناء مصنع
|
STR_INDUSTRY_MENU_FUND_NEW_INDUSTRY :مول بناء مصنع
|
||||||
############ range ends here
|
############ range ends here
|
||||||
|
|
||||||
@@ -440,6 +461,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
|
||||||
@@ -939,6 +961,10 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}دقة
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}اختر دقة الشاشة
|
STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}اختر دقة الشاشة
|
||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :اخرى
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :اخرى
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}تسريع الأجهزة
|
||||||
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}حدد هذا المربع للسماح لـ OpenTTD بمحاولة استخدام تسريع الأجهزة. سيتم تطبيق الإعداد الذي تم تغييره فقط عند إعادة تشغيل اللعبة
|
||||||
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}لن يعمل الإعداد إلا بعد إعادة تشغيل اللعبة
|
||||||
|
|
||||||
|
|
||||||
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}حدد العنصر المطلوب
|
||||||
@@ -947,9 +973,21 @@ 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_AUTO :(كشف أوتوماتيكي)
|
||||||
|
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_GRAPHICS :{BLACK}الرسومات
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE :{BLACK}معدل تحديث الشاشة
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_TOOLTIP :{BLACK}حدد معدل تحديث الشاشة
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_OTHER :أخرى
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_ITEM :{NUM}هرتز
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_WARNING :{WHITE}قد تؤثر معدلات التحديث الأعلى من 60 هرتز على الأداء.
|
||||||
|
|
||||||
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} اختر مجموعة الواجهة الرسومية
|
||||||
@@ -962,7 +1000,7 @@ STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}معلو
|
|||||||
|
|
||||||
STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}قاعده الموسيقى الاساسيه
|
STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}قاعده الموسيقى الاساسيه
|
||||||
STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}اختر الموسيقى الاساسية التي تود استخدامها
|
STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}اختر الموسيقى الاساسية التي تود استخدامها
|
||||||
STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} ملف غير صالح{P ""}
|
STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} ملف غير صالح
|
||||||
STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}معلومات اضافية عن الموسيقى الاساسية
|
STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}معلومات اضافية عن الموسيقى الاساسية
|
||||||
|
|
||||||
STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}فشل في استرداد قائمة الدقة المدعومة
|
STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}فشل في استرداد قائمة الدقة المدعومة
|
||||||
@@ -1056,6 +1094,7 @@ STR_WARNING_NO_SUITABLE_AI :{WHITE}لايو
|
|||||||
STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}الإعدادات
|
STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}الإعدادات
|
||||||
STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}مدد الكل
|
STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}مدد الكل
|
||||||
STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}إسحب الكل
|
STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}إسحب الكل
|
||||||
|
STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(لا يوجد تفسير متوفر)
|
||||||
|
|
||||||
STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK} فئة:
|
STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK} فئة:
|
||||||
STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}نوع:
|
STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}نوع:
|
||||||
@@ -1090,6 +1129,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :يمين
|
|||||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED ::سرعة البناء {STRING}
|
STR_CONFIG_SETTING_CONSTRUCTION_SPEED ::سرعة البناء {STRING}
|
||||||
STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS ::تعطلات العربة {STRING}
|
STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS ::تعطلات العربة {STRING}
|
||||||
|
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :حد ارتفاع الخريطة:{STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :السماح بتحريك الأرض تحت المباني, الطرق, الخ : {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :السماح بتحريك الأرض تحت المباني, الطرق, الخ : {STRING}
|
||||||
STR_CONFIG_SETTING_CATCHMENT :السماح بحدود اكثر واقعية للمحطات بحسب الحجم: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :السماح بحدود اكثر واقعية للمحطات بحسب الحجم: {STRING}
|
||||||
STR_CONFIG_SETTING_EXTRADYNAMITE :السماح بحذف اكثر من الطرق المملوكة للمدينة و الجسور و غيرها: {STRING}
|
STR_CONFIG_SETTING_EXTRADYNAMITE :السماح بحذف اكثر من الطرق المملوكة للمدينة و الجسور و غيرها: {STRING}
|
||||||
@@ -1302,6 +1342,7 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :الاخبار
|
|||||||
STR_CONFIG_SETTING_STARTING_YEAR :سنة البدايه: {STRING}
|
STR_CONFIG_SETTING_STARTING_YEAR :سنة البدايه: {STRING}
|
||||||
STR_CONFIG_SETTING_ENDING_YEAR_ZERO :لا تنتهي
|
STR_CONFIG_SETTING_ENDING_YEAR_ZERO :لا تنتهي
|
||||||
STR_CONFIG_SETTING_ALLOW_SHARES :السماح بشراء حصص من الشركات الاخرى: {STRING}
|
STR_CONFIG_SETTING_ALLOW_SHARES :السماح بشراء حصص من الشركات الاخرى: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :عند السحب ، ضع الإشارات كل: {STRING}
|
||||||
STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :اتاحة استخدام الأشارات بالأعلام قبل :{STRING}
|
STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :اتاحة استخدام الأشارات بالأعلام قبل :{STRING}
|
||||||
STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :السماح باستخدام اشارات واجهة المستخدم الرسومية: {STRING}
|
STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :السماح باستخدام اشارات واجهة المستخدم الرسومية: {STRING}
|
||||||
STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :نوع الاشارة الذي يبنى قياسيا: {STRING}
|
STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :نوع الاشارة الذي يبنى قياسيا: {STRING}
|
||||||
@@ -1348,6 +1389,7 @@ STR_CONFIG_SETTING_TOWN_GROWTH_FAST :سريع
|
|||||||
STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :سريع جدا
|
STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :سريع جدا
|
||||||
STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :مضاعف المدن المبدئي: {STRING}
|
STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :مضاعف المدن المبدئي: {STRING}
|
||||||
|
|
||||||
|
STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :الوقت بين عمليات إعادة الحساب المتتابعة للرسم البياني الرابط. تحسب كل عملية إعادة حساب الخطط لمكون واحد من الرسم البياني. هذا يعني أن القيمة X لهذا الإعداد لا تعني أنه سيتم تحديث الرسم البياني كل X أيام. إلا بعض المكونات. كلما قمت بتعيينه أقل، كلما زاد وقت الCPU لحسابها. كلما قمت بضبطها لفترة أطول ، كلما اسغرق الوقت حتى يتم بدأ توزيع البضائع على طرق جديدة.
|
||||||
STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :ضبط هذا إلى أقل من 100٪ يؤدي إلى جعل التوزيع المتماثل يتصرف مثل التوزيع غير المتماثل. سيتم إعادة شحنات أقل غصبا إذا تم إرسال مبلغ معين إلى المحطة. إذا قمت بتعيينه على 0٪ ، فإن التوزيع المتماثل يتصرف تمامًا مثل التوزيع غير المتماثل
|
STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :ضبط هذا إلى أقل من 100٪ يؤدي إلى جعل التوزيع المتماثل يتصرف مثل التوزيع غير المتماثل. سيتم إعادة شحنات أقل غصبا إذا تم إرسال مبلغ معين إلى المحطة. إذا قمت بتعيينه على 0٪ ، فإن التوزيع المتماثل يتصرف تمامًا مثل التوزيع غير المتماثل
|
||||||
|
|
||||||
STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :(متري (كم / ساعة
|
STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :(متري (كم / ساعة
|
||||||
@@ -1358,6 +1400,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :(متري (طن
|
|||||||
|
|
||||||
STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE ::وحدات جهد الجر {STRING}
|
STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE ::وحدات جهد الجر {STRING}
|
||||||
|
|
||||||
|
STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :إمبراطوري (قدم)
|
||||||
STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :م) متري)
|
STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :م) متري)
|
||||||
|
|
||||||
STR_CONFIG_SETTING_GRAPHICS :رسوميات {ORANGE}
|
STR_CONFIG_SETTING_GRAPHICS :رسوميات {ORANGE}
|
||||||
@@ -1440,6 +1483,7 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}اختي
|
|||||||
STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK} اختيار مناطق عالم الألعب
|
STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK} اختيار مناطق عالم الألعب
|
||||||
|
|
||||||
STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}عرض خيارات اللعبة
|
STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}عرض خيارات اللعبة
|
||||||
|
STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}عرض قائمه المتفوقين
|
||||||
STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}إعدادات العرض
|
STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}إعدادات العرض
|
||||||
STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}عرض إعدادات اﻹضافات
|
STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}عرض إعدادات اﻹضافات
|
||||||
STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK} ابحث عن محتوى جديد او تحديث
|
STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK} ابحث عن محتوى جديد او تحديث
|
||||||
@@ -1449,6 +1493,7 @@ STR_INTRO_TRANSLATION :{BLACK}هذة
|
|||||||
|
|
||||||
# Quit window
|
# Quit window
|
||||||
STR_QUIT_CAPTION :{WHITE}انهاء
|
STR_QUIT_CAPTION :{WHITE}انهاء
|
||||||
|
STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}هل أنت متأكد أنك تريد إغلاق OpenTTD؟
|
||||||
STR_QUIT_YES :{BLACK}نعم
|
STR_QUIT_YES :{BLACK}نعم
|
||||||
STR_QUIT_NO :{BLACK}لا
|
STR_QUIT_NO :{BLACK}لا
|
||||||
|
|
||||||
@@ -1850,6 +1895,7 @@ STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK} ضع ع
|
|||||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}بحث المواقع الخارجية
|
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}بحث المواقع الخارجية
|
||||||
STR_CONTENT_FILTER_TITLE :{BLACK}مُرَشِح:
|
STR_CONTENT_FILTER_TITLE :{BLACK}مُرَشِح:
|
||||||
STR_CONTENT_OPEN_URL :{BLACK} زيارة الموقع
|
STR_CONTENT_OPEN_URL :{BLACK} زيارة الموقع
|
||||||
|
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}قم بزيارة الموقع لهذا المحتوى
|
||||||
STR_CONTENT_DOWNLOAD_CAPTION :{BLACK} تحميل
|
STR_CONTENT_DOWNLOAD_CAPTION :{BLACK} تحميل
|
||||||
STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK} ابدأ تحميل المحتويات المختارة
|
STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK} ابدأ تحميل المحتويات المختارة
|
||||||
STR_CONTENT_TOTAL_DOWNLOAD_SIZE :{SILVER} حجم البيانات التي سيتم تحميلها: {WHITE}{BYTES}
|
STR_CONTENT_TOTAL_DOWNLOAD_SIZE :{SILVER} حجم البيانات التي سيتم تحميلها: {WHITE}{BYTES}
|
||||||
@@ -1916,8 +1962,16 @@ STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}غير
|
|||||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}اخفاء الاجرام تماما بدلا من الشفافية
|
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}اخفاء الاجرام تماما بدلا من الشفافية
|
||||||
|
|
||||||
# Linkgraph legend window
|
# Linkgraph legend window
|
||||||
|
STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}مفتاح تدفق البضائع
|
||||||
|
STR_LINKGRAPH_LEGEND_ALL :{BLACK}الكل
|
||||||
|
STR_LINKGRAPH_LEGEND_NONE :{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_SATURATED :{TINY_FONT}{BLACK}عادي الاستخدام
|
||||||
|
STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}زائد الاستخدام
|
||||||
|
|
||||||
# Base for station construction window(s)
|
# Base for station construction window(s)
|
||||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}وضح منطقة التغطية
|
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}وضح منطقة التغطية
|
||||||
@@ -2039,6 +2093,8 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}بناء
|
|||||||
STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}بناء نفق ترام
|
STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}بناء نفق ترام
|
||||||
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}بدل بناء/إزالة الطرق
|
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}بدل بناء/إزالة الطرق
|
||||||
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}بدل بناء / ازالة طرق الترام
|
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}بدل بناء / ازالة طرق الترام
|
||||||
|
STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}تحويل / ترقية نوع الطريق. Shift يبدل بين البناء / إظهار تقدير التكلفة
|
||||||
|
STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}تحويل / ترقية نوع الطريق. Shift يبدل بين البناء / إظهار تقدير التكلفة
|
||||||
|
|
||||||
STR_ROAD_NAME_TRAM :خط الترام
|
STR_ROAD_NAME_TRAM :خط الترام
|
||||||
|
|
||||||
@@ -2198,10 +2254,13 @@ STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}اعرض
|
|||||||
STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}اربط بالخريطة المصغرة
|
STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}اربط بالخريطة المصغرة
|
||||||
STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}اعرض المصانع المختارة في الخرائط المصغرة ايضا.
|
STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}اعرض المصانع المختارة في الخرائط المصغرة ايضا.
|
||||||
STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}اختر البضائع
|
STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}اختر البضائع
|
||||||
|
STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}حدد البضائع التي تريد عرضها
|
||||||
STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}اختر الصناعة
|
STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}اختر الصناعة
|
||||||
|
STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}حدد الصناعة التي تريد عرضها
|
||||||
|
|
||||||
# Land area window
|
# Land area window
|
||||||
STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}معلومات ارض
|
STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}معلومات ارض
|
||||||
|
STR_LAND_AREA_INFORMATION_LOCATION_TOOLTIP :{BLACK}قم بتوسيط الشاشة على موقع المربع. يؤدي الضغط على Ctrl + النقر بالماوس إلى فتح منفذ عرض جديد على موقع المربع
|
||||||
STR_LAND_AREA_INFORMATION_COST_TO_CLEAR_N_A :{BLACK} تكلفة الازالة : {LTBLUE} غير متاح
|
STR_LAND_AREA_INFORMATION_COST_TO_CLEAR_N_A :{BLACK} تكلفة الازالة : {LTBLUE} غير متاح
|
||||||
STR_LAND_AREA_INFORMATION_COST_TO_CLEAR :{BLACK}تكلفة الازالة : {RED}{CURRENCY_LONG}
|
STR_LAND_AREA_INFORMATION_COST_TO_CLEAR :{BLACK}تكلفة الازالة : {RED}{CURRENCY_LONG}
|
||||||
STR_LAND_AREA_INFORMATION_REVENUE_WHEN_CLEARED :{BLACK} الدخل عند للتجديد: {LTBLUE}{CURRENCY_LONG}
|
STR_LAND_AREA_INFORMATION_REVENUE_WHEN_CLEARED :{BLACK} الدخل عند للتجديد: {LTBLUE}{CURRENCY_LONG}
|
||||||
@@ -2368,12 +2427,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}عدد المدن:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}عدد المدن:
|
||||||
STR_MAPGEN_DATE :{BLACK}التاريخ:
|
STR_MAPGEN_DATE :{BLACK}التاريخ:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}عدد المصانع:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}عدد المصانع:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK} :أقصى ارتفاع للخريطة
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK} زيادة الارتفاع الأقصى للجبال على الخريطة بواحد
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK} خفض الحد الأقصى للارتفاع الجبال على الخريطة بواحد
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK} ارتفاع خط الثلج
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}ارفع خط الثلج مستوى واحد
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}خفض خط الثلج مستوى واحد
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}مولد الخريطة:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}مولد الخريطة:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK} نوع التضاريس
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK} نوع التضاريس
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}مستوى البحر
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}مستوى البحر
|
||||||
@@ -2399,8 +2452,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}اسم
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}الحجم:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}الحجم:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}تغيير أعلى ارتفاع للخريطة
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}غير مستوى خط الثلج
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}غير سنة البداية
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}غير سنة البداية
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -2611,6 +2662,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}مطلوب في الشتاء
|
||||||
@@ -2635,6 +2687,8 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :اعادة تس
|
|||||||
|
|
||||||
# Town local authority window
|
# Town local authority window
|
||||||
STR_LOCAL_AUTHORITY_CAPTION :{WHITE}بلدية {TOWN}
|
STR_LOCAL_AUTHORITY_CAPTION :{WHITE}بلدية {TOWN}
|
||||||
|
STR_LOCAL_AUTHORITY_ZONE :{BLACK}المنطقة
|
||||||
|
STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}عرض منطقة حدود السلطة المحلية
|
||||||
STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}تقييم اداء الشركات
|
STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}تقييم اداء الشركات
|
||||||
STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING}
|
STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING}
|
||||||
STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}الخيارات المتاحة
|
STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}الخيارات المتاحة
|
||||||
@@ -2661,6 +2715,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW} اشت
|
|||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} ارشي السلطات المحلية لزيادة كفائة الشركة. هناك عقاب شديد اذا ما اكتشفت الرشوة.{} التكلفة: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} ارشي السلطات المحلية لزيادة كفائة الشركة. هناك عقاب شديد اذا ما اكتشفت الرشوة.{} التكلفة: {CURRENCY_LONG}
|
||||||
|
|
||||||
# Goal window
|
# Goal window
|
||||||
|
STR_GOALS_SPECTATOR :الأهداف العالمية
|
||||||
STR_GOALS_TEXT :{ORANGE}{STRING}
|
STR_GOALS_TEXT :{ORANGE}{STRING}
|
||||||
|
|
||||||
# Goal question window
|
# Goal question window
|
||||||
@@ -2670,7 +2725,9 @@ STR_GOAL_QUESTION_CAPTION_WARNING :تحذير
|
|||||||
STR_GOAL_QUESTION_CAPTION_ERROR :خطا
|
STR_GOAL_QUESTION_CAPTION_ERROR :خطا
|
||||||
|
|
||||||
############ Start of Goal Question button list
|
############ Start of Goal Question button list
|
||||||
|
STR_GOAL_QUESTION_BUTTON_YES :نعم
|
||||||
STR_GOAL_QUESTION_BUTTON_RETRY :إعادة المحاولة
|
STR_GOAL_QUESTION_BUTTON_RETRY :إعادة المحاولة
|
||||||
|
STR_GOAL_QUESTION_BUTTON_RESTART :إعادة تشغيل
|
||||||
############ End of Goal Question button list
|
############ End of Goal Question button list
|
||||||
|
|
||||||
# Subsidies window
|
# Subsidies window
|
||||||
@@ -2683,7 +2740,7 @@ STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING
|
|||||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}اضغط على الخدمة لتوسيط الخريطة على المصنع/المدينة. اضغط + كنترول لفتح شاشة عرض جديدة للمدينة.
|
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}كتاب القصص
|
||||||
|
|
||||||
# Station list window
|
# Station list window
|
||||||
STR_STATION_LIST_TOOLTIP :{BLACK}اسم المحطة - اضغط على اسم المحطة لتوسيطها في الشاشة. اضغط + كنترول لفتح شاشة عرض جديدة بمنطقة المحطة.
|
STR_STATION_LIST_TOOLTIP :{BLACK}اسم المحطة - اضغط على اسم المحطة لتوسيطها في الشاشة. اضغط + كنترول لفتح شاشة عرض جديدة بمنطقة المحطة.
|
||||||
@@ -2705,11 +2762,15 @@ STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}يستق
|
|||||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}عرض لائحة بالبضائع المقبولة
|
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}عرض لائحة بالبضائع المقبولة
|
||||||
STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}يقبل: {WHITE}{CARGO_LIST}
|
STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}يقبل: {WHITE}{CARGO_LIST}
|
||||||
|
|
||||||
|
STR_STATION_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} اشترى حقوق النقل الحصرية في هذه المدينة.
|
||||||
|
|
||||||
STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}معدل النقل
|
STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}معدل النقل
|
||||||
STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}اظهار معدل النقل للمحطة
|
STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}اظهار معدل النقل للمحطة
|
||||||
|
|
||||||
|
STR_STATION_VIEW_GROUP :{BLACK}جمع بواسطة
|
||||||
STR_STATION_VIEW_WAITING_AMOUNT :الكمية: في الانتظار
|
STR_STATION_VIEW_WAITING_AMOUNT :الكمية: في الانتظار
|
||||||
|
STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} من {STATION}
|
||||||
|
STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} إلى {STATION}
|
||||||
|
|
||||||
|
|
||||||
############ range for rating starts
|
############ range for rating starts
|
||||||
@@ -2738,7 +2799,7 @@ STR_STATION_VIEW_RENAME_STATION_CAPTION :اعادة تس
|
|||||||
STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT}
|
STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT}
|
||||||
STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK} ركز شاشة العرض على نقطة العبور
|
STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK} ركز شاشة العرض على نقطة العبور
|
||||||
STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}غير اسم نقطة العبور
|
STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}غير اسم نقطة العبور
|
||||||
STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK} ضع العوامة في مركز شاشة العرض
|
STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK} ضع العوامة في مركز الشاشة
|
||||||
STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK} غير اسم العومة
|
STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK} غير اسم العومة
|
||||||
|
|
||||||
STR_EDIT_WAYPOINT_NAME :{WHITE}عدل اسم نقطة العبور
|
STR_EDIT_WAYPOINT_NAME :{WHITE}عدل اسم نقطة العبور
|
||||||
@@ -2771,6 +2832,7 @@ STR_FINANCES_BORROW_BUTTON :{BLACK}اقتر
|
|||||||
STR_FINANCES_BORROW_TOOLTIP :{BLACK}زيادة حجم القرض المسموح به
|
STR_FINANCES_BORROW_TOOLTIP :{BLACK}زيادة حجم القرض المسموح به
|
||||||
STR_FINANCES_REPAY_BUTTON :{BLACK}تسديد{CURRENCY_LONG}
|
STR_FINANCES_REPAY_BUTTON :{BLACK}تسديد{CURRENCY_LONG}
|
||||||
STR_FINANCES_REPAY_TOOLTIP :{BLACK}اعادة جزء من القرض
|
STR_FINANCES_REPAY_TOOLTIP :{BLACK}اعادة جزء من القرض
|
||||||
|
STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}البنية التحتية
|
||||||
|
|
||||||
# Company view
|
# Company view
|
||||||
STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM}
|
STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM}
|
||||||
@@ -2786,6 +2848,13 @@ STR_COMPANY_VIEW_SHIPS :{WHITE}{COMMA}
|
|||||||
STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}بدون
|
STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}بدون
|
||||||
STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}قيمة الشركة: {WHITE}{CURRENCY_LONG}
|
STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}قيمة الشركة: {WHITE}{CURRENCY_LONG}
|
||||||
STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}( {COMMA}% مملوكة بواسطة {COMPANY})
|
STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}( {COMMA}% مملوكة بواسطة {COMPANY})
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}البنية تحتية:
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_RAIL :{WHITE}{COMMA} قطعة السكك الحديدية
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_ROAD :{WHITE}{COMMA} قطعة الطريق
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_WATER :{WHITE}{COMMA} مربعات الماء
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} مربع من المحطة
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} مطار
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}لا شيء
|
||||||
|
|
||||||
STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}بناء مقر الشركة الرئيسي
|
STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}بناء مقر الشركة الرئيسي
|
||||||
STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}ابني مقر الشركة
|
STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}ابني مقر الشركة
|
||||||
@@ -2793,6 +2862,10 @@ STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}عرض
|
|||||||
STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}اعرض مقر الشركة
|
STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}اعرض مقر الشركة
|
||||||
STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}اعادة بناء مقر الشركة
|
STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}اعادة بناء مقر الشركة
|
||||||
STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}اعادة بناء مقر الشركة بمكان آخر و بتكلفة 1% من قيمة الشركة.
|
STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}اعادة بناء مقر الشركة بمكان آخر و بتكلفة 1% من قيمة الشركة.
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}التفاصيل
|
||||||
|
STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}عرض تفاصيل حسابات البنية التحتية
|
||||||
|
STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}أعطاء المال
|
||||||
|
STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}إعطاء المال لهذه الشركة
|
||||||
|
|
||||||
STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}وجة جديد
|
STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}وجة جديد
|
||||||
STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}اختر وجة جديد للمدير
|
STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}اختر وجة جديد للمدير
|
||||||
@@ -2810,10 +2883,21 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}بيع 2
|
|||||||
|
|
||||||
STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :اسم الشركة
|
STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :اسم الشركة
|
||||||
STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :اسم صاحب الشركة
|
STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :اسم صاحب الشركة
|
||||||
|
STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :أدخل مبلغ المال الذي تريد تقديمه
|
||||||
|
|
||||||
STR_BUY_COMPANY_MESSAGE :{WHITE}نحن نبحث عن شركة لتشتري شركتنا.{}{} عل ترغب في شراء {COMPANY} بـ {CURRENCY_LONG}؟
|
STR_BUY_COMPANY_MESSAGE :{WHITE}نحن نبحث عن شركة لتشتري شركتنا.{}{} عل ترغب في شراء {COMPANY} بـ {CURRENCY_LONG}؟
|
||||||
|
|
||||||
# Company infrastructure window
|
# Company infrastructure window
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}البنية التحتية لـ {COMPANY}
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_RAIL_SECT :{GOLD}قطع السكك الحديدية:
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}إشارات
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}قطع الطريق:
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_TRAM_SECT :{GOLD}قطع الترام:
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_WATER_SECT :{GOLD}مربعات من الماء:
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_CANALS :{WHITE}القنوات
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}المحطات:
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_STATIONS :{WHITE}مربعات من المحطة
|
||||||
|
STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}المطارات
|
||||||
|
|
||||||
# Industry directory
|
# Industry directory
|
||||||
STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}صناعات
|
STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}صناعات
|
||||||
@@ -2896,6 +2980,9 @@ 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 :الاستخدام الحالي:
|
||||||
|
|
||||||
# Build vehicle window
|
# Build vehicle window
|
||||||
STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :عربات قطار جديدة
|
STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :عربات قطار جديدة
|
||||||
@@ -2931,6 +3018,7 @@ STR_PURCHASE_INFO_ALL_TYPES :كل انواع
|
|||||||
STR_PURCHASE_INFO_NONE :بدون
|
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_TYPE :{BLACK}نوع الطائرة:{GOLD}{STRING}
|
||||||
|
|
||||||
STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}قائمة اختيار القطارات - اضغط على العربة لعرض معلوماتها
|
STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}قائمة اختيار القطارات - اضغط على العربة لعرض معلوماتها
|
||||||
STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}قائمة اختيار العربات - اضغط على العربة لاظهار معلوماتها
|
STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}قائمة اختيار العربات - اضغط على العربة لاظهار معلوماتها
|
||||||
@@ -2960,7 +3048,14 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK} اعا
|
|||||||
STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}اعادة تسمية نوع السفينة
|
STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}اعادة تسمية نوع السفينة
|
||||||
STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}اعادة تسمية نوع الطائرة
|
STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}اعادة تسمية نوع الطائرة
|
||||||
|
|
||||||
|
STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}إخفاء
|
||||||
|
STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}إخفاء
|
||||||
|
STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}إخفاء
|
||||||
|
STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}إخفاء
|
||||||
|
|
||||||
|
STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}عرض
|
||||||
|
STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}عرض
|
||||||
|
STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}عرض
|
||||||
STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}عرض
|
STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}عرض
|
||||||
|
|
||||||
STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK} تبيدل بين إخفاء / عرض نوع الطائرة
|
STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK} تبيدل بين إخفاء / عرض نوع الطائرة
|
||||||
@@ -3099,6 +3194,7 @@ STR_REPLACE_REMOVE_WAGON_HELP :{BLACK} الم
|
|||||||
# Vehicle view
|
# Vehicle view
|
||||||
STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE}
|
STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE}
|
||||||
|
|
||||||
|
STR_VEHICLE_VIEW_ROAD_VEHICLE_CENTER_TOOLTIP :{BLACK}وسط الشاشة على موقع السيارة.النقر بالماوس مرتين لمتابعة السيارة. يفتح Ctrl + النقر بالماوس منفذ عرض جديد على موقع السيارة
|
||||||
|
|
||||||
STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK} ارسل القطار للورشة - مفتاح التحكم (كنترول) + الضغط سيرسله لصيانة فقط
|
STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK} ارسل القطار للورشة - مفتاح التحكم (كنترول) + الضغط سيرسله لصيانة فقط
|
||||||
STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}ارسل العربة الى الورشة. مفتاح التحكم (كنترول) + الضغط ترسل للصيانة فقط
|
STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}ارسل العربة الى الورشة. مفتاح التحكم (كنترول) + الضغط ترسل للصيانة فقط
|
||||||
@@ -3188,6 +3284,7 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}فترا
|
|||||||
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}زيادة فترات الصيانة بقدر 10. ومع مفتاح كنترول بمقدار 5.
|
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}زيادة فترات الصيانة بقدر 10. ومع مفتاح كنترول بمقدار 5.
|
||||||
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK} انقاص فترات الصيانة بمعدل 10. Ctrl+ الضغط الانقاص بمعدل 5.
|
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK} انقاص فترات الصيانة بمعدل 10. Ctrl+ الضغط الانقاص بمعدل 5.
|
||||||
|
|
||||||
|
STR_VEHICLE_DETAILS_DAYS :الأيام
|
||||||
|
|
||||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}اسم القطار
|
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}اسم القطار
|
||||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}تسمية العربة
|
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}تسمية العربة
|
||||||
@@ -3424,6 +3521,7 @@ STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}جدول
|
|||||||
STR_TIMETABLE_STATUS_START_AT :{BLACK}جدولة الاعمال ستبدأ فى {STRING}
|
STR_TIMETABLE_STATUS_START_AT :{BLACK}جدولة الاعمال ستبدأ فى {STRING}
|
||||||
|
|
||||||
STR_TIMETABLE_STARTING_DATE :{BLACK}تاريخ البدأ
|
STR_TIMETABLE_STARTING_DATE :{BLACK}تاريخ البدأ
|
||||||
|
STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}حدد تاريخًا كنقطة بداية لهذا الجدول الزمني. يحدد Ctrl + Click نقطة البداية لهذا الجدول الزمني ويوزع جميع المركبات التي تشارك هذا الطلب بالتساوي بناءً على ترتيبها النسبي ، إذا كان الطلب محددًا بجدول زمني كامل
|
||||||
|
|
||||||
STR_TIMETABLE_CHANGE_TIME :{BLACK}غير الوقت
|
STR_TIMETABLE_CHANGE_TIME :{BLACK}غير الوقت
|
||||||
STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}غير مقدار الزمن الذي يستغرقه هذا الامر
|
STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}غير مقدار الزمن الذي يستغرقه هذا الامر
|
||||||
@@ -3486,6 +3584,7 @@ STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW} شاش
|
|||||||
STR_AI_CONFIG_CAPTION :{WHITE}إعدادات الذكاء الصناعي
|
STR_AI_CONFIG_CAPTION :{WHITE}إعدادات الذكاء الصناعي
|
||||||
STR_AI_CONFIG_HUMAN_PLAYER :لاعب انساني
|
STR_AI_CONFIG_HUMAN_PLAYER :لاعب انساني
|
||||||
STR_AI_CONFIG_RANDOM_AI :ذكاء صناعي عشوائي
|
STR_AI_CONFIG_RANDOM_AI :ذكاء صناعي عشوائي
|
||||||
|
STR_AI_CONFIG_NONE :(لا شيء)
|
||||||
|
|
||||||
STR_AI_CONFIG_MOVE_UP :{BLACK}انقل للاعلى
|
STR_AI_CONFIG_MOVE_UP :{BLACK}انقل للاعلى
|
||||||
STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}انقل الذكاء الاصطناعي المختار للاعلى
|
STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}انقل الذكاء الاصطناعي المختار للاعلى
|
||||||
@@ -3510,6 +3609,7 @@ STR_AI_LIST_CANCEL :{BLACK} الغ
|
|||||||
STR_AI_LIST_CANCEL_TOOLTIP :{BLACK} لا تغير الذكاء الصناعي
|
STR_AI_LIST_CANCEL_TOOLTIP :{BLACK} لا تغير الذكاء الصناعي
|
||||||
|
|
||||||
STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}التقط لقطة شاشة كاملة
|
STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}التقط لقطة شاشة كاملة
|
||||||
|
STR_SCREENSHOT_WORLD_SCREENSHOT :{BLACK}صور الخاريطة الكاملة
|
||||||
|
|
||||||
# AI Parameters
|
# AI Parameters
|
||||||
STR_AI_SETTINGS_CLOSE :{BLACK} اغلاق
|
STR_AI_SETTINGS_CLOSE :{BLACK} اغلاق
|
||||||
|
|||||||
@@ -961,6 +961,7 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Pantaila
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :besteak
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :besteak
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interfaze tamaina
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interfaze tamaina
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normala
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normala
|
||||||
@@ -2612,9 +2613,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Herri kopurua:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Herri kopurua:
|
||||||
STR_MAPGEN_DATE :{BLACK}Data:
|
STR_MAPGEN_DATE :{BLACK}Data:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Industria kopurua:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Industria kopurua:
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Elur garaiera:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Igo puntu batean elur garaiera
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Jeitsi puntu batean elur garaiera
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Paisaia sortzailea:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Paisaia sortzailea:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Lur mota:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Lur mota:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Itsaso kopurua:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Itsaso kopurua:
|
||||||
@@ -2640,8 +2638,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Garaiera
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamaina:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamaina:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Aldatu maparen garaiera maximoa
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Elur garaiera aldatu
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Hasierako urtea aldatu
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Hasierako urtea aldatu
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -1299,6 +1299,7 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Выба
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :Iншае
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :Iншае
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
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}Выберыце памер элементаў інтэрфейсу
|
||||||
|
|
||||||
@@ -1488,8 +1489,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Пераклю
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Стаўленьне гарадзкой рады да рэструктурызацыі навакольляў: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Стаўленьне гарадзкой рады да рэструктурызацыі навакольляў: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Выберыце ўзровень шуму й забруджваньня навакольнага асяроддзя кампаніямі, які ўплывае на іх рэйтынґ у гарадах і магчымасьць далейшага будаўніцтва каля гарадоў
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Выберыце ўзровень шуму й забруджваньня навакольнага асяроддзя кампаніямі, які ўплывае на іх рэйтынґ у гарадах і магчымасьць далейшага будаўніцтва каля гарадоў
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Максімальная вышыня: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Усталёўка максімальна дапушчальнай вышыні гор на мапе
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Немагчыма зьмяніць максімальную вышыню. На мапе ёсць горы вышэй гэтага значэньня.
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Немагчыма зьмяніць максімальную вышыню. На мапе ёсць горы вышэй гэтага значэньня.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Дазволіць зьмену ляндшафту пад будынкамі, дарогамі й г. д. (аўтаспускі): {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Дазволіць зьмену ляндшафту пад будынкамі, дарогамі й г. д. (аўтаспускі): {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Дазволіць зьмену ляндшафту пад будынкамі й рэйкамi, не выдаляючы іx
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Дазволіць зьмену ляндшафту пад будынкамі й рэйкамi, не выдаляючы іx
|
||||||
@@ -3111,12 +3110,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Колькасьць гарадоў:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Колькасьць гарадоў:
|
||||||
STR_MAPGEN_DATE :{BLACK}Дата:
|
STR_MAPGEN_DATE :{BLACK}Дата:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Колькасьць прадпрыемстваў:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Колькасьць прадпрыемстваў:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Макс. вышыня мапы:
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Павялічыць максімальную вышыню мапы на 1
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Паменшыць максімальную вышыню мапы на 1
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Вышыня сьнегавой лініі:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Падняць сьнегавую лінію
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Апусьціць сьнегавую лінію
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Ґенэратар ляндшафту:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Ґенэратар ляндшафту:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тып ляндшафту:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тып ляндшафту:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Колькасьць азёраў/мораў:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Колькасьць азёраў/мораў:
|
||||||
@@ -3142,8 +3135,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Назв
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Памер:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Памер:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Максімальная вышыня мапы
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Зьмяніць вышыню сьнегавой лініі
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Зьмяніць год пачатку гульні
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Зьмяніць год пачатку гульні
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -378,7 +378,7 @@ STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Colocar
|
|||||||
STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Salvar cenário
|
STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Salvar cenário
|
||||||
STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Carregar cenário
|
STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Carregar cenário
|
||||||
STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Salvar mapa topográfico
|
STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Salvar mapa topográfico
|
||||||
STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Carregar mapa de elevação
|
STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Carregar mapa topográfico
|
||||||
STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Sair do editor de cenários
|
STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Sair do editor de cenários
|
||||||
STR_SCENEDIT_FILE_MENU_SEPARATOR :
|
STR_SCENEDIT_FILE_MENU_SEPARATOR :
|
||||||
STR_SCENEDIT_FILE_MENU_QUIT :Sair
|
STR_SCENEDIT_FILE_MENU_QUIT :Sair
|
||||||
@@ -1007,6 +1007,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Acelera
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Marque esta caixa para permitir que o OpenTTD tente usar a aceleração de hardware. Qualquer mudança nesta configuração só será aplicada após reiniciar o jogo.
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Marque esta caixa para permitir que o OpenTTD tente usar a aceleração de hardware. Qualquer mudança nesta configuração só será aplicada após reiniciar o jogo.
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}A configuração só terá efeito após reiniciar o jogo
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}A configuração só terá efeito após reiniciar o jogo
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Marque esta caixa para habilitar o v-sync na tela. Qualquer mudança nesta configuração só será aplicada após reiniciar o jogo. Só funciona com a aceleração de hardware habilitada
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Tamanho da interface
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Tamanho da interface
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Selecione o tamanho de elemento de interface a ser usado
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Selecione o tamanho de elemento de interface a ser usado
|
||||||
|
|
||||||
@@ -1125,6 +1128,8 @@ STR_TERRAIN_TYPE_FLAT :Plano
|
|||||||
STR_TERRAIN_TYPE_HILLY :Acidentado
|
STR_TERRAIN_TYPE_HILLY :Acidentado
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Montanhoso
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Montanhoso
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpinista
|
STR_TERRAIN_TYPE_ALPINIST :Alpinista
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Altura personalizada
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Altura personalizada ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Permissivo
|
STR_CITY_APPROVAL_PERMISSIVE :Permissivo
|
||||||
STR_CITY_APPROVAL_TOLERANT :Tolerante
|
STR_CITY_APPROVAL_TOLERANT :Tolerante
|
||||||
@@ -1206,9 +1211,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Alterna desastr
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Atitude da prefeitura em relação à restruturação local: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Atitude da prefeitura em relação à restruturação local: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Escolhe como a poluição sonoroa e ambiental afeta a classificação na cidade e as ações futuras naquela área
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Escolhe como a poluição sonoroa e ambiental afeta a classificação na cidade e as ações futuras naquela área
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altura máx. do mapa: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Limite de altura do mapa: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Define a altitude máxima para montanhas no mapa
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Define a altura máxima do terreno do mapa. Com "(automático)", um bom valor será escolhido após a geração do terreno
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Impossível definir a altitude máx. do mapa para esse valor. Há ao menos uma montanha mais alta que isso
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(automático)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Impossível definir o limite de altura do mapa para este valor. Há ao menos uma montanha mais alta que isso
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Permitir paisagismo sob edifícios, trilhos, etc.: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Permitir paisagismo sob edifícios, trilhos, etc.: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permite paisagismo sob edifícios e vias sem precisar removê-las
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permite paisagismo sob edifícios e vias sem precisar removê-las
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Dimensionamento mais realista das áreas de abrangência: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Dimensionamento mais realista das áreas de abrangência: {STRING}
|
||||||
@@ -1352,7 +1359,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Define quantas
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Dist máx da borda para Refinarias de Óleo: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Dist máx da borda para Refinarias de Óleo: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Refinarias são construídas apenas nas bordas, ou no litoral, para ilhas
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Refinarias são construídas apenas nas bordas, ou no litoral, para ilhas
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altura da linha de neve: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altura da linha de neve: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Controla a que altitude a neve começa nos climas sub-árticos. Neve também afeta geração de indústrias e necessidades para o crescimento das cidades
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Controla a que altitude a neve começa nos climas sub-árticos. Neve também afeta geração de indústrias e necessidades para o crescimento das cidades. Só pode ser modificado por meio do Editor de cenário ou é de outra forma calculado por meio de "cobertura de neve"
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Cobertura de neve: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Controla a quantidade aproximada de neve no terreno subártico. A neve também afeta os requisitos de geração de indústria e crescimento de cidades. Usado apenas durante a geração de mapas. Terreno logo acima do nível do mar é sempre sem neve
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Cobertura do deserto: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Controla a quantidade aproximada de deserto no terreno tropical. O deserto também afeta a geração de indústrias. Usado apenas durante a geração do mapa
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Irregularidade do terreno: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Irregularidade do terreno: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis apenas) Escolhe a frequência de colinas: Terrenos planos têm menos colinas, mais espalhadas. Montanhosos tem mais colinas, que pode se tornar repetitivo
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis apenas) Escolhe a frequência de colinas: Terrenos planos têm menos colinas, mais espalhadas. Montanhosos tem mais colinas, que pode se tornar repetitivo
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Muito Regular
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Muito Regular
|
||||||
@@ -2340,6 +2353,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sim, baixar os gráficos
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sim, baixar os gráficos
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Não, sair do OpenTTD
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Não, sair do OpenTTD
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}O download falhou
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}O download de gráficos falhou.{}Por favor, baixe os gráficos manualmente.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Sair do OpenTTD
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Opções de Transparência
|
STR_TRANSPARENCY_CAPTION :{WHITE}Opções de Transparência
|
||||||
@@ -2890,12 +2906,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. de cidades:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. de cidades:
|
||||||
STR_MAPGEN_DATE :{BLACK}Data:
|
STR_MAPGEN_DATE :{BLACK}Data:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. de indústrias:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. de indústrias:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altitude máx. do mapa:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Pico mais alto:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Aumenta a altitude máxima das montanhas no mapa em uma unidade
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Aumentar a altura máxima do pico mais alto no mapa por um
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Diminui a altitude máxima das montanhas no mapa em uma unidade
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Diminuir a altura máxima do pico mais alto no mapa por um
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Linha da neve
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Cobertura de neve:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Aumentar a linha da neve em um ponto
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Aumentar em dez porcento a cobertura de neve
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Diminuir a linha da neve em um ponto
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Reduzir em dez porcento a cobertura de neve
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Cobertura do deserto:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Aumentar a cobertura do deserto em dez por cento
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Diminuir a cobertura do deserto em dez por cento
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Gerador de terra
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Gerador de terra
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreno
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreno
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nível do mar:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nível do mar:
|
||||||
@@ -2921,8 +2942,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome do
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamanho:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamanho:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Alterar a altitude máxima do mapa
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altura alvo do pico
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Mudar linha da neve
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Pico mais alto
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Cobertura de neve (%)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Cobertura do deserto (%)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Mudar data de início
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Mudar data de início
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -4339,6 +4362,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Apenas u
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Captura de tela gigante
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Captura de tela gigante
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}A captura de tela terá uma resolução de {COMMA}x{COMMA} pixels. Pode levar algum tempo. Deseja continuar?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}A captura de tela terá uma resolução de {COMMA}x{COMMA} pixels. Pode levar algum tempo. Deseja continuar?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Mapa topográfico salvo com sucesso como '{STRING}'. O pico mais alto é {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Foto salvado com sucesso como '{STRING}'
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Foto salvado com sucesso como '{STRING}'
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Falha ao tirar foto!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Falha ao tirar foto!
|
||||||
|
|
||||||
|
|||||||
@@ -969,6 +969,7 @@ 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}Изберете размера на интерфейс елемент за използване
|
||||||
|
|
||||||
@@ -1159,8 +1160,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Включва
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Отношението на градския съвет към реструктурирането на района: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Отношението на градския съвет към реструктурирането на района: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Изберете какво количество шум и поражения по околната среда причинени от компаниите афектират техния рейтинг в града и бъдещи конструкции в района.
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Изберете какво количество шум и поражения по околната среда причинени от компаниите афектират техния рейтинг в града и бъдещи конструкции в района.
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Максимална височина на картата: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Определете максималната допустима височина за планини на картата
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Не можете да зададете максималната височина на картата на тази стойност. Поне една планина на карта е по-висока
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Не можете да зададете максималната височина на картата на тази стойност. Поне една планина на карта е по-висока
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Тераформиране под постройки (autoslope): {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Тераформиране под постройки (autoslope): {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Разреши промяна на наклона на терена под постройки и пътища без необходимост от премахване
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Разреши промяна на наклона на терена под постройки и пътища без необходимост от премахване
|
||||||
@@ -2671,12 +2670,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Брой градове:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Брой градове:
|
||||||
STR_MAPGEN_DATE :{BLACK}Дата:
|
STR_MAPGEN_DATE :{BLACK}Дата:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Брой индустрии:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Брой индустрии:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Максимална височина на картата:
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Увеличаване на максималната височина на планините на карта с едно
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Намаляне максималната височина на планините на карта с едно
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Снежна линия:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Преместване снежната линия нагоре
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Преместване снежната линия надолу
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Земегенератор:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Земегенератор:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тип на терен:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тип на терен:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Морско ниво:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Морско ниво:
|
||||||
@@ -2702,8 +2695,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Име
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Размер:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Размер:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Промяна на максималната височина на картата
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Височина на снежната линия
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Промяна началната година
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Промяна началната година
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -387,7 +387,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Surt
|
|||||||
############ range for settings menu starts
|
############ range for settings menu starts
|
||||||
STR_SETTINGS_MENU_GAME_OPTIONS :Opcions de la partida
|
STR_SETTINGS_MENU_GAME_OPTIONS :Opcions de la partida
|
||||||
STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configuració
|
STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configuració
|
||||||
STR_SETTINGS_MENU_SCRIPT_SETTINGS :Paràmetres de les IA i de l'script de la partida
|
STR_SETTINGS_MENU_SCRIPT_SETTINGS :Paràmetres dels scripts d'IA/partida
|
||||||
STR_SETTINGS_MENU_NEWGRF_SETTINGS :Extensions NewGRF
|
STR_SETTINGS_MENU_NEWGRF_SETTINGS :Extensions NewGRF
|
||||||
STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcions de transparència
|
STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcions de transparència
|
||||||
STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostra els noms de les poblacions
|
STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostra els noms de les poblacions
|
||||||
@@ -1007,6 +1007,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Accelera
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Seleccioneu aquesta opció per permetre que l'OpenTTD provi d'usar acceleració per maquinari. Si es canvia l'opció, s'aplicarà quan es reiniciï el programa.
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Seleccioneu aquesta opció per permetre que l'OpenTTD provi d'usar acceleració per maquinari. Si es canvia l'opció, s'aplicarà quan es reiniciï el programa.
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}La configuració tindrà efecte quan es reiniciï el programa.
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}La configuració tindrà efecte quan es reiniciï el programa.
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Selecciona aquesta casella per activar la sincronització vertical de la pantalla. Els canvis s'aplicaran quan es reiniciï el programa. Només funciona si s'activa l'acceleració per maquinari.
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Mida de la interfície
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Mida de la interfície
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Escull la mida dels elements de la interfície
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Escull la mida dels elements de la interfície
|
||||||
|
|
||||||
@@ -1125,6 +1128,8 @@ STR_TERRAIN_TYPE_FLAT :Pla
|
|||||||
STR_TERRAIN_TYPE_HILLY :Accidentat
|
STR_TERRAIN_TYPE_HILLY :Accidentat
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Muntanyós
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Muntanyós
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Escarpat
|
STR_TERRAIN_TYPE_ALPINIST :Escarpat
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Alçada personalitzada
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Alçada personalitzada ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Permissiva
|
STR_CITY_APPROVAL_PERMISSIVE :Permissiva
|
||||||
STR_CITY_APPROVAL_TOLERANT :Tolerant
|
STR_CITY_APPROVAL_TOLERANT :Tolerant
|
||||||
@@ -1206,9 +1211,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Permet o no que
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Actitud de l'alcaldia de la població enfront les reestructuracions a la zona: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Actitud de l'alcaldia de la població enfront les reestructuracions a la zona: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Establiu com afecta al prestigi de les companyies el soroll i els danys ambientals que provoquen. Aquest prestigi influirà en la futura acceptació o denegació d'accions de construcció a la zona.
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Establiu com afecta al prestigi de les companyies el soroll i els danys ambientals que provoquen. Aquest prestigi influirà en la futura acceptació o denegació d'accions de construcció a la zona.
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Alçada màxima del mapa: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Alçada màxima del mapa: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Estableix l'alçada màxima permesa del terreny en el mapa
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Estableix l'alçada màxima del terreny del mapa. Amb «Automàtica», s'escollirà un valor adequat després que es generi el terreny.
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}No es pot escollir aquesta alçada màxima del mapa: hi ha alguna zona del mapa actual que és més alta.
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :Automàtica
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}No es pot escollir aquest límit d'alçada del mapa. Hi ha almenys una muntanya al mapa que és més alta.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Permet la modificació del terreny sota edificis, rails, etc.: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Permet la modificació del terreny sota edificis, rails, etc.: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permet modelar el terreny sota les vies, els edificis i altres elements sense eliminar-los.
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permet modelar el terreny sota les vies, els edificis i altres elements sense eliminar-los.
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Estableix una mida més real de l'àrea d'influència: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Estableix una mida més real de l'àrea d'influència: {STRING}
|
||||||
@@ -1340,7 +1347,7 @@ STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Mostra el nom d
|
|||||||
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Afegeix una línia a la finestra de construcció de vehicles que mostri de quin NewGRF és el vehicle seleccionat.
|
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Afegeix una línia a la finestra de construcció de vehicles que mostri de quin NewGRF és el vehicle seleccionat.
|
||||||
|
|
||||||
STR_CONFIG_SETTING_LANDSCAPE :Paisatge: {STRING}
|
STR_CONFIG_SETTING_LANDSCAPE :Paisatge: {STRING}
|
||||||
STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :El tipus de paisatge defineix escenaris amb diferents tipus de càrrega i requisits per al creixement de les poblacions. Els NewGRF i l'script de la partida poden modificar-ne l'aparença i el comportament
|
STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :El tipus de paisatge defineix escenaris amb diferents tipus de càrrega i requisits per al creixement de les poblacions. Els NewGRF i l'script de partida poden modificar-ne l'aparença i el comportament.
|
||||||
STR_CONFIG_SETTING_LAND_GENERATOR :Generador de terrenys: {STRING}
|
STR_CONFIG_SETTING_LAND_GENERATOR :Generador de terrenys: {STRING}
|
||||||
STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :L'algorisme generador original depèn del tipus de gràfics base i crea formes de terreny predefinides. TerraGenesis és un generador basat en el soroll Perlin que permet una configuració més precisa
|
STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :L'algorisme generador original depèn del tipus de gràfics base i crea formes de terreny predefinides. TerraGenesis és un generador basat en el soroll Perlin que permet una configuració més precisa
|
||||||
STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original
|
STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original
|
||||||
@@ -1352,7 +1359,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Fixa el nombre
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distància màxima des de la vora a les indústries de petroli: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distància màxima des de la vora a les indústries de petroli: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limita a quina distància del mapa es poden construir refineries de petroli i plataformes petrolíferes. En mapes amb illes, serveix per assegurar que estan prop de la costa. En mapes de més de 256 caselles, aquest valor s'escala automàticament.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limita a quina distància del mapa es poden construir refineries de petroli i plataformes petrolíferes. En mapes amb illes, serveix per assegurar que estan prop de la costa. En mapes de més de 256 caselles, aquest valor s'escala automàticament.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Alçada dels estatges amb neu: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Alçada dels estatges amb neu: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Controla a quina alçada la neu comença en el paisatge subàrtic. La neu també afecta la generació d'indústries i els requisits per al creixement de les poblacions
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Controla a quina alçada la neu comença en el paisatge subàrtic. La neu també afecta la generació d'indústries i els requisits per al creixement de les poblacions. Només es pot modificar a l'editor d'escenaris; altrament, es calcula fent servir la proporció de terreny nevat.
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Terreny nevat: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Controla la quantitat aproximada de terreny nevat que hi ha en els paisatges subàrtics. La neu afecta a la generació d'indústries i el creixement de les poblacions. Només s'usa durant la generació de mapes. El terreny d'alçada propera al nivell del mar mai està nevat.
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}{NBSP}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Terreny desèrtic: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Controla la quantitat aproximada de terreny desèrtic que hi ha en els paisatges tropicals. Els deserts afecten a la generació d'indústries. Només s'usa durant la generació de mapes.
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}{NBSP}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Geografia del terreny: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Geografia del terreny: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Només TerraGenesis) Escollir la suavitat del paisatge: els terrenys suaus tenen menys turons i són regulars; els terrenys més rugosos són irregulars i tenen molts turons
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Només TerraGenesis) Escollir la suavitat del paisatge: els terrenys suaus tenen menys turons i són regulars; els terrenys més rugosos són irregulars i tenen molts turons
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Molt suau
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Molt suau
|
||||||
@@ -1437,7 +1450,7 @@ STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :llarga (31 Des
|
|||||||
STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :curta (31-12-2008)
|
STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :curta (31-12-2008)
|
||||||
STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31)
|
STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31)
|
||||||
|
|
||||||
STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Posa en pausa automàticament quan comenci una nova partida: {STRING}
|
STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Posa en pausa automàticament quan comenci una partida nova: {STRING}
|
||||||
STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Quan està activat, el joc es posa en pausa automàticament quan es comenci una partida nova, permetent a l'usuari estudiar el mapa més detalladament
|
STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Quan està activat, el joc es posa en pausa automàticament quan es comenci una partida nova, permetent a l'usuari estudiar el mapa més detalladament
|
||||||
STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Accions permeses mentre s'està fent una pausa a la partida: {STRING}
|
STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Accions permeses mentre s'està fent una pausa a la partida: {STRING}
|
||||||
STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Seleccioneu quines accions es poden realitzar mentre s'està fent una pausa a la partida.
|
STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Seleccioneu quines accions es poden realitzar mentre s'està fent una pausa a la partida.
|
||||||
@@ -1455,7 +1468,7 @@ STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Mostra l'arriba
|
|||||||
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Mostra als horaris l'arribada anticipadament i les hores de sortida
|
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Mostra als horaris l'arribada anticipadament i les hores de sortida
|
||||||
STR_CONFIG_SETTING_QUICKGOTO :Creació ràpida d'ordres per a vehicles: {STRING}
|
STR_CONFIG_SETTING_QUICKGOTO :Creació ràpida d'ordres per a vehicles: {STRING}
|
||||||
STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Preselecciona el botó 'Vés a' quan s'obri la finestra d'ordres
|
STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Preselecciona el botó 'Vés a' quan s'obri la finestra d'ordres
|
||||||
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Tipus predeterminat de via (en nova partida/càrrega de partida): {STRING}
|
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Tipus predeterminat de via (després de carregar una partida o crear-ne una nova): {STRING}
|
||||||
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Tipus de via a seleccionar després de començar o carregar una partida. 'El més antic disponible' selecciona el tipus de vies més antic disponible, 'El més modern disponible' selecciona el tipus de vies més modern, i 'El més utilitzat disponible' selecciona el tipus de vies que s'utilitzi més actualment
|
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Tipus de via a seleccionar després de començar o carregar una partida. 'El més antic disponible' selecciona el tipus de vies més antic disponible, 'El més modern disponible' selecciona el tipus de vies més modern, i 'El més utilitzat disponible' selecciona el tipus de vies que s'utilitzi més actualment
|
||||||
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :El més antic disponible
|
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :El més antic disponible
|
||||||
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :El més modern disponible
|
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :El més modern disponible
|
||||||
@@ -1511,7 +1524,7 @@ STR_CONFIG_SETTING_AI_BUILDS_SHIPS :Desactiva els v
|
|||||||
STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Activant aquesta opció fa que sigui impossible construir vaixells als jugadors IA.
|
STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Activant aquesta opció fa que sigui impossible construir vaixells als jugadors IA.
|
||||||
|
|
||||||
STR_CONFIG_SETTING_AI_PROFILE :Perfil de paràmetres predeterminat: {STRING}
|
STR_CONFIG_SETTING_AI_PROFILE :Perfil de paràmetres predeterminat: {STRING}
|
||||||
STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Escolliu quin perfil de paràmetres utilitzar per les IA aleatòries o com a valors inicials quan s'afegeix una nova IA o script de la partida.
|
STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Escolliu el perfil de paràmetres de les IA aleatòries o els valors inicials quan s'afegeix una nova IA o script de partida.
|
||||||
STR_CONFIG_SETTING_AI_PROFILE_EASY :Fàcil
|
STR_CONFIG_SETTING_AI_PROFILE_EASY :Fàcil
|
||||||
STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Mitjà
|
STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Mitjà
|
||||||
STR_CONFIG_SETTING_AI_PROFILE_HARD :Difícil
|
STR_CONFIG_SETTING_AI_PROFILE_HARD :Difícil
|
||||||
@@ -1531,11 +1544,11 @@ STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Estableix l'int
|
|||||||
STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}di{P 0 a es}/%
|
STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}di{P 0 a es}/%
|
||||||
STR_CONFIG_SETTING_SERVINT_DISABLED :Desactivat
|
STR_CONFIG_SETTING_SERVINT_DISABLED :Desactivat
|
||||||
STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Interval per defecte de servei per als vehicles: {STRING}
|
STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Interval per defecte de servei per als vehicles: {STRING}
|
||||||
STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Estableix l'interval de revisió predeterminat pels nous vehicles de caretera, si no hi ha un interval de revisió explícit pel vehicle
|
STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Estableix l'interval de revisió predeterminat pels vehicles de carretera que es comprin, si no hi ha un interval de revisió explícit pel vehicle.
|
||||||
STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Interval per defecte de servei per a les aeronaus: {STRING}
|
STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Interval per defecte de servei per a les aeronaus: {STRING}
|
||||||
STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Estableix l'interval de revisió predeterminat pels nous avions, si no hi ha un interval de revisió explícit pel vehicle
|
STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Estableix l'interval de revisió predeterminat pels nous avions, si no hi ha un interval de revisió explícit pel vehicle
|
||||||
STR_CONFIG_SETTING_SERVINT_SHIPS :Interval per defecte de servei per als vaixells: {STRING}
|
STR_CONFIG_SETTING_SERVINT_SHIPS :Interval per defecte de servei per als vaixells: {STRING}
|
||||||
STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Estableix l'interval de revisió predeterminat pels nous vaixells, si no hi ha un interval de revisió explícit pel vehicle
|
STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Estableix l'interval de revisió predeterminat pels vaixells que es comprin, si no hi ha un interval de revisió explícit pel vehicle.
|
||||||
STR_CONFIG_SETTING_NOSERVICE :Desactiva les revisions quan les avaries s'estableixen a cap: {STRING}
|
STR_CONFIG_SETTING_NOSERVICE :Desactiva les revisions quan les avaries s'estableixen a cap: {STRING}
|
||||||
STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Quan està activat, els vehicles no són revisats si no es poden espatllar
|
STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Quan està activat, els vehicles no són revisats si no es poden espatllar
|
||||||
STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Activa límits de velocitat per als vagons: {STRING}
|
STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Activa límits de velocitat per als vagons: {STRING}
|
||||||
@@ -1565,7 +1578,7 @@ STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Altres canvis d
|
|||||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Mostra les notícies de canvis als nivells de producció de les indústries que no estan proveïdes ni per la companyia ni pels competidors
|
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Mostra les notícies de canvis als nivells de producció de les indústries que no estan proveïdes ni per la companyia ni pels competidors
|
||||||
STR_CONFIG_SETTING_NEWS_ADVICE :Alertes / informació sobre els vehicles de la companyia: {STRING}
|
STR_CONFIG_SETTING_NEWS_ADVICE :Alertes / informació sobre els vehicles de la companyia: {STRING}
|
||||||
STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Mostra missatges sobre vehicles que necessitin atenció
|
STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Mostra missatges sobre vehicles que necessitin atenció
|
||||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Nous vehicles: {STRING}
|
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Vehicles nous: {STRING}
|
||||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Mostra les notícies d'aparicions de nous tipus de vehicles
|
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Mostra les notícies d'aparicions de nous tipus de vehicles
|
||||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Canvis en l'admissió de càrrega: {STRING}
|
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Canvis en l'admissió de càrrega: {STRING}
|
||||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Mostra missatges sobre les estacions que canviïn l'acceptació d'alguna càrrega
|
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Mostra missatges sobre les estacions que canviïn l'acceptació d'alguna càrrega
|
||||||
@@ -1618,10 +1631,10 @@ STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Totes
|
|||||||
|
|
||||||
STR_CONFIG_SETTING_TOWN_LAYOUT :Disposició de carreteres per les noves poblacions: {STRING}
|
STR_CONFIG_SETTING_TOWN_LAYOUT :Disposició de carreteres per les noves poblacions: {STRING}
|
||||||
STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Disposició per la xarxa de carreteres de les poblacions
|
STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Disposició per la xarxa de carreteres de les poblacions
|
||||||
STR_CONFIG_SETTING_TOWN_LAYOUT_DEFAULT :Original
|
STR_CONFIG_SETTING_TOWN_LAYOUT_DEFAULT :Distribució millorada
|
||||||
STR_CONFIG_SETTING_TOWN_LAYOUT_BETTER_ROADS :Millors carreteres
|
STR_CONFIG_SETTING_TOWN_LAYOUT_BETTER_ROADS :Distribució millorada
|
||||||
STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :graella 2x2
|
STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :Graella 2x2
|
||||||
STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :graella 3x3
|
STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :Graella 3x3
|
||||||
STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :Aleatori
|
STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :Aleatori
|
||||||
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Les poblacions poden construir carreteres: {STRING}
|
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Les poblacions poden construir carreteres: {STRING}
|
||||||
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Permet a les poblacions construir carreteres per créixer. Desactiveu aquesta opció per evitar que les poblacions construeixin carreteres.
|
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Permet a les poblacions construir carreteres per créixer. Desactiveu aquesta opció per evitar que les poblacions construeixin carreteres.
|
||||||
@@ -1813,7 +1826,7 @@ STR_VIDEO_DRIVER_ERROR_NO_HARDWARE_ACCELERATION :{WHITE}... no s
|
|||||||
# Intro window
|
# Intro window
|
||||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||||
|
|
||||||
STR_INTRO_NEW_GAME :{BLACK}Nova partida
|
STR_INTRO_NEW_GAME :{BLACK}Partida nova
|
||||||
STR_INTRO_LOAD_GAME :{BLACK}Carrega una partida
|
STR_INTRO_LOAD_GAME :{BLACK}Carrega una partida
|
||||||
STR_INTRO_PLAY_SCENARIO :{BLACK}Juga un escenari
|
STR_INTRO_PLAY_SCENARIO :{BLACK}Juga un escenari
|
||||||
STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Juga un mapa d'alçades
|
STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Juga un mapa d'alçades
|
||||||
@@ -1825,7 +1838,7 @@ STR_INTRO_HIGHSCORE :{BLACK}Taula de
|
|||||||
STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configuració
|
STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configuració
|
||||||
STR_INTRO_NEWGRF_SETTINGS :{BLACK}Extensions NewGRF
|
STR_INTRO_NEWGRF_SETTINGS :{BLACK}Extensions NewGRF
|
||||||
STR_INTRO_ONLINE_CONTENT :{BLACK}Contingut en línia
|
STR_INTRO_ONLINE_CONTENT :{BLACK}Contingut en línia
|
||||||
STR_INTRO_SCRIPT_SETTINGS :{BLACK}Paràmetres de les IA/script de la partida
|
STR_INTRO_SCRIPT_SETTINGS :{BLACK}Paràmetres dels scripts d'IA/partida
|
||||||
STR_INTRO_QUIT :{BLACK}Surt
|
STR_INTRO_QUIT :{BLACK}Surt
|
||||||
|
|
||||||
STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Comença una partida nova. Ctrl+Clic salta la configuració del mapa
|
STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Comença una partida nova. Ctrl+Clic salta la configuració del mapa
|
||||||
@@ -1845,7 +1858,7 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostra l
|
|||||||
STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostra la finestra de configuració
|
STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostra la finestra de configuració
|
||||||
STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostra la configuració de les extensions NewGRF
|
STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostra la configuració de les extensions NewGRF
|
||||||
STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Comprova si hi ha continguts nous i actualitzats per a descarregar
|
STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Comprova si hi ha continguts nous i actualitzats per a descarregar
|
||||||
STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostra els paràmetres de les IA/Script de la partida
|
STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostra els paràmetres dels scripts d'IA/partida
|
||||||
STR_INTRO_TOOLTIP_QUIT :{BLACK}Surt de l'OpenTTD.
|
STR_INTRO_TOOLTIP_QUIT :{BLACK}Surt de l'OpenTTD.
|
||||||
|
|
||||||
STR_INTRO_BASESET :{WHITE}Al joc de gràfics base seleccionat li falten {NUM} sprite{P "" s}.{}Si us plau, comproveu si hi ha actualitzacions disponibles.
|
STR_INTRO_BASESET :{WHITE}Al joc de gràfics base seleccionat li falten {NUM} sprite{P "" s}.{}Si us plau, comproveu si hi ha actualitzacions disponibles.
|
||||||
@@ -2251,7 +2264,7 @@ STR_NETWORK_SERVER_MESSAGE_GAME_UNPAUSED :Partida represa
|
|||||||
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :nombre de jugadors
|
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :nombre de jugadors
|
||||||
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :connectant clients
|
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :connectant clients
|
||||||
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :manual
|
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :manual
|
||||||
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :script de la partida
|
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :script de partida
|
||||||
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_LINK_GRAPH :s'està esperant que s'actualitzi el graf de distribució
|
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_LINK_GRAPH :s'està esperant que s'actualitzi el graf de distribució
|
||||||
############ End of leave-in-this-order
|
############ End of leave-in-this-order
|
||||||
STR_NETWORK_MESSAGE_CLIENT_LEAVING :deixant
|
STR_NETWORK_MESSAGE_CLIENT_LEAVING :deixant
|
||||||
@@ -2318,7 +2331,7 @@ STR_CONTENT_TYPE_SCENARIO :Escenari
|
|||||||
STR_CONTENT_TYPE_HEIGHTMAP :Mapa d'alçades
|
STR_CONTENT_TYPE_HEIGHTMAP :Mapa d'alçades
|
||||||
STR_CONTENT_TYPE_BASE_SOUNDS :Sons base
|
STR_CONTENT_TYPE_BASE_SOUNDS :Sons base
|
||||||
STR_CONTENT_TYPE_BASE_MUSIC :Música base
|
STR_CONTENT_TYPE_BASE_MUSIC :Música base
|
||||||
STR_CONTENT_TYPE_GAME_SCRIPT :Script de la partida
|
STR_CONTENT_TYPE_GAME_SCRIPT :Script de partida
|
||||||
STR_CONTENT_TYPE_GS_LIBRARY :Llibreria GS
|
STR_CONTENT_TYPE_GS_LIBRARY :Llibreria GS
|
||||||
|
|
||||||
# Content downloading progress window
|
# Content downloading progress window
|
||||||
@@ -2330,7 +2343,7 @@ STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES}{
|
|||||||
|
|
||||||
# Content downloading error messages
|
# Content downloading error messages
|
||||||
STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}No s'ha pogut connectar amb el servidor de continguts...
|
STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}No s'ha pogut connectar amb el servidor de continguts...
|
||||||
STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}Descàrrega fallida...
|
STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}La descàrrega ha fallat...
|
||||||
STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... connexió perduda
|
STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... connexió perduda
|
||||||
STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... no es pot escriure al fitxer
|
STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... no es pot escriure al fitxer
|
||||||
STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}No s'han pogut descomprimir els arxius descarregats
|
STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}No s'han pogut descomprimir els arxius descarregats
|
||||||
@@ -2340,6 +2353,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}L'OpenTT
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sí, descarregar els gràfics
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sí, descarregar els gràfics
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}No, surt de l'OpenTTD.
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}No, surt de l'OpenTTD.
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Ha fallat la descàrrega.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}La descàrrega de gràfics ha fallat.{}Si us plau, baixeu els gràfics manualment.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Surt de l'OpenTTD
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Opcions de transparència
|
STR_TRANSPARENCY_CAPTION :{WHITE}Opcions de transparència
|
||||||
@@ -2423,7 +2439,7 @@ STR_STATION_BUILD_NUMBER_OF_TRACKS :{BLACK}Nombre d
|
|||||||
STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Selecciona el nombre d'andanes de l'estació de tren
|
STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Selecciona el nombre d'andanes de l'estació de tren
|
||||||
STR_STATION_BUILD_PLATFORM_LENGTH :{BLACK}Mida de les andanes
|
STR_STATION_BUILD_PLATFORM_LENGTH :{BLACK}Mida de les andanes
|
||||||
STR_STATION_BUILD_PLATFORM_LENGTH_TOOLTIP :{BLACK}Selecciona la mida de les andanes de l'estació de tren
|
STR_STATION_BUILD_PLATFORM_LENGTH_TOOLTIP :{BLACK}Selecciona la mida de les andanes de l'estació de tren
|
||||||
STR_STATION_BUILD_DRAG_DROP :{BLACK}Arrossega i Deixa
|
STR_STATION_BUILD_DRAG_DROP :{BLACK}Arrossega i deixa
|
||||||
STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Construeix una estació arrossegant i deixant
|
STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Construeix una estació arrossegant i deixant
|
||||||
|
|
||||||
STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Selecciona un tipus de estació a mostrar
|
STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Selecciona un tipus de estació a mostrar
|
||||||
@@ -2577,60 +2593,60 @@ STR_PLANT_TREE_CAPTION :{WHITE}Arbres
|
|||||||
STR_PLANT_TREE_TOOLTIP :{BLACK}Selecciona el tipus d'arbre a plantar. Si la casella ja conté un arbre, s'afegiran més arbres d'altres espècies independentment de quin estigui seleccionat
|
STR_PLANT_TREE_TOOLTIP :{BLACK}Selecciona el tipus d'arbre a plantar. Si la casella ja conté un arbre, s'afegiran més arbres d'altres espècies independentment de quin estigui seleccionat
|
||||||
STR_TREES_RANDOM_TYPE :{BLACK}Arbres de tipus aleatori
|
STR_TREES_RANDOM_TYPE :{BLACK}Arbres de tipus aleatori
|
||||||
STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Situar arbres de tipus aleatori. Shift commuta construeix/mostra el cost estimat
|
STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Situar arbres de tipus aleatori. Shift commuta construeix/mostra el cost estimat
|
||||||
STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Arbres Aleatoris
|
STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Planta arbres
|
||||||
STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Planta arbres aleatòriament al paisatge
|
STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Planta arbres aleatòriament al paisatge
|
||||||
STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normal
|
STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normal
|
||||||
STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Planta un arbre a cada casella arrossegant el ratolí pel paisatge.
|
STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Planta un arbre a cada casella arrossegant el ratolí pel paisatge.
|
||||||
STR_TREES_MODE_FOREST_SM_BUTTON :Arbreda
|
STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Arbreda
|
||||||
STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Planta petits boscos arrossegant el ratolí pel paisatge.
|
STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Planta petits boscos arrossegant el ratolí pel paisatge.
|
||||||
STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Bosc
|
STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Bosc
|
||||||
STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Planta grans boscos arrossegant el ratolí pel paisatge.
|
STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Planta grans boscos arrossegant el ratolí pel paisatge.
|
||||||
|
|
||||||
# Land generation window (SE)
|
# Land generation window (SE)
|
||||||
STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Generador de Terreny
|
STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Generador de terreny
|
||||||
STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Situa àrees de roques al paisatge
|
STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Situa àrees de roques al paisatge
|
||||||
STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Defineix àrea de desert.{}Mantingues apretat Ctrl per treure'l
|
STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Defineix àrea de desert.{}Mantingues apretat Ctrl per treure'l
|
||||||
STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Augmenta la mida de l'àrea de terreny a rebaixar/elevar
|
STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Augmenta la mida de l'àrea de terreny a rebaixar/elevar
|
||||||
STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Disminueix la mida de l'àrea de terreny a rebaixar/elevar
|
STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Disminueix la mida de l'àrea de terreny a rebaixar/elevar
|
||||||
STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Genera un terreny aleatori
|
STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Genera un terreny aleatori
|
||||||
STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Crear nou escenari
|
STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Crea un escenari nou
|
||||||
STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Restableix paisatge
|
STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Restableix el paisatge
|
||||||
STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Treure totes les propietats pertanyents a companyies del mapa
|
STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Treu del mapa totes les propietats de les companyies.
|
||||||
|
|
||||||
STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Restableix Paisatge
|
STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Restableix Paisatge
|
||||||
STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Estàs segur que vols treure totes les propietats pertanyents a companyies?
|
STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Estàs segur que vols treure totes les propietats pertanyents a companyies?
|
||||||
|
|
||||||
# Town generation window (SE)
|
# Town generation window (SE)
|
||||||
STR_FOUND_TOWN_CAPTION :{WHITE}Generació de Poblacions
|
STR_FOUND_TOWN_CAPTION :{WHITE}Generació de poblacions
|
||||||
STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Nova Població
|
STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Població nova
|
||||||
STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Funda una nova població. Shift+Clic mostra el cost estimat
|
STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Funda una població. Shift+Clic en mostra el cost estimat.
|
||||||
STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Localitat Aleatòria
|
STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Crea una població aleatòria
|
||||||
STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Funda una població en un lloc aleatori
|
STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Funda una població en un lloc aleatori
|
||||||
STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Moltes poblacions aleatòries
|
STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Crea moltes poblacions aleatòries
|
||||||
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Omple el mapa amb poblacions situades aleatòriament
|
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Omple el mapa amb poblacions situades aleatòriament
|
||||||
|
|
||||||
STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Nom de la població:
|
STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Nom de la població nova:
|
||||||
STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Introdueix el nom de la població
|
STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Introdueix el nom de la població
|
||||||
STR_FOUND_TOWN_NAME_EDITOR_HELP :{BLACK}Clica per introduir el nom de la població
|
STR_FOUND_TOWN_NAME_EDITOR_HELP :{BLACK}Clica per introduir el nom de la població
|
||||||
STR_FOUND_TOWN_NAME_RANDOM_BUTTON :{BLACK}Nom aleatori
|
STR_FOUND_TOWN_NAME_RANDOM_BUTTON :{BLACK}Nom aleatori
|
||||||
STR_FOUND_TOWN_NAME_RANDOM_TOOLTIP :{BLACK}Genera un nom aleatori nou
|
STR_FOUND_TOWN_NAME_RANDOM_TOOLTIP :{BLACK}Genera un nom aleatori nou
|
||||||
|
|
||||||
STR_FOUND_TOWN_INITIAL_SIZE_TITLE :{YELLOW}Mida de població:
|
STR_FOUND_TOWN_INITIAL_SIZE_TITLE :{YELLOW}Mida de població:
|
||||||
STR_FOUND_TOWN_INITIAL_SIZE_SMALL_BUTTON :{BLACK}Petit
|
STR_FOUND_TOWN_INITIAL_SIZE_SMALL_BUTTON :{BLACK}Petita
|
||||||
STR_FOUND_TOWN_INITIAL_SIZE_MEDIUM_BUTTON :{BLACK}Mitjà
|
STR_FOUND_TOWN_INITIAL_SIZE_MEDIUM_BUTTON :{BLACK}Mitjana
|
||||||
STR_FOUND_TOWN_INITIAL_SIZE_LARGE_BUTTON :{BLACK}Gran
|
STR_FOUND_TOWN_INITIAL_SIZE_LARGE_BUTTON :{BLACK}Gran
|
||||||
STR_FOUND_TOWN_SIZE_RANDOM :{BLACK}Aleatori
|
STR_FOUND_TOWN_SIZE_RANDOM :{BLACK}Aleatòria
|
||||||
STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Selecciona la mida de la població
|
STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Selecciona la mida de la població
|
||||||
STR_FOUND_TOWN_CITY :{BLACK}Ciutat
|
STR_FOUND_TOWN_CITY :{BLACK}Ciutat
|
||||||
STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Les ciutats creixen més ràpid que els pobles{}Depenent de la configuració, són més grans quan es funden
|
STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Les ciutats creixen més ràpid que els pobles{}Depenent de la configuració, són més grans quan es funden
|
||||||
|
|
||||||
STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Disposició de les carreteres de la població:
|
STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Disposició de les carreteres de la població:
|
||||||
STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Selecciona la disposició de les carreteres utilitzades per a aquesta població
|
STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Selecciona la disposició de les carreteres utilitzades per a aquesta població
|
||||||
STR_FOUND_TOWN_SELECT_LAYOUT_ORIGINAL :{BLACK}Original
|
STR_FOUND_TOWN_SELECT_LAYOUT_ORIGINAL :{BLACK}Distribució original
|
||||||
STR_FOUND_TOWN_SELECT_LAYOUT_BETTER_ROADS :{BLACK}Millors carreteres
|
STR_FOUND_TOWN_SELECT_LAYOUT_BETTER_ROADS :{BLACK}Distribució millorada
|
||||||
STR_FOUND_TOWN_SELECT_LAYOUT_2X2_GRID :{BLACK}graella 2x2
|
STR_FOUND_TOWN_SELECT_LAYOUT_2X2_GRID :{BLACK}Graella 2x2
|
||||||
STR_FOUND_TOWN_SELECT_LAYOUT_3X3_GRID :{BLACK}graella 3x3
|
STR_FOUND_TOWN_SELECT_LAYOUT_3X3_GRID :{BLACK}Graella 3x3
|
||||||
STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Aleatori
|
STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Aleatòria
|
||||||
|
|
||||||
# Fund new industry window
|
# Fund new industry window
|
||||||
STR_FUND_INDUSTRY_CAPTION :{WHITE}Finança una nova indústria
|
STR_FUND_INDUSTRY_CAPTION :{WHITE}Finança una nova indústria
|
||||||
@@ -2676,7 +2692,7 @@ STR_LAND_AREA_INFORMATION_OWNER :{BLACK}Propieta
|
|||||||
STR_LAND_AREA_INFORMATION_ROAD_OWNER :{BLACK}Propietari de la carretera: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_ROAD_OWNER :{BLACK}Propietari de la carretera: {LTBLUE}{STRING}
|
||||||
STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propietari del rail del tramvia: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propietari del rail del tramvia: {LTBLUE}{STRING}
|
||||||
STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Propietari del rail: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Propietari del rail: {LTBLUE}{STRING}
|
||||||
STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Autoritat Local: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Autoritat local: {LTBLUE}{STRING}
|
||||||
STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Cap
|
STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Cap
|
||||||
STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Coordenades: {LTBLUE}{NUM} x {NUM} x {NUM} ({STRING})
|
STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Coordenades: {LTBLUE}{NUM} x {NUM} x {NUM} ({STRING})
|
||||||
STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Construït: {LTBLUE}{DATE_LONG}
|
STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Construït: {LTBLUE}{DATE_LONG}
|
||||||
@@ -2890,12 +2906,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nombre de poblacions:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nombre de poblacions:
|
||||||
STR_MAPGEN_DATE :{BLACK}Data:
|
STR_MAPGEN_DATE :{BLACK}Data:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nombre d'indústries:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nombre d'indústries:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Alçada màxima del mapa:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Alçada del cim més alt:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Augmenta l'alçada màxima del terreny en el mapa en una unitat
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Augmenta l'alçada màxima o l'alçada màxima dels cims en una unitat
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Disminueix l'alçada màxima del mapa en una unitat
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Redueix l'alçada màxima o l'alçada màxima dels cims en una unitat
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Alçada dels estatges amb neu:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Proporció de terreny nevat:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mou els estatges amb neu un pas amunt
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Augmenta un 10 % la proporció de terreny nevat
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mou els estatges amb neu un pas avall
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Redueix un 10 % la proporció de terreny nevat
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}{NBSP}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Proporció de terreny desèrtic:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Augmenta un 10 % la proporció de terreny desèrtic
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Redueix un 10 % la proporció de terreny desèrtic
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}{NBSP}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generació de terrenys:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generació de terrenys:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipus de terreny:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipus de terreny:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivell de mar:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivell de mar:
|
||||||
@@ -2921,8 +2942,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nom del
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Mida:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Mida:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Canvia l'alçada màxima del mapa
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Alçada desitjada dels cims
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Canvia l'alçada d'inici d'estatges amb neu
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Alçada màxima dels cims
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Percentatge de terreny amb neu
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Percentatge de terreny desèrtic
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Canviar l'any inicial
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Canviar l'any inicial
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -3362,24 +3385,24 @@ STR_FINANCES_CAPTION :{WHITE}Finances
|
|||||||
STR_FINANCES_EXPENDITURE_INCOME_TITLE :{WHITE}Despeses/Ingressos
|
STR_FINANCES_EXPENDITURE_INCOME_TITLE :{WHITE}Despeses/Ingressos
|
||||||
STR_FINANCES_YEAR :{WHITE}{NUM}
|
STR_FINANCES_YEAR :{WHITE}{NUM}
|
||||||
STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Construcció
|
STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Construcció
|
||||||
STR_FINANCES_SECTION_NEW_VEHICLES :{GOLD}Nous Vehicles
|
STR_FINANCES_SECTION_NEW_VEHICLES :{GOLD}Compra de vehicles
|
||||||
STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Desp. de Circ. de Trens
|
STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Desp. de circ. de trens
|
||||||
STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Desp. de Circ. de Vehicles
|
STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Desp. de circ. de vehicles
|
||||||
STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Desp. de Circ. d'Avions
|
STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Desp. de circ. d'aeronaus
|
||||||
STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Desp. de Circ. de Vaixells
|
STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Desp. de circ. de vaixells
|
||||||
STR_FINANCES_SECTION_PROPERTY_MAINTENANCE :{GOLD}Manteniment de Propietats
|
STR_FINANCES_SECTION_PROPERTY_MAINTENANCE :{GOLD}Manteniment de propietats
|
||||||
STR_FINANCES_SECTION_TRAIN_INCOME :{GOLD}Ingressos de Trens
|
STR_FINANCES_SECTION_TRAIN_INCOME :{GOLD}Ingressos de trens
|
||||||
STR_FINANCES_SECTION_ROAD_VEHICLE_INCOME :{GOLD}Ingressos de Vehicles
|
STR_FINANCES_SECTION_ROAD_VEHICLE_INCOME :{GOLD}Ingressos de vehicles
|
||||||
STR_FINANCES_SECTION_AIRCRAFT_INCOME :{GOLD}Ingressos d'Avions
|
STR_FINANCES_SECTION_AIRCRAFT_INCOME :{GOLD}Ingressos d'avions
|
||||||
STR_FINANCES_SECTION_SHIP_INCOME :{GOLD}Ingressos de Vaixells
|
STR_FINANCES_SECTION_SHIP_INCOME :{GOLD}Ingressos de vaixells
|
||||||
STR_FINANCES_SECTION_LOAN_INTEREST :{GOLD}Interessos del Préstec
|
STR_FINANCES_SECTION_LOAN_INTEREST :{GOLD}Interessos del préstec
|
||||||
STR_FINANCES_SECTION_OTHER :{GOLD}Altres
|
STR_FINANCES_SECTION_OTHER :{GOLD}Altres
|
||||||
STR_FINANCES_NEGATIVE_INCOME :{BLACK}-{CURRENCY_LONG}
|
STR_FINANCES_NEGATIVE_INCOME :{BLACK}-{CURRENCY_LONG}
|
||||||
STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURRENCY_LONG}
|
STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURRENCY_LONG}
|
||||||
STR_FINANCES_TOTAL_CAPTION :{WHITE}Total:
|
STR_FINANCES_TOTAL_CAPTION :{WHITE}Total:
|
||||||
STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Balanç del Banc
|
STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Balanç bancari
|
||||||
STR_FINANCES_LOAN_TITLE :{WHITE}Préstec
|
STR_FINANCES_LOAN_TITLE :{WHITE}Préstec
|
||||||
STR_FINANCES_MAX_LOAN :{WHITE}Préstec Màxim: {BLACK}{CURRENCY_LONG}
|
STR_FINANCES_MAX_LOAN :{WHITE}Préstec màxim: {BLACK}{CURRENCY_LONG}
|
||||||
STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG}
|
STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG}
|
||||||
STR_FINANCES_BORROW_BUTTON :{BLACK}Demana {CURRENCY_LONG}
|
STR_FINANCES_BORROW_BUTTON :{BLACK}Demana {CURRENCY_LONG}
|
||||||
STR_FINANCES_BORROW_TOOLTIP :{BLACK}Augmenta l'import del préstec Ctrl+Clic per demanar tants diners com sigui possible
|
STR_FINANCES_BORROW_TOOLTIP :{BLACK}Augmenta l'import del préstec Ctrl+Clic per demanar tants diners com sigui possible
|
||||||
@@ -3534,7 +3557,7 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Avions desagrup
|
|||||||
|
|
||||||
STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA})
|
STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA})
|
||||||
|
|
||||||
STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grups - Clica en un grup per llistar tots els vehicles d'aquest grup. Arrossega i solta per a canviar-ne la jerarquia.
|
STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grups - Clica en un grup per llistar tots els vehicles d'aquest grup. Arrossega i deixa per a canviar-ne la jerarquia.
|
||||||
STR_GROUP_CREATE_TOOLTIP :{BLACK}Clica per crear un grup
|
STR_GROUP_CREATE_TOOLTIP :{BLACK}Clica per crear un grup
|
||||||
STR_GROUP_DELETE_TOOLTIP :{BLACK}Elimina el grup seleccionat
|
STR_GROUP_DELETE_TOOLTIP :{BLACK}Elimina el grup seleccionat
|
||||||
STR_GROUP_RENAME_TOOLTIP :{BLACK}Canvia el nom del grup seleccionat
|
STR_GROUP_RENAME_TOOLTIP :{BLACK}Canvia el nom del grup seleccionat
|
||||||
@@ -3555,19 +3578,19 @@ STR_GROUP_OCCUPANCY :Ocupació actua
|
|||||||
STR_GROUP_OCCUPANCY_VALUE :{NUM}%
|
STR_GROUP_OCCUPANCY_VALUE :{NUM}%
|
||||||
|
|
||||||
# Build vehicle window
|
# Build vehicle window
|
||||||
STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Compra de nous vehicles ferroviaris
|
STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Compra de vehicles ferroviaris
|
||||||
STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Compra de nous vehicles ferroviaris per vies electrificades
|
STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Compra de vehicles ferroviaris per vies electrificades
|
||||||
STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Compra de nous vehicles monorail
|
STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Compra de vehicles monorail
|
||||||
STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Compra de nous vehicles Maglev
|
STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Compra de vehicles Maglev
|
||||||
|
|
||||||
STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Compra de nous vehicles de carretera
|
STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Compra de nous vehicles de carretera
|
||||||
STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION :Nous vehicles de tramvia
|
STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION :Compra de vehicles de tramvia
|
||||||
|
|
||||||
############ range for vehicle availability starts
|
############ range for vehicle availability starts
|
||||||
STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Compra de nous vehicles sobre vies
|
STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Compra de vehicles sobre vies
|
||||||
STR_BUY_VEHICLE_ROAD_VEHICLE_ALL_CAPTION :Automòbils nous
|
STR_BUY_VEHICLE_ROAD_VEHICLE_ALL_CAPTION :Compra automòbils
|
||||||
STR_BUY_VEHICLE_SHIP_CAPTION :Compra de nous vaixells
|
STR_BUY_VEHICLE_SHIP_CAPTION :Compra de vaixells
|
||||||
STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Compra de noves aeronaus
|
STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Compra d'aeronaus
|
||||||
############ range for vehicle availability ends
|
############ range for vehicle availability ends
|
||||||
|
|
||||||
STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Cost: {GOLD}{CURRENCY_LONG}{BLACK} Pes: {GOLD}{WEIGHT_SHORT}
|
STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Cost: {GOLD}{CURRENCY_LONG}{BLACK} Pes: {GOLD}{WEIGHT_SHORT}
|
||||||
@@ -3685,20 +3708,20 @@ STR_DEPOT_AUTOREPLACE_ROAD_VEHICLE_TOOLTIP :{BLACK}Autosubs
|
|||||||
STR_DEPOT_AUTOREPLACE_SHIP_TOOLTIP :{BLACK}Autosubstitueix tots els vaixells de la drassana
|
STR_DEPOT_AUTOREPLACE_SHIP_TOOLTIP :{BLACK}Autosubstitueix tots els vaixells de la drassana
|
||||||
STR_DEPOT_AUTOREPLACE_AIRCRAFT_TOOLTIP :{BLACK}Autosubstitueix tots els avions de l'hangar
|
STR_DEPOT_AUTOREPLACE_AIRCRAFT_TOOLTIP :{BLACK}Autosubstitueix tots els avions de l'hangar
|
||||||
|
|
||||||
STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Nous Vehicles
|
STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Compra vehicles
|
||||||
STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_BUTTON :{BLACK}Nous Vehicles
|
STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_BUTTON :{BLACK}Compra vehicles
|
||||||
STR_DEPOT_SHIP_NEW_VEHICLES_BUTTON :{BLACK}Nous Vaixells
|
STR_DEPOT_SHIP_NEW_VEHICLES_BUTTON :{BLACK}Compra vaixells
|
||||||
STR_DEPOT_AIRCRAFT_NEW_VEHICLES_BUTTON :{BLACK}Nou Avió
|
STR_DEPOT_AIRCRAFT_NEW_VEHICLES_BUTTON :{BLACK}Compra avions
|
||||||
|
|
||||||
STR_DEPOT_TRAIN_NEW_VEHICLES_TOOLTIP :{BLACK}Compra un nou vehicle ferroviari
|
STR_DEPOT_TRAIN_NEW_VEHICLES_TOOLTIP :{BLACK}Compra vehicles ferroviaris.
|
||||||
STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_TOOLTIP :{BLACK}Compra un nou automòbil
|
STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_TOOLTIP :{BLACK}Compra automòbils nous.
|
||||||
STR_DEPOT_SHIP_NEW_VEHICLES_TOOLTIP :{BLACK}Compra un nou vaixell
|
STR_DEPOT_SHIP_NEW_VEHICLES_TOOLTIP :{BLACK}Compra vaixells nous.
|
||||||
STR_DEPOT_AIRCRAFT_NEW_VEHICLES_TOOLTIP :{BLACK}Compra un nou avió
|
STR_DEPOT_AIRCRAFT_NEW_VEHICLES_TOOLTIP :{BLACK}Compra avions nous.
|
||||||
|
|
||||||
STR_DEPOT_CLONE_TRAIN :{BLACK}Clona Tren
|
STR_DEPOT_CLONE_TRAIN :{BLACK}Clona un tren
|
||||||
STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Clona Vehicle
|
STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Clona un vehicle
|
||||||
STR_DEPOT_CLONE_SHIP :{BLACK}Clona Vaixell
|
STR_DEPOT_CLONE_SHIP :{BLACK}Clona un vaixell
|
||||||
STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Clona Avió
|
STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Clona aeronau
|
||||||
|
|
||||||
STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Això comprarà una còpia del tren inclosos tots els vagons. Clica aquest botó i després en un tren dins o fora de les cotxeres. Control+Clic compartirà les ordres. Shift+Clic mostra el cost estimat sense comprar-lo
|
STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Això comprarà una còpia del tren inclosos tots els vagons. Clica aquest botó i després en un tren dins o fora de les cotxeres. Control+Clic compartirà les ordres. Shift+Clic mostra el cost estimat sense comprar-lo
|
||||||
STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Això comprarà una còpia del vehicle. Clica aquest botó i després en un vehicle dins o fora de les cotxeres. Control+Clic compartirà les ordres. Shift+Clic mostra el cost estimat sense comprar-lo
|
STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Això comprarà una còpia del vehicle. Clica aquest botó i després en un vehicle dins o fora de les cotxeres. Control+Clic compartirà les ordres. Shift+Clic mostra el cost estimat sense comprar-lo
|
||||||
@@ -4203,11 +4226,11 @@ STR_AI_GAME_SCRIPT :{BLACK}Script d
|
|||||||
STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Mostra el registre de l'script de partida.
|
STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Mostra el registre de l'script de partida.
|
||||||
|
|
||||||
STR_ERROR_AI_NO_AI_FOUND :No s'ha trobat una IA adequada per carregar.{}Aquesta IA és una IA falsa i no farà res.{}Pots descarregar diverses IA via el sistema de "Contingut en línia"
|
STR_ERROR_AI_NO_AI_FOUND :No s'ha trobat una IA adequada per carregar.{}Aquesta IA és una IA falsa i no farà res.{}Pots descarregar diverses IA via el sistema de "Contingut en línia"
|
||||||
STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Un dels scripts executant-se s'ha penjat. Si us plau, informeu-ne a l'autor de l'script amb una captura de pantalla de la finestra de depuració IA/script de la partida.
|
STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Un dels scripts que s'estava executant ha fallat. Si us plau, informeu l'autor de l'script amb una captura de pantalla de la finestra de depuració de l'script d'IA/partida.
|
||||||
STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}La finestra de depuració de les IA i l'script de la partida només està disponible al servidor.
|
STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}La finestra de depuració de les IA i l'script de partida només està disponible al servidor.
|
||||||
|
|
||||||
# AI configuration window
|
# AI configuration window
|
||||||
STR_AI_CONFIG_CAPTION :{WHITE}Configuració de la IA/script de partida
|
STR_AI_CONFIG_CAPTION :{WHITE}Configuració dels scripts de les IA/partida
|
||||||
STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Aquest és l'script que s'usarà a la propera partida.
|
STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Aquest és l'script que s'usarà a la propera partida.
|
||||||
STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Aquesta llista conté les IA que es carregaran a la propera partida.
|
STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Aquesta llista conté les IA que es carregaran a la propera partida.
|
||||||
STR_AI_CONFIG_HUMAN_PLAYER :Jugador humà
|
STR_AI_CONFIG_HUMAN_PLAYER :Jugador humà
|
||||||
@@ -4339,6 +4362,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Només s
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Captura de pantalla enorme
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Captura de pantalla enorme
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}La captura de pantalla tindrà una resolució de {COMMA} x {COMMA} píxels. Es tardarà una estona a fer la captura. Vols continuar?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}La captura de pantalla tindrà una resolució de {COMMA} x {COMMA} píxels. Es tardarà una estona a fer la captura. Vols continuar?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Mapa d'alçades desat correctament amb el nom «{STRING}». El cim més alt té alçada {NUM}.
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Captura de pantalla desada correctament com a '{STRING}'
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Captura de pantalla desada correctament com a '{STRING}'
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Error en la captura de pantalla!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Error en la captura de pantalla!
|
||||||
|
|
||||||
@@ -4665,7 +4689,7 @@ STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vehi
|
|||||||
STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL :{WHITE}No hi haurà cap vehicle disponible
|
STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL :{WHITE}No hi haurà cap vehicle disponible
|
||||||
STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Canvia la teva configuració dels NewGRF
|
STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Canvia la teva configuració dels NewGRF
|
||||||
STR_ERROR_NO_VEHICLES_AVAILABLE_YET :{WHITE}Encara no hi ha vehicles disponibles
|
STR_ERROR_NO_VEHICLES_AVAILABLE_YET :{WHITE}Encara no hi ha vehicles disponibles
|
||||||
STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}Iniciar una nova partida després de {DATE_SHORT} o usar un NewGRF que proporcioni vehicles primerencs
|
STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}Inicieu una partida nova després de {DATE_SHORT} o useu un NewGRF que proporcioni vehicles primerencs.
|
||||||
|
|
||||||
# Specific vehicle errors
|
# Specific vehicle errors
|
||||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}No pots fer que un tren passi d'una senyal amb perill...
|
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}No pots fer que un tren passi d'una senyal amb perill...
|
||||||
|
|||||||
@@ -1086,6 +1086,7 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Odaberi
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :ostalo
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :ostalo
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Veličina sučelja
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Veličina sučelja
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Odaberite koju ćete veličinu elementa sučelja koristiti
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Odaberite koju ćete veličinu elementa sučelja koristiti
|
||||||
|
|
||||||
@@ -1277,8 +1278,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Uključivanje n
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Stav gradske uprave prema restrukturiranju područja: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Stav gradske uprave prema restrukturiranju područja: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Odaberi koliko buka i ekološka šteta utječu na gradsku ocjenu pojedine tvrtke i na daljnja građevinska djelovanja u njihovim područjima
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Odaberi koliko buka i ekološka šteta utječu na gradsku ocjenu pojedine tvrtke i na daljnja građevinska djelovanja u njihovim područjima
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Najveća visina karte: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Postavi najveću dopuštenu visinu planina na karti
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nije moguće postaviti najveću visinu karte na ovu vrijednost. Barem jedna planina na karti je viša.
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nije moguće postaviti najveću visinu karte na ovu vrijednost. Barem jedna planina na karti je viša.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Dopusti uređivanje krajolika ispod građevina, tračnica, itd.: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Dopusti uređivanje krajolika ispod građevina, tračnica, itd.: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dopusti uređivanje krajolika ispod građevina i pruga bez njihovog uklanjanja
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dopusti uređivanje krajolika ispod građevina i pruga bez njihovog uklanjanja
|
||||||
@@ -2913,12 +2912,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Broj gradova:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Broj gradova:
|
||||||
STR_MAPGEN_DATE :{BLACK}Datum:
|
STR_MAPGEN_DATE :{BLACK}Datum:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Broj industrija:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Broj industrija:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Najveća visina karte:
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Povećaj za jedan najveću visinu planina na karti
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Smanji za jedan najveću visinu planina na karti
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Visina linije snijega
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Pomakni visinu linije snijega za jedan gore
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Pomakni visinu linije snijega za jedan dolje
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Izrađivač zemljišta:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Izrađivač zemljišta:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Vrsta terena:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Vrsta terena:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Razina mora:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Razina mora:
|
||||||
@@ -2944,8 +2937,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Ime visi
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Veličina:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Veličina:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Promijeni najveću visinu karte
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Promijeni visinu linije snijega
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Promijeni početnu godinu
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Promijeni početnu godinu
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -1034,6 +1034,7 @@ STR_GAME_OPTIONS_CURRENCY_CNY :Čínský renmi
|
|||||||
STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongský dolar (HKD)
|
STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongský dolar (HKD)
|
||||||
STR_GAME_OPTIONS_CURRENCY_INR :Indická rupie (INR)
|
STR_GAME_OPTIONS_CURRENCY_INR :Indická rupie (INR)
|
||||||
STR_GAME_OPTIONS_CURRENCY_IDR :Indonéská rupie (IDR)
|
STR_GAME_OPTIONS_CURRENCY_IDR :Indonéská rupie (IDR)
|
||||||
|
STR_GAME_OPTIONS_CURRENCY_MYR :Malajsijský Ringgit (MYR)
|
||||||
############ end of currency region
|
############ end of currency region
|
||||||
|
|
||||||
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vlevo
|
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vlevo
|
||||||
@@ -1086,6 +1087,11 @@ STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Zaškrtn
|
|||||||
STR_GAME_OPTIONS_RESOLUTION :{BLACK}Rozlišení obrazovky
|
STR_GAME_OPTIONS_RESOLUTION :{BLACK}Rozlišení obrazovky
|
||||||
STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Zvolit rozlišení obrazovky
|
STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Zvolit rozlišení obrazovky
|
||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :jiné
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :jiné
|
||||||
|
STR_GAME_OPTIONS_RESOLUTION_ITEM :{NUM}x{NUM}
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Hardwarová akcelerace
|
||||||
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Zaškrtni, pokud chceš OpenTTD povolit použití hardwarové akcelerace. Změněné nastavení bude aplikováno po restartu hry
|
||||||
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Nastavení vstoupí v platnost pouze po restartu hry
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Velikost rozhraní
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Velikost rozhraní
|
||||||
@@ -1104,7 +1110,13 @@ STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Běžné
|
|||||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná velikost
|
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná velikost
|
||||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Čtyřnásobná velikost
|
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Čtyřnásobná velikost
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_GRAPHICS :{BLACK}Grafiky
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE :{BLACK}Obnovovací frekvence obrazovky
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_TOOLTIP :{BLACK}Zvolit obnovovací frekvenci obrazovky
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_OTHER :ostatní
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_ITEM :{NUM}Hz
|
||||||
|
STR_GAME_OPTIONS_REFRESH_RATE_WARNING :{WHITE}Obnovovací frekvence vyšší než 60Hz může mít dopad výkon.
|
||||||
|
|
||||||
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Základní sada grafiky
|
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Základní sada grafiky
|
||||||
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Zvol základní sadu grafiky
|
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Zvol základní sadu grafiky
|
||||||
@@ -1200,6 +1212,8 @@ STR_TERRAIN_TYPE_FLAT :plochá
|
|||||||
STR_TERRAIN_TYPE_HILLY :kopcovitá
|
STR_TERRAIN_TYPE_HILLY :kopcovitá
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :hornatá
|
STR_TERRAIN_TYPE_MOUNTAINOUS :hornatá
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpské
|
STR_TERRAIN_TYPE_ALPINIST :Alpské
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Vlastní výška
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Vlastní výška ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :nezaujatý
|
STR_CITY_APPROVAL_PERMISSIVE :nezaujatý
|
||||||
STR_CITY_APPROVAL_TOLERANT :tolerantní
|
STR_CITY_APPROVAL_TOLERANT :tolerantní
|
||||||
@@ -1281,9 +1295,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Katastrofy, kte
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Postoj městské rady k úpravám v oblasti: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Postoj městské rady k úpravám v oblasti: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vyber jak moc hluku a změn prostředí poškozuje hodnocení společnosti u města a tak dále komplikuje budoucí stavbu na jeho území
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vyber jak moc hluku a změn prostředí poškozuje hodnocení společnosti u města a tak dále komplikuje budoucí stavbu na jeho území
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximální výška mapy: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Maximální výška mapy: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Nastavit maximální povolenou výšku hor na mapě
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Nastav maximální výšku terénu. S volbou "(automaticky)" bude po vygenerování terénu vybrána dobrá hodnota.
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nemůžete změnit maximální výšku mapy na tuto hodnotu. Alespoň jedna hora na mapě je vyšší.
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(automaticky)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nelze změnit maximální výšku mapy na tuto hodnotu. Alespoň jedna hora na mapě je vyšší.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Povolit srovnání terénu pod budovami, kolejemi atd. (autoslope): {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Povolit srovnání terénu pod budovami, kolejemi atd. (autoslope): {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Povoluje změnu terénu pod budovami a tratěmi bez jejich odstranění
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Povoluje změnu terénu pod budovami a tratěmi bez jejich odstranění
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Povolit u oblasti pokrytí realističtější velikost: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Povolit u oblasti pokrytí realističtější velikost: {STRING}
|
||||||
@@ -1427,7 +1443,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Nastavuje množ
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximální vzdálenost ropného průmyslu od okraje mapy: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximální vzdálenost ropného průmyslu od okraje mapy: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Omezení, jak daleko od okrajů mapy mohou být postaveny rafinerie a ropné vrty. Je-li při okraji mapy voda, toto omezení zajišťuje, že se rafinerie a ropné vrty vyskytují poblíž pobřeží. Na mapách větších než 256 polí je toto omezení úměrně přizpůsobeno.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Omezení, jak daleko od okrajů mapy mohou být postaveny rafinerie a ropné vrty. Je-li při okraji mapy voda, toto omezení zajišťuje, že se rafinerie a ropné vrty vyskytují poblíž pobřeží. Na mapách větších než 256 polí je toto omezení úměrně přizpůsobeno.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Výška sněhové čáry: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Výška sněhové čáry: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Určuje o jaké výšky se vyskytuje sníh u subarktického klimatu. Sníh rovněž ovlivňuje vytváření průmyslu a požadavky na růst měst
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Určuje od jaké výšky se sníh vyskytuje v subarktickém klimatu. Sníh ovlivňuje vytváření průmyslu a požadavky na růst měst. Sněžná čára může být upravena jen v editoru scénáře. V ostatních případech bývá počítána pomocí "pokrytí sněhem"
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Pokrytí sněhem: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Určuje přibližné množství sněhu v subarktické krajině. Sníh rovněž ovlivňuje generování průmyslu a požadavky na růst měst. Použito pouze při generování mapy. Terén těsně nad úrovní výšky moře zůstane bez sněhu.
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Pokrytí pouštěmi: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Určuje přibližné množství pouště v tropické krajině. Pouště rovněž ovlivňují generování průmyslu. Použito pouze při generování mapy.
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Členitost krajiny: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Členitost krajiny: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Pouze TerraGenesis) Zvol množství hor: Rovinatý terén má méně hor, které jsou však rozlehlejší. Členitý terén má mnoho hor, u kterých se může zdát, že se opakují
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Pouze TerraGenesis) Zvol množství hor: Rovinatý terén má méně hor, které jsou však rozlehlejší. Členitý terén má mnoho hor, u kterých se může zdát, že se opakují
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :velmi rovná
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :velmi rovná
|
||||||
@@ -1543,6 +1565,10 @@ STR_CONFIG_SETTING_EXPENSES_LAYOUT :Zobrazovat odd
|
|||||||
STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Určuje rozložení okna s firemními výdaji
|
STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Určuje rozložení okna s firemními výdaji
|
||||||
STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Automaticky odstraňovat návěstidla během výstavby železnice: {STRING}
|
STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Automaticky odstraňovat návěstidla během výstavby železnice: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Automaticky odstraňovat návěstidla, pokud překáží během výstavby železnice. Poznámka: Může způsobit kolize vlaků.
|
STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Automaticky odstraňovat návěstidla, pokud překáží během výstavby železnice. Poznámka: Může způsobit kolize vlaků.
|
||||||
|
STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :Rychlostní omezení zrychleného běhu hry: {STRING}
|
||||||
|
STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Omez jak rychle hra beží při zrychleném běhu. 0 = neomezeno (tak rychle, jak tvůj počítač dovolí). Hodnoty pod 100% zpomalí hru. Horní limit záleží na specifikacích tvého počítače a může se v každé hře lišit.
|
||||||
|
STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% normální rychlosti hry
|
||||||
|
STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :Bez omezení (tak rychle, jak jen tvůj počítač dovolí)
|
||||||
|
|
||||||
STR_CONFIG_SETTING_SOUND_TICKER :Noviny - shrnutí: {STRING}
|
STR_CONFIG_SETTING_SOUND_TICKER :Noviny - shrnutí: {STRING}
|
||||||
STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Přehrávat zvuk při zobrazení shrnutí zprávy
|
STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Přehrávat zvuk při zobrazení shrnutí zprávy
|
||||||
@@ -1733,12 +1759,17 @@ STR_CONFIG_SETTING_ZOOM_MIN :Maximální úr
|
|||||||
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Maximální přiblížení pohledu. Nastavení většího přiblížení má větší nároky na paměť počítače
|
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Maximální přiblížení pohledu. Nastavení většího přiblížení má větší nároky na paměť počítače
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX :Maximální úroveň oddálení: {STRING}
|
STR_CONFIG_SETTING_ZOOM_MAX :Maximální úroveň oddálení: {STRING}
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Maximální oddálení pohledu. Příliš velké nastavení může způsobovat velké odezvy
|
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Maximální oddálení pohledu. Příliš velké nastavení může způsobovat velké odezvy
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Nejvyšší dovolené rozlišení spritů: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Omezit maximální dovolené rozlišení spritů. Omezení rozlišení spritů zabrání použití grafik ve vysokém rozlišení, jsou-li dostupné. Tímto lze docílit jednotného vzhledu hry, pokud je použit mix GRF souborů s grafikami ve vysokém rozlišení, i bez nich.
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normální
|
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normální
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_NORMAL :1x
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH :Rychlost růstu měst: {STRING}
|
STR_CONFIG_SETTING_TOWN_GROWTH :Rychlost růstu měst: {STRING}
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Rychlost růstu měst
|
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Rychlost růstu měst
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :nulová
|
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :nulová
|
||||||
@@ -1873,6 +1904,8 @@ STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Nedostat
|
|||||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Alokování {BYTES} grafické mezipaměti selhalo. Grafická mezipaměť byla zredukována na {BYTES}. To sníží výkon OpenTTD. Pro snížení paměťových nároků můžeš zkusit vypnout 32bpp grafiku a/nebo úrovně přiblížení
|
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Alokování {BYTES} grafické mezipaměti selhalo. Grafická mezipaměť byla zredukována na {BYTES}. To sníží výkon OpenTTD. Pro snížení paměťových nároků můžeš zkusit vypnout 32bpp grafiku a/nebo úrovně přiblížení
|
||||||
|
|
||||||
# Video initalization errors
|
# Video initalization errors
|
||||||
|
STR_VIDEO_DRIVER_ERROR :{WHITE}Chyba v nastavení zobrazení...
|
||||||
|
STR_VIDEO_DRIVER_ERROR_NO_HARDWARE_ACCELERATION :{WHITE}... nebyla nalezené kompatibilní grafická karta. Hardwarová akcelerace zakázana
|
||||||
|
|
||||||
# Intro window
|
# Intro window
|
||||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||||
@@ -2400,10 +2433,13 @@ STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... do s
|
|||||||
STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Nešlo rozbalit stažený soubor
|
STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Nešlo rozbalit stažený soubor
|
||||||
|
|
||||||
STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Chybějící grafika
|
STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Chybějící grafika
|
||||||
STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD vyžaduje grafiky, které nebyly nalezeny. Povolíte OpenTTD stáhnout a nainstalovat tyto grafiky?
|
STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD vyžaduje grafiky, které nebyly nalezeny. Povolíš OpenTTD stáhnout a nainstalovat tyto grafiky?
|
||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ano, stáhnout grafiky
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ano, stáhnout grafiky
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ne, ukončit OpenTTD
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ne, ukončit OpenTTD
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Stahování selhalo
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}Stahování grafik selhalo.{}Stáhněte, prosím, grafiky ručně.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Opustit OpenTTD
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Nastavení průhlednosti
|
STR_TRANSPARENCY_CAPTION :{WHITE}Nastavení průhlednosti
|
||||||
@@ -2960,12 +2996,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Množství měst:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Množství měst:
|
||||||
STR_MAPGEN_DATE :{BLACK}Datum:
|
STR_MAPGEN_DATE :{BLACK}Datum:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Množství průmyslu:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Množství průmyslu:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximální výška mapy:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Nejvyšší vrchol:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Zvýšit maximální výšku hor na mapě o jeden stupeň
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Zvýšit maximální možnou výšku nejvyššího vrcholu na mapě o jednu úroveň
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Snížit maximální výšku hor na mapě o jeden stupeň
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Snížit maximální možnou výšku nejvyššího vrcholu na mapě o jednu úroveň
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Výška sněžné čáry:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Pokrytí sněhem:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Zvýšit sněžnou čáru o jednu úroveň
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Zvýšit pokrytí sněhem o deset procent
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Snížit sněžnou čáru o jednu úroveň
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Snížit pokrytí sněhem o deset procent
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Pokrytí pouštěmi:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Zvětšit pokrytí pouštěmi o deset procent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Zmenšit pokrytí pouštěmi o deset procent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generátor krajiny:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generátor krajiny:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Typ krajiny:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Typ krajiny:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Četnost jezer:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Četnost jezer:
|
||||||
@@ -2991,8 +3032,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Jméno v
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Velikost:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Velikost:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Změnit maximální výšku mapy
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Cílová výška vrcholu
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Změnit výšku sněžne čáry
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Nejvyšší vrchol
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Pokrytí sněhem (v %)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Pokrytí pouštěmi (v %)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Změnit počáteční rok
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Změnit počáteční rok
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -3184,6 +3227,7 @@ STR_NEWGRF_BUGGY :{WHITE}Grafika
|
|||||||
STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Informace o nákladu/možnosti přestavby pro '{1:ENGINE}' se po nákupu změnily. To může způsobit problémy při automatické výměně vozidel
|
STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Informace o nákladu/možnosti přestavby pro '{1:ENGINE}' se po nákupu změnily. To může způsobit problémy při automatické výměně vozidel
|
||||||
STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}Grafika '{1:STRING}' způsobila nekonečnou smyčku v callbacku produkce průmyslu
|
STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}Grafika '{1:STRING}' způsobila nekonečnou smyčku v callbacku produkce průmyslu
|
||||||
STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Funkce {1:HEX} vrátila neznámý / neplatný výsledek {2:HEX}
|
STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Funkce {1:HEX} vrátila neznámý / neplatný výsledek {2:HEX}
|
||||||
|
STR_NEWGRF_BUGGY_INVALID_CARGO_PRODUCTION_CALLBACK :{WHITE}'{1:STRING}' vrátil neplatný typ nákladu ve zpětném volání produkce na {2:HEX}
|
||||||
|
|
||||||
# 'User removed essential NewGRFs'-placeholders for stuff without specs
|
# 'User removed essential NewGRFs'-placeholders for stuff without specs
|
||||||
STR_NEWGRF_INVALID_CARGO :<neplatný náklad>
|
STR_NEWGRF_INVALID_CARGO :<neplatný náklad>
|
||||||
@@ -3269,19 +3313,23 @@ STR_LOCAL_AUTHORITY_ACTION_NEW_BUILDINGS :Dotovat nové b
|
|||||||
STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Koupit výhradní právo k přepravě
|
STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Koupit výhradní právo k přepravě
|
||||||
STR_LOCAL_AUTHORITY_ACTION_BRIBE :Podplatit místní správu
|
STR_LOCAL_AUTHORITY_ACTION_BRIBE :Podplatit místní správu
|
||||||
|
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Zahájit malou reklamní kampaň, která přiláká více cestujících a nákladu.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Zahájit malou reklamní kampaň, která přiláká více cestujících a nákladu.{}Poskytuje dočasné zvýšení hodnocení přepravy v blízkém okolí městského centra.{}Cena: {CURRENCY_LONG}
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Zahájit středně velkou reklamní kampaň, která přiláká více cestujících a nákladu.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Zahájit středně velkou reklamní kampaň, která přiláká více cestujících a nákladu.{}Poskytuje dočasné zvýšení hodnocení přepravy ve středně širokém okolí městského centra.{}Cena: {CURRENCY_LONG}
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Zahájit velkou reklamní kampaň, která přiláká více cestujících a nákladu.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Zahájit velkou reklamní kampaň, která přiláká více cestujících a nákladu.{}Poskytuje dočasné zvýšení hodnocení přepravy v širokém okolí městského centra.{}Cena: {CURRENCY_LONG}
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Dotovat rekonstrukci místní silniční sítě. Způsobí problémy v dopravě po dobu 6 měsíců.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Dotovat rekonstrukci sítě místních ulic.{}Způsobí problémy v dopravě po dobu až 6ti měsíců.{}Cena: {CURRENCY_LONG}
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}Postavit sochu vlastníka jako poctu tvé společnosti.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}Postavit sochu jako poctu tvé společnosti.{}Poskytuje trvalý bonus k hodnocení stanic v tomto městě.{}Cena: {CURRENCY_LONG}
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Dotovat stavbu nových obchodních budov ve městě.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Dotovat stavbu nových obchodních budov ve městě.{}Poskytuje dočasné zvýšení rychlosti růstu města.{}Cena: {CURRENCY_LONG}
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Koupit roční výhradní práva k přepravě zboží z tohoto města po dobu jednoho roku. Místní správa dovolí cestujícím a nákladu používat pouze stanice tvé společnosti.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Koupit 1 roční výhradní přepravní práva z tohoto města. Místní správa nedovolí dovolí cestujícím ani nákladu používat stanice tvých konkurentů.{}Cena: {CURRENCY_LONG}
|
||||||
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Podplatit místní správu pro zvýšení hodnocení společnosti. Riziko trestu v případě přistižení.{}Cena: {CURRENCY_LONG}
|
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Podplatit místní správu pro zvýšení hodnocení společnosti. Riziko trestu v případě přistižení.{}Cena: {CURRENCY_LONG}
|
||||||
|
|
||||||
# Goal window
|
# Goal window
|
||||||
STR_GOALS_CAPTION :{WHITE}{COMPANY} Cíle
|
STR_GOALS_CAPTION :{WHITE}{COMPANY} Cíle
|
||||||
STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globální cíle
|
STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globální cíle
|
||||||
STR_GOALS_SPECTATOR :Globální cíle
|
STR_GOALS_SPECTATOR :Globální cíle
|
||||||
|
STR_GOALS_GLOBAL_BUTTON :{BLACK}Globální
|
||||||
|
STR_GOALS_GLOBAL_BUTTON_HELPTEXT :{BLACK}Zobrazit globání cíle
|
||||||
|
STR_GOALS_COMPANY_BUTTON :{BLACK}Společnost
|
||||||
|
STR_GOALS_COMPANY_BUTTON_HELPTEXT :{BLACK}Zobrazit cíle společnosti
|
||||||
STR_GOALS_TEXT :{ORANGE}{STRING}
|
STR_GOALS_TEXT :{ORANGE}{STRING}
|
||||||
STR_GOALS_NONE :{ORANGE}- Žádné -
|
STR_GOALS_NONE :{ORANGE}- Žádné -
|
||||||
STR_GOALS_PROGRESS :{ORANGE}{STRING}
|
STR_GOALS_PROGRESS :{ORANGE}{STRING}
|
||||||
@@ -3656,6 +3704,7 @@ STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}Poháně
|
|||||||
STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Refitovatelné na: {GOLD}{STRING}
|
STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Refitovatelné na: {GOLD}{STRING}
|
||||||
STR_PURCHASE_INFO_ALL_TYPES :Všechny druhy nákladu
|
STR_PURCHASE_INFO_ALL_TYPES :Všechny druhy nákladu
|
||||||
STR_PURCHASE_INFO_NONE :Žádné
|
STR_PURCHASE_INFO_NONE :Žádné
|
||||||
|
STR_PURCHASE_INFO_ENGINES_ONLY :Pouze lokomotivy
|
||||||
STR_PURCHASE_INFO_ALL_BUT :Všechny kromě {CARGO_LIST}
|
STR_PURCHASE_INFO_ALL_BUT :Všechny kromě {CARGO_LIST}
|
||||||
STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. tažná síla: {GOLD}{FORCE}
|
STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. tažná síla: {GOLD}{FORCE}
|
||||||
STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Dosah: {GOLD}{COMMA} polí
|
STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Dosah: {GOLD}{COMMA} polí
|
||||||
@@ -4406,6 +4455,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Byl nale
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Velký screenshot
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Velký screenshot
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Snímek obrazovky bude mít rozlišení {COMMA} x {COMMA} pixelů. Toto může nějakou chvíli trvat. Chcete pokračovat?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Snímek obrazovky bude mít rozlišení {COMMA} x {COMMA} pixelů. Toto může nějakou chvíli trvat. Chcete pokračovat?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Výšková mapa úspěšně uložena jako '{STRING}'. Nejvyšší vrchol je {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot úspěšně uložen jako '{STRING}'
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot úspěšně uložen jako '{STRING}'
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot neuložen!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot neuložen!
|
||||||
|
|
||||||
|
|||||||
@@ -989,6 +989,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skærmop
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Vælg ønsket skærmopløsning
|
STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Vælg ønsket skærmopløsning
|
||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :andet
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :andet
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Hardware-acceleration
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}grænseflade størrelse
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}grænseflade størrelse
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Vælg den grænseflade størrelse du ønsker at benytte
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Vælg den grænseflade størrelse du ønsker at benytte
|
||||||
@@ -1181,8 +1183,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Slå katastrofe
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Byrådets holdning til omstrukturering: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Byrådets holdning til omstrukturering: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vælg hvor meget selskaber støj og miljømæssige skader påvirker byvurdering og fremtidige byggeretigheder i området
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vælg hvor meget selskaber støj og miljømæssige skader påvirker byvurdering og fremtidige byggeretigheder i området
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimal map højde: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Indstil den maksimale tilladte højde for bjerge på kortet
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Du kan ikke sætte den maksimale kortet højde for denne værdi. Mindst et bjerg på kortet er højere
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Du kan ikke sætte den maksimale kortet højde for denne værdi. Mindst et bjerg på kortet er højere
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Tillad landskabsformning under bygninger, spor, etc. (autoslope): {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Tillad landskabsformning under bygninger, spor, etc. (autoslope): {STRING}
|
||||||
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
|
||||||
@@ -1441,6 +1441,7 @@ STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Hold byggeværk
|
|||||||
STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Hold bygnings-værktøjer til broer, tunneler, mv. åben efter brug
|
STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Hold bygnings-værktøjer til broer, tunneler, mv. åben efter brug
|
||||||
STR_CONFIG_SETTING_EXPENSES_LAYOUT :Grupper udgifter i firmaets finansvindue: {STRING}
|
STR_CONFIG_SETTING_EXPENSES_LAYOUT :Grupper udgifter i firmaets finansvindue: {STRING}
|
||||||
STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Definer layout for firmaets udgifter-vindue
|
STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Definer layout for firmaets udgifter-vindue
|
||||||
|
STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% normal simulationshastighed
|
||||||
|
|
||||||
STR_CONFIG_SETTING_SOUND_TICKER :Nyhedssymbol: {STRING}
|
STR_CONFIG_SETTING_SOUND_TICKER :Nyhedssymbol: {STRING}
|
||||||
STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Afspil lyd for opsummerede nyheds beskeder
|
STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Afspil lyd for opsummerede nyheds beskeder
|
||||||
@@ -1554,6 +1555,7 @@ STR_CONFIG_SETTING_ENDING_YEAR :Slutår for poi
|
|||||||
STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Årstal hvor spillet slutter pointoptælling. Ved slutningen af dette år bliver selskabets point optaget, og topresultater-skærmen bliver vist. Spillerne kan fortsætte med at spille efter dette.{}Hvis dette er før spillets start år, bliver topresultater-skærmen aldrig vist.
|
STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Årstal hvor spillet slutter pointoptælling. Ved slutningen af dette år bliver selskabets point optaget, og topresultater-skærmen bliver vist. Spillerne kan fortsætte med at spille efter dette.{}Hvis dette er før spillets start år, bliver topresultater-skærmen aldrig vist.
|
||||||
STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM}
|
STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM}
|
||||||
STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Aldrig
|
STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Aldrig
|
||||||
|
STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Smooth
|
||||||
STR_CONFIG_SETTING_ALLOW_SHARES :Tillad at købe aktier i andre selskaber: {STRING}
|
STR_CONFIG_SETTING_ALLOW_SHARES :Tillad at købe aktier i andre selskaber: {STRING}
|
||||||
STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Hvis aktiveret, tillades køb og salg af selskabsaktier. Aktier vil kun være tilgængelige for selskaber der er nået en hvis alder
|
STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Hvis aktiveret, tillades køb og salg af selskabsaktier. Aktier vil kun være tilgængelige for selskaber der er nået en hvis alder
|
||||||
STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Mindste selskabsalder for aktiehandel: {STRING}
|
STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Mindste selskabsalder for aktiehandel: {STRING}
|
||||||
@@ -1605,6 +1607,7 @@ 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
|
||||||
|
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_SPREAD_ALL :Voks og spred ud overalt
|
||||||
|
|
||||||
STR_CONFIG_SETTING_TOOLBAR_POS :Placering af værktøjslinje: {STRING}
|
STR_CONFIG_SETTING_TOOLBAR_POS :Placering af værktøjslinje: {STRING}
|
||||||
STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Horisontal placering af hovedværktøjlinjen i toppen af skærmen
|
STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Horisontal placering af hovedværktøjlinjen i toppen af skærmen
|
||||||
@@ -1761,6 +1764,7 @@ STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Utilstr
|
|||||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Allokering af {BYTES} spritecache fejlede. Spritecachen blev indskrænket til {BYTES}. Dette vil sænke OpenTTDs ydelse. Du kan forsøge at slå 32bpp grafik og/eller zoom-ind niveauer for at reducere hukommelseskravet
|
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Allokering af {BYTES} spritecache fejlede. Spritecachen blev indskrænket til {BYTES}. Dette vil sænke OpenTTDs ydelse. Du kan forsøge at slå 32bpp grafik og/eller zoom-ind niveauer for at reducere hukommelseskravet
|
||||||
|
|
||||||
# Video initalization errors
|
# Video initalization errors
|
||||||
|
STR_VIDEO_DRIVER_ERROR_NO_HARDWARE_ACCELERATION :{WHITE}... ingen kompatibel GPU fundet. Hardware-acceleration deaktiveret
|
||||||
|
|
||||||
# Intro window
|
# Intro window
|
||||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||||
@@ -2817,12 +2821,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Antal byer:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Antal byer:
|
||||||
STR_MAPGEN_DATE :{BLACK}Dato:
|
STR_MAPGEN_DATE :{BLACK}Dato:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Antal industrier:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Antal industrier:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimal map højde:
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Øge den maksimale højde af bjerge på kortet med en
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Formindsk den maksimale højde af bjerge på kortet med en
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snegrænse
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flyt snegrænsen een op
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flyt snegrænsen een ned
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Terrængenerator:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Terrængenerator:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terræntype:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terræntype:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Havniveau
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Havniveau
|
||||||
@@ -2848,8 +2846,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Højdeko
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Størrelse:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Størrelse:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Skift maksimal kort højde
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Ændre snegrænsen
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Ændre startår
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Ændre startår
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -3066,6 +3062,7 @@ STR_SIGN_LIST_MATCH_CASE_TOOLTIP :{BLACK}Vis matc
|
|||||||
|
|
||||||
# Sign window
|
# Sign window
|
||||||
STR_EDIT_SIGN_CAPTION :{WHITE}Ændre skiltets tekst
|
STR_EDIT_SIGN_CAPTION :{WHITE}Ændre skiltets tekst
|
||||||
|
STR_EDIT_SIGN_LOCATION_TOOLTIP :{BLACK}Centrér skærmen ved skiltets placering. Ctrl+klik åbner et nyt vindue ved skiltets placering
|
||||||
STR_EDIT_SIGN_NEXT_SIGN_TOOLTIP :{BLACK}Gå til næste skilt
|
STR_EDIT_SIGN_NEXT_SIGN_TOOLTIP :{BLACK}Gå til næste skilt
|
||||||
STR_EDIT_SIGN_PREVIOUS_SIGN_TOOLTIP :{BLACK}Gå til forrige skilt
|
STR_EDIT_SIGN_PREVIOUS_SIGN_TOOLTIP :{BLACK}Gå til forrige skilt
|
||||||
|
|
||||||
@@ -3139,6 +3136,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Bestik
|
|||||||
STR_GOALS_CAPTION :{WHITE}{COMPANY} Mål
|
STR_GOALS_CAPTION :{WHITE}{COMPANY} Mål
|
||||||
STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globale Mål
|
STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globale Mål
|
||||||
STR_GOALS_SPECTATOR :Globale Mål
|
STR_GOALS_SPECTATOR :Globale Mål
|
||||||
|
STR_GOALS_GLOBAL_BUTTON :{BLACK}Global
|
||||||
STR_GOALS_TEXT :{ORANGE}{STRING}
|
STR_GOALS_TEXT :{ORANGE}{STRING}
|
||||||
STR_GOALS_NONE :{ORANGE}- Ingen -
|
STR_GOALS_NONE :{ORANGE}- Ingen -
|
||||||
STR_GOALS_PROGRESS :{ORANGE}{STRING}
|
STR_GOALS_PROGRESS :{ORANGE}{STRING}
|
||||||
@@ -3274,7 +3272,7 @@ STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Forhindr
|
|||||||
STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT}
|
STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT}
|
||||||
STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Centrer skærmen over vejpunktets lokalitet. Ctrl+Klik åbner et nyt vindue ved waypointets lokalitet.
|
STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Centrer skærmen over vejpunktets lokalitet. Ctrl+Klik åbner et nyt vindue ved waypointets lokalitet.
|
||||||
STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Omdøb waypoint
|
STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Omdøb waypoint
|
||||||
STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Centrer skræmen over bøjens lokalitet. Ctrl+Klik åbner et nyt vindue ved bøjens lokalitet.
|
STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Centrér skærmen ved bøjens placering. Ctrl+klik åbner et nyt vindue ved bøjens placering
|
||||||
STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Ændre navnet på bøjen
|
STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Ændre navnet på bøjen
|
||||||
|
|
||||||
STR_EDIT_WAYPOINT_NAME :{WHITE}Omdøb waypoint
|
STR_EDIT_WAYPOINT_NAME :{WHITE}Omdøb waypoint
|
||||||
@@ -3339,6 +3337,7 @@ STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Flyt hov
|
|||||||
STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Flyt selskabets hovedkvarter for 1% af selskabsværdien. Shift skifter mellem at flytte og vise prisoverslag.
|
STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Flyt selskabets hovedkvarter for 1% af selskabsværdien. Shift skifter mellem at flytte og vise prisoverslag.
|
||||||
STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detaljer
|
STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detaljer
|
||||||
STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Se detaljerede infrastruktur-tal
|
STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Se detaljerede infrastruktur-tal
|
||||||
|
STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Giv penge
|
||||||
|
|
||||||
STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nyt ansigt
|
STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nyt ansigt
|
||||||
STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Vælg nyt ansigt til direktøren
|
STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Vælg nyt ansigt til direktøren
|
||||||
@@ -3623,10 +3622,10 @@ STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Dette vi
|
|||||||
STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Dette vil købe en kopi af skibet. Klik på denne knap og så på et skib indeni eller udenfor dokken. Ctrl-klik vil dele ordrer. Shift-klik vil vise prisoverslag.
|
STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Dette vil købe en kopi af skibet. Klik på denne knap og så på et skib indeni eller udenfor dokken. Ctrl-klik vil dele ordrer. Shift-klik vil vise prisoverslag.
|
||||||
STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Dette vil købe en kopi af et fly. Klik på denne knap og så på et fly indeni eller udenfor hangaren. Ctrl-klik vil dele ordrer. Shift-klik viser estimerede omkostninger uden at indkøbe
|
STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Dette vil købe en kopi af et fly. Klik på denne knap og så på et fly indeni eller udenfor hangaren. Ctrl-klik vil dele ordrer. Shift-klik viser estimerede omkostninger uden at indkøbe
|
||||||
|
|
||||||
STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Centrer skærmen over remisens lokalitet. Ctrl+Klik åbner et nyt vindue ved remisens lokalitet.
|
STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Centrér skærmen over remisens placering. Ctrl+klik åbner et nyt vindue ved remisens placering
|
||||||
STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Centrer skærmen over værkstedets lokalitet. Ctrl+Klik åbner et nyt vindue ved køretøjsværkstedets lokalitet.
|
STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Centrér skærmen ved værkstedets placering. Ctrl+klik åbner et nyt vindue ved køretøjsværkstedets placering
|
||||||
STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Centrer skærmen over skibsdokkens lokalitet. Ctrl+Klik åbner et nyt vindue ved skibsdokkens lokalitet.
|
STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Centrér skærmen ved skibsdokkens placering. Ctrl+klik åbner et nyt vindue ved skibsdokkens placering
|
||||||
STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Centrér skærmen over hangarens lokalitet. Ctrl+Klik åbner et nyt vindue ved hangarens lokalitet.
|
STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Centrér skærmen ved hangarens placering. Ctrl+klik åbner et nyt vindue ved hangarens placering
|
||||||
|
|
||||||
STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Vis en liste over alle tog med denne remise i ordrelisten
|
STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Vis en liste over alle tog med denne remise i ordrelisten
|
||||||
STR_DEPOT_VEHICLE_ORDER_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Vis liste over alle køretøjer med dette værksted i ordrelisten
|
STR_DEPOT_VEHICLE_ORDER_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Vis liste over alle køretøjer med dette værksted i ordrelisten
|
||||||
@@ -3975,6 +3974,7 @@ STR_ORDER_REFIT_STOP_ORDER :(Tilpas til {ST
|
|||||||
STR_ORDER_STOP_ORDER :(Stop)
|
STR_ORDER_STOP_ORDER :(Stop)
|
||||||
|
|
||||||
STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING}
|
STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING}
|
||||||
|
STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Kan ikke bruge station){POP_COLOUR} {STRING} {STATION} {STRING}
|
||||||
|
|
||||||
STR_ORDER_IMPLICIT :(Automatisk)
|
STR_ORDER_IMPLICIT :(Automatisk)
|
||||||
|
|
||||||
@@ -4425,6 +4425,7 @@ STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Forkert depotty
|
|||||||
STR_ERROR_TRAIN_TOO_LONG_AFTER_REPLACEMENT :{WHITE}{VEHICLE} er blevet for langt efter udskiftning
|
STR_ERROR_TRAIN_TOO_LONG_AFTER_REPLACEMENT :{WHITE}{VEHICLE} er blevet for langt efter udskiftning
|
||||||
STR_ERROR_AUTOREPLACE_NOTHING_TO_DO :{WHITE}Ingen autoudskiftning/-fornyelse foretaget.
|
STR_ERROR_AUTOREPLACE_NOTHING_TO_DO :{WHITE}Ingen autoudskiftning/-fornyelse foretaget.
|
||||||
STR_ERROR_AUTOREPLACE_MONEY_LIMIT :(ikke penge nok)
|
STR_ERROR_AUTOREPLACE_MONEY_LIMIT :(ikke penge nok)
|
||||||
|
STR_ERROR_AUTOREPLACE_INCOMPATIBLE_REFIT :{WHITE}Nyt køretøj kan ikke auto-tilpasses i ordren{NUM}
|
||||||
|
|
||||||
# Rail construction errors
|
# Rail construction errors
|
||||||
STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION :{WHITE}Umulig sporkombination
|
STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION :{WHITE}Umulig sporkombination
|
||||||
|
|||||||
@@ -357,9 +357,9 @@ STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Landinfo
|
|||||||
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
|
||||||
STR_SCENEDIT_TOOLBAR_TOOLTIP_SAVE_SCENARIO_LOAD_SCENARIO :{BLACK}Scenario opslaan of laden, scenario-editor verlaten, afsluiten
|
STR_SCENEDIT_TOOLBAR_TOOLTIP_SAVE_SCENARIO_LOAD_SCENARIO :{BLACK}Scenario opslaan of laden, scenariobewerker verlaten, afsluiten
|
||||||
STR_SCENEDIT_TOOLBAR_OPENTTD :{YELLOW}OpenTTD
|
STR_SCENEDIT_TOOLBAR_OPENTTD :{YELLOW}OpenTTD
|
||||||
STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Scenario-editor
|
STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Scenariobewerker
|
||||||
STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Startdatum 1 jaar terugzetten
|
STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Startdatum 1 jaar terugzetten
|
||||||
STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Startdatum 1 jaar vooruitzetten
|
STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Startdatum 1 jaar vooruitzetten
|
||||||
STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Klik om het startjaar op te geven
|
STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Klik om het startjaar op te geven
|
||||||
@@ -378,7 +378,7 @@ STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Scenario opslaa
|
|||||||
STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Scenario laden
|
STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Scenario laden
|
||||||
STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Hoogtekaart opslaan
|
STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Hoogtekaart opslaan
|
||||||
STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Hoogtekaart laden
|
STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Hoogtekaart laden
|
||||||
STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Scenario-editor sluiten
|
STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Scenariobewerker sluiten
|
||||||
STR_SCENEDIT_FILE_MENU_SEPARATOR :
|
STR_SCENEDIT_FILE_MENU_SEPARATOR :
|
||||||
STR_SCENEDIT_FILE_MENU_QUIT :Afsluiten
|
STR_SCENEDIT_FILE_MENU_QUIT :Afsluiten
|
||||||
############ range for SE file menu starts
|
############ range for SE file menu starts
|
||||||
@@ -1006,6 +1006,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Hardware
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Selecteer dit vakje om OpenTTD hardwareversnelling te laten gebruiken. De gewijzigde instelling wordt pas van kracht nadat het spel opnieuw is gestart.
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Selecteer dit vakje om OpenTTD hardwareversnelling te laten gebruiken. De gewijzigde instelling wordt pas van kracht nadat het spel opnieuw is gestart.
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}De instelling wordt pas van kracht als het spel opnieuw is gestart
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}De instelling wordt pas van kracht als het spel opnieuw is gestart
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Selecteer dit vakje om het scherm verticaal te synchroniseren. De wijziging gaat pas in nadat je het spel opnieuw hebt opgestart. Werkt alleen als hardwareversnelling is ingeschakeld
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Menupuntgrootte
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Menupuntgrootte
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Kiest de grootte van bedieningselementen
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Kiest de grootte van bedieningselementen
|
||||||
|
|
||||||
@@ -1124,6 +1127,8 @@ STR_TERRAIN_TYPE_FLAT :Vlak
|
|||||||
STR_TERRAIN_TYPE_HILLY :Heuvelachtig
|
STR_TERRAIN_TYPE_HILLY :Heuvelachtig
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Bergachtig
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Bergachtig
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Berglandschap
|
STR_TERRAIN_TYPE_ALPINIST :Berglandschap
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Aangepaste hoogte
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Aangepaste hoogte ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Toegeeflijk
|
STR_CITY_APPROVAL_PERMISSIVE :Toegeeflijk
|
||||||
STR_CITY_APPROVAL_TOLERANT :Neutraal
|
STR_CITY_APPROVAL_TOLERANT :Neutraal
|
||||||
@@ -1205,8 +1210,10 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Rampen in-uitsc
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Houding van gemeentebestuur ten opzichte van herstructurering omgeving: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Houding van gemeentebestuur ten opzichte van herstructurering omgeving: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Bepaalt in hoeverre lawaai en schade aan het milieu door bedrijven de stadswaardering en verdere bouwacties beïnvloeden in hun omgeving
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Bepaalt in hoeverre lawaai en schade aan het milieu door bedrijven de stadswaardering en verdere bouwacties beïnvloeden in hun omgeving
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximale kaarthoogte: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Limiet voor kaarthoogte: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Maximaal toegestane hoogte voor bergen op de kaart instellen
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Stelt de maximale hoogte voor het terrein op de kaart in. Met '(auto)' wordt een goede waarde genomen nadat het terrein is gegenereerd
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(auto)
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Je kunt de maximale kaarthoogte niet in deze waarde wijzigen. Minstens één berg op de kaart is hoger.
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Je kunt de maximale kaarthoogte niet in deze waarde wijzigen. Minstens één berg op de kaart is hoger.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Omgeving aanpassen onder gebouwen, spoorwegen enz. toestaan: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Omgeving aanpassen onder gebouwen, spoorwegen enz. toestaan: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Staat het aanpassen van funderingen onder gebouwen en sporen toe zonder deze te verwijderen
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Staat het aanpassen van funderingen onder gebouwen en sporen toe zonder deze te verwijderen
|
||||||
@@ -1351,7 +1358,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Stelt in hoevee
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximumafstand van de rand voor olieraffinaderijen: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximumafstand van de rand voor olieraffinaderijen: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Olieraffinaderijen worden alleen gebouwd nabij de kaartgrens, dat is aan de kust van eilandkaarten
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Olieraffinaderijen worden alleen gebouwd nabij de kaartgrens, dat is aan de kust van eilandkaarten
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Sneeuwhoogte: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Sneeuwhoogte: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Stelt in op welke hoogte de sneeuw begint in subarctisch landschap. Sneeuw heeft ook invloed op het ontstaan van industrieën en op de vereisten voor stadsgroei.
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Stelt in op welke hoogte de sneeuw begint in subarctisch landschap. Sneeuw heeft ook invloed op het ontstaan van industrieën en op de vereisten voor stadsgroei. Kan alleen worden aangepast in de scenariobewerker of wordt berekend met behulp van 'sneeuwoppervlak'
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Sneeuwoppervlak: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Bepaalt de hoeveelheid sneeuw in het subarctische landschap. Sneeuw is ook van invloed op de industrieën en de groei van steden. Wordt alleen gebruikt tijdens het maken van de kaart. Land net boven zeeniveau krijgt nooit sneeuw
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Woestijnoppervlak: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Bepaalt de hoeveelheid woestijn in het tropische landschap. Woestijn is ook van invloed op industrieën. Wordt alleen gebruikt tijdens het maken van de kaart
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Ruwheid van het terrein: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Ruwheid van het terrein: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Alleen TerraGenesis) Kiest de frequentie van heuvels: gladde landschappen hebben minder, meer wijdverspreide heuvels. Ruwe landschappen hebben veel heuvels, die repetitief kunnen lijken.
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Alleen TerraGenesis) Kiest de frequentie van heuvels: gladde landschappen hebben minder, meer wijdverspreide heuvels. Ruwe landschappen hebben veel heuvels, die repetitief kunnen lijken.
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Erg glad
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Erg glad
|
||||||
@@ -2029,10 +2042,10 @@ STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE :{BLACK}Vul je n
|
|||||||
STR_NETWORK_SERVER_LIST_ENTER_IP :{BLACK}Voer het IP-adres van de server in
|
STR_NETWORK_SERVER_LIST_ENTER_IP :{BLACK}Voer het IP-adres van de server in
|
||||||
|
|
||||||
# Start new multiplayer server
|
# Start new multiplayer server
|
||||||
STR_NETWORK_START_SERVER_CAPTION :{WHITE}Start nieuw multiplayerspel
|
STR_NETWORK_START_SERVER_CAPTION :{WHITE}Nieuw spel met meerdere spelers starten
|
||||||
|
|
||||||
STR_NETWORK_START_SERVER_NEW_GAME_NAME :{BLACK}Spelnaam:
|
STR_NETWORK_START_SERVER_NEW_GAME_NAME :{BLACK}Spelnaam:
|
||||||
STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}De spelnaam wordt weergegeven aan andere spelers in het multiplayerspelselectiemenu
|
STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}De spelnaam wordt weergegeven aan andere spelers in het spelselectiemenu voor meerdere spelers
|
||||||
STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Wachtwoord instellen
|
STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Wachtwoord instellen
|
||||||
STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Beveilig je spel met een wachtwoord als je niet wilt dat dit algemeen toegankelijk is
|
STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Beveilig je spel met een wachtwoord als je niet wilt dat dit algemeen toegankelijk is
|
||||||
|
|
||||||
@@ -2339,6 +2352,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ja, grafische elementen downloaden
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ja, grafische elementen downloaden
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nee, OpenTTD afsluiten
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nee, OpenTTD afsluiten
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Downloaden mislukt
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}Grafische elementen downloaden mislukt.{}Download de grafische elementen handmatig.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}OpenTTD afsluiten
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Doorzichtigheidsopties
|
STR_TRANSPARENCY_CAPTION :{WHITE}Doorzichtigheidsopties
|
||||||
@@ -2889,12 +2905,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Aantal steden:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Aantal steden:
|
||||||
STR_MAPGEN_DATE :{BLACK}Datum:
|
STR_MAPGEN_DATE :{BLACK}Datum:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Aantal industrieën:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Aantal industrieën:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximale kaarthoogte
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Hoogste berg:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Verhoog de maximale hoogte van bergen op de kaart met één
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Verhoogt de maximale hoogte van de hoogste berg op de kaart met één
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Verklein de maximale hoogte van bergen op de kaart met één
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Verlaagt de maximale hoogte van de hoogste berg op de kaart met één
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hoogte van sneeuwgrens:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Sneeuwoppervlak:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Verhoog de sneeuwgrens met één
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Vergroot het sneeuwoppervlak met tien procent
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Verlaag de sneeuwgrens met één
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Verkleint het sneeuwoppervlak met tien procent
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Woestijnoppervlak:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Vergroot het woestijnoppervlak met tien procent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Verkleint het woestijnoppervlak met tien procent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terreintype:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terreintype:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Zeeniveau:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Zeeniveau:
|
||||||
@@ -2920,8 +2941,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Naam van
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grootte:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grootte:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Maximale kaarthoogte wijzigen
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Gewenste hoogte van bergen
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Hoogte van sneeuwgrens wijzigen
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Hoogste berg
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Sneeuwoppervlak (in %)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Woestijnoppervlak (in %)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Verander startjaar
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Verander startjaar
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -4338,6 +4361,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Alleen b
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Grote schermfoto
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Grote schermfoto
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}De schermfoto heeft een resolutie van {COMMA} x {COMMA} pixels. Het maken van de schermfoto kan even duren. Verder gaan?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}De schermfoto heeft een resolutie van {COMMA} x {COMMA} pixels. Het maken van de schermfoto kan even duren. Verder gaan?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Hoogtekaart opgeslagen als '{STRING}'. Hoogste berg is {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Schermafbeelding opgeslagen als '{STRING}'
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Schermafbeelding opgeslagen als '{STRING}'
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Schermfoto mislukt!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Schermfoto mislukt!
|
||||||
|
|
||||||
|
|||||||
@@ -1002,6 +1002,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Hardware
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Check this box to allow OpenTTD to try to use hardware acceleration. A changed setting will only be applied upon game restart
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Check this box to allow OpenTTD to try to use hardware acceleration. A changed setting will only be applied upon game restart
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}The setting will only take effect after a game restart
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}The setting will only take effect after a game restart
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Check this box to v-sync the screen. A changed setting will only be applied upon game restart. Only works with hardware acceleration enabled
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interface size
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interface size
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Select the interface element size to use
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Select the interface element size to use
|
||||||
|
|
||||||
@@ -1120,6 +1123,8 @@ STR_TERRAIN_TYPE_FLAT :Flat
|
|||||||
STR_TERRAIN_TYPE_HILLY :Hilly
|
STR_TERRAIN_TYPE_HILLY :Hilly
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Mountainous
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Mountainous
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpinist
|
STR_TERRAIN_TYPE_ALPINIST :Alpinist
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Custom height
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Custom height ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Permissive
|
STR_CITY_APPROVAL_PERMISSIVE :Permissive
|
||||||
STR_CITY_APPROVAL_TOLERANT :Tolerant
|
STR_CITY_APPROVAL_TOLERANT :Tolerant
|
||||||
@@ -1201,9 +1206,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Toggle disaster
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Town council's attitude towards area restructuring: {STRING2}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Town council's attitude towards area restructuring: {STRING2}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Choose how much noise and environmental damage by companies affect their town rating and further construction actions in their area
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Choose how much noise and environmental damage by companies affect their town rating and further construction actions in their area
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximum map height: {STRING2}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Map height limit: {STRING2}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Set the maximum allowed height for mountains on the map
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Set the maximum height of the map terrain. With "(auto)" a good value will be picked after terrain generation
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}You can't set the maximum map height to this value. At least one mountain on the map is higher
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(auto)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}You can't set the map height limit to this value. At least one mountain on the map is higher
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Allow landscaping under buildings, tracks, etc.: {STRING2}
|
STR_CONFIG_SETTING_AUTOSLOPE :Allow landscaping under buildings, tracks, etc.: {STRING2}
|
||||||
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}
|
||||||
@@ -1272,6 +1279,8 @@ STR_CONFIG_SETTING_VIDEO_16BPP :{BLACK}16 bit
|
|||||||
STR_CONFIG_SETTING_VIDEO_16BPP_HELPTEXT :{BLACK}Set video color depth to 16 bits per pixel, this requires restart, this video mode does not support water animation
|
STR_CONFIG_SETTING_VIDEO_16BPP_HELPTEXT :{BLACK}Set video color depth to 16 bits per pixel, this requires restart, this video mode does not support water animation
|
||||||
STR_CONFIG_SETTING_VIDEO_24BPP :{BLACK}24 bit
|
STR_CONFIG_SETTING_VIDEO_24BPP :{BLACK}24 bit
|
||||||
STR_CONFIG_SETTING_VIDEO_24BPP_HELPTEXT :{BLACK}Set video color depth to 24 bits per pixel, this video mode supports water animation
|
STR_CONFIG_SETTING_VIDEO_24BPP_HELPTEXT :{BLACK}Set video color depth to 24 bits per pixel, this video mode supports water animation
|
||||||
|
STR_CONFIG_SETTING_MOUSE_CURSOR :{BLACK}Mouse cursor
|
||||||
|
STR_CONFIG_SETTING_MOUSE_CURSOR_HELPTEXT :{BLACK}Show mouse cursor
|
||||||
STR_CONFIG_SETTING_SHOWFINANCES :Show finances window at the end of the year: {STRING2}
|
STR_CONFIG_SETTING_SHOWFINANCES :Show finances window at the end of the year: {STRING2}
|
||||||
STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :If enabled, the finances window pops up at the end of each year to allow easy inspection of the financial status of the company
|
STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :If enabled, the finances window pops up at the end of each year to allow easy inspection of the financial status of the company
|
||||||
STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :New orders are 'non-stop' by default: {STRING2}
|
STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :New orders are 'non-stop' by default: {STRING2}
|
||||||
@@ -1367,7 +1376,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Set how many in
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximum distance from edge for Oil industries: {STRING2}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximum distance from edge for Oil industries: {STRING2}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limit for how far from the map border oil refineries and oil rigs can be constructed. On island maps this ensures they are near the coast. On maps larger than 256 tiles, this value is scaled up.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limit for how far from the map border oil refineries and oil rigs can be constructed. On island maps this ensures they are near the coast. On maps larger than 256 tiles, this value is scaled up.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Snow line height: {STRING2}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Snow line height: {STRING2}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Control at what height snow starts in sub-arctic landscape. Snow also affects industry generation and town growth requirements
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Controls at what height snow starts in sub-arctic landscape. Snow also affects industry generation and town growth requirements. Can only be modified via Scenario Editor or is otherwise calculated via "snow coverage"
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Snow coverage: {STRING2}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Controls the approximate amount of snow on the sub-arctic landscape. Snow also affects industry generation and town growth requirements. Only used during map generation. Land just above sea level is always without snow
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Desert coverage: {STRING2}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Control the approximate amount of desert on the tropical landscape. Desert also affects industry generation. Only used during map generation
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Roughness of terrain: {STRING2}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Roughness of terrain: {STRING2}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Choose the frequency of hills: Smooth landscapes have fewer, more wide-spread hills. Rough landscapes have many hills, which may look repetitive
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Choose the frequency of hills: Smooth landscapes have fewer, more wide-spread hills. Rough landscapes have many hills, which may look repetitive
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Very Smooth
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Very Smooth
|
||||||
@@ -2927,12 +2942,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns:
|
||||||
STR_MAPGEN_DATE :{BLACK}Date:
|
STR_MAPGEN_DATE :{BLACK}Date:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximum map height:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Highest peak:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Increase the maximum height of mountains on the map by one
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Increase the maximum height of highest peak on the map by one
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Decrease the maximum height of mountains on the map by one
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Decrease the maximum height of highest peak on the map by one
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snow line height:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Snow coverage:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Move the snow line height one up
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Increase snow coverage by ten percent
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Move the snow line height one down
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Decrease snow coverage by ten percent
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Desert coverage:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Increase desert coverage by ten percent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Decrease desert coverage by ten percent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
|
||||||
@@ -2958,8 +2978,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Heightma
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Change maximum map height
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Target peak height
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Change snow line height
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Highest peak
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Snow coverage (in %)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Desert coverage (in %)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -4376,6 +4398,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Only a f
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Huge screenshot
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Huge screenshot
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}The screenshot will have a resolution of {COMMA} x {COMMA} pixels. Taking the screenshot may take a while. Do you want to continue?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}The screenshot will have a resolution of {COMMA} x {COMMA} pixels. Taking the screenshot may take a while. Do you want to continue?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Heightmap successfully saved as '{RAW_STRING}'. Highest peak is {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot successfully saved as '{RAW_STRING}'
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot successfully saved as '{RAW_STRING}'
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot failed!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot failed!
|
||||||
|
|
||||||
|
|||||||
@@ -966,6 +966,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :other
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
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
|
||||||
STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s}
|
STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s}
|
||||||
@@ -2669,9 +2670,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns:
|
||||||
STR_MAPGEN_DATE :{BLACK}Date:
|
STR_MAPGEN_DATE :{BLACK}Date:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries:
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snow line height:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Move the snow line height one up
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Move the snow line height one down
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
|
||||||
@@ -2697,7 +2695,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Heightma
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Change snow line height
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -1006,6 +1006,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Hardware
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Check this box to allow OpenTTD to try to use hardware acceleration. A changed setting will only be applied upon game restart
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Check this box to allow OpenTTD to try to use hardware acceleration. A changed setting will only be applied upon game restart
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}The setting will only take effect after a game restart
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}The setting will only take effect after a game restart
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Check this box to v-sync the screen. A changed setting will only be applied upon game restart. Only works with hardware acceleration enabled
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interface size
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interface size
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Select the interface element size to use
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Select the interface element size to use
|
||||||
|
|
||||||
@@ -1124,6 +1127,8 @@ STR_TERRAIN_TYPE_FLAT :Flat
|
|||||||
STR_TERRAIN_TYPE_HILLY :Hilly
|
STR_TERRAIN_TYPE_HILLY :Hilly
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Mountainous
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Mountainous
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpinist
|
STR_TERRAIN_TYPE_ALPINIST :Alpinist
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Custom height
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Custom height ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Permissive
|
STR_CITY_APPROVAL_PERMISSIVE :Permissive
|
||||||
STR_CITY_APPROVAL_TOLERANT :Tolerant
|
STR_CITY_APPROVAL_TOLERANT :Tolerant
|
||||||
@@ -1205,9 +1210,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Toggle disaster
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Town council's attitude towards area restructuring: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Town council's attitude towards area restructuring: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Choose how much noise and environmental damage by companies affect their town rating and further construction actions in their area
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Choose how much noise and environmental damage by companies affect their town rating and further construction actions in their area
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximum map height: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Map height limit: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Set the maximum allowed height for mountains on the map
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Set the maximum height of the map terrain. With "(auto)" a good value will be picked after terrain generation
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}You can't set the maximum map height to this value. At least one mountain on the map is higher
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(auto)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}You can't set the map height limit to this value. At least one mountain on the map is higher
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Allow terraforming under buildings, tracks, etc.: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Allow terraforming under buildings, tracks, etc.: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Allow terraforming under buildings and tracks without removing them
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Allow terraforming under buildings and tracks without removing them
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Allow more realistically sized catchment areas: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Allow more realistically sized catchment areas: {STRING}
|
||||||
@@ -1351,7 +1358,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Set how many in
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximum distance from edge for Oil industries: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximum distance from edge for Oil industries: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limit for how far from the map border oil refineries and oil rigs can be constructed. On island maps this ensures they are near the coast. On maps larger than 256 tiles, this value is scaled up.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limit for how far from the map border oil refineries and oil rigs can be constructed. On island maps this ensures they are near the coast. On maps larger than 256 tiles, this value is scaled up.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Snow line height: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Snow line height: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Control at what height snow starts in sub-arctic landscape. Snow also affects industry generation and town growth requirements
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Controls at what height snow starts in sub-arctic landscape. Snow also affects industry generation and town growth requirements. Can only be modified via Scenario Editor or is otherwise calculated via "snow coverage"
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Snow coverage: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Controls the approximate amount of snow on the sub-arctic landscape. Snow also affects industry generation and town growth requirements. Only used during map generation. Land just above sea level is always without snow
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Desert coverage: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Control the approximate amount of desert on the tropical landscape. Desert also affects industry generation. Only used during map generation
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Roughness of terrain: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Roughness of terrain: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Choose the frequency of hills: Smooth landscapes have fewer, more wide-spread hills. Rough landscapes have many hills, which may look repetitive
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Choose the frequency of hills: Smooth landscapes have fewer, more wide-spread hills. Rough landscapes have many hills, which may look repetitive
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Very Smooth
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Very Smooth
|
||||||
@@ -1661,12 +1674,17 @@ STR_CONFIG_SETTING_ZOOM_MIN :Maximum zoom in
|
|||||||
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :The maximum zoom-in level for viewports. Note that enabling higher zoom-in levels increases memory requirements
|
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :The maximum zoom-in level for viewports. Note that enabling higher zoom-in levels increases memory requirements
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX :Maximum zoom out level: {STRING}
|
STR_CONFIG_SETTING_ZOOM_MAX :Maximum zoom out level: {STRING}
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :The maximum zoom-out level for viewports. Higher zoom-out levels might cause lag when used
|
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :The maximum zoom-out level for viewports. Higher zoom-out levels might cause lag when used
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Highest resolution sprites to use: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Limit the maximum resolution to use for sprites. Limiting sprite resolution will avoid using high resolution graphics even when available. This can help keep the game appearance unified when using a mix of GRF files with and without high resolution graphics.
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normal
|
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normal
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_NORMAL :1x
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH :Town growth speed: {STRING}
|
STR_CONFIG_SETTING_TOWN_GROWTH :Town growth speed: {STRING}
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Speed of town growth
|
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Speed of town growth
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :None
|
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :None
|
||||||
@@ -2334,6 +2352,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Yes, download the graphics
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Yes, download the graphics
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}No, quit OpenTTD
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}No, quit OpenTTD
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Downloading failed
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}Downloading graphics failed.{}Please download graphics manually.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Exit OpenTTD
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Transparency Options
|
STR_TRANSPARENCY_CAPTION :{WHITE}Transparency Options
|
||||||
@@ -2884,12 +2905,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns:
|
||||||
STR_MAPGEN_DATE :{BLACK}Date:
|
STR_MAPGEN_DATE :{BLACK}Date:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximum map height:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Highest peak:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Increase the maximum height of mountains on the map by one
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Increase the maximum height of highest peak on the map by one
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Decrease the maximum height of mountains on the map by one
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Decrease the maximum height of highest peak on the map by one
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snow line height:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Snow coverage:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Move the snow line height up one
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Increase snow coverage by ten percent
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Move the snow line height down one
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Decrease snow coverage by ten percent
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Desert coverage:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Increase desert coverage by ten percent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Decrease desert coverage by ten percent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
|
||||||
@@ -2915,8 +2941,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Heightma
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Change maximum map height
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Target peak height
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Change snow line height
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Highest peak
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Snow coverage (in %)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Desert coverage (in %)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -4333,6 +4361,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Only a f
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Huge screenshot
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Huge screenshot
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}The screenshot will have a resolution of {COMMA} x {COMMA} pixels. Taking the screenshot may take a while. Do you want to continue?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}The screenshot will have a resolution of {COMMA} x {COMMA} pixels. Taking the screenshot may take a while. Do you want to continue?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Heightmap successfully saved as '{STRING}'. Highest peak is {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot successfully saved as '{STRING}'
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot successfully saved as '{STRING}'
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot failed!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot failed!
|
||||||
|
|
||||||
|
|||||||
@@ -953,6 +953,7 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Elektu u
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :alia
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :alia
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interfacgrandeco
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interfacgrandeco
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normala
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normala
|
||||||
@@ -2277,9 +2278,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Kiom da urboj:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Kiom da urboj:
|
||||||
STR_MAPGEN_DATE :{BLACK}Dato:
|
STR_MAPGEN_DATE :{BLACK}Dato:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Kiom da industrioj:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Kiom da industrioj:
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Neĝlinia alteco:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Altigu la neĝlinion per unu
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Malaltigu la neĝlinion per unu
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerilo:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerilo:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terentipo:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terentipo:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Marnivelo:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Marnivelo:
|
||||||
@@ -2305,7 +2303,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Mapa nom
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grandeco:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grandeco:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Ŝanĝu altecon de la neĝlinio
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Ŝanĝu komencjaron
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Ŝanĝu komencjaron
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ STR_QUANTITY_WHEAT :{WEIGHT_LONG} n
|
|||||||
STR_QUANTITY_RUBBER :{VOLUME_LONG} kummi
|
STR_QUANTITY_RUBBER :{VOLUME_LONG} kummi
|
||||||
STR_QUANTITY_SUGAR :{WEIGHT_LONG} suhkrut
|
STR_QUANTITY_SUGAR :{WEIGHT_LONG} suhkrut
|
||||||
STR_QUANTITY_TOYS :{COMMA} mänguas{P i ja}
|
STR_QUANTITY_TOYS :{COMMA} mänguas{P i ja}
|
||||||
STR_QUANTITY_SWEETS :{COMMA} kontitäi{P s t} maiustusi
|
STR_QUANTITY_SWEETS :{COMMA}{NBSP}kotitäi{P s t} maiustusi
|
||||||
STR_QUANTITY_COLA :{VOLUME_LONG} koolat
|
STR_QUANTITY_COLA :{VOLUME_LONG} koolat
|
||||||
STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} suhkruvatti
|
STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} suhkruvatti
|
||||||
STR_QUANTITY_BUBBLES :{COMMA} mull{P "" i}
|
STR_QUANTITY_BUBBLES :{COMMA} mull{P "" i}
|
||||||
@@ -871,7 +871,7 @@ STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLAC
|
|||||||
STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Üleujutused!{}Vähemalt {COMMA} kadunut arvatakse surnuks peale olulist üleujutust!
|
STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Üleujutused!{}Vähemalt {COMMA} kadunut arvatakse surnuks peale olulist üleujutust!
|
||||||
|
|
||||||
STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Ettevõttel on probleeme!
|
STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Ettevõttel on probleeme!
|
||||||
STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}Ettevõte {STRING} müüakse maha ja kuulutatakse pankrot, kui tulemused peatselt ei parane!
|
STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}Ettevõte {STRING} müüakse maha või kuulutatakse pankrotistunuks, kui tulemused peatselt ei parane!
|
||||||
STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Ettevõtete ühinemine!
|
STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Ettevõtete ühinemine!
|
||||||
STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} müüdi ettevõttele {STRING} {CURRENCY_LONG} eest!
|
STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} müüdi ettevõttele {STRING} {CURRENCY_LONG} eest!
|
||||||
STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Pankrot!
|
STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Pankrot!
|
||||||
@@ -1014,10 +1014,10 @@ STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Asulate
|
|||||||
STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Vali asulanimede stiil
|
STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Vali asulanimede stiil
|
||||||
|
|
||||||
############ start of townname region
|
############ start of townname region
|
||||||
STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Inglise (originaalne)
|
STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Inglise (algne)
|
||||||
STR_GAME_OPTIONS_TOWN_NAME_FRENCH :Prantsusmaa
|
STR_GAME_OPTIONS_TOWN_NAME_FRENCH :Prantsusmaa
|
||||||
STR_GAME_OPTIONS_TOWN_NAME_GERMAN :Saksamaa
|
STR_GAME_OPTIONS_TOWN_NAME_GERMAN :Saksamaa
|
||||||
STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Inglise (Lisa)
|
STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Inglise (täiendatud)
|
||||||
STR_GAME_OPTIONS_TOWN_NAME_LATIN_AMERICAN :Ladina-Ameerika
|
STR_GAME_OPTIONS_TOWN_NAME_LATIN_AMERICAN :Ladina-Ameerika
|
||||||
STR_GAME_OPTIONS_TOWN_NAME_SILLY :Tobedad
|
STR_GAME_OPTIONS_TOWN_NAME_SILLY :Tobedad
|
||||||
STR_GAME_OPTIONS_TOWN_NAME_SWEDISH :Rootsi
|
STR_GAME_OPTIONS_TOWN_NAME_SWEDISH :Rootsi
|
||||||
@@ -1060,9 +1060,10 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :muu
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_ITEM :{NUM}x{NUM}
|
STR_GAME_OPTIONS_RESOLUTION_ITEM :{NUM}x{NUM}
|
||||||
|
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Riistvarakiirendus
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Riistvarakiirendus
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Märgides selle ruudu, lubad OpenTTD-l üritada kasutada riistvarakiirendust. Muudetud seade omab mõju pärast mängu taaskäivitust
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Märkides selle ruudu, lubad OpenTTD-l üritada kasutada riistvarakiirendust. Muudetud seade omab mõju pärast mängu taaskäivitust
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Seade omab mõju alles pärast mängu taaskäivitust
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Seade omab mõju alles pärast mängu taaskäivitust
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Liidese suurus
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Liidese suurus
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Vali kasutatav liideseelementide suurus
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Vali kasutatav liideseelementide suurus
|
||||||
|
|
||||||
@@ -1181,6 +1182,8 @@ STR_TERRAIN_TYPE_FLAT :Tasane
|
|||||||
STR_TERRAIN_TYPE_HILLY :Künklik
|
STR_TERRAIN_TYPE_HILLY :Künklik
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Mägine
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Mägine
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpinist
|
STR_TERRAIN_TYPE_ALPINIST :Alpinist
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Määratud kõrgus
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Määratud kõrgus ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Soodustav
|
STR_CITY_APPROVAL_PERMISSIVE :Soodustav
|
||||||
STR_CITY_APPROVAL_TOLERANT :Salliv
|
STR_CITY_APPROVAL_TOLERANT :Salliv
|
||||||
@@ -1195,14 +1198,14 @@ STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Ava kõi
|
|||||||
STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Sulge kõik
|
STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Sulge kõik
|
||||||
STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(seletus puudub)
|
STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(seletus puudub)
|
||||||
STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Vaikeväärtus: {ORANGE}{STRING}
|
STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Vaikeväärtus: {ORANGE}{STRING}
|
||||||
STR_CONFIG_SETTING_TYPE :{LTBLUE}Seade rühm: {ORANGE}{STRING}
|
STR_CONFIG_SETTING_TYPE :{LTBLUE}Seade liik: {ORANGE}{STRING}
|
||||||
STR_CONFIG_SETTING_TYPE_CLIENT :Kliendiseade (ei salvestu koos mänguga; mõjutab kõiki mänge)
|
STR_CONFIG_SETTING_TYPE_CLIENT :Kliendiseade (ei salvestu koos mänguga; mõjutab kõiki mänge)
|
||||||
STR_CONFIG_SETTING_TYPE_GAME_MENU :Mängu seade (salvestub koos mänguga; mõjutab ainult uusi mänge)
|
STR_CONFIG_SETTING_TYPE_GAME_MENU :Mängu seade (salvestub koos mänguga; mõjutab ainult uusi mänge)
|
||||||
STR_CONFIG_SETTING_TYPE_GAME_INGAME :Mängu seaded (hoitakse salvestuses; mõjutab ainult praegust mängu)
|
STR_CONFIG_SETTING_TYPE_GAME_INGAME :Mängu seaded (hoitakse salvestuses; mõjutab ainult praegust mängu)
|
||||||
STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Ettevõtte seaded (hoitakse salvestuses; mõjutab ainult uusi mänge)
|
STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Ettevõtte seaded (hoitakse salvestuses; mõjutab ainult uusi mänge)
|
||||||
STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Ettevõtte seaded (hoitakse salvestuses; mõjutab ainult praegust ettevõtet)
|
STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Ettevõtte seaded (hoitakse salvestuses; mõjutab ainult praegust ettevõtet)
|
||||||
|
|
||||||
STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Rühm:
|
STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Jagu:
|
||||||
STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Liik:
|
STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Liik:
|
||||||
STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Piirab varem tehtud filtridega alljärgnevat loendit
|
STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Piirab varem tehtud filtridega alljärgnevat loendit
|
||||||
STR_CONFIG_SETTING_RESTRICT_BASIC :Põhilised (kuva vaid tähtsad seaded)
|
STR_CONFIG_SETTING_RESTRICT_BASIC :Põhilised (kuva vaid tähtsad seaded)
|
||||||
@@ -1262,9 +1265,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Lülita sisse/v
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Astuse omavalitsuse suhtumine pinnase restruktureerimisse: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Astuse omavalitsuse suhtumine pinnase restruktureerimisse: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vali kui suurt mõju tekitavad müra ning keskkonna muudatused ettevõtte mainele ja edasistele ehitustoimingutele antud piirkonnas
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vali kui suurt mõju tekitavad müra ning keskkonna muudatused ettevõtte mainele ja edasistele ehitustoimingutele antud piirkonnas
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Kaardi ülemkõrgus: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Kaardi kõrguspiir: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Sea kaardil paiknevatele mägedele ülemine kõrguspiir
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Määra ülempiir kaardil oleva maastiku kõrgusele. "(Auto)" leiab sobiva väärtuse pärast, kui maastik on tekitatud
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Kaardi maksimaalset kõrgust pole sellisele kõrgusele võimalik sätestada. Vähemalt üks mägi on antud kõrgusest suurem.
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(auto)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Sellist väärtust ei saa kaardi kõrguspiirile anda. Vähemalt üks mägi kaardil on kõrgem
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Maastikukujundus majade, rööbaste jms. all (autoslope): {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Maastikukujundus majade, rööbaste jms. all (autoslope): {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Lase maja- ja rööpaalust maad kujundada ilma neid eemaldamata
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Lase maja- ja rööpaalust maad kujundada ilma neid eemaldamata
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Reaalsemad veekogud: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Reaalsemad veekogud: {STRING}
|
||||||
@@ -1409,6 +1414,12 @@ STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimaalne kau
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Naftatöötlemistehased ehitatakse ainult kaardi piirile, see on rannikul saartega mängitaval kaardil.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Naftatöötlemistehased ehitatakse ainult kaardi piirile, see on rannikul saartega mängitaval kaardil.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Lumepiiri kõrgus: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Lumepiiri kõrgus: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Määra, millisel kõrgusel algab sub-arktiline maastik. Lumi mõjutab ka tööstuste loomist ja asulate kasvamise nõudeid
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Määra, millisel kõrgusel algab sub-arktiline maastik. Lumi mõjutab ka tööstuste loomist ja asulate kasvamise nõudeid
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Lumekatvus: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Mõjutab umbkaudset lume osakaalu lähisartikilisel maastikul. Lumi mõjutab ka tööstuste tekitamist ja asulate kasvuvajadusi. Kasutatakse vaid kaardi tekitamisel. Vahetult merepiiri kohal on maa alati lumevaba
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Kõrbekatvus: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Mõjuta umbkaudset kõrbe osakaalu troopilisel maastikul. Kõrb mõjutab ka tööstuste tekitamist. Kasutatakse vaid kaardi tekitamisel
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Maastiku järskus (ainult TerraGenesis) : {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Maastiku järskus (ainult TerraGenesis) : {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Vali mägede tihedus: Laugetel maastikel on vähem, laiema ulatusega mägesid. Mägistel maastikel on palju mägesid, mis võivad näha välja samasugused
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Vali mägede tihedus: Laugetel maastikel on vähem, laiema ulatusega mägesid. Mägistel maastikel on palju mägesid, mis võivad näha välja samasugused
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Väga lauge
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Väga lauge
|
||||||
@@ -1426,9 +1437,9 @@ STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Algupärane
|
|||||||
STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Täiustatud
|
STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Täiustatud
|
||||||
STR_CONFIG_SETTING_ROAD_SIDE :Sõidukid: {STRING}
|
STR_CONFIG_SETTING_ROAD_SIDE :Sõidukid: {STRING}
|
||||||
STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Vali liikluse suund
|
STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Vali liikluse suund
|
||||||
STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Kõrgustekaardi pööramine: {STRING}
|
STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Kõrguskaardi pööre: {STRING}
|
||||||
STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Vastu-päevapidi
|
STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Vastupäeva
|
||||||
STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Päevapidi
|
STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Päripäeva
|
||||||
STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Kõrguse level kui kõrgele lapik kaart läheb: {STRING}
|
STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Kõrguse level kui kõrgele lapik kaart läheb: {STRING}
|
||||||
STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Üks või enam ruutu põhjaäärel pole tühjad
|
STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Üks või enam ruutu põhjaäärel pole tühjad
|
||||||
STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Üks või enam ääreruutu pole vesi
|
STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Üks või enam ääreruutu pole vesi
|
||||||
@@ -1892,7 +1903,7 @@ STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Loo oma
|
|||||||
STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Alusta mitmikmängu
|
STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Alusta mitmikmängu
|
||||||
|
|
||||||
STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Vali 'parasvöötme' maastik
|
STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Vali 'parasvöötme' maastik
|
||||||
STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Vali 'lähispolaarne' maastik
|
STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Vali 'lähisarktiline' maastik
|
||||||
STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Vali 'lähistroopiline' maastik
|
STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Vali 'lähistroopiline' maastik
|
||||||
STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Vali 'mänguasjamaa' maastik
|
STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Vali 'mänguasjamaa' maastik
|
||||||
|
|
||||||
@@ -1930,7 +1941,7 @@ STR_CHEAT_NO_JETCRASH :{LTBLUE}Reaktii
|
|||||||
STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Muuda kaardi ülemkõrgust {ORANGE}{NUM}
|
STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Muuda kaardi ülemkõrgust {ORANGE}{NUM}
|
||||||
STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Muuda kaardil olevate mägede ülemkõrgust
|
STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Muuda kaardil olevate mägede ülemkõrgust
|
||||||
STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Parasvöötme maastik
|
STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Parasvöötme maastik
|
||||||
STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Arktiline maastik
|
STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Lähisarktiline maastik
|
||||||
STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Troopiline maastik
|
STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Troopiline maastik
|
||||||
STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :Mänguasjamaa
|
STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :Mänguasjamaa
|
||||||
STR_CHEAT_CHANGE_DATE :{LTBLUE}Muuda kuupäeva: {ORANGE} {DATE_SHORT}
|
STR_CHEAT_CHANGE_DATE :{LTBLUE}Muuda kuupäeva: {ORANGE} {DATE_SHORT}
|
||||||
@@ -2397,6 +2408,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Jah, laadi graafika alla
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Jah, laadi graafika alla
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ei, välju OpenTTD-st
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ei, välju OpenTTD-st
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Allalaadimine ebaõnnestus
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}Graafika allalaadimine ebaõnnestus.{}Palun laadida graafika alla käsitsi.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Välju OpenTTD-st
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Läbipaistvuse seadistus
|
STR_TRANSPARENCY_CAPTION :{WHITE}Läbipaistvuse seadistus
|
||||||
@@ -2474,7 +2488,7 @@ STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}Vali mel
|
|||||||
|
|
||||||
# Rail station construction window
|
# Rail station construction window
|
||||||
STR_STATION_BUILD_RAIL_CAPTION :{WHITE}Raudteejaama valik
|
STR_STATION_BUILD_RAIL_CAPTION :{WHITE}Raudteejaama valik
|
||||||
STR_STATION_BUILD_ORIENTATION :{BLACK}Orientatsioon
|
STR_STATION_BUILD_ORIENTATION :{BLACK}Suund
|
||||||
STR_STATION_BUILD_RAILROAD_ORIENTATION_TOOLTIP :{BLACK}Raudteejaamale suuna valimine
|
STR_STATION_BUILD_RAILROAD_ORIENTATION_TOOLTIP :{BLACK}Raudteejaamale suuna valimine
|
||||||
STR_STATION_BUILD_NUMBER_OF_TRACKS :{BLACK}Radade arv
|
STR_STATION_BUILD_NUMBER_OF_TRACKS :{BLACK}Radade arv
|
||||||
STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Vali raudteejaama perroonide arv
|
STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Vali raudteejaama perroonide arv
|
||||||
@@ -2483,8 +2497,8 @@ STR_STATION_BUILD_PLATFORM_LENGTH_TOOLTIP :{BLACK}Vali rau
|
|||||||
STR_STATION_BUILD_DRAG_DROP :{BLACK}Lohistamine
|
STR_STATION_BUILD_DRAG_DROP :{BLACK}Lohistamine
|
||||||
STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Ehita jaam kasutades hiirega lohistamist
|
STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Ehita jaam kasutades hiirega lohistamist
|
||||||
|
|
||||||
STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Vali jaama klass mida tahad näidata
|
STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Vali näidatav jaamarühm
|
||||||
STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Vali ehitatava jaama tüüp
|
STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Vali näidatav jaamaliik
|
||||||
|
|
||||||
STR_STATION_CLASS_DFLT :Esialgne jaam
|
STR_STATION_CLASS_DFLT :Esialgne jaam
|
||||||
STR_STATION_CLASS_WAYP :Meldepunktid
|
STR_STATION_CLASS_WAYP :Meldepunktid
|
||||||
@@ -2561,7 +2575,7 @@ STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Bussijaa
|
|||||||
STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Vali bussijaamale suund
|
STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Vali bussijaamale suund
|
||||||
STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Laadimisplatsi suund
|
STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Laadimisplatsi suund
|
||||||
STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Vali laadimisplatsile suund
|
STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Vali laadimisplatsile suund
|
||||||
STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Reisitrammi Jaama Suund
|
STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Reisitrammijaama suund
|
||||||
STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Vali reisitrammijaama suund
|
STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Vali reisitrammijaama suund
|
||||||
STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Kaubatrammi Jaama Suund
|
STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Kaubatrammi Jaama Suund
|
||||||
STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Vali kaubatrammijaama suund
|
STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Vali kaubatrammijaama suund
|
||||||
@@ -2592,7 +2606,7 @@ STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Ehita le
|
|||||||
# Airport construction window
|
# Airport construction window
|
||||||
STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Lennuvälja valik
|
STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Lennuvälja valik
|
||||||
STR_STATION_BUILD_AIRPORT_TOOLTIP :{BLACK}Vali lennuvälja suurus ja tüüp
|
STR_STATION_BUILD_AIRPORT_TOOLTIP :{BLACK}Vali lennuvälja suurus ja tüüp
|
||||||
STR_STATION_BUILD_AIRPORT_CLASS_LABEL :{BLACK}Lennujaama liik
|
STR_STATION_BUILD_AIRPORT_CLASS_LABEL :{BLACK}Lennuvälja järk
|
||||||
STR_STATION_BUILD_AIRPORT_LAYOUT_NAME :{BLACK}Paigutus {NUM}
|
STR_STATION_BUILD_AIRPORT_LAYOUT_NAME :{BLACK}Paigutus {NUM}
|
||||||
|
|
||||||
STR_AIRPORT_SMALL :Väike
|
STR_AIRPORT_SMALL :Väike
|
||||||
@@ -2622,7 +2636,7 @@ STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Maa ostm
|
|||||||
# Object construction window
|
# Object construction window
|
||||||
STR_OBJECT_BUILD_CAPTION :{WHITE}Objekti valik
|
STR_OBJECT_BUILD_CAPTION :{WHITE}Objekti valik
|
||||||
STR_OBJECT_BUILD_TOOLTIP :{BLACK}Vali ehitatav objekt. Shift valib ehitamise/hinna kuvamise režiimi
|
STR_OBJECT_BUILD_TOOLTIP :{BLACK}Vali ehitatav objekt. Shift valib ehitamise/hinna kuvamise režiimi
|
||||||
STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Vali ehitatava objekti klass
|
STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Vali ehitatava objekti järk
|
||||||
STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Objekti eelvaade
|
STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Objekti eelvaade
|
||||||
STR_OBJECT_BUILD_SIZE :{BLACK}Suurus: {GOLD}{NUM} x {NUM} ruutu
|
STR_OBJECT_BUILD_SIZE :{BLACK}Suurus: {GOLD}{NUM} x {NUM} ruutu
|
||||||
|
|
||||||
@@ -2737,7 +2751,7 @@ STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Kohalik
|
|||||||
STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :puudub
|
STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :puudub
|
||||||
STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Koordinaadid: {LTBLUE}{NUM} x {NUM} x {NUM} ({STRING})
|
STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Koordinaadid: {LTBLUE}{NUM} x {NUM} x {NUM} ({STRING})
|
||||||
STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Ehitatud: {LTBLUE}{DATE_LONG}
|
STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Ehitatud: {LTBLUE}{DATE_LONG}
|
||||||
STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Jaama liik: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Jaama järk: {LTBLUE}{STRING}
|
||||||
STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Jaama liik: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Jaama liik: {LTBLUE}{STRING}
|
||||||
STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Lennuvälja liik: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Lennuvälja liik: {LTBLUE}{STRING}
|
||||||
STR_LAND_AREA_INFORMATION_AIRPORT_NAME :{BLACK}Lennujaama nimi: {LTBLUE}{STRING}
|
STR_LAND_AREA_INFORMATION_AIRPORT_NAME :{BLACK}Lennujaama nimi: {LTBLUE}{STRING}
|
||||||
@@ -2942,17 +2956,22 @@ STR_SAVELOAD_OSKTITLE :{BLACK}Sisesta
|
|||||||
# World generation
|
# World generation
|
||||||
STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Maailma tekitamine
|
STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Maailma tekitamine
|
||||||
STR_MAPGEN_MAPSIZE :{BLACK}Kaardi mõõtmed:
|
STR_MAPGEN_MAPSIZE :{BLACK}Kaardi mõõtmed:
|
||||||
STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Määrab maakaardi mõõtmed ruutudes. Ruute, mida saab kasutada, on pisut vähem
|
STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Määrab kaardi mõõtmed ruutudes. Ruute, mida saab kasutada, on pisut vähem
|
||||||
STR_MAPGEN_BY :{BLACK}*
|
STR_MAPGEN_BY :{BLACK}*
|
||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Asustusi:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Asustuste arv:
|
||||||
STR_MAPGEN_DATE :{BLACK}Algus:
|
STR_MAPGEN_DATE :{BLACK}Algus:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Tööstustihedus:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Tööstustihedus:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Kaardi ülemkõrgus:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Kõrgpunkt:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Tõsta maksimaalset kaardi mägede kõrgust ühe võrra
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Suurenda kaardi kõrgpunkti ühe võrra
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Langeta maksimaalset kaardi mägede kõrgust ühe võrra
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Vähenda kaardi kõrgpunkti ühe võrra
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Lumepiiri kõrgus:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Lumekatvus:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Lumepiiri liigutamine ühe võrra üles
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Suurenda lumekatvust kümne protsendi võrra
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Lumepiiri liigutamine ühe võrra alla
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Vähenda lumekatvust kümne protsendi võrra
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Kõrbekatvus:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Suurenda kõrbekatvust kümne protsendi võrra
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Vähenda kõrbekatvust kümne protsendi võrra
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Maatekituse meetod:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Maatekituse meetod:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Maapinna tüüp:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Maapinna tüüp:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Merepinna tase:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Merepinna tase:
|
||||||
@@ -2973,13 +2992,15 @@ STR_MAPGEN_BORDER_RANDOM :{BLACK}Suvaline
|
|||||||
STR_MAPGEN_BORDER_RANDOMIZE :{BLACK}Suvaline
|
STR_MAPGEN_BORDER_RANDOMIZE :{BLACK}Suvaline
|
||||||
STR_MAPGEN_BORDER_MANUAL :{BLACK}Määratud
|
STR_MAPGEN_BORDER_MANUAL :{BLACK}Määratud
|
||||||
|
|
||||||
STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Kõrgustekaardi pööre:
|
STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Kõrguskaardi pööre:
|
||||||
STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Kõrgusekaardi nimi:
|
STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Kõrguskaardi nimi:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Suurus:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Suurus:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Muuda maksimaalset kaardi kõrgust
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Soovitud kõrgpunkt
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Muuda lumepiiri kõrgust
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Kõrgpunkt
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Lumekatvus (%)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Kõrbekatvus (%)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Muuda algusaastat
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Muuda algusaastat
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -3360,7 +3381,7 @@ STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}
|
|||||||
|
|
||||||
STR_STATION_VIEW_GROUP :{BLACK}Jaotusalus
|
STR_STATION_VIEW_GROUP :{BLACK}Jaotusalus
|
||||||
STR_STATION_VIEW_WAITING_STATION :Jaam: ootel
|
STR_STATION_VIEW_WAITING_STATION :Jaam: ootel
|
||||||
STR_STATION_VIEW_WAITING_AMOUNT :Summa: ootel
|
STR_STATION_VIEW_WAITING_AMOUNT :Kogus: ootel
|
||||||
STR_STATION_VIEW_PLANNED_STATION :Jaam: eeldatav
|
STR_STATION_VIEW_PLANNED_STATION :Jaam: eeldatav
|
||||||
STR_STATION_VIEW_PLANNED_AMOUNT :Summa: eeldatav
|
STR_STATION_VIEW_PLANNED_AMOUNT :Summa: eeldatav
|
||||||
STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} jaamast {STATION}
|
STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} jaamast {STATION}
|
||||||
@@ -3598,7 +3619,7 @@ STR_GROUP_RENAME_TOOLTIP :{BLACK}Ümberni
|
|||||||
STR_GROUP_LIVERY_TOOLTIP :{BLACK}Muuda valitud jao värvistikku
|
STR_GROUP_LIVERY_TOOLTIP :{BLACK}Muuda valitud jao värvistikku
|
||||||
STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klõpsa, et kaitsta seda jagu globaalse automaatasenduse eest
|
STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klõpsa, et kaitsta seda jagu globaalse automaatasenduse eest
|
||||||
|
|
||||||
STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Kustuta Grupp
|
STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Kõrvalda jagu
|
||||||
STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Kas oled kindel, et tahad kustutada selle grupi ja kõik järglased?
|
STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Kas oled kindel, et tahad kustutada selle grupi ja kõik järglased?
|
||||||
|
|
||||||
STR_GROUP_ADD_SHARED_VEHICLE :Kõik jagatud sõidukid
|
STR_GROUP_ADD_SHARED_VEHICLE :Kõik jagatud sõidukid
|
||||||
@@ -4022,8 +4043,8 @@ STR_ORDERS_LIST_TOOLTIP :{BLACK}Korraldu
|
|||||||
STR_ORDER_INDEX :{COMMA}:{NBSP}
|
STR_ORDER_INDEX :{COMMA}:{NBSP}
|
||||||
STR_ORDER_TEXT :{STRING} {STRING} {STRING}
|
STR_ORDER_TEXT :{STRING} {STRING} {STRING}
|
||||||
|
|
||||||
STR_ORDERS_END_OF_ORDERS :- - Korraldused läbi - -
|
STR_ORDERS_END_OF_ORDERS :- - Korralduste lõpp - -
|
||||||
STR_ORDERS_END_OF_SHARED_ORDERS :- - Jagatud korraldused läbi - -
|
STR_ORDERS_END_OF_SHARED_ORDERS :- - Jagatud korralduste lõpp - -
|
||||||
|
|
||||||
# Order bottom buttons
|
# Order bottom buttons
|
||||||
STR_ORDER_NON_STOP :{BLACK}Vahepeatusteta
|
STR_ORDER_NON_STOP :{BLACK}Vahepeatusteta
|
||||||
@@ -4397,6 +4418,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Mäng ei
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Hiiglaslik kuvapaugutus
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Hiiglaslik kuvapaugutus
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Kuvapaugutuse mõõtmed saavad olema {COMMA} x {COMMA} pikslit. Kuvapaugutuse tegemine võib võtta tükk aega. Kas sa oled kindel, et sa soovid jätkata?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Kuvapaugutuse mõõtmed saavad olema {COMMA} x {COMMA} pikslit. Kuvapaugutuse tegemine võib võtta tükk aega. Kas sa oled kindel, et sa soovid jätkata?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Kõrguskaart edukalt salvestatud, kui '{STRING}'. Kõrgpunkt on {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Ekraanipilt on edukalt salvestatud nimega '{STRING}'
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Ekraanipilt on edukalt salvestatud nimega '{STRING}'
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Ekraanipildi tegemine nurjus!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Ekraanipildi tegemine nurjus!
|
||||||
|
|
||||||
|
|||||||
@@ -947,6 +947,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :annað
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base grafikk sett
|
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base grafikk sett
|
||||||
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Vel ta base grafikk setti tú vil brúka
|
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Vel ta base grafikk setti tú vil brúka
|
||||||
STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} vantandi/oyðiløgd fíl{P a ir}
|
STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} vantandi/oyðiløgd fíl{P a ir}
|
||||||
@@ -2438,9 +2439,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nr. av bygdum:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nr. av bygdum:
|
||||||
STR_MAPGEN_DATE :{BLACK}Dato:
|
STR_MAPGEN_DATE :{BLACK}Dato:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nr. av ídnaðum:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nr. av ídnaðum:
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hædd á kava linju:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flyt kava linjuna eitt upp
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flyt kava linjuna eitt niður
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Lendis framleiðari:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Lendis framleiðari:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Slag av lendi:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Slag av lendi:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sjóvarmáli:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sjóvarmáli:
|
||||||
@@ -2466,7 +2464,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Navn á
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Stødd:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Stødd:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Broyt hædd á kava linju
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Broyt byrjunar ár
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Broyt byrjunar ár
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -755,7 +755,7 @@ STR_SMALLMAP_LEGENDA_WATER :{TINY_FONT}{BLA
|
|||||||
STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Ei omistajaa
|
STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Ei omistajaa
|
||||||
STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Taajamia
|
STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Taajamia
|
||||||
STR_SMALLMAP_LEGENDA_INDUSTRIES :{TINY_FONT}{BLACK}Teollisuutta
|
STR_SMALLMAP_LEGENDA_INDUSTRIES :{TINY_FONT}{BLACK}Teollisuutta
|
||||||
STR_SMALLMAP_LEGENDA_DESERT :{TINY_FONT}{BLACK}Autiomaata
|
STR_SMALLMAP_LEGENDA_DESERT :{TINY_FONT}{BLACK}Aavikko
|
||||||
STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLACK}Lunta
|
STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLACK}Lunta
|
||||||
|
|
||||||
STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Näytä kuntien nimet kartalla
|
STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Näytä kuntien nimet kartalla
|
||||||
@@ -1006,6 +1006,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Laitteis
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Valitse tämä, jos haluat, että OpenTTD yrittää käyttää laitteistokiihdytystä. Muutettu asetus tulee voimaan vasta pelin uudelleenkäynnistyksen jälkeen.
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Valitse tämä, jos haluat, että OpenTTD yrittää käyttää laitteistokiihdytystä. Muutettu asetus tulee voimaan vasta pelin uudelleenkäynnistyksen jälkeen.
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Asetus tulee voimaan vasta pelin uudelleenkäynnistyksen jälkeen
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Asetus tulee voimaan vasta pelin uudelleenkäynnistyksen jälkeen
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}Pystytahdistus
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Valitse tämä ottaaksesi käyttöön näytön pystytahdistuksen. Muutettu asetus tulee voimaan vasta pelin uudelleenkäynnistyksen jälkeen. Edellyttää, että laitteistokiihdytys on käytössä.
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Käyttöliittymän koko
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Käyttöliittymän koko
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Valitse käyttöliittymäelementtien koko
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Valitse käyttöliittymäelementtien koko
|
||||||
|
|
||||||
@@ -1124,6 +1127,8 @@ STR_TERRAIN_TYPE_FLAT :Tasainen
|
|||||||
STR_TERRAIN_TYPE_HILLY :Kukkulainen
|
STR_TERRAIN_TYPE_HILLY :Kukkulainen
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Vuoristoinen
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Vuoristoinen
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Vuorikiipeilijä
|
STR_TERRAIN_TYPE_ALPINIST :Vuorikiipeilijä
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Oma korkeus
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Oma korkeus ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Salliva
|
STR_CITY_APPROVAL_PERMISSIVE :Salliva
|
||||||
STR_CITY_APPROVAL_TOLERANT :Suvaitseva
|
STR_CITY_APPROVAL_TOLERANT :Suvaitseva
|
||||||
@@ -1205,9 +1210,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Ottaa käyttö
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Valtuuston asenne alueiden uudelleenjärjestelyyn: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Valtuuston asenne alueiden uudelleenjärjestelyyn: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Valitse, kuinka paljon yhtiöiden aiheuttama melu ja ympäristövahingot vaikuttavat niiden arvioihin sekä tuleviin rakennustoimiin alueella
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Valitse, kuinka paljon yhtiöiden aiheuttama melu ja ympäristövahingot vaikuttavat niiden arvioihin sekä tuleviin rakennustoimiin alueella
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Kartan suurin sallittu korkeus: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Kartan korkeusraja: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Määritä suurin sallittu korkeus vuorille
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Aseta kartan maaston maksimikorkeus. Kun valittuna on ”(auto)”, sopiva arvo valitaan maaston luomisen jälkeen
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Tämä arvo ei kelpaa kartan suurimmaksi sallituksi korkeudeksi, sillä kartalla on ainakin yksi sitä korkeampi vuori
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(auto)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Tämä arvo ei kelpaa kartan korkeusrajaksi, sillä kartalla on ainakin yksi sitä korkeampi vuori
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Salli maaston muokkaaminen rakennusten, raiteiden jne. juurella: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Salli maaston muokkaaminen rakennusten, raiteiden jne. juurella: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Sallii maaston muokkaamisen rakennusten ja ratojen alta tuhoamatta niitä
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Sallii maaston muokkaamisen rakennusten ja ratojen alta tuhoamatta niitä
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Realistisemman kokoiset vaikutusalueet: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Realistisemman kokoiset vaikutusalueet: {STRING}
|
||||||
@@ -1351,7 +1358,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Määritä, kui
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Suurin sallittu etäisyys kartan reunoilta öljyteollisuudelle: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Suurin sallittu etäisyys kartan reunoilta öljyteollisuudelle: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Öljynjalostamojen ja öljylauttojen suurin etäisyys kartan reunasta. Saarikartoilla tämä takaa sen, että ne ovat lähellä rannikkoa. Yli 256 ruudun kartoilla tätä arvoa suurennetaan suhteessa kartan kokoon.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Öljynjalostamojen ja öljylauttojen suurin etäisyys kartan reunasta. Saarikartoilla tämä takaa sen, että ne ovat lähellä rannikkoa. Yli 256 ruudun kartoilla tätä arvoa suurennetaan suhteessa kartan kokoon.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Lumirajan korkeus: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Lumirajan korkeus: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Määritä, millä korkeudella lumiraja on pohjoisessa maastotyypissä. Lumi vaikuttaa teollisuuslaitosten luontiin sekä kuntien kasvuedellytyksiin
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Määritä, millä korkeudella lumiraja on pohjoisessa maastotyypissä. Lumi vaikuttaa teollisuuslaitosten luontiin sekä kuntien kasvuedellytyksiin. Voidaan muuttaa vain Skenaariomuokkaimessa, muuten lasketaan ”lumen peiton” perusteella
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Lumen peitto: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Säätele lumen määrän suuruusluokkaa pohjoisessa maastossa. Lumi vaikuttaa myös teollisuuden luontiin ja kuntien kasvuedellytyksiin. Käytetään vain karttaa luodessa. Juuri merenpinnan yläpuolella oleva maa on aina lumetonta
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}{NBSP}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Aavikon peitto: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Säätele aavikon määrän suuruusluokkaa subtrooppisessa maastossa. Aavikko vaikuttaa myös teollisuuden luontiin. Käytetään vain karttaa luodessa
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}{NBSP}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Maaston epätasaisuus: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Maaston epätasaisuus: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Vain TerraGenesis) Määritä mäkien tiheys: Tasaisessa maastossa mäet ovat laajempia ja niitä on vähemmän. Epätasaisessa maastossa on enemmän mäkiä, mikä voi saada maaston näyttämään itseään toistavalta
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Vain TerraGenesis) Määritä mäkien tiheys: Tasaisessa maastossa mäet ovat laajempia ja niitä on vähemmän. Epätasaisessa maastossa on enemmän mäkiä, mikä voi saada maaston näyttämään itseään toistavalta
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Erittäin tasainen
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Erittäin tasainen
|
||||||
@@ -1661,12 +1674,17 @@ STR_CONFIG_SETTING_ZOOM_MIN :Suurin sallittu
|
|||||||
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Suurin mahdollinen lähennystaso näkymille. Huomioi, että suuret lähennystasot vaativat enemmän muistia
|
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Suurin mahdollinen lähennystaso näkymille. Huomioi, että suuret lähennystasot vaativat enemmän muistia
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX :Suurin sallittu pienennystaso: {STRING}
|
STR_CONFIG_SETTING_ZOOM_MAX :Suurin sallittu pienennystaso: {STRING}
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Pienin mahdollinen lähennystaso näkymille. Pienet lähennystasot voivat aiheuttaa suorituskykyongelmia
|
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Pienin mahdollinen lähennystaso näkymille. Pienet lähennystasot voivat aiheuttaa suorituskykyongelmia
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Korkein käytettävä sprite-resoluutio: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Rajoita suurinta spriteille käytettävää resoluutiota. Resoluution rajoittaminen estää korkean tarkkuuden grafiikoiden käyttämisen vaikka niitä olisi saatavilla. Tämä voi auttaa pitämään pelin ulkoasun yhtenäisenä käytettäessä sekaisin GRF-tiedostoja, joista osalla on ja osalla ei ole korkean tarkkuuden grafiikoita.
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Tavallinen
|
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Tavallinen
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_NORMAL :1x
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH :Kuntien kasvunopeus: {STRING}
|
STR_CONFIG_SETTING_TOWN_GROWTH :Kuntien kasvunopeus: {STRING}
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Kunnan kasvunopeus
|
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Kunnan kasvunopeus
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Ei kasvua
|
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Ei kasvua
|
||||||
@@ -2332,8 +2350,11 @@ STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Ei voitu
|
|||||||
STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Puuttuvat grafiikat
|
STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Puuttuvat grafiikat
|
||||||
STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD vaatii toimiakseen grafiikat, mutta niitä ei löydetty. Sallitaanko grafiikoiden lataus ja asennus?
|
STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD vaatii toimiakseen grafiikat, mutta niitä ei löydetty. Sallitaanko grafiikoiden lataus ja asennus?
|
||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Kyllä, lataa grafiiikat
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Kyllä, lataa grafiiikat
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ei, sulje OpenTTD
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ei, lopeta OpenTTD
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Lataus epäonnistui
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}Grafiikoiden lataus epäonnistui.{}Lataa grafiikat manuaalisesti.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Lopeta OpenTTD
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Läpinäkyvyysasetukset
|
STR_TRANSPARENCY_CAPTION :{WHITE}Läpinäkyvyysasetukset
|
||||||
@@ -2884,12 +2905,17 @@ STR_MAPGEN_BY :{BLACK}×
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Kuntien määrä:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Kuntien määrä:
|
||||||
STR_MAPGEN_DATE :{BLACK}Päivämäärä:
|
STR_MAPGEN_DATE :{BLACK}Päivämäärä:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Teollisuuden määrä:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Teollisuuden määrä:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Suurin sallittu kartan korkeus:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Korkein huippu:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Kasvata suurinta sallittua vuorten korkeutta yhdellä
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Korota kartan korkeimman huipun maksimikorkeutta yhdellä
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Vähennä suurinta sallittua vuorten korkeutta yhdellä
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Madalla kartan korkeimman huipun maksimikorkeutta yhdellä
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Lumirajan korkeus:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Lumen peitto:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Siirrä lumirajaa yksi taso ylöspäin
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Kasvata lumen peittoa 10 prosentilla
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Siirrä lumirajaa yksi taso alaspäin
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Vähennä lumen peittoa 10 prosentilla
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}{NBSP}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Aavikon peitto:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Kasvata aavikon peittoa 10 prosentilla
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Vähennä aavikon peittoa 10 prosentilla
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}{NBSP}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Maastogeneraattori:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Maastogeneraattori:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Maaston tyyppi:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Maaston tyyppi:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Merenpinta:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Merenpinta:
|
||||||
@@ -2915,8 +2941,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Korkeusk
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Koko:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Koko:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM}×{NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM}×{NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Muuta suurinta sallittua kartan korkeutta
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Huipun tavoitekorkeus
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Vaihda lumirajan korkeutta
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Korkein huippu
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Lumen peitto (%)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Aavikon peitto (%)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Vaihda aloitusvuosi
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Vaihda aloitusvuosi
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -4333,6 +4361,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Vain til
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Suuri kuvankaappaus
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Suuri kuvankaappaus
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Kuvankaappauksen tarkkuus tulee olemaan {COMMA} x {COMMA} pikseliä. Kuvankaappauksen ottaminen voi kestää jonkin aikaa. Haluatko jatkaa?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Kuvankaappauksen tarkkuus tulee olemaan {COMMA} x {COMMA} pikseliä. Kuvankaappauksen ottaminen voi kestää jonkin aikaa. Haluatko jatkaa?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Korkeuskartta tallennettu nimellä ”{STRING}”. Korkein huippu on {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Kuvakaappaus tallennettu nimellä ”{STRING}”.
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Kuvakaappaus tallennettu nimellä ”{STRING}”.
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Kuvakaappaus epäonnistui!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Kuvakaappaus epäonnistui!
|
||||||
|
|
||||||
@@ -4438,7 +4467,7 @@ STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION :{WHITE}Ei voi r
|
|||||||
STR_ERROR_CAN_T_BUILD_DOCK_HERE :{WHITE}Satamaa ei voi rakentaa tähän...
|
STR_ERROR_CAN_T_BUILD_DOCK_HERE :{WHITE}Satamaa ei voi rakentaa tähän...
|
||||||
STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Lentokenttää ei voi rakentaa...
|
STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Lentokenttää ei voi rakentaa...
|
||||||
|
|
||||||
STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Liitä yhteen useampi asema/lastausalue.
|
STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Vieressä on useampi kuin yksi olemassaoleva asema tai kuormausalue.
|
||||||
STR_ERROR_STATION_TOO_SPREAD_OUT :{WHITE}... asema liian levittäytynyt
|
STR_ERROR_STATION_TOO_SPREAD_OUT :{WHITE}... asema liian levittäytynyt
|
||||||
STR_ERROR_TOO_MANY_STATIONS_LOADING :{WHITE}Liian monta asemaa ja lastausaluetta.
|
STR_ERROR_TOO_MANY_STATIONS_LOADING :{WHITE}Liian monta asemaa ja lastausaluetta.
|
||||||
STR_ERROR_TOO_MANY_STATION_SPECS :{WHITE}Rautatieasema on jakautunut liian moneen osaan
|
STR_ERROR_TOO_MANY_STATION_SPECS :{WHITE}Rautatieasema on jakautunut liian moneen osaan
|
||||||
@@ -4471,7 +4500,7 @@ STR_ERROR_MUST_DEMOLISH_DOCK_FIRST :{WHITE}Satama p
|
|||||||
STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Lentokenttä pitää tuhota ensin.
|
STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Lentokenttä pitää tuhota ensin.
|
||||||
|
|
||||||
# Waypoint related errors
|
# Waypoint related errors
|
||||||
STR_ERROR_WAYPOINT_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Liittää useamman kuin yhden reittipisteen
|
STR_ERROR_WAYPOINT_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Vieressä on useampi kuin yksi olemassaoleva reittipiste.
|
||||||
STR_ERROR_TOO_CLOSE_TO_ANOTHER_WAYPOINT :{WHITE}Liian lähellä toista reittipistettä
|
STR_ERROR_TOO_CLOSE_TO_ANOTHER_WAYPOINT :{WHITE}Liian lähellä toista reittipistettä
|
||||||
|
|
||||||
STR_ERROR_CAN_T_BUILD_TRAIN_WAYPOINT :{WHITE}Junien reittipistettä ei voi rakentaa tähän...
|
STR_ERROR_CAN_T_BUILD_TRAIN_WAYPOINT :{WHITE}Junien reittipistettä ei voi rakentaa tähän...
|
||||||
|
|||||||
@@ -1007,6 +1007,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK} Accél
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Cochez cette case permet à OpenTTD d'utiliser l'accélération matérielle, si possible. Un paramètre modifié ne sera pris en compte qu'au redémarrage du jeu
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Cochez cette case permet à OpenTTD d'utiliser l'accélération matérielle, si possible. Un paramètre modifié ne sera pris en compte qu'au redémarrage du jeu
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Les paramètres ne prendront effet qu'après le redémarrage du jeu
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Les paramètres ne prendront effet qu'après le redémarrage du jeu
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Cochez cette case pour activer la synchronisation verticale de l'écran. La modification de ce paramètres ne sera effective qu'après le redémarrage du jeu. Fonctionne uniquement si l’accélération matérielle est active
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Taille d'interface
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Taille d'interface
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Choisir la taille d'élément d'interface à utiliser
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Choisir la taille d'élément d'interface à utiliser
|
||||||
|
|
||||||
@@ -1023,7 +1026,7 @@ STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normal
|
|||||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Taille double
|
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Taille double
|
||||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Taille quadruple
|
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Taille quadruple
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GRAPHICS :Graphiques {BLACK}
|
STR_GAME_OPTIONS_GRAPHICS :{BLACK} Graphiques
|
||||||
|
|
||||||
STR_GAME_OPTIONS_REFRESH_RATE :{BLACK} Taux de rafraîchissement de l'affichage
|
STR_GAME_OPTIONS_REFRESH_RATE :{BLACK} Taux de rafraîchissement de l'affichage
|
||||||
STR_GAME_OPTIONS_REFRESH_RATE_TOOLTIP :{BLACK} Sélectionnez la fréquence de rafraîchissement à utiliser
|
STR_GAME_OPTIONS_REFRESH_RATE_TOOLTIP :{BLACK} Sélectionnez la fréquence de rafraîchissement à utiliser
|
||||||
@@ -1125,6 +1128,8 @@ STR_TERRAIN_TYPE_FLAT :Plat
|
|||||||
STR_TERRAIN_TYPE_HILLY :Collinaire
|
STR_TERRAIN_TYPE_HILLY :Collinaire
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Montagneux
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Montagneux
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpin
|
STR_TERRAIN_TYPE_ALPINIST :Alpin
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Hauteur personnalisée
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Hauteur personnalisée ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Laxiste
|
STR_CITY_APPROVAL_PERMISSIVE :Laxiste
|
||||||
STR_CITY_APPROVAL_TOLERANT :Tolérante
|
STR_CITY_APPROVAL_TOLERANT :Tolérante
|
||||||
@@ -1206,9 +1211,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Activer/Désact
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Attitude du conseil municipal envers la restructuration de la zone{NBSP}: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Attitude du conseil municipal envers la restructuration de la zone{NBSP}: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Définit comment le bruit et les dommages environnementaux des compagnies affectent leur réputation et leurs prochaines actions de constructions dans la zone
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Définit comment le bruit et les dommages environnementaux des compagnies affectent leur réputation et leurs prochaines actions de constructions dans la zone
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altitude maximum de la carte{NBSP}: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Hauteur limite de la carte: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Définir l'altitude maximum autorisée pour les montagnes sur la carte
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Définissez la hauteur maximale du terrain de la carte. Avec "(auto)", une bonne valeur sera choisie après la création du terrain
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Vous ne pouvez pas régler l'altitude maximum de la carte sur cette valeur. Au moins une montagne sur la carte est plus haute
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(auto)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Vous ne pouvez pas définir la hauteur limite de la carte sur cette valeur. Il y a uu moins une montagne sur la carte qui est plus haute
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Terrassement sous les bâtiments, voies, etc.{NBSP}: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Terrassement sous les bâtiments, voies, etc.{NBSP}: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Autoriser le terrassement sous les bâtiments et les voies sans les retirer
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Autoriser le terrassement sous les bâtiments et les voies sans les retirer
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Autoriser des zones de desserte plus réalistes{NBSP}: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Autoriser des zones de desserte plus réalistes{NBSP}: {STRING}
|
||||||
@@ -1352,7 +1359,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Définit combie
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distance maximum depuis les bords pour les industries pétrolières{NBSP}: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distance maximum depuis les bords pour les industries pétrolières{NBSP}: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limite de distance par rapport au bord de la carte où les raffineries et les plateformes pétrolières peuvent être construites. Sur les cartes d'îles cela assure qu'elles sont près de la côte. Sur les cartes plus large que 256 tuiles, cette valeur est mise à l'échelle.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limite de distance par rapport au bord de la carte où les raffineries et les plateformes pétrolières peuvent être construites. Sur les cartes d'îles cela assure qu'elles sont près de la côte. Sur les cartes plus large que 256 tuiles, cette valeur est mise à l'échelle.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altitude d'enneigement{NBSP}: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altitude d'enneigement{NBSP}: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Contrôle à quelle altitude la neige commence dans le climat sub-arctique.La neige affecte aussi la génération des industries et les exigences pour la croissance des villes
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Contrôle à quelle altitude la neige commence dans le climat sub-arctique. La neige affecte aussi la génération des industries et les exigences pour la croissance des villes. Ne peut être modifié que via l'éditeur de scénario autrement il est calculé via "couverture de neige"
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Couverture de neige: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Contrôle la quantité approximative de neige sur le paysage sub-arctique. La neige affecte également la production des industrielles et les besoins de croissance des villes. Seulement utilisé lors de la création de la carte. La terre juste au-dessus du niveau de la mer est toujours sans neige
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Couverture du désert: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Contrôlez la quantité approximative de zone du désert sur le paysage tropical. Le désert affecte également la création du nombre d'industries. Uniquement utilisé lors de la création de la carte
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rugosité du terrain{NBSP}: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rugosité du terrain{NBSP}: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Choisir la fréquence des collines{NBSP}: Les paysages doux ont des collines moins nombreuses et plus éloignées. Les paysages rudes ont beaucoup de collines, ce qui peut sembler répétitif
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Choisir la fréquence des collines{NBSP}: Les paysages doux ont des collines moins nombreuses et plus éloignées. Les paysages rudes ont beaucoup de collines, ce qui peut sembler répétitif
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Très lisse
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Très lisse
|
||||||
@@ -1662,12 +1675,17 @@ STR_CONFIG_SETTING_ZOOM_MIN :Zoom avant maxi
|
|||||||
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Le zoom avant maximum pour les vues. Noter qu'activer un plus grand zoom avant augment les besoins en mémoire
|
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Le zoom avant maximum pour les vues. Noter qu'activer un plus grand zoom avant augment les besoins en mémoire
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX :Zoom arrière maximum{NBSP}: {STRING}
|
STR_CONFIG_SETTING_ZOOM_MAX :Zoom arrière maximum{NBSP}: {STRING}
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Le zoom arrière maximum pour les vues. Noter que l'usage d'un plus grand zoom arrière peut causer un retard
|
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Le zoom arrière maximum pour les vues. Noter que l'usage d'un plus grand zoom arrière peut causer un retard
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Résolution maximale des sprites{NBSP}: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Limite la résolution des graphismes. Même si des sprites de plus haute résolution sont disponibles, ils ne seront pas utilisés. Cela peut aider à garder un aspect cohérent quand plusieurs fichiers GRF avec des résolutions différentes sont utilisés.
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normal
|
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normal
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_NORMAL :1x
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH :Vitesse de croissance des villes{NBSP}: {STRING}
|
STR_CONFIG_SETTING_TOWN_GROWTH :Vitesse de croissance des villes{NBSP}: {STRING}
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Vitesse de croissance des villes
|
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Vitesse de croissance des villes
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Aucune
|
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Aucune
|
||||||
@@ -2335,6 +2353,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Oui, télécharger les graphiques
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Oui, télécharger les graphiques
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Non, quitter OpenTTD
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Non, quitter OpenTTD
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Téléchargement échoué
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}Le téléchargement des graphismes a échoué.{}Il faudrait les télécharger manuellement.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Quitter OpenTTD
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Options de transparence
|
STR_TRANSPARENCY_CAPTION :{WHITE}Options de transparence
|
||||||
@@ -2885,12 +2906,17 @@ STR_MAPGEN_BY :{BLACK}{NBSP}×
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nb. de villes{NBSP}:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nb. de villes{NBSP}:
|
||||||
STR_MAPGEN_DATE :{BLACK}Date{NBSP}:
|
STR_MAPGEN_DATE :{BLACK}Date{NBSP}:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nb. d'industries{NBSP}:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nb. d'industries{NBSP}:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altitude maximum de la carte
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Sommet le plus élevé:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Augmenter l'altitude maximum des montagnes sur la carte de 1
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Augmenter la hauteur maximale du plus haut sommet de la carte de un
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Réduire l'altitude maximum des montagne sur la carte de 1
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Diminuer la hauteur maximale du plus haut sommet de la carte de un
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Alt. d'enneigement{NBSP}:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Couverture de la neige:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Augmenter l'altitude d'enneigement
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Augmenter la couverture de neige de dix pour cent
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Baisser l'altitude d'enneigement
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Diminuer la couverture de neige de dix pour cent
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Couverture du désert:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Augmenter la couverture du désert de dix pour cent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Diminuer la couverture du désert de dix pour cent
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Générateur{NBSP}:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Générateur{NBSP}:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Type de terrain{NBSP}:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Type de terrain{NBSP}:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Niveau de la mer{NBSP}:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Niveau de la mer{NBSP}:
|
||||||
@@ -2916,8 +2942,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nom de l
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Taille{NBSP}:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Taille{NBSP}:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM}{NBSP}×{NBSP}{NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM}{NBSP}×{NBSP}{NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Modifier l'altitude maximum de la carte
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Hauteur du pic
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Modifier l'altitude d'enneigement
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Le point le plus haut
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Couverture de neige (en %)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Couverture du désert (en %)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Modifier l'année de départ
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Modifier l'année de départ
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -3412,7 +3440,7 @@ STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Déména
|
|||||||
STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Reconstruire ailleurs le siège de la compagnie pour le prix de 1{NBSP}% de sa valeur.{}Shift-clic pour afficher seulement le coût estimé.
|
STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Reconstruire ailleurs le siège de la compagnie pour le prix de 1{NBSP}% de sa valeur.{}Shift-clic pour afficher seulement le coût estimé.
|
||||||
STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Détails
|
STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Détails
|
||||||
STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Afficher le détail des calculs d'infrastructure
|
STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Afficher le détail des calculs d'infrastructure
|
||||||
STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :Donner de l’argent
|
STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Donner de l’argent
|
||||||
STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Donner de l’argent à cette compagnie
|
STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Donner de l’argent à cette compagnie
|
||||||
|
|
||||||
STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nouveau visage
|
STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nouveau visage
|
||||||
@@ -4334,6 +4362,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Seuls le
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Très grande capture d'écran
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Très grande capture d'écran
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}La capture d'écran aura une résolution de {COMMA} x {COMMA} pixels. Faire cette capture peut prendre un moment . Êtes-vous sûr de vouloir continuer{NBSP}?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}La capture d'écran aura une résolution de {COMMA} x {COMMA} pixels. Faire cette capture peut prendre un moment . Êtes-vous sûr de vouloir continuer{NBSP}?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}La carte de hauteur a bien été enregistrée sous '{STRING}'. Le pic le plus élevé est {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Copie d'écran enregistrée avec succès sous "{STRING}"
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Copie d'écran enregistrée avec succès sous "{STRING}"
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Échec de la copie d'écran{NBSP}!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Échec de la copie d'écran{NBSP}!
|
||||||
|
|
||||||
|
|||||||
@@ -1174,6 +1174,7 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Tagh dù
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :Gnàthaichte
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :Gnàthaichte
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Meud na h-eadar-aghaidh
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Meud na h-eadar-aghaidh
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Tagh am meud airson rud san eadar-aghaidh
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Tagh am meud airson rud san eadar-aghaidh
|
||||||
|
|
||||||
@@ -1360,8 +1361,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Toglaich dunaid
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Beachdan comhairle a' bhaile air leasachadh raointean: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Beachdan comhairle a' bhaile air leasachadh raointean: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Tagh am meud dhe dh'fhuaim is milleadh na h-àrainneachd le companaidhean a tha a dhìth mus bi buaidh air luachadh a' bhaile is barrachd togail san sgìre
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Tagh am meud dhe dh'fhuaim is milleadh na h-àrainneachd le companaidhean a tha a dhìth mus bi buaidh air luachadh a' bhaile is barrachd togail san sgìre
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Àirde as motha a’ mhapa: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Suidhich an àirde as motha aig beanntan a bhios ceadaichte air a’ mhapa
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Chan urrainn dhut àirde as motha a’ mhapa a shuidheachadh air an luach seo. Tha beinn air a’ mhapa a tha nas àirde.
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Chan urrainn dhut àirde as motha a’ mhapa a shuidheachadh air an luach seo. Tha beinn air a’ mhapa a tha nas àirde.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Ceadaich atharrachadh crutha-tìre fo thogalaichean, slighean agus msaa.: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Ceadaich atharrachadh crutha-tìre fo thogalaichean, slighean agus msaa.: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Ceadaich atharrachadh crutha-tìre fo thogalaichean is slighean gun a bhith gan toirt air falbh
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Ceadaich atharrachadh crutha-tìre fo thogalaichean is slighean gun a bhith gan toirt air falbh
|
||||||
@@ -2967,12 +2966,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Bailtean:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Bailtean:
|
||||||
STR_MAPGEN_DATE :{BLACK}Ceann-latha:
|
STR_MAPGEN_DATE :{BLACK}Ceann-latha:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Gnìomhachasan:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Gnìomhachasan:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Àirde as motha a’ mhapa
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Meudaich an àirde as motha dhe bheanntan air a’ mhapa le a h-aon
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Lùghdaich an àirde as motha dhe bheanntan air a’ mhapa le a h-aon
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Àirde na loidhne-shneachda:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Gluais an loidhne-shneachda suas aon cheum
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Gluais an loidhne-shneachda sìos aon cheum
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Gineadair crutha-thìre:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Gineadair crutha-thìre:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Seòrsa a' chrutha-thìre:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Seòrsa a' chrutha-thìre:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Àirde na mara:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Àirde na mara:
|
||||||
@@ -2998,8 +2991,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Ainm a'
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Meud:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Meud:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Atharraich an àirde as motha air mapa
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Atharraich àirde na loidhne-shneachda
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Atharraich am bliadhna-tòiseachaidh
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Atharraich am bliadhna-tòiseachaidh
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -989,6 +989,7 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Seleccio
|
|||||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :outra
|
STR_GAME_OPTIONS_RESOLUTION_OTHER :outra
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Tamaño da interface
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Tamaño da interface
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Seleciona o tamaño de elementos da interface a usar
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Seleciona o tamaño de elementos da interface a usar
|
||||||
|
|
||||||
@@ -1180,8 +1181,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Activa os desas
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Actitude das autoridades locáis cara a restruturacións de áreas: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Actitude das autoridades locáis cara a restruturacións de áreas: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Escolle ata que punto o ruido e danos medioambientais producidos polas compañias afectan á súa valoración municipal e ás próximas actividades construtivas na súa área
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Escolle ata que punto o ruido e danos medioambientais producidos polas compañias afectan á súa valoración municipal e ás próximas actividades construtivas na súa área
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altura máxima do mapa: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Establecer a altura máxima permitida para os montes do mapa
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Non podes establecer a altura máxima do mapa a este valor. Canda menos un monte do mapa é maior
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Non podes establecer a altura máxima do mapa a este valor. Canda menos un monte do mapa é maior
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Permitir modificacións do terreo baixo edificios, vías, etc. (autopendente): {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Permitir modificacións do terreo baixo edificios, vías, etc. (autopendente): {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permite modificar o terreo baixo edificacións e vías sen retiralos
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permite modificar o terreo baixo edificacións e vías sen retiralos
|
||||||
@@ -2198,6 +2197,7 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} un
|
|||||||
STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} comezou unha nova compañía (#{2:NUM})
|
STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} comezou unha nova compañía (#{2:NUM})
|
||||||
STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} saiu da partida ({2:STRING})
|
STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} saiu da partida ({2:STRING})
|
||||||
STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} cambiou o seu nome a {STRING}
|
STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} cambiou o seu nome a {STRING}
|
||||||
|
STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} deu {2:CURRENCY_LONG} a {1:STRING}
|
||||||
STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}O servidor pechou a sesión
|
STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}O servidor pechou a sesión
|
||||||
STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}O servidor estase a reiniciar...{}Agarda por favor...
|
STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}O servidor estase a reiniciar...{}Agarda por favor...
|
||||||
|
|
||||||
@@ -2808,12 +2808,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nº de cidades:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nº de cidades:
|
||||||
STR_MAPGEN_DATE :{BLACK}Data:
|
STR_MAPGEN_DATE :{BLACK}Data:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nº de industrias:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nº de industrias:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altura máxima do mapa:
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Aumenta a altura máxima dos montes do mapa en un
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Diminiuir a altura máxima dos montes do mapa en un
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Cota de neve:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Subir a cota de neve unha altura
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Baixar a cota de neve unha altura
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Xerador de terreo:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Xerador de terreo:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreo:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreo:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivel do mar:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivel do mar:
|
||||||
@@ -2839,8 +2833,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome do
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamaño:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamaño:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Cambiar altura máxima do mapa
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Cambiar a altura da cota de neve
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Cambia-lo ano de inicio
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Cambia-lo ano de inicio
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -1007,6 +1007,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Hardware
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Dieses Kästchen ankreuzen, um OpenTTD zu erlauben, die Hardwarebeschleunigung zu verwenden. Eine geänderte Einstellung wird nur beim Spielneustart wirksam
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Dieses Kästchen ankreuzen, um OpenTTD zu erlauben, die Hardwarebeschleunigung zu verwenden. Eine geänderte Einstellung wird nur beim Spielneustart wirksam
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Die Einstellung tritt nur nach einem Neustart des Spiels in Kraft
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Die Einstellung tritt nur nach einem Neustart des Spiels in Kraft
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Dieses Kästchen ankreuzen, um VSync zu aktivieren. Eine geänderte Einstellung wird nur beim Spielneustart wirksam. Funktioniert nur mit aktivierter Hardwarebeschleunigung
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Größe der Bedienelemente
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Größe der Bedienelemente
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wähle die Größe der Bedienelemente
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wähle die Größe der Bedienelemente
|
||||||
|
|
||||||
@@ -1125,6 +1128,8 @@ STR_TERRAIN_TYPE_FLAT :Flach
|
|||||||
STR_TERRAIN_TYPE_HILLY :Hügelig
|
STR_TERRAIN_TYPE_HILLY :Hügelig
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Bergig
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Bergig
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpin
|
STR_TERRAIN_TYPE_ALPINIST :Alpin
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Benutzerdefinierte Höhe
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Benutzerdefinierte Höhe ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Hoch
|
STR_CITY_APPROVAL_PERMISSIVE :Hoch
|
||||||
STR_CITY_APPROVAL_TOLERANT :Mäßig
|
STR_CITY_APPROVAL_TOLERANT :Mäßig
|
||||||
@@ -1206,9 +1211,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Ein- oder Aussc
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Toleranz der Stadtverwaltung gegenüber Landschaftsumgestaltungen: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Toleranz der Stadtverwaltung gegenüber Landschaftsumgestaltungen: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Auswählen, wie stark Lärm und Umweltschäden die Stadtbewertung einer Firma sinken lassen. Bei einer zu schlechten Bewertung werden dann in dieser Stadt keine Bauvorhaben mehr genehmigt
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Auswählen, wie stark Lärm und Umweltschäden die Stadtbewertung einer Firma sinken lassen. Bei einer zu schlechten Bewertung werden dann in dieser Stadt keine Bauvorhaben mehr genehmigt
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximale Höhe auf der Karte: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Höhenlimit der Karte: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Setze die maximal erlaubte Höhe für Berge auf der Karte
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Bestimme die maximale Höhe der Karte. Mit "(auto)" wird ein passender Wert nach der Weltgenerierung bestimmt.
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Die maximale Höhe der Karte kann nicht auf diesen Wert gesetzt werden. Mindestens ein Berg auf der Karte ist höher.
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(auto)
|
||||||
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Das Höhenlimit der Karte kann nicht auf diesen Wert gesetzt werden. Mindestens ein Berg auf der Karte ist höher.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Landschaftsbau unter Gebäuden, Gleisen, usw. erlauben: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Landschaftsbau unter Gebäuden, Gleisen, usw. erlauben: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Erlaube Erdbauarbeiten unter Gebäuden oder Infrastruktur, ohne sie zu entfernen
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Erlaube Erdbauarbeiten unter Gebäuden oder Infrastruktur, ohne sie zu entfernen
|
||||||
STR_CONFIG_SETTING_CATCHMENT :Verschiedene Stationstypen haben unterschiedlich große Einzugsgebiete: {STRING}
|
STR_CONFIG_SETTING_CATCHMENT :Verschiedene Stationstypen haben unterschiedlich große Einzugsgebiete: {STRING}
|
||||||
@@ -1352,7 +1359,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Wähle wieviele
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximalabstand vom Kartenrand für Ölraffinerien: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximalabstand vom Kartenrand für Ölraffinerien: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Ölraffinerien werden nur in der Nähe des Kartenrands gebaut, bei inselreichen Karten nahe der Küste
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Ölraffinerien werden nur in der Nähe des Kartenrands gebaut, bei inselreichen Karten nahe der Küste
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Schneegrenze auf: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Schneegrenze auf: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Wähle die Höhe der Schneefallgrenze im subarktischen Klima. Schnee beeinflusst auch die Platzierung von Industrien und Voraussetzungen für Städtewachstum
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Wähle die Höhe der Schneefallgrenze im subarktischen Klima. Schnee beeinflusst auch die Platzierung von Industrien und Voraussetzungen für Städtewachstum. Dies kann nur im Scenario-Editor geändert werden oder wird ansonsten anhand der Einstellung "Schneebedeckung" berechnet.
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Schneebedeckung: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Steuert die ungefähre Menge von Schneeflächen im subarktischen Klima. Schnee beeinflusst die Platzierung von Industrien und Vorausstzungen für Städtewachstum. Dies kann nur während der Kartenerzeugung benutzt werden. Land knapp über dem Meeresspiegel ist stets schneefrei.
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Wüstenbedeckung: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Steuert die ungefähre Menge von Wüsten im tropischen Klima. Wüsten beeinflussen das Erzeugen von Industriebtrieben. Dies kann nur während der Kartenerzeugung benutzt werden.
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rauheit des Geländes: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rauheit des Geländes: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(nur TerraGenesis) Wähle die Häufigkeit von Hügeln: Rollende Landschaften haben wenige, weit verteilte Hügel. Zerklüftete Landschaften haben viele Hügel, was wiederum sich wiederholend aussehen kann
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(nur TerraGenesis) Wähle die Häufigkeit von Hügeln: Rollende Landschaften haben wenige, weit verteilte Hügel. Zerklüftete Landschaften haben viele Hügel, was wiederum sich wiederholend aussehen kann
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Sehr eben
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Sehr eben
|
||||||
@@ -1802,7 +1815,7 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... Komp
|
|||||||
STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... „{STRING}“ nicht als Format für Spielstände verfügbar. Nutze stattdessen „{STRING}“
|
STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... „{STRING}“ nicht als Format für Spielstände verfügbar. Nutze stattdessen „{STRING}“
|
||||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoriere Basisgrafiken „{STRING}“: nicht gefunden
|
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoriere Basisgrafiken „{STRING}“: nicht gefunden
|
||||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignoriere Basissounds „{STRING}“: nicht gefunden
|
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignoriere Basissounds „{STRING}“: nicht gefunden
|
||||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoriere Musikset „{STRING}“: nicht gefunden
|
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoriere Basismusikset „{STRING}“: nicht gefunden
|
||||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Zu wenig Arbeitsspeicher
|
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Zu wenig Arbeitsspeicher
|
||||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Reservieren von {BYTES} des Spritecaches fehlgeschlagen. Der Spritecache wurde auf {BYTES} verkleinert. Dies wird die Performance von OpenTTD verschlechtern. Um den Speicherbedarf zu verringern, kann man versuchen, 32bpp-Grafiken auszuschalten und/oder den Zoom-Level zu begrenzen
|
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Reservieren von {BYTES} des Spritecaches fehlgeschlagen. Der Spritecache wurde auf {BYTES} verkleinert. Dies wird die Performance von OpenTTD verschlechtern. Um den Speicherbedarf zu verringern, kann man versuchen, 32bpp-Grafiken auszuschalten und/oder den Zoom-Level zu begrenzen
|
||||||
|
|
||||||
@@ -2316,7 +2329,7 @@ STR_CONTENT_TYPE_AI :{G=w}KI
|
|||||||
STR_CONTENT_TYPE_AI_LIBRARY :{G=w}KI-Bibliothek
|
STR_CONTENT_TYPE_AI_LIBRARY :{G=w}KI-Bibliothek
|
||||||
STR_CONTENT_TYPE_SCENARIO :{G=n}Szenario
|
STR_CONTENT_TYPE_SCENARIO :{G=n}Szenario
|
||||||
STR_CONTENT_TYPE_HEIGHTMAP :{G=w}Reliefkarte
|
STR_CONTENT_TYPE_HEIGHTMAP :{G=w}Reliefkarte
|
||||||
STR_CONTENT_TYPE_BASE_SOUNDS :Basissound
|
STR_CONTENT_TYPE_BASE_SOUNDS :Basissounds
|
||||||
STR_CONTENT_TYPE_BASE_MUSIC :Basismusik
|
STR_CONTENT_TYPE_BASE_MUSIC :Basismusik
|
||||||
STR_CONTENT_TYPE_GAME_SCRIPT :Skript
|
STR_CONTENT_TYPE_GAME_SCRIPT :Skript
|
||||||
STR_CONTENT_TYPE_GS_LIBRARY :Skript-Bibliothek
|
STR_CONTENT_TYPE_GS_LIBRARY :Skript-Bibliothek
|
||||||
@@ -2340,6 +2353,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ja, Grafiken herunterladen
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ja, Grafiken herunterladen
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nein, OpenTTD beenden
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nein, OpenTTD beenden
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Download fehlgeschlagen
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}Download der Grafiken fehlgeschlagen.{}Bitte Grafiken manuell herunterladen.
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}OpenTTD verlassen
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Transparenzeinstellungen
|
STR_TRANSPARENCY_CAPTION :{WHITE}Transparenzeinstellungen
|
||||||
@@ -2890,12 +2906,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Städteanzahl:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Städteanzahl:
|
||||||
STR_MAPGEN_DATE :{BLACK}Datum:
|
STR_MAPGEN_DATE :{BLACK}Datum:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Industriedichte:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Industriedichte:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximalhöhe der Karte:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Höchster Gipfel:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Die Maximalhöhe von Bergen auf der Karte um eins erhöhen
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Die maximale Höhe des höchsten Gipfels auf der Karte um eins erhöhen
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Die Maximalhöhe von Bergen auf der Karte um eins verringern
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Die maximale Höhe des höchsten Gipfels auf der Karte um eins verringern
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Schneegrenze:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Schneebedeckung:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Schneegrenze um eine Stufe erhöhen
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Schneebedeckung um zehn Prozent erhöhen
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Schneegrenze um eine Stufe senken
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Schneebedeckung um zehn Prozent verringern
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Wüstenbedeckung:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Wüstenabdeckung um zehn Prozent erhöhen
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Wüstenbedeckung um zehn Prozent verringern
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Landschaftstyp:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Landschaftstyp:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Gewässermenge:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Gewässermenge:
|
||||||
@@ -2921,8 +2942,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Reliefka
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Größe:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Größe:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} × {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} × {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Maximalhöhe der Karte ändern
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Angestrebte Gipfelhöhe
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Höhe der Schneegrenze ändern
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Höchster Gipfel
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Schneebedeckung (in %)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Wüstenbedeckung (in %)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Startjahr ändern
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Startjahr ändern
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -4339,6 +4362,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Nur ein
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Riesiger Screenshot
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Riesiger Screenshot
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Der Screenshot wird die Auflösung von {COMMA} × {COMMA} Pixeln haben. Das kann einige Zeit dauern. Soll fortgefahren werden?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Der Screenshot wird die Auflösung von {COMMA} × {COMMA} Pixeln haben. Das kann einige Zeit dauern. Soll fortgefahren werden?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Reliefkarte erfolgreich als „{STRING}“ gespeichert. Der höchste Gipfel ist {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot gespeichert als „{STRING}“
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot gespeichert als „{STRING}“
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot fehlgeschlagen
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshot fehlgeschlagen
|
||||||
|
|
||||||
|
|||||||
@@ -1101,6 +1101,7 @@ 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}Επιλέξτε το μέγεθος στοιχείου διεπαφής
|
||||||
|
|
||||||
@@ -1293,8 +1294,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Εναλλαγ
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Στάση δημοτικού συμβουλίου ως προς τον μετασχηματισμό της περιοχής: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Στάση δημοτικού συμβουλίου ως προς τον μετασχηματισμό της περιοχής: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Επιλογή πόσο ο θόρυβος και η περιβαλλοντικη καταστροφή άπο εταιρίες επηρεάζουν τα ποσοστά αποδοχής και περαιτέρω έργα στη περιοχή
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Επιλογή πόσο ο θόρυβος και η περιβαλλοντικη καταστροφή άπο εταιρίες επηρεάζουν τα ποσοστά αποδοχής και περαιτέρω έργα στη περιοχή
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Μέγιστο ύψος χάρτη: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Ορισμός του μέγιστου επιτρεπτού ύψους βουνών στο χάρτη
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE} Δεν μπορείτε να θέσετε το μέγιστο ύψος χάρτη σε αυτή τη τιμή. Τουλάχιστον ένα βουνό στο χάρτη είναι πιο ψηλό.
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE} Δεν μπορείτε να θέσετε το μέγιστο ύψος χάρτη σε αυτή τη τιμή. Τουλάχιστον ένα βουνό στο χάρτη είναι πιο ψηλό.
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Να επιτρέπεται η διαμόρφωση εδάφους κάτω από κτίρια, γραμμές, κλπ.: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Να επιτρέπεται η διαμόρφωση εδάφους κάτω από κτίρια, γραμμές, κλπ.: {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Επιτρέπεται η διαμόρφωση του εδάφους κάτω από κτίρια και σιδηροτροχιές χωρίς αυτά να αφαιρούνται
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Επιτρέπεται η διαμόρφωση του εδάφους κάτω από κτίρια και σιδηροτροχιές χωρίς αυτά να αφαιρούνται
|
||||||
@@ -2935,12 +2934,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Αριθμός πόλεων:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Αριθμός πόλεων:
|
||||||
STR_MAPGEN_DATE :{BLACK}Ημερομηνία:
|
STR_MAPGEN_DATE :{BLACK}Ημερομηνία:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Αριθμός βιομηχανιών:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Αριθμός βιομηχανιών:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Μέγιστο ύψος χάρτη
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Αύξηση του μέγιστου ύψους βουνών του χάρτη κατά ένα
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Μείωση του μέγιστου ύψους βουνών του χάρτη κατά ένα
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Ύψος γραμμής χιονιού:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Μετακίνηση του ύψους της γραμμής χιονιού ένα πάνω
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Μετακίνηση του ύψους της γραμμής χιονιού ένα κάτω
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Δημιουργός εδάφους:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Δημιουργός εδάφους:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Τύπος εδάφους:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Τύπος εδάφους:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Επίπεδο θάλασσας:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Επίπεδο θάλασσας:
|
||||||
@@ -2966,8 +2959,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Όνομ
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Μέγεθος:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Μέγεθος:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} × {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} × {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Αλλαγή μέγιστου ύψους χάρτη
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Άλλαγη του ύψους της γράμμης χιονιού
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Αλλαγή έτους έναρξης
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Αλλαγή έτους έναρξης
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -988,6 +988,7 @@ 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}בחר את ממשק גודל העצם לשימוש
|
||||||
|
|
||||||
@@ -1174,8 +1175,6 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :אפשר/מנע
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :יחס מועצת העיר כלפי שינוי מבנה אזורי: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :יחס מועצת העיר כלפי שינוי מבנה אזורי: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :בחר באיזו מידה רעש ונזק סביבתי ע"י חברות משפיעים על הדירוג העירוני שלהן ופעולות בנייה עתידיות באזור
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :בחר באיזו מידה רעש ונזק סביבתי ע"י חברות משפיעים על הדירוג העירוני שלהן ופעולות בנייה עתידיות באזור
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :גובה מפה מקסימלי: {STRING}
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :קבע את הגובה המקסימלי להרים במפה
|
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}לא ניתן לקבוע את הגובה המקסימלי במפה לערך זה. קיים לפחות הר אחד גבוה יותר
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}לא ניתן לקבוע את הגובה המקסימלי במפה לערך זה. קיים לפחות הר אחד גבוה יותר
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :אפשר יצירת מילוי עפר תחת מבנים, פסי רכבת וכו': {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :אפשר יצירת מילוי עפר תחת מבנים, פסי רכבת וכו': {STRING}
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :אפשר שינוי פני השטח מתחת לבניינים ולמסילות ללא הסרתם
|
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :אפשר שינוי פני השטח מתחת לבניינים ולמסילות ללא הסרתם
|
||||||
@@ -2751,12 +2750,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK} :מספר העיירות
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK} :מספר העיירות
|
||||||
STR_MAPGEN_DATE :{BLACK} :תאריך
|
STR_MAPGEN_DATE :{BLACK} :תאריך
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK} :מספר התעשיות
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK} :מספר התעשיות
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}גובה מפה מקסימלי:
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}הגדל את הגובה המקסימלי של הרים במפה ביחידה אחת
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}הקטן את הגובה המקסימלי במפה ביחידה אחת
|
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}גובה קו השלג
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}הגבה את קו השלג
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}הנמך את קו השלג
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK} :מחולל פני שטח
|
STR_MAPGEN_LAND_GENERATOR :{BLACK} :מחולל פני שטח
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK} :סוג הקרקע
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK} :סוג הקרקע
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK} :כמות ימים/אגמים
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK} :כמות ימים/אגמים
|
||||||
@@ -2782,8 +2775,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK} :שם
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}גודל:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}גודל:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} על {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} על {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}שינוי הגובה המקסימלי במפה
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}שנה את גובה קו השלג
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}שנה את שנת הפתיחה
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}שנה את שנת הפתיחה
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
@@ -1070,6 +1070,9 @@ STR_GAME_OPTIONS_VIDEO_ACCELERATION :{BLACK}Hardvere
|
|||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Bekapcsolásával az OpenTTD hardveres gyorsítást próbál alkalmazni. A beállítás csak a játék újraindítása után lép érvénybe.
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_TOOLTIP :{BLACK}Bekapcsolásával az OpenTTD hardveres gyorsítást próbál alkalmazni. A beállítás csak a játék újraindítása után lép érvénybe.
|
||||||
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Ez a beállítás csak a játék újraindítása után lép érvénybe
|
STR_GAME_OPTIONS_VIDEO_ACCELERATION_RESTART :{WHITE}Ez a beállítás csak a játék újraindítása után lép érvénybe
|
||||||
|
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC :{BLACK}VSync (Vertikális Szinkronizáció)
|
||||||
|
STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Jelöld be ezt a négyzetet hogy engedélyezd a v-sync-et. A változtatás csak a játék újraindítása után fog érvényesülni. Kizárólag hardware gyorsítással működik!
|
||||||
|
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Felület mérete
|
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Felület mérete
|
||||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Használni kívánt felületméret kiválasztása
|
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Használni kívánt felületméret kiválasztása
|
||||||
|
|
||||||
@@ -1188,6 +1191,8 @@ STR_TERRAIN_TYPE_FLAT :Sík
|
|||||||
STR_TERRAIN_TYPE_HILLY :Dombos
|
STR_TERRAIN_TYPE_HILLY :Dombos
|
||||||
STR_TERRAIN_TYPE_MOUNTAINOUS :Hegyvidéki
|
STR_TERRAIN_TYPE_MOUNTAINOUS :Hegyvidéki
|
||||||
STR_TERRAIN_TYPE_ALPINIST :Alpesi
|
STR_TERRAIN_TYPE_ALPINIST :Alpesi
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM :Egyéni magasság
|
||||||
|
STR_TERRAIN_TYPE_CUSTOM_VALUE :Egyéni magasság ({NUM})
|
||||||
|
|
||||||
STR_CITY_APPROVAL_PERMISSIVE :Engedékeny
|
STR_CITY_APPROVAL_PERMISSIVE :Engedékeny
|
||||||
STR_CITY_APPROVAL_TOLERANT :Toleráns
|
STR_CITY_APPROVAL_TOLERANT :Toleráns
|
||||||
@@ -1269,8 +1274,10 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Ha engedélyezv
|
|||||||
STR_CONFIG_SETTING_CITY_APPROVAL :Városi tanács hozzáállása a területének az átépítéséhez: {STRING}
|
STR_CONFIG_SETTING_CITY_APPROVAL :Városi tanács hozzáállása a területének az átépítéséhez: {STRING}
|
||||||
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Válaszd ki, hogy mennyi zaj és környezeti kár okozása befolyásolja a cég megítélését egy városban, mely hatással van a cég további építési lehetőségeire a város területén belül
|
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Válaszd ki, hogy mennyi zaj és környezeti kár okozása befolyásolja a cég megítélését egy városban, mely hatással van a cég további építési lehetőségeire a város területén belül
|
||||||
|
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximális térképmagasság: {STRING}
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Térkép magasságkorlátja: {STRING}
|
||||||
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :A térképen található hegyek maximális magasságának beállítása
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Beállíthatod a térkép legmagasabb pontjának tengerszint feletti magasságát. "(automatikus)" esetén az értéket a térképgenerátor határozza meg.
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM}
|
||||||
|
STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(automatikus)
|
||||||
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nem állíthatod erre az értékre a maximális térképmagasságot. Legalább egy hegy magasabb ennél
|
STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nem állíthatod erre az értékre a maximális térképmagasságot. Legalább egy hegy magasabb ennél
|
||||||
STR_CONFIG_SETTING_AUTOSLOPE :Épületek, vágányok stb. alatti tereprendezés engedélyezése: {STRING}
|
STR_CONFIG_SETTING_AUTOSLOPE :Épületek, vágányok stb. alatti tereprendezés engedélyezése: {STRING}
|
||||||
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
|
||||||
@@ -1415,7 +1422,13 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Mennyi gazdasá
|
|||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Olajfinomítók és olajfúró tornyok maximális távolsága a térkép szélétől: {STRING}
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Olajfinomítók és olajfúró tornyok maximális távolsága a térkép szélétől: {STRING}
|
||||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Megadhatod, hogy a térkép szélétől milyen messze épülhetnek olajfinomítók és olajfúró tornyok. Sziget jellegű térképek esetén így a part közelében fognak épülni. 256 mezőnél szélesebb, ill. hosszabb térképek esetén ez az érték felszorzódik.
|
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Megadhatod, hogy a térkép szélétől milyen messze épülhetnek olajfinomítók és olajfúró tornyok. Sziget jellegű térképek esetén így a part közelében fognak épülni. 256 mezőnél szélesebb, ill. hosszabb térképek esetén ez az érték felszorzódik.
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Hóhatár magassága: {STRING}
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Hóhatár magassága: {STRING}
|
||||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Ezzel a beállítással szabályozhatod a szub-arktikus táj hóhatárát. A hó befolyással lehet a gazdasági épületek generálására és a települések növekedésére.
|
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Ezzel a beállítással szabályozhatod a szub-arktikus táj hóhatárát. A hó befolyással lehet a gazdasági épületek generálására és a települések növekedésére. Csak a pályaszerkesztőben lehet állítani, más esetben a havas terület százalékos kiterjedéséből kerül kiszámításra.
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE :Havas terület kiterjedése: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Beállíthatod, hogy a szub-arktikus tájon a térkép mekkora részét fedje hó. A hó befolyással van a gazdasági épületek elhelyezésére és a települések növekedésére. A beállítás csak a térképgenerátort érinti. A tengerszint feletti legelső szintet sosem fedheti hó.
|
||||||
|
STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}%
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE :Sivatag kiterjedése: {STRING}
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Beállíthatod, hogy a szubtrópusi tájon a térkép mekkora részét fedje sivatag. A sivatag hatással van a gazdasági épületek elhelyezésére és a települések növekedésére. A beállítás csak a térképgenerátort érinti.
|
||||||
|
STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}%
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :A terep durvasága: {STRING}
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :A terep durvasága: {STRING}
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(csak TerraGenesis esetén) Kiválaszthatod a hegyek mennyiségét: a sima térképeken kevesebb, de kiterjedtebb hegy van, míg a durva térképeken sok hegy van, amik kissé ismétlődőnek tűnhetnek.
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(csak TerraGenesis esetén) Kiválaszthatod a hegyek mennyiségét: a sima térképeken kevesebb, de kiterjedtebb hegy van, míg a durva térképeken sok hegy van, amik kissé ismétlődőnek tűnhetnek.
|
||||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Nagyon sima
|
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Nagyon sima
|
||||||
@@ -1725,12 +1738,17 @@ STR_CONFIG_SETTING_ZOOM_MIN :A nagyítás ma
|
|||||||
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Maximális nagyítás mértéke. A nagyobb nagyítási mérték több memóriát igényel
|
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Maximális nagyítás mértéke. A nagyobb nagyítási mérték több memóriát igényel
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX :A kicsinyítés maximális mértéke: {STRING}
|
STR_CONFIG_SETTING_ZOOM_MAX :A kicsinyítés maximális mértéke: {STRING}
|
||||||
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Maximális kicsinyítés mértéke. A nagyobb kicsinyítési mérték szaggatást okozhat
|
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Maximális kicsinyítés mértéke. A nagyobb kicsinyítési mérték szaggatást okozhat
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Sprite-ok maximális felbontása: {STRING}
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Meghatározhatod a sprite-ok maximális felbontását. Ha korlátozod a maximális felbontást, akkor abban az esetben is kisebb felbontású sprite-ok fognak megjelenni, ha egyébként lenne nagyobb felbontású is. Ez akkor lehet hasznos, ha olyan NewGRF-ek keverékét használod, amelyek különböző felbontással rendelkeznek, konzisztensebb megjelenést biztosítva a játéknak.
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normál
|
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normál
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
|
||||||
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x
|
||||||
|
STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_NORMAL :1x
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH :Települések növekedési sebessége: {STRING}
|
STR_CONFIG_SETTING_TOWN_GROWTH :Települések növekedési sebessége: {STRING}
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :A települések növekedési sebessége
|
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :A települések növekedési sebessége
|
||||||
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Nincs
|
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Nincs
|
||||||
@@ -2398,6 +2416,9 @@ STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}Az OpenT
|
|||||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Igen, a grafikai alapcsomag letöltése
|
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Igen, a grafikai alapcsomag letöltése
|
||||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nem, kilépés az OpenTTD-ből
|
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nem, kilépés az OpenTTD-ből
|
||||||
|
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}Letöltés sikertelen
|
||||||
|
STR_MISSING_GRAPHICS_ERROR :{BLACK}A grafikus alapcsomag letöltése sikertelen.{}Tölts le manuálisan egy grafikus alapcsomagot!
|
||||||
|
STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Kilépés az OpenTTD-ből
|
||||||
|
|
||||||
# Transparency settings window
|
# Transparency settings window
|
||||||
STR_TRANSPARENCY_CAPTION :{WHITE}Átlátszósági beállítások
|
STR_TRANSPARENCY_CAPTION :{WHITE}Átlátszósági beállítások
|
||||||
@@ -2948,12 +2969,17 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Várossűrűség:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Várossűrűség:
|
||||||
STR_MAPGEN_DATE :{BLACK}Dátum:
|
STR_MAPGEN_DATE :{BLACK}Dátum:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Gazd. épületek száma:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Gazd. épületek száma:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximum térképmagasság:
|
STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Legmagasabb pont:
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}A hegyek maximális magasságának növelése a térképen eggyel
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}A térkép legmagasabb pontjának tengerszint feletti magasságának növelése eggyel
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}A hegyek maximális magasságának csökkentése a térképen eggyel
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}A térkép legmagasabb pontjának tengerszint feletti magasságának csökkentése eggyel
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hóhatár:
|
STR_MAPGEN_SNOW_COVERAGE :{BLACK}Havas terület kiterjedése:
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}A hóhatár megnövelése eggyel
|
STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}A havas terület kiterjedésének növelése 10%-kal
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}A hóhatár csökkentése eggyel
|
STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}A havas terület kiterjedésének csökkentése 10%-kal
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE :{BLACK}Sivatag kiterjedése:
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}A sivatag kiterjedésének növelése 10%-kal
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}A sivatag kiterjedésének csökkentése 10%-kal
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}%
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Térkép generátor:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Térkép generátor:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tereptípus:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tereptípus:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Tengerszint:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Tengerszint:
|
||||||
@@ -2979,8 +3005,10 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Magassá
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Méret:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Méret:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Térkép maximális magasságának megváltozatása
|
STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}A legmagasabb pont tengerszint feletti magassága
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Hóhatár megváltoztatása
|
STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Legmagasabb pont
|
||||||
|
STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}A havas terület kiterjedése (százalékban)
|
||||||
|
STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}A sivatag kiterjedése (százalékban)
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Kezdő év megváltoztatása
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Kezdő év megváltoztatása
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
@@ -4397,6 +4425,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Csak egy
|
|||||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Hatalmas képernyőkép
|
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Hatalmas képernyőkép
|
||||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}A képernyőkép felbontása {COMMA} x {COMMA} pixel lesz. A méret miatt ez eltarthat egy ideig. Szeretnéd folytatni?
|
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}A képernyőkép felbontása {COMMA} x {COMMA} pixel lesz. A méret miatt ez eltarthat egy ideig. Szeretnéd folytatni?
|
||||||
|
|
||||||
|
STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Magasságtérkép sikeresen elmentve '{STRING}' néven. A térkép legmagasabb pontja: {NUM}
|
||||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}A képernyő elmentve '{STRING}' néven
|
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}A képernyő elmentve '{STRING}' néven
|
||||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}A képmentés nem sikerült!
|
STR_ERROR_SCREENSHOT_FAILED :{WHITE}A képmentés nem sikerült!
|
||||||
|
|
||||||
|
|||||||
@@ -946,6 +946,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :annað
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grunngrafík
|
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grunngrafík
|
||||||
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Nota grunngrafíkina
|
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Nota grunngrafíkina
|
||||||
STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} týnd{P "" ar} eða ónýt{P "" ar} skrá{P "" r}
|
STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} týnd{P "" ar} eða ónýt{P "" ar} skrá{P "" r}
|
||||||
@@ -2544,9 +2545,6 @@ STR_MAPGEN_BY :{BLACK}*
|
|||||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Fjöldi bæja:
|
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Fjöldi bæja:
|
||||||
STR_MAPGEN_DATE :{BLACK}Dags.:
|
STR_MAPGEN_DATE :{BLACK}Dags.:
|
||||||
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Fjöldi iðnaða:
|
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Fjöldi iðnaða:
|
||||||
STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hæð snjólínu:
|
|
||||||
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Hækka snjólínu upp um eitt þrep
|
|
||||||
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Lækka snjólínu niður um eitt þrep
|
|
||||||
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landmyndun:
|
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landmyndun:
|
||||||
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Gerð lands:
|
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Gerð lands:
|
||||||
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Magn sjávar:
|
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Magn sjávar:
|
||||||
@@ -2572,7 +2570,6 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nafn hæ
|
|||||||
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Stærð:
|
STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Stærð:
|
||||||
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} * {NUM}
|
||||||
|
|
||||||
STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Breyta hæð snjólínu
|
|
||||||
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Breyta upphafsári
|
STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Breyta upphafsári
|
||||||
|
|
||||||
# SE Map generation
|
# SE Map generation
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user