diff --git a/Makefile.grf.in b/Makefile.grf.in index 81089efb11..1cc2642320 100644 --- a/Makefile.grf.in +++ b/Makefile.grf.in @@ -5,16 +5,13 @@ # OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . # -# Building requires GRFCodec and NFORenum. Older versions of GRFCodec are -# known to miscompile the graphics. +# Building requires GRFCodec. # -# Recent nightlies (including sources) of both can be found at: +# Recent versions (including sources) can be found at: # http://www.openttd.org/download-grfcodec -# http://www.openttd.org/download-nforenum # -# The mercurial repository of both can be found at: +# The mercurial repository can be found at: # http://hg.openttdcoop.org/grfcodec -# http://hg.openttdcoop.org/nforenum # @@ -75,10 +72,10 @@ $(BIN_DIR)/%.obm: $(BASESET_DIR)/%.obm $(OBJS_DIR)/langfiles.tmp $(BASESET_DIR)/ $(Q) awk -v langfiles='$(OBJS_DIR)/langfiles.tmp' -f $(BASESET_DIR)/translations.awk $< >$@ # Compile extra grf -$(BIN_DIR)/openttd.grf: $(PNG_FILES) $(NFO_FILES) $(OBJS_DIR)/sprites +$(BIN_DIR)/openttd.grf: $(PNG_FILES) $(NFO_FILES) $(OBJS_DIR)/sprites $(GRF_DIR)/assemble_nfo.awk $(E) '$(STAGE) Assembling openttd.nfo' $(Q)-cp $(PNG_FILES) $(OBJS_DIR)/sprites 2> /dev/null - $(Q) $(CC_BUILD) -nostdinc -I$(GRF_DIR) -C -E - < "$(GRF_DIR)/openttd.nfo" | sed -e '/^#/d' -e '/^$$/d' > $(OBJS_DIR)/sprites/openttd.nfo + $(Q) awk -f $(GRF_DIR)/assemble_nfo.awk $(GRF_DIR)/openttd.nfo > $(OBJS_DIR)/sprites/openttd.nfo $(Q) $(NFORENUM) -s $(OBJS_DIR)/sprites/openttd.nfo $(E) '$(STAGE) Compiling openttd.grf' $(Q) $(GRFCODEC) -n -s -e -p1 $(OBJS_DIR)/openttd.grf diff --git a/bin/ai/compat_1.5.nut b/bin/ai/compat_1.5.nut index fe985b90d0..71a46ff7a0 100644 --- a/bin/ai/compat_1.5.nut +++ b/bin/ai/compat_1.5.nut @@ -6,3 +6,5 @@ * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . */ + +AILog.Info("1.5 API compatibility in effect."); diff --git a/bin/ai/compat_1.6.nut b/bin/ai/compat_1.6.nut new file mode 100644 index 0000000000..fe985b90d0 --- /dev/null +++ b/bin/ai/compat_1.6.nut @@ -0,0 +1,8 @@ +/* $Id$ */ + +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + */ diff --git a/bin/ai/regression/completeness.sh b/bin/ai/regression/completeness.sh index e2e4dccd80..9f5e96eb0b 100755 --- a/bin/ai/regression/completeness.sh +++ b/bin/ai/regression/completeness.sh @@ -2,12 +2,12 @@ # $Id$ -if ! [ -f ai/regression/regression.nut ]; then +if ! [ -f ai/regression/completeness.sh ]; then echo "Make sure you are in the root of OpenTTD before starting this script." exit 1 fi -cat ai/regression/regression.nut | tr ';' '\n' | awk ' +cat ai/regression/tst_*/main.nut | tr ';' '\n' | awk ' /^function/ { for (local in locals) { delete locals[local] @@ -61,7 +61,7 @@ cat ai/regression/regression.nut | tr ';' '\n' | awk ' } ' | sed 's/ //g' | sort | uniq > tmp.in_regression -grep 'DefSQ.*Method' ../src/ai/api/*.hpp.sq | grep -v 'AIError::' | grep -v 'AIAbstractList::Valuate' | grep -v '::GetClassName' | sed 's/^[^,]*, &//g;s/,[^,]*//g' | sort > tmp.in_api +grep 'DefSQ.*Method' ../src/script/api/ai/*.hpp.sq | grep -v 'AIError::' | grep -v 'AIAbstractList::Valuate' | grep -v '::GetClassName' | sed 's/^[^,]*, &//g;s/,[^,]*//g' | sort > tmp.in_api diff -u tmp.in_regression tmp.in_api | grep -v '^+++' | grep '^+' | sed 's/^+//' diff --git a/bin/ai/regression/regression.sav b/bin/ai/regression/empty.sav similarity index 100% rename from bin/ai/regression/regression.sav rename to bin/ai/regression/empty.sav diff --git a/bin/ai/regression/regression_info.nut b/bin/ai/regression/regression_info.nut index 6eb19140d1..4e7aec7568 100644 --- a/bin/ai/regression/regression_info.nut +++ b/bin/ai/regression/regression_info.nut @@ -4,9 +4,9 @@ class Regression extends AIInfo { function GetAuthor() { return "OpenTTD NoAI Developers Team"; } function GetName() { return "Regression"; } function GetShortName() { return "REGR"; } - function GetDescription() { return "This runs regression-tests on all commands. On the same map the result should always be the same."; } + function GetDescription() { return "This runs regression-tests on some commands. On the same map the result should always be the same."; } function GetVersion() { return 1; } - function GetAPIVersion() { return "1.5"; } + function GetAPIVersion() { return "1.6"; } function GetDate() { return "2007-03-18"; } function CreateInstance() { return "Regression"; } } diff --git a/bin/ai/regression/run.sh b/bin/ai/regression/run.sh index 3420742e94..d47a664ea3 100755 --- a/bin/ai/regression/run.sh +++ b/bin/ai/regression/run.sh @@ -2,14 +2,11 @@ # $Id$ -if ! [ -f ai/regression/regression.nut ]; then +if ! [ -f ai/regression/run.sh ]; then echo "Make sure you are in the root of OpenTTD before starting this script." exit 1 fi -cp ai/regression/regression.nut ai/regression/main.nut -cp ai/regression/regression_info.nut ai/regression/info.nut - if [ -f scripts/game_start.scr ]; then mv scripts/game_start.scr scripts/game_start.scr.regression fi @@ -22,27 +19,46 @@ fi if [ "$1" = "-g" ]; then gdb="gdb --ex run --args " fi -if [ -n "$gdb" ]; then - $gdb ./openttd -x -c ai/regression/regression.cfg $params -g ai/regression/regression.sav + +if [ -d "ai/regression/tst_$1" ]; then + tests="ai/regression/tst_$1" +elif [ -d "ai/regression/tst_$2" ]; then + tests="ai/regression/tst_$2" else - ./openttd -x -c ai/regression/regression.cfg $params -g ai/regression/regression.sav -d script=2 -d misc=9 2>&1 | awk '{ gsub("0x(\\(nil\\)|0+)(x0)?", "0x00000000", $0); gsub("^dbg: \\[script\\]", "", $0); gsub("^ ", "ERROR: ", $0); gsub("ERROR: \\[1\\] ", "", $0); gsub("\\[P\\] ", "", $0); print $0; }' | grep -v '^dbg: \[.*\]' > tmp.regression + tests=ai/regression/tst_* fi ret=0 -if [ -z "$gdb" ]; then - res="`diff -ub ai/regression/regression.txt tmp.regression`" - if [ -z "$res" ]; then - echo "Regression test passed!" - else - echo "Regression test failed! Difference:" - echo "$res" - ret=1 - fi - echo "" - echo "Regression test done" -fi +for tst in $tests; do + echo -n "Running $tst... " -rm -f ai/regression/main.nut ai/regression/info.nut + # Make sure that only one info.nut is present for each test run. Otherwise openttd gets confused. + cp ai/regression/regression_info.nut $tst/info.nut + + sav=$tst/test.sav + if ! [ -f $sav ]; then + sav=ai/regression/empty.sav + fi + + if [ -n "$gdb" ]; then + $gdb ./openttd -x -c ai/regression/regression.cfg $params -g $sav + else + ./openttd -x -c ai/regression/regression.cfg $params -g $sav -d script=2 -d misc=9 2>&1 | awk '{ gsub("0x(\\(nil\\)|0+)(x0)?", "0x00000000", $0); gsub("^dbg: \\[script\\]", "", $0); gsub("^ ", "ERROR: ", $0); gsub("ERROR: \\[1\\] ", "", $0); gsub("\\[P\\] ", "", $0); print $0; }' | grep -v '^dbg: \[.*\]' > tmp.regression + fi + + if [ -z "$gdb" ]; then + res="`diff -ub $tst/result.txt tmp.regression`" + if [ -z "$res" ]; then + echo "passed!" + else + echo "failed! Difference:" + echo "$res" + ret=1 + fi + fi + + rm $tst/info.nut +done if [ -f scripts/game_start.scr.regression ]; then mv scripts/game_start.scr.regression scripts/game_start.scr diff --git a/bin/ai/regression/regression.nut b/bin/ai/regression/tst_regression/main.nut similarity index 97% rename from bin/ai/regression/regression.nut rename to bin/ai/regression/tst_regression/main.nut index 72a0c5a973..f575f53fff 100644 --- a/bin/ai/regression/regression.nut +++ b/bin/ai/regression/tst_regression/main.nut @@ -972,48 +972,7 @@ function Regression::Order() print(" SetStopLocation(): " + AIOrder.SetStopLocation(20, 0, AIOrder.STOPLOCATION_MIDDLE)); print(" GetStopLocation(): " + AIOrder.GetStopLocation(20, 0)); - local list = AIStationList_Vehicle(12); - - print(""); - print("--StationList_Vehicle--"); - print(" Count(): " + list.Count()); - list.Valuate(AIStation.GetLocation); - print(" Location ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.GetCargoWaiting, 0); - print(" CargoWaiting(0) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.GetCargoWaiting, 1); - print(" CargoWaiting(1) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.GetCargoRating, 1); - print(" CargoRating(1) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.GetDistanceManhattanToTile, 30000); - print(" DistanceManhattanToTile(30000) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.GetDistanceSquareToTile, 30000); - print(" DistanceSquareToTile(30000) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.IsWithinTownInfluence, 0); - print(" IsWithinTownInfluence(0) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - - list = AIVehicleList_Station(3); + local list = AIVehicleList_Station(3); print(""); print("--VehicleList_Station--"); @@ -1269,25 +1228,23 @@ function Regression::Station() } } - local list = AIStationList(AIStation.STATION_BUS_STOP + AIStation.STATION_TRUCK_STOP); - print(""); - print("--StationList--"); - print(" Count(): " + list.Count()); - list.Valuate(AIStation.GetLocation); - print(" Location ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.GetCargoWaiting, 0); - print(" CargoWaiting(0) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); - } - list.Valuate(AIStation.GetCargoWaiting, 1); - print(" CargoWaiting(1) ListDump:"); - for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { - print(" " + i + " => " + list.GetValue(i)); + print("--CargoPlanned--"); + for (local cargo = 0; cargo <= 1000; cargo += 1000) { + for (local station0 = 0; station0 <= 1000; station0 += 1000) { + print(" GetCargoPlanned(" + station0 + ", " + cargo + "): " + + AIStation.GetCargoPlanned(station0, cargo)); + for (local station1 = 0; station1 <= 1000; station1 += 1000) { + print(" GetCargoPlannedFrom(" + station0 + ", " + station1 + ", " + cargo + "): " + + AIStation.GetCargoPlannedFrom(station0, station1, cargo)); + print(" GetCargoPlannedVia(" + station0 + ", " + station1 + ", " + cargo + "): " + + AIStation.GetCargoPlannedFrom(station0, station1, cargo)); + for (local station2 = 0; station2 <= 1000; station2 += 1000) { + print(" GetCargoPlannedFromVia(" + station0 + ", " + station1 + ", " + station2 + ", " + cargo + "): " + + AIStation.GetCargoPlannedFromVia(station0, station1, station2, cargo)); + } + } + } } } diff --git a/bin/ai/regression/require.nut b/bin/ai/regression/tst_regression/require.nut similarity index 100% rename from bin/ai/regression/require.nut rename to bin/ai/regression/tst_regression/require.nut diff --git a/bin/ai/regression/regression.txt b/bin/ai/regression/tst_regression/result.txt similarity index 99% rename from bin/ai/regression/regression.txt rename to bin/ai/regression/tst_regression/result.txt index e6f30d220c..c909e79322 100644 --- a/bin/ai/regression/regression.txt +++ b/bin/ai/regression/tst_regression/result.txt @@ -7539,17 +7539,43 @@ ERROR: IsEnd() is invalid as Begin() is never called GetCargoWaitingFromVia(1000, 1000, 0, 1000): -1 GetCargoWaitingFromVia(1000, 1000, 1000, 1000): -1 ---StationList-- - Count(): 2 - Location ListDump: - 5 => 33421 - 4 => 33411 - CargoWaiting(0) ListDump: - 5 => 0 - 4 => 0 - CargoWaiting(1) ListDump: - 5 => 0 - 4 => 0 +--CargoPlanned-- + GetCargoPlanned(0, 0): 0 + GetCargoPlannedFrom(0, 0, 0): 0 + GetCargoPlannedVia(0, 0, 0): 0 + GetCargoPlannedFromVia(0, 0, 0, 0): 0 + GetCargoPlannedFromVia(0, 0, 1000, 0): -1 + GetCargoPlannedFrom(0, 1000, 0): -1 + GetCargoPlannedVia(0, 1000, 0): -1 + GetCargoPlannedFromVia(0, 1000, 0, 0): -1 + GetCargoPlannedFromVia(0, 1000, 1000, 0): -1 + GetCargoPlanned(1000, 0): -1 + GetCargoPlannedFrom(1000, 0, 0): -1 + GetCargoPlannedVia(1000, 0, 0): -1 + GetCargoPlannedFromVia(1000, 0, 0, 0): -1 + GetCargoPlannedFromVia(1000, 0, 1000, 0): -1 + GetCargoPlannedFrom(1000, 1000, 0): -1 + GetCargoPlannedVia(1000, 1000, 0): -1 + GetCargoPlannedFromVia(1000, 1000, 0, 0): -1 + GetCargoPlannedFromVia(1000, 1000, 1000, 0): -1 + GetCargoPlanned(0, 1000): -1 + GetCargoPlannedFrom(0, 0, 1000): -1 + GetCargoPlannedVia(0, 0, 1000): -1 + GetCargoPlannedFromVia(0, 0, 0, 1000): -1 + GetCargoPlannedFromVia(0, 0, 1000, 1000): -1 + GetCargoPlannedFrom(0, 1000, 1000): -1 + GetCargoPlannedVia(0, 1000, 1000): -1 + GetCargoPlannedFromVia(0, 1000, 0, 1000): -1 + GetCargoPlannedFromVia(0, 1000, 1000, 1000): -1 + GetCargoPlanned(1000, 1000): -1 + GetCargoPlannedFrom(1000, 0, 1000): -1 + GetCargoPlannedVia(1000, 0, 1000): -1 + GetCargoPlannedFromVia(1000, 0, 0, 1000): -1 + GetCargoPlannedFromVia(1000, 0, 1000, 1000): -1 + GetCargoPlannedFrom(1000, 1000, 1000): -1 + GetCargoPlannedVia(1000, 1000, 1000): -1 + GetCargoPlannedFromVia(1000, 1000, 0, 1000): -1 + GetCargoPlannedFromVia(1000, 1000, 1000, 1000): -1 --Tile-- HasTreeOnTile(): false @@ -9141,30 +9167,6 @@ ERROR: IsEnd() is invalid as Begin() is never called SetStopLocation(): true GetStopLocation(): 1 ---StationList_Vehicle-- - Count(): 2 - Location ListDump: - 5 => 33421 - 4 => 33411 - CargoWaiting(0) ListDump: - 5 => 0 - 4 => 0 - CargoWaiting(1) ListDump: - 5 => 0 - 4 => 0 - CargoRating(1) ListDump: - 5 => -1 - 4 => -1 - DistanceManhattanToTile(30000) ListDump: - 5 => 106 - 4 => 96 - DistanceSquareToTile(30000) ListDump: - 5 => 8818 - 4 => 7058 - IsWithinTownInfluence(0) ListDump: - 5 => 0 - 4 => 0 - --VehicleList_Station-- Count(): 1 Location ListDump: diff --git a/bin/ai/regression/tst_stationlist/main.nut b/bin/ai/regression/tst_stationlist/main.nut new file mode 100644 index 0000000000..60f3e4a4a7 --- /dev/null +++ b/bin/ai/regression/tst_stationlist/main.nut @@ -0,0 +1,216 @@ +/* $Id$ */ + +class Regression extends AIController { + function Start(); +}; + + +function Regression::StationList() +{ + local list = AIStationList(AIStation.STATION_BUS_STOP + AIStation.STATION_TRUCK_STOP); + + print(""); + print("--StationList--"); + print(" Count(): " + list.Count()); + list.Valuate(AIStation.GetLocation); + print(" Location ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.GetCargoWaiting, 0); + print(" CargoWaiting(0) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.GetCargoWaiting, 1); + print(" CargoWaiting(1) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_Cargo() +{ + print(""); + print("--StationList_Cargo--"); + + for (local mode = AIStationList_Cargo.CM_WAITING; mode <= AIStationList_Cargo.CM_PLANNED; ++mode) { + print(" " + mode); + for (local selector = AIStationList_Cargo.CS_BY_FROM; selector <= AIStationList_Cargo.CS_FROM_BY_VIA ; ++selector) { + print(" " + selector); + local list = AIStationList_Cargo(mode, selector, 6, 0, 7); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + } + } +}; + +function Regression::StationList_CargoPlanned() +{ + print(""); + print("--StationList_CargoPlanned--"); + + for (local selector = AIStationList_Cargo.CS_BY_FROM; selector <= AIStationList_Cargo.CS_FROM_BY_VIA; ++selector) { + print(" " + selector); + local list = AIStationList_CargoPlanned(selector, 6, 0, 7); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + } +}; + +function Regression::StationList_CargoPlannedByFrom() +{ + print(""); + print("--StationList_CargoPlannedByFrom--"); + local list = AIStationList_CargoPlannedByFrom(2, 0); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_CargoPlannedByVia() +{ + print(""); + print("--StationList_CargoPlannedByVia--"); + local list = AIStationList_CargoPlannedByVia(2, 0); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_CargoPlannedViaByFrom() +{ + print(""); + print("--StationList_CargoPlannedViaByFrom--"); + local list = AIStationList_CargoPlannedViaByFrom(6, 0, 7); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_CargoPlannedFromByVia() +{ + print(""); + print("--StationList_CargoPlannedFromByVia--"); + local list = AIStationList_CargoPlannedFromByVia(6, 0, 7); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_CargoWaiting() +{ + print(""); + print("--StationList_CargoWaiting--"); + + for (local selector = AIStationList_Cargo.CS_BY_FROM; selector <= AIStationList_Cargo.CS_FROM_BY_VIA; ++selector) { + print(" " + selector); + local list = AIStationList_CargoWaiting(selector, 6, 0, 7); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + } +}; + +function Regression::StationList_CargoWaitingByFrom() +{ + print(""); + print("--StationList_CargoWaitingByFrom--"); + local list = AIStationList_CargoWaitingByFrom(2, 0); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_CargoWaitingByVia() +{ + print(""); + print("--StationList_CargoWaitingByVia--"); + local list = AIStationList_CargoWaitingByVia(2, 0); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_CargoWaitingViaByFrom() +{ + print(""); + print("--StationList_CargoWaitingViaByFrom--"); + local list = AIStationList_CargoWaitingViaByFrom(6, 0, 7); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_CargoWaitingFromByVia() +{ + print(""); + print("--StationList_CargoWaitingFromByVia--"); + local list = AIStationList_CargoWaitingFromByVia(2, 0, 2); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +}; + +function Regression::StationList_Vehicle() +{ + local list = AIStationList_Vehicle(12); + + print(""); + print("--StationList_Vehicle--"); + print(" Count(): " + list.Count()); + list.Valuate(AIStation.GetLocation); + print(" Location ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.GetCargoWaiting, 0); + print(" CargoWaiting(0) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.GetCargoWaiting, 1); + print(" CargoWaiting(1) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.GetCargoRating, 1); + print(" CargoRating(1) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.GetDistanceManhattanToTile, 30000); + print(" DistanceManhattanToTile(30000) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.GetDistanceSquareToTile, 30000); + print(" DistanceSquareToTile(30000) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } + list.Valuate(AIStation.IsWithinTownInfluence, 0); + print(" IsWithinTownInfluence(0) ListDump:"); + for (local i = list.Begin(); !list.IsEnd(); i = list.Next()) { + print(" " + i + " => " + list.GetValue(i)); + } +} + +function Regression::Start() +{ + StationList(); + StationList_Cargo(); + StationList_CargoPlanned(); + StationList_CargoPlannedByFrom(); + StationList_CargoPlannedByVia(); + StationList_CargoPlannedViaByFrom(); + StationList_CargoPlannedFromByVia(); + StationList_CargoWaiting(); + StationList_CargoWaitingByFrom(); + StationList_CargoWaitingByVia(); + StationList_CargoWaitingViaByFrom(); + StationList_CargoWaitingFromByVia(); + StationList_Vehicle(); +} diff --git a/bin/ai/regression/tst_stationlist/result.txt b/bin/ai/regression/tst_stationlist/result.txt new file mode 100644 index 0000000000..20e594766f --- /dev/null +++ b/bin/ai/regression/tst_stationlist/result.txt @@ -0,0 +1,127 @@ + +--StationList-- + Count(): 5 + Location ListDump: + 6 => 42341 + 2 => 41831 + 7 => 41825 + 5 => 33421 + 4 => 33411 + CargoWaiting(0) ListDump: + 7 => 6 + 6 => 6 + 2 => 3 + 5 => 0 + 4 => 0 + CargoWaiting(1) ListDump: + 7 => 0 + 6 => 0 + 5 => 0 + 4 => 0 + 2 => 0 + +--StationList_Cargo-- + 0 + 0 + 6 => 6 + 1 + 6 => 2 + 2 + 2 => 4 + 7 => 2 + 3 + 1 + 0 + 7 => 18 + 6 => 16 + 2 => 7 + 1 + 6 => 8 + 2 => 3 + 2 + 2 => 16 + 6 => 14 + 7 => 11 + 3 + 6 => 10 + 2 => 8 + +--StationList_CargoPlanned-- + 0 + 7 => 18 + 6 => 16 + 2 => 7 + 1 + 6 => 8 + 2 => 3 + 2 + 2 => 16 + 6 => 14 + 7 => 11 + 3 + 6 => 10 + 2 => 8 + +--StationList_CargoPlannedByFrom-- + 7 => 8 + 6 => 8 + 2 => 7 + +--StationList_CargoPlannedByVia-- + 2 => 16 + 6 => 7 + +--StationList_CargoPlannedViaByFrom-- + 6 => 8 + 2 => 3 + +--StationList_CargoPlannedFromByVia-- + 6 => 10 + 2 => 8 + +--StationList_CargoWaiting-- + 0 + 6 => 6 + 1 + 6 => 2 + 2 + 2 => 4 + 7 => 2 + 3 + +--StationList_CargoWaitingByFrom-- + 2 => 3 + +--StationList_CargoWaitingByVia-- + 6 => 3 + +--StationList_CargoWaitingViaByFrom-- + 6 => 2 + +--StationList_CargoWaitingFromByVia-- + 6 => 3 + +--StationList_Vehicle-- + Count(): 2 + Location ListDump: + 5 => 33421 + 4 => 33411 + CargoWaiting(0) ListDump: + 5 => 0 + 4 => 0 + CargoWaiting(1) ListDump: + 5 => 0 + 4 => 0 + CargoRating(1) ListDump: + 5 => -1 + 4 => -1 + DistanceManhattanToTile(30000) ListDump: + 5 => 106 + 4 => 96 + DistanceSquareToTile(30000) ListDump: + 5 => 8818 + 4 => 7058 + IsWithinTownInfluence(0) ListDump: + 5 => 0 + 4 => 0 +ERROR: The script died unexpectedly. diff --git a/bin/ai/regression/tst_stationlist/test.sav b/bin/ai/regression/tst_stationlist/test.sav new file mode 100644 index 0000000000..ef551c74ff Binary files /dev/null and b/bin/ai/regression/tst_stationlist/test.sav differ diff --git a/bin/baseset/no_music.obm b/bin/baseset/no_music.obm index 9482979c26..f782d23ea0 100644 --- a/bin/baseset/no_music.obm +++ b/bin/baseset/no_music.obm @@ -24,6 +24,7 @@ description.es_ES = Un conjunto de música vacío. description.et_EE = Muusikakogu ilma muusikata. description.fi_FI = Musiikkipaketti, jossa ei ole musiikkia. description.fr_FR = Un pack de musiques sans musiques. +description.ga_IE = Pacáiste ceoil gan aon cheol iarbhír ann. description.gd_GB = Pacaid ciùil anns nach eil fonn sam bith. description.gl_ES = Un conxunto de músicas sen ningunha música. description.hr_HR = Muzički paket bez ikakve muzike. @@ -33,6 +34,7 @@ description.is_IS = Tónlistarpakki sem er í raun án tónlistar. description.it_IT = Un pacchetto musicale non contenente alcuna musica. description.ja_JP = 空の音楽パック description.ko_KR = 실제 음악이 없는 음악 목록입니다. +description.la_VA = Sarcina musicae sine ulla musica. description.lb_LU = E Musikpack ouni aktuell Musik. description.lt_LT = Muzikos pakas be muzikos. description.lv_LV = Mūzikas kopa bez mūzikas diff --git a/bin/baseset/no_sound.obs b/bin/baseset/no_sound.obs index 3fa75d2f9b..9954845a35 100644 --- a/bin/baseset/no_sound.obs +++ b/bin/baseset/no_sound.obs @@ -25,6 +25,7 @@ description.et_EE = Helikogu ilma helideta. description.eu_ES = Soinurik gabeko soinu pakete bat description.fi_FI = Äänipaketti, jossa ei ole ääniä. description.fr_FR = Un pack de sons sans sons. +description.ga_IE = Pacáiste fuaimeanna gan aon fhuaimeanna ann. description.gd_GB = Pacaid fhuaimean anns nach eil fuaim sam bith. description.gl_ES = Un conxunto de sons sen ningún son description.hr_HR = Zvučni paket bez ikakvih zvukova. @@ -34,7 +35,8 @@ description.is_IS = Hljóðpakki án hljóðs. description.it_IT = Un pacchetto sonoro non contenente alcun suono. description.ja_JP = 空の効果音パック description.ko_KR = 아무런 효과음도 없는 효과음 팩입니다. -description.lb_LU = En Soundpack mat all den Sounds. +description.la_VA = Sarcina sonorum sine ullis sonis. +description.lb_LU = E Soundpack ouni iergendee Sound. description.lt_LT = Garsų pakas be jokių garsų. description.nb_NO = En lydpakke uten noen lyder. description.nl_NL = Een geluidset zonder geluid. diff --git a/bin/baseset/openttd.grf b/bin/baseset/openttd.grf index 5ee3115802..efe35ffd38 100644 Binary files a/bin/baseset/openttd.grf and b/bin/baseset/openttd.grf differ diff --git a/bin/baseset/orig_dos.obg b/bin/baseset/orig_dos.obg index d5f20332b5..ffe230ccf2 100644 --- a/bin/baseset/orig_dos.obg +++ b/bin/baseset/orig_dos.obg @@ -25,6 +25,7 @@ description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión DOS description.et_EE = Algse Transport Tycoon Deluxe DOSi versiooni graafika. description.fi_FI = Alkuperäiset Transport Tycoon Deluxen DOS-version grafiikat. description.fr_FR = Graphiques originaux de Transport Tycoon Deluxe (version DOS). +description.ga_IE = Grafaicí bunaidhTransport Tycoon Deluxe, eagrán DOS. description.gd_GB = Grafaigeachd aig an deasachadh DOS tùsail aig Transport Tycoon Deluxe. description.gl_ES = Graficos da edición orixinal de Transport Tycoon Deluxe para DOS. description.hr_HR = Originalna grafika za Transport Tycoon Deluxe DOS izdanje. @@ -34,6 +35,7 @@ description.is_IS = Upprunalega grafíkin úr Transport Tycoon Deluxe DOS útgá description.it_IT = Grafica originale di Transport Tycoon Deluxe, edizione DOS. description.ja_JP = Transport Tycoon Deluxe オリジナル版 グラフィック (DOS) description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 도스 에디션의 그래픽입니다. +description.la_VA = Graphica ex editione originale Transport Tycoon Deluxe DOS. description.lb_LU = Original Transport Tycoon Deluxe DOS Editioun Grafik. description.lt_LT = Originali Transport Tycoon Deluxe DOS leidimo grafika. description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for DOS. @@ -70,7 +72,7 @@ TRGI.GRF = da6a6c9dcc451eec88d79211437b76a8 TRGC.GRF = ed446637e034104c5559b32c18afe78d TRGH.GRF = ee6616fb0e6ef6b24892c58c93d86fc9 TRGT.GRF = e30e8a398ae86c03dc534a8ac7dfb3b6 -OPENTTD.GRF = 75a93cea2ed455c2fd5dcbda39e53538 +OPENTTD.GRF = 505d96061556d3bb5cec6234096ec5bc [origin] default = You can find it on your Transport Tycoon Deluxe CD-ROM. diff --git a/bin/baseset/orig_dos.obs b/bin/baseset/orig_dos.obs index 4546e0c730..5ae658692d 100644 --- a/bin/baseset/orig_dos.obs +++ b/bin/baseset/orig_dos.obs @@ -24,6 +24,7 @@ description.es_ES = Sonidos originales de Transport Tycoon Deluxe versión DOS. description.et_EE = Algse Transport Tycoon Deluxe DOSi versiooni helid. description.fi_FI = Alkuperäiset Transport Tycoon Deluxen DOS-version äänet. description.fr_FR = Sons originaux de Transport Tycoon Deluxe (version DOS). +description.ga_IE = Fuaimeanna bunaidh Transport Tycoon Deluxe, eagrán DOS. description.gd_GB = Fuaimean aig an deasachadh DOS tùsail aig Transport Tycoon Deluxe. description.gl_ES = Sons da edición orixinal de Transport Tycoon Deluxe para DOS. description.hr_HR = Originalni zvukovi za Transport Tycoon Deluxe DOS izdanje. @@ -33,6 +34,7 @@ description.is_IS = Upprunalega hljóðið úr Transport Tycoon Deluxe DOS útg description.it_IT = Suoni originali di Transport Tycoon Deluxe, edizione DOS. description.ja_JP = Transport Tycoon Deluxe オリジナル版 効果音 (DOS) description.ko_KR = 오리지널 트랜스포트 타이쿤 도스 에디션의 효과음입니다. +description.la_VA = Soni ex editione originale Transport Tycoon Deluxe DOS. description.lb_LU = Original Transport Tycoon Deluxe DOS Editioun Sound. description.lt_LT = Originalūs Transport Tycoon Deluxe DOS leidimo garsai. description.nb_NO = Originale lyder fra Transport Tycoon Deluxe for DOS. diff --git a/bin/baseset/orig_dos_de.obg b/bin/baseset/orig_dos_de.obg index 4cc59f48c3..5649613eef 100644 --- a/bin/baseset/orig_dos_de.obg +++ b/bin/baseset/orig_dos_de.obg @@ -25,6 +25,7 @@ description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión DOS description.et_EE = Algse Transport Tycoon Deluxe DOSi (Saksa) versiooni graafika. description.fi_FI = Alkuperäiset Saksassa julkaistun Transport Tycoon Deluxen DOS-version grafiikat. description.fr_FR = Graphiques originaux de Transport Tycoon Deluxe (version DOS allemande). +description.ga_IE = Grafaicí bunaidhTransport Tycoon Deluxe, eagrán DOS (Gearmánach). description.gd_GB = Grafaigeachd aig an deasachadh DOS (Gearmailteach) tùsail aig Transport Tycoon Deluxe. description.gl_ES = Graficos da edición orixinal (alemá) de Transport Tycoon Deluxe para DOS. description.hr_HR = Originalna grafika za Transport Tycoon Deluxe DOS (Njemački) izdanje. @@ -34,6 +35,7 @@ description.is_IS = Upprunalega grafíkin úr Transport Tycoon Deluxe DOS (þýs description.it_IT = Grafica originale di Transport Tycoon Deluxe (tedesco), edizione DOS. description.ja_JP = Transport Tycoon Deluxe オリジナル版 グラフィック (DOS・ドイツ版) description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 도스 에디션(독일)의 그래픽입니다. +description.la_VA = Graphica ex editione originale Transport Tycoon Deluxe DOS (Germanica). description.lb_LU = Original Transport Tycoon Deluxe DOS (Däitsch) Editioun Grafik. description.lt_LT = Originali Transport Tycoon Deluxe DOS (Vokiečių) leidimo grafika. description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for DOS (tysk). @@ -70,7 +72,7 @@ TRGI.GRF = da6a6c9dcc451eec88d79211437b76a8 TRGC.GRF = ed446637e034104c5559b32c18afe78d TRGH.GRF = ee6616fb0e6ef6b24892c58c93d86fc9 TRGT.GRF = fcde1d7e8a74197d72a62695884b909e -OPENTTD.GRF = 75a93cea2ed455c2fd5dcbda39e53538 +OPENTTD.GRF = 505d96061556d3bb5cec6234096ec5bc [origin] default = You can find it on your Transport Tycoon Deluxe CD-ROM. diff --git a/bin/baseset/orig_win.obg b/bin/baseset/orig_win.obg index ac1165bb4e..f9bd77934c 100644 --- a/bin/baseset/orig_win.obg +++ b/bin/baseset/orig_win.obg @@ -25,6 +25,7 @@ description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión Win description.et_EE = Algse Transport Tycoon Deluxe Windowsi versiooni graafika. description.fi_FI = Alkuperäiset Transport Tycoon Deluxen Windows-version grafiikat. description.fr_FR = Graphiques originaux de Transport Tycoon Deluxe (version Windows). +description.ga_IE = Grafaicí bunaidhTransport Tycoon Deluxe, eagrán Windows. description.gd_GB = Grafaigeachd aig an deasachadh Windows tùsail aig Transport Tycoon Deluxe. description.gl_ES = Graficos da edición orixinal de Transport Tycoon Deluxe para Windows. description.hr_HR = Originalna grafika za Transport Tycoon Deluxe Windows izdanje. @@ -34,6 +35,7 @@ description.is_IS = Upprunalega grafíkin úr Transport Tycoon Deluxe Windows ú description.it_IT = Grafica originale di Transport Tycoon Deluxe, edizione Windows. description.ja_JP = Transport Tycoon Deluxe オリジナル版 グラフィック (Windows) description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 윈도 에디션의 그래픽입니다. +description.la_VA = Graphica ex editione originale Transport Tycoon Deluxe Windows. description.lb_LU = Original Transport Tycoon Deluxe Windows Editioun Grafik. description.lt_LT = Originali Transport Tycoon Deluxe Windows leidimo grafika. description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for Windows. @@ -70,7 +72,7 @@ TRGIR.GRF = 0c2484ff6be49fc63a83be6ab5c38f32 TRGCR.GRF = 3668f410c761a050b5e7095a2b14879b TRGHR.GRF = 06bf2b7a31766f048baac2ebe43457b1 TRGTR.GRF = de53650517fe661ceaa3138c6edb0eb8 -OPENTTD.GRF = 75a93cea2ed455c2fd5dcbda39e53538 +OPENTTD.GRF = 505d96061556d3bb5cec6234096ec5bc [origin] default = You can find it on your Transport Tycoon Deluxe CD-ROM. diff --git a/bin/baseset/orig_win.obm b/bin/baseset/orig_win.obm index 73a3a6c52e..203c0417c3 100644 --- a/bin/baseset/orig_win.obm +++ b/bin/baseset/orig_win.obm @@ -24,6 +24,7 @@ description.es_ES = Música original de Transport Tycoon Deluxe versión Windows description.et_EE = Algse Transport Tycoon Deluxe Windowsi versiooni muusika. description.fi_FI = Alkuperäinen Transport Tycoon Deluxen Windows-version musiikki. description.fr_FR = Musiques originales de Transport Tycoon Deluxe (version Windows). +description.ga_IE = Ceol bunaidh Transport Tycoon Deluxe, eagrán Windows. description.gd_GB = Ceòl aig an deasachadh Windows tùsail aig Transport Tycoon Deluxe. description.gl_ES = Música da edición orixinal de Transport Tycoon Deluxe para Windows. description.hr_HR = Originalna muzika za Transport Tycoon Deluxe Windows izdanje. @@ -33,7 +34,8 @@ description.is_IS = Upprunalega tónlistin úr Transport Tycoon Deluxe Windows description.it_IT = Musica originale di Transport Tycoon Deluxe, edizione Windows. description.ja_JP = Transport Tycoon Deluxe オリジナル版 音楽 (Windows) description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 윈도 에디션의 음악입니다. -description.lb_LU = Original Transport Tycoon Deluxe Windows Editioun Music. +description.la_VA = Musica ex editione originale Transport Tycoon Deluxe Windows. +description.lb_LU = Original Transport Tycoon Deluxe Windows Editioun Musik. description.lt_LT = Originali Transport Tycoon Deluxe Windows leidimo muzika. description.lv_LV = Oriģinālā Transport Tycoon Deluxe Windows izdevuma mūzika. description.nb_NO = Original musikk fra Transport Tycoon Deluxe for Windows. diff --git a/bin/baseset/orig_win.obs b/bin/baseset/orig_win.obs index 215ff16a3d..33164e9584 100644 --- a/bin/baseset/orig_win.obs +++ b/bin/baseset/orig_win.obs @@ -24,6 +24,7 @@ description.es_ES = Sonidos originales de Transport Tycoon Deluxe versión Windo description.et_EE = Algse Transport Tycoon Deluxe Windowsi versiooni helid. description.fi_FI = Alkuperäiset Transport Tycoon Deluxen Windows-version äänet. description.fr_FR = Sons originaux de Transport Tycoon Deluxe (version Windows). +description.ga_IE = Fuaimeanna bunaidh Transport Tycoon Deluxe, eagrán Windows. description.gd_GB = Fuaimean aig an deasachadh Windows tùsail aig Transport Tycoon Deluxe. description.gl_ES = Sons da edición orixinal de Transport Tycoon Deluxe para Windows. description.hr_HR = Originalni zvukovi za Transport Tycoon Deluxe Windows izdanje. @@ -33,6 +34,7 @@ description.is_IS = Upprunalega hljóðið úr Transport Tycoon Deluxe Windows description.it_IT = Suoni originali di Transport Tycoon Deluxe, edizione Windows. description.ja_JP = Transport Tycoon Deluxe オリジナル版 効果音 (Windows) description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 윈도 에디션의 효과음입니다. +description.la_VA = Soni ex editione originale Transport Tycoon Deluxe Windows. description.lb_LU = Original Transport Tycoon Deluxe Windows Editioun Sound. description.lt_LT = Originalūs Transport Tycoon Deluxe Windows leidimo garsai. description.nb_NO = Originale lyder fra Transport Tycoon Deluxe for Windows. diff --git a/bin/game/compat_1.2.nut b/bin/game/compat_1.2.nut index 37ff5907df..aa5d48c3a3 100644 --- a/bin/game/compat_1.2.nut +++ b/bin/game/compat_1.2.nut @@ -16,3 +16,10 @@ GSTown.SetGrowthRate <- function(town_id, days_between_town_growth) if (days_between_town_growth == 0) days_between_town_growth = GSTown.TOWN_GROWTH_NORMAL; return GSTown._SetGrowthRate(town_id, days_between_town_growth); } + +/* 1.5 adds a game element reference to the news. */ +GSNews._Create <- GSNews.Create; +GSNews.Create <- function(type, text, company) +{ + return GSNews._Create(type, text, company, GSNews.NR_NONE, 0); +} diff --git a/bin/game/compat_1.3.nut b/bin/game/compat_1.3.nut index 4116addbbc..78a03534df 100644 --- a/bin/game/compat_1.3.nut +++ b/bin/game/compat_1.3.nut @@ -16,3 +16,10 @@ GSTown.SetGrowthRate <- function(town_id, days_between_town_growth) if (days_between_town_growth == 0) days_between_town_growth = GSTown.TOWN_GROWTH_NORMAL; return GSTown._SetGrowthRate(town_id, days_between_town_growth); } + +/* 1.5 adds a game element reference to the news. */ +GSNews._Create <- GSNews.Create; +GSNews.Create <- function(type, text, company) +{ + return GSNews._Create(type, text, company, GSNews.NR_NONE, 0); +} diff --git a/bin/game/compat_1.4.nut b/bin/game/compat_1.4.nut index 969c1e865b..a00431ed64 100644 --- a/bin/game/compat_1.4.nut +++ b/bin/game/compat_1.4.nut @@ -8,3 +8,10 @@ */ GSLog.Info("1.4 API compatibility in effect."); + +/* 1.5 adds a game element reference to the news. */ +GSNews._Create <- GSNews.Create; +GSNews.Create <- function(type, text, company) +{ + return GSNews._Create(type, text, company, GSNews.NR_NONE, 0); +} diff --git a/bin/game/compat_1.5.nut b/bin/game/compat_1.5.nut index fe985b90d0..96a7647ff6 100644 --- a/bin/game/compat_1.5.nut +++ b/bin/game/compat_1.5.nut @@ -6,3 +6,5 @@ * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . */ + +GSLog.Info("1.5 API compatibility in effect."); diff --git a/bin/game/compat_1.6.nut b/bin/game/compat_1.6.nut new file mode 100644 index 0000000000..fe985b90d0 --- /dev/null +++ b/bin/game/compat_1.6.nut @@ -0,0 +1,8 @@ +/* $Id$ */ + +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + */ diff --git a/changelog.txt b/changelog.txt index 1da7d4d1b2..4fa211c9f9 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,202 @@ +1.5.0-beta2 (2015-02-24) +------------------------------------------------------------------------ +- Feature: [NoGo] Game scripts can point to a location, station, industry, or town when publishing news. (r27164) +- Feature: Allow changing max heightlevel in scenario editor. (r27151) +- Feature: Make use of both rocky tile sets from the base graphics. (r27117) +- Change: Scale (non-custom) default window sizes according to GUI zoom. (r27147) +- Change: Make statusbar and chat-entry window use the same width as the toolbar. (r27146) +- Change: The chatbox-width setting now uses percent of screen width instead of pixels. (r27144) +- Change: [NewGRF] Interpret negative positions in industry layouts depending on GRF version. (r27138) +- Fix: [SDL, Windows] Right-mouse-button scrolling scrolled/jumped too far, when OpenTTD lagged during mouse event processing. (r27167) +- Fix: Toolbars were not invalidated when changing max-vehicles settings. [FS#6204] (r27163) +- Fix: Tile selection was drawn outside of map in some cases. [FS#6208] (r27162) +- Fix: Reimplement the viewport drawing algorithm. [FS#6156] [FS#6206] (r27161) +- Fix: Issues with smallmap and viewport coordinates and transformations. (r27160, r27159, r27158) +- Fix: Mark bridge middle tiles dirty when building/removing/changing bridges. (r27157) +- Fix: Rounding and unit-conversion inconsistencies in calls to MarkAllViewportsDirty. (r27148) +- Fix: Oilrig empty-tile checks were incorrect due to wrong TileIndexDiff->TileIndexDiffC conversion. (r27137) +- Fix: Misalignment in generate world window in case of small fonts. (r27135) +- Fix: Dragging of free wagons in depot failed with GUI zoom. (r27133) +- Fix: Reduce memory footprint of map array by shuffling its members. [FS#6218] (r27132, r27126) +- Fix: Dropdown- and tooltip-windows should not steal the focus. (r27131) +- Fix: [NewGRF] Action 7/9 condition 0A failed for present, but disabled, NewGRF. (r27119) +- Fix: Road vehicles could not reverse to be sent to depots when the following tile has the right type to run on, but could not be entered. [FS#6183] (r27107) +- Fix: Use the actual max speed of the vehicle in front when determining if a RV can overtake. [FS#6176] (r27106) +- Fix: grow_counter was not properly bounded by growth_rate, but by some other value used to calculate growth_rate. [FS#6195] (r27105) +- Fix: [Script] Support 64 bits integers in ScriptLists. [FS#6194] (r27104) +- Fix: [Script] Money values would end up wrong in strings when outside the bounds of a 32 bits integer. [FS#6194] (r27102) + + +1.5.0-beta1 (2014-12-24) +------------------------------------------------------------------------ +- Feature: Support .txt.gz and -txt.xz changelog, readme and license files in basesets, NewGRFs, etc (r27035, r27034) +- Feature: More height levels [FS#4126] (r27010) +- Feature: Latin translation (r26993) +- Feature: Add option to choose normal, double or quad-size interface (r26990) +- Feature: [Script] Swap method for script lists (r26894) +- Feature: [Script] ScriptStationList_Cargo for sorting cargo by from and via (r26893) +- Feature: [Script] API for retrieving planned flow (r26892) +- Feature: [CargoDist] Predict links for station-autorefitting vehicles (r26889) +- Feature: Setting for limiting the height of bridges (r26882) +- Feature: Make aircraft ascend/descend when they are too close to the ground or too far away (r26866) +- Feature: Allow hiding of non-interesting engines in the GUI (r26805, r26804) +- Feature: Vehicle sorting in autoreplace GUI [FS#1640] (r26800) +- Feature: [NewGRF] Advanced visual effects with multiple effect sprites independent of spawning model (r26988, r26747) +- Feature: Warn about missing industries after generating a map (r26729) +- Feature: Upgrade currently active NewGRFs to newest installed version (r26613) +- Feature: Save and load grfid and md5sum of NewGRFs in config file (r26611) +- Feature: Select an editable preset name for saving (r26610) +- Feature: Cancel cargo delivery from industries/houses to stations after about 21 months of not having picked up any of the cargo (r26582) +- Feature: Give a warning when a plane's orders tell it to use a runway which is too short for it [FS#6009] (r26566) +- Feature: [Script] Extended API for CargoDist (r26557) +- Feature: Show measured order times in timetable GUI also when not timetabled (r26550) +- Feature: Prompt for confirmation when deleting a vehicle group (r26455) +- Feature: Hierarchical vehicle subgroups (r26450) +- Feature: Allow more sound sleep for dedicated servers when there's nothing to do and nobody paying attention (r26449) +- Feature: [NewGRF] Add vehicle modflag 1 (unloading in progress) (r26430) +- Change: Improvements to the man page (r27091, r27012) +- Change: Allow to set the granularity of the tooltip hover time in milliseconds instead of seconds. New default value is 250ms (r26815) +- Change: Follow SI recommendation about spaces between numbers and units [FS#6086] (r26733) +- Change: [CargoDist] Save locations instead of distances in link graphs to reduce size (r26646) +- Change: [Squirrel] Make the internal integer for scripts always 64 bits, so scripts behave the same on 32 and 64 bit architectures and money can be represented properly (r26585, r26584) +- Change: Reshuffle advanced settings tree (r26614, r26536) +- Change: Add backend-independent config-file setting to disable 8bpp video modes, and disable 8bpp by default (r26522) +- Fix: [OS/2] Compile again [FS#6186] (r27092) +- Fix: Compilation with freetype2 version 2.5.4 and newer [FS#6185] (r27079) +- Fix: Variable 47 used the carge translation table of the wrong GRF in case of callback 1D [FS#6182] (r27075) +- Fix: Some lists did not use natural string sorting [FS#6172] (r27063) +- Fix: Mercurial version detection failed if personal presets were configured (r27059) +- Fix: [OSX] Don't require double-press from non-dead console hotkeys [FS#5812] (r27046) +- Fix: Crash when having the vehicle list opened from a buoy or oil rig when the buoy/oil rig is removed (r27030) +- Fix: Unit number was not always fully shown in depots [FS#6102] (r27014) +- Fix: [CargoDist] Reserve cargo only after unloading finished or if the vehicle has the desired cargo already [FS#6110] (r26918) +- Fix: [Squirrel] Loading a value saved as boolean caused it to be of type integer instead of boolean (r26785) +- Fix: [Squirrel] Harden string handling (r26777) +- Fix: [OSX] Implement more of the text editing API to prevent crashes and improve IME support [FS#5972] (r26758) +- Fix: Incorrect saving of order backups [FS#6066] (r26700) +- Fix: Ordering a vehicle to a competitor's rail waypoint displayed an error message. Ignore the click as is done for the other order types to competitor's stuff [FS#6059] (r26692) +- Fix: [Script] Loading/parsing of info .nuts was done in the same VM, causing e.g. constants to break the loading of info of other scripts [FS#5973] (r26617) +- Fix: [CargoDist] Improve estimation of link capacitites (r26549) +- Remove: A bunch of archaic settings from the GUI (r26528, r26526, r26525) + + +1.4.4 (2014-10-21) +------------------------------------------------------------------------ +(None) + + +1.4.4-RC1 (2014-10-08) +------------------------------------------------------------------------ +- Fix: Image widgets stored 32bit SpriteID in uint16 (r26971) +- Fix: Owner of road depot road types were not properly changed upon bankruptcy [FS#6126] (r26955) +- Fix: Compilation on HAIKU (r26922) +- Fix: Crash when enabling 'Full animation' if multiplayer chat text is on screen [FS#6096] (r26919) +- Fix: Height computation of game script text in town GUI did not consider margins [FS#6119] (r26859) +- Fix: [Squirrel] Debian lintian issues (r26853) +- Fix: Compilation of strgen on various platforms like Solaris (r26850) +- Fix: Better display of refit information for articulated vehicles [FS#6113] (r26849, r26848) +- Fix: Do not assign a next hop when returning cargo [FS#6110] (r26847) +- Fix: The ok-button in the OSK for the signs list should just close the OSK [FS#6116] (r26827) + + +1.4.3 (2014-09-23) +------------------------------------------------------------------------ +(None) + + +1.4.3-RC2 (2014-09-14) +------------------------------------------------------------------------ +- Fix: Crashes on joining a server with pending order backups [FS#6112] (r26819) +- Fix: Crashes on start due to dereferencing the -1 index of the file names array of music files (r26809) + + +1.4.3-RC1 (2014-09-07) +------------------------------------------------------------------------ +- Fix: TC_NO_SHADE did not work for 32bpp text rendering (r26792) +- Fix: Loading a game with order backups leaked Orders and left unreachable items in the pool (r26787) +- Fix: Buffer overrun in SQCompiler::Error (r26764) +- Fix: Desync due to not always properly restoring game state from the savegame (r26753) +- Fix: [Script] Crashes and infinite loops when using lists in item-descending order [FS#6085] (r26744) +- Fix: Incorrect CFLAGS when enabling gprof profiling (r26737, r26735) +- Fix: Do not reset the last selected airport or layout, unless it is really necessary [FS#6083] (r26732) +- Fix: Use the normal search path to look for xdg-open at Unix [FS#6077] (r26724) +- Fix: Properly check for cargo acceptance of houses [FS#5997] (r26723) + + +1.4.2 (2014-08-16) +------------------------------------------------------------------------ +(None) + + +1.4.2-RC2 (2014-08-03) +------------------------------------------------------------------------ +- Change: Use awk instead of trying to convince cpp to preprocess nfo files (r26708) +- Fix: CMD_CLEAR_ORDER_BACKUP should not be suppressed by pause modes (r26716) +- Fix: [NewGRF] Parameters to SCC_NEWGRF_PUSH_WORD and SCC_NEWGRF_UNPRINT were not skipped during drawing (r26713) +- Fix: [OSX] Compilation fails with some lzo2 versions, if __LP64__ is defined to 0 instead of checking whether it is defined [FS#6069] (r26709) +- Fix: Wrong breakdown sound was played for ships [FS#6015] (r26706) +- Fix: Integer overflows in acceleration code causing either too low acceleration or too high acceleration [FS#6067] (r26702) +- Fix: Discard incorrectly saved order backups when clients join [FS#6066] (r26700) +- Fix: Do not crash when trying to show an error about vehicle in a NewGRF and the NewGRF was not loaded at all (r26699) +- Fix: Slovak uses space as group separator in numbers [FS#6064] (r26695) +- Fix: Tighten parameter bound checks on GSCargoMonitor functions, and return -1 on out-of-bound parameters (r26685) + + +1.4.2-RC1 (2014-07-03) +------------------------------------------------------------------------ +- Fix: CargoPacket::SourceStation() returns a StationID (r26660) +- Fix: Days in dates are not represented by ordinal numbers in all languages [FS#6047] (r26657) +- Fix: Production cheat cannot be allowed to be active in multiplayer for desync reasons, even when activated in singleplayer previously [FS#6044] (r26656) +- Fix: Make sure an 'abs' is used that supports int64 when using 'abs' on those variables (r26651) +- Fix: Support save/load chunk lengths of up to (1 << 32) - 1 [FS#6041] (r26650) +- Fix: Incorrect usage of string commands in the base language [FS#6037] (r26642, r26640, r26639, r26632) +- Fix: Segmentation fault when encountering a .obg/.obs/.obm with empty string/zero length MD5 checksums [FS#6038] (r26637) +- Fix: The 'Load' button was not properly enabled/disabled for old savegames without NewGRF information (r26634) +- Fix: If the video driver fails to supply a list of resolutions, display an error message [FS#6012] (r26629) + + +1.4.1 (2014-06-02) +------------------------------------------------------------------------ +- Fix: First send packages about new company, then clients joining it to admin port [FS#6025] (r26616) + + +1.4.1-RC2 (2014-05-18) +------------------------------------------------------------------------ +- Fix: Save/load issues on big endian machines (r26593, r26590, r26589) +- Fix: Consider multiheaded trains in station refits [FS#5995] (r26586) +- Fix: Game script could be changed in game by double clicking [FS#5974] (r26583) +- Fix: Transfer stations also should have a cargo rating [FS#5989] (r26581, r26580) +- Fix: [Network] AIs would not reset certain network state information upon creation of their company [FS#6003] (r26578, r26576) +- Fix: [Network] Client of non-dedicated server was not correctly put into the first company for all state variables [FS#6001] (r26577) + + +1.4.1-RC1 (2014-05-04) +------------------------------------------------------------------------ +- Change: Remove demand calculation based on tiles (r26484) +- Change: Use pkg-config for libpng as well (r26435, r26433, r26432) +- Change: Use better distance metric for link graph [FS#5941] (r26411) +- Fix: [Windows] Crash when the operating system performs the "paint" callback during window creation [FS#5994] (r26539, r26538) +- Fix: OpenBSD compilation [FS#5992] (r26523) +- Fix: prevent from ever reading huge (or negative) amounts of data in strgen (r26521) +- Fix: Severity rating of dedicated server messages during world generation (r26518) +- Fix: Buffer overruns in handling of symbolic links inside tars (r26514) +- Fix: Incorrect usage of strecpy (r26505, r26485) +- Fix: Reading console input on dedicated server relied on unspecified behaviour (r26496) +- Fix: Allow single-vehicle consists to station-refit in a meaningful way (r26483) +- Fix: Prevent comparing to NULL when strndup could not allocate memory (r26476) +- Fix: Potentially undefined shifts in NewGRF code (r26475) +- Fix: Make sure there is no uninitialised sprite data (r26473) +- Fix: Draw text shadow for ellipses (r26467) +- Fix: Add special handling for PALETTE_CRASH to work for non-8bpp-mapped sprites (r26463) +- Fix: Avoid division by 0 when scaling flow values [FS#5970] (r26448) +- Fix: Draw links to match _settings_game.vehicle.road_side [FS#5961] (r26445) +- Fix: Load button for heightmap list was missing [FS#5953] (r26428) +- Fix: Do not crash when supplying an invalid filename without extension to cmd parameter -q (r26423) +- Fix: Some road constructions used the rail sound effect [FS#5946] (r26422) +- Fix: Goal GUI failed to shade [FS#5948] (r26420) +- Fix: Shares button state was not appropriately updated when switching setting or company [FS#5947] (r26416) + + 1.4.0 (2014-04-01) ------------------------------------------------------------------------ (None) diff --git a/config.lib b/config.lib index 0b355cdd3c..2c46e71279 100644 --- a/config.lib +++ b/config.lib @@ -526,10 +526,10 @@ check_params() { log 1 " PREPROCESSOR is only available for OSX" exit 1 fi - # OS only allows DETECT, UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP - if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP)$'`" ]; then + # OS only allows DETECT, UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, MORPHOS, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP + if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|DRAGONFLY|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP)$'`" ]; then log 1 "configure: error: invalid option --os=$os" - log 1 " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP]" + log 1 " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|DRAGONFLY|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS|WINCE|PSP]" exit 1 fi # cpu_type can be either 32 or 64 @@ -1037,7 +1037,7 @@ check_params() { log 1 "checking revision... svn detection (tag)" elif [ -d "$ROOT_DIR/.git" ] && [ -n "`git help 2>/dev/null`" ]; then log 1 "checking revision... git detection" - elif [ -d "$ROOT_DIR/.hg" ] && [ -n "`hg help 2>/dev/null`" ]; then + elif [ -d "$ROOT_DIR/.hg" ] && [ -n "`HGPLAIN= hg help 2>/dev/null`" ]; then log 1 "checking revision... hg detection" elif [ -f "$ROOT_DIR/.ottdrev" ]; then log 1 "checking revision... source tarball" @@ -1054,7 +1054,7 @@ check_params() { fi if [ "$doc_dir" = "1" ]; then - if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ]; then + if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ]; then doc_dir="share/doc/openttd" else doc_dir="$data_dir/docs" @@ -1064,7 +1064,7 @@ check_params() { fi if [ "$icon_theme_dir" = "1" ]; then - if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ]; then + if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ]; then icon_theme_dir="share/icons/hicolor" else icon_theme_dir="" @@ -1098,7 +1098,7 @@ check_params() { if [ "$man_dir" = "1" ]; then # add manpage on UNIX systems - if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OSX" ]; then + if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OSX" ]; then man_dir="share/man/man6" else man_dir="" @@ -1109,7 +1109,7 @@ check_params() { if [ "$menu_dir" = "1" ]; then # add a freedesktop menu item only for some UNIX systems - if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ]; then + if [ "$os" = "UNIX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ]; then menu_dir="share/applications" else menu_dir="" @@ -1441,6 +1441,7 @@ make_cflags_and_ldflags() { make_compiler_cflags "$cc_host" "CFLAGS" "CXXFLAGS" "LDFLAGS" "FEATURES" CFLAGS="$CFLAGS -D$os" + CFLAGS_BUILD="$CFLAGS_BUILD -D$os" if [ "$enable_debug" = "0" ]; then # No debug, add default stuff @@ -1450,7 +1451,11 @@ make_cflags_and_ldflags() { LDFLAGS="$LDFLAGS -noixemul" fi - CFLAGS="-O2 -fomit-frame-pointer $CFLAGS" + if [ "$enable_profiling" = "0" ]; then + # -fomit-frame-pointer and -pg do not go well together (gcc errors they are incompatible) + CFLAGS="-fomit-frame-pointer $CFLAGS" + fi + CFLAGS="-O2 $CFLAGS" else OBJS_SUBDIR="debug" @@ -1494,7 +1499,7 @@ make_cflags_and_ldflags() { fi if [ "$enable_profiling" != "0" ]; then - CFLAGS="$CFLAGS -p" + CFLAGS="$CFLAGS -pg" LDFLAGS="$LDFLAGS -pg" fi @@ -1533,7 +1538,7 @@ make_cflags_and_ldflags() { fi fi - if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "FREEBSD" ] && [ "$os" != "OPENBSD" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ] && [ "$os" != "PSP" ] && [ "$os" != "OS2" ]; then + if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "OPENBSD" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ] && [ "$os" != "PSP" ] && [ "$os" != "OS2" ]; then LIBS="$LIBS -lpthread" fi @@ -1560,10 +1565,6 @@ make_cflags_and_ldflags() { LIBS="$LIBS -pthread" fi - if [ "$os" = "FREEBSD" ]; then - LIBS="$LIBS -lpthread" - fi - if [ "$os" = "OSX" ]; then LDFLAGS="$LDFLAGS -framework Cocoa" @@ -1605,7 +1606,7 @@ make_cflags_and_ldflags() { fi # Most targets act like UNIX, just with some additions - if [ "$os" = "BEOS" ] || [ "$os" = "HAIKU" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then + if [ "$os" = "BEOS" ] || [ "$os" = "HAIKU" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then CFLAGS="$CFLAGS -DUNIX" fi # And others like Windows @@ -2263,52 +2264,54 @@ detect_awk() { detect_os() { if [ "$os" = "DETECT" ]; then - # Detect UNIX, OSX, FREEBSD, OPENBSD, NETBSD, HPUX, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP + # Detect UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, HPUX, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP # Try first via dumpmachine, then via uname os=`echo "$host" | tr '[A-Z]' '[a-z]' | $awk ' - /linux/ { print "UNIX"; exit} - /darwin/ { print "OSX"; exit} - /freebsd/ { print "FREEBSD"; exit} - /openbsd/ { print "OPENBSD"; exit} - /netbsd/ { print "NETBSD"; exit} - /hp-ux/ { print "HPUX"; exit} - /morphos/ { print "MORPHOS"; exit} - /beos/ { print "BEOS"; exit} - /haiku/ { print "HAIKU"; exit} - /sunos/ { print "SUNOS"; exit} - /solaris/ { print "SUNOS"; exit} - /cygwin/ { print "CYGWIN"; exit} - /mingw/ { print "MINGW"; exit} - /os2/ { print "OS2"; exit} - /dos/ { print "DOS"; exit} - /wince/ { print "WINCE"; exit} - /psp/ { print "PSP"; exit} + /linux/ { print "UNIX"; exit} + /darwin/ { print "OSX"; exit} + /freebsd/ { print "FREEBSD"; exit} + /dragonfly/ { print "DRAGONFLY"; exit} + /openbsd/ { print "OPENBSD"; exit} + /netbsd/ { print "NETBSD"; exit} + /hp-ux/ { print "HPUX"; exit} + /morphos/ { print "MORPHOS"; exit} + /beos/ { print "BEOS"; exit} + /haiku/ { print "HAIKU"; exit} + /sunos/ { print "SUNOS"; exit} + /solaris/ { print "SUNOS"; exit} + /cygwin/ { print "CYGWIN"; exit} + /mingw/ { print "MINGW"; exit} + /os2/ { print "OS2"; exit} + /dos/ { print "DOS"; exit} + /wince/ { print "WINCE"; exit} + /psp/ { print "PSP"; exit} '` if [ -z "$os" ]; then os=`LC_ALL=C uname | tr '[A-Z]' '[a-z]' | $awk ' - /linux/ { print "UNIX"; exit} - /darwin/ { print "OSX"; exit} - /freebsd/ { print "FREEBSD"; exit} - /openbsd/ { print "OPENBSD"; exit} - /netbsd/ { print "NETBSD"; exit} - /hp-ux/ { print "HPUX"; exit} - /morphos/ { print "MORPHOS"; exit} - /beos/ { print "BEOS"; exit} - /haiku/ { print "HAIKU"; exit} - /sunos/ { print "SUNOS"; exit} - /cygwin/ { print "CYGWIN"; exit} - /mingw/ { print "MINGW"; exit} - /os\/2/ { print "OS2"; exit} - /gnu/ { print "UNIX"; exit} + /linux/ { print "UNIX"; exit} + /darwin/ { print "OSX"; exit} + /freebsd/ { print "FREEBSD"; exit} + /dragonfly/ { print "DRAGONFLY"; exit} + /openbsd/ { print "OPENBSD"; exit} + /netbsd/ { print "NETBSD"; exit} + /hp-ux/ { print "HPUX"; exit} + /morphos/ { print "MORPHOS"; exit} + /beos/ { print "BEOS"; exit} + /haiku/ { print "HAIKU"; exit} + /sunos/ { print "SUNOS"; exit} + /cygwin/ { print "CYGWIN"; exit} + /mingw/ { print "MINGW"; exit} + /os\/2/ { print "OS2"; exit} + /gnu/ { print "UNIX"; exit} '` fi if [ -z "$os" ]; then log 1 "detecting OS... none detected" log 1 "I couldn't detect your OS. Please use --os=OS to force one" - log 1 "Allowed values are: UNIX, OSX, FREEBSD, OPENBSD, NETBSD, MORPHOS, HPUX, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP" + log 1 "Allowed values are: UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, MORPHOS, HPUX, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, DOS, WINCE, and PSP" exit 1 fi @@ -2937,7 +2940,7 @@ detect_icu() { # It was forced, so it should be found. if [ "$with_icu" != "1" ]; then log 1 "configure: error: icu-config couldn't be found" - log 1 "configure: error: you supplied '$with_icuconfig', but it seems invalid" + log 1 "configure: error: you supplied '$with_icu', but it seems invalid" exit 1 fi @@ -3178,9 +3181,9 @@ detect_grfcodec() { log 2 " returned $version" log 2 " exit code $ret" - if [ -z "$version" ] || [ "$ret" != "0" ] || [ "$version" -lt "949" ]; then - if [ -n "$version" ] && [ "$version" -lt "949" ]; then - log 1 "checking grfcodec... needs at least version 6.0.2 (r949), disabled" + if [ -z "$version" ] || [ "$ret" != "0" ] || [ "$version" -lt "985" ]; then + if [ -n "$version" ] && [ "$version" -lt "985" ]; then + log 1 "checking grfcodec... needs at least version 6.0.5 (r985), disabled" else log 1 "checking grfcodec... not found" fi @@ -3220,9 +3223,9 @@ detect_nforenum() { log 2 " returned $version" log 2 " exit code $ret" - if [ -z "$version" ] || [ "$ret" != "0" ] || [ "$version" -lt "949" ]; then - if [ -n "$version" ] && [ "$version" -lt "949" ]; then - log 1 "checking nforenum... needs at least version 6.0.2 (r949), disabled" + if [ -z "$version" ] || [ "$ret" != "0" ] || [ "$version" -lt "985" ]; then + if [ -n "$version" ] && [ "$version" -lt "985" ]; then + log 1 "checking nforenum... needs at least version 6.0.5 (r985), disabled" else log 1 "checking nforenum... not found" fi @@ -3587,9 +3590,9 @@ showhelp() { echo " --awk=AWK the awk to use in configure [awk]" echo " --lipo=LIPO the lipo to use (OSX ONLY) [HOST-lipo]" echo " --os=OS the OS we are compiling for [DETECT]" - echo " DETECT/UNIX/OSX/FREEBSD/OPENBSD/NETBSD/" - echo " MORPHOS/HPUX/BEOS/SUNOS/CYGWIN/MINGW/OS2/" - echo " DOS/WINCE/PSP/HAIKU" + echo " DETECT/UNIX/OSX/FREEBSD/DRAGONFLY/OPENBSD/" + echo " NETBSD/MORPHOS/HPUX/BEOS/SUNOS/CYGWIN/" + echo " MINGW/OS2/DOS/WINCE/PSP/HAIKU" echo " --endian=ENDIAN set the endian of the HOST (AUTO/LE/BE)" echo "" echo "Paths:" diff --git a/docs/desync.txt b/docs/desync.txt index fb53b62ae5..b0b6bd7d47 100644 --- a/docs/desync.txt +++ b/docs/desync.txt @@ -194,6 +194,7 @@ Table of contents - Get the same version of OpenTTD as the original server was running. - Uncomment/enable the define 'DEBUG_DUMP_COMMANDS' in 'src/network/network_func.h'. + (DEBUG_FAILED_DUMP_COMMANDS is explained later) - Put the 'commands-out.log' into the root save folder, and rename it to 'commands.log'. - Run 'openttd -D -d desync=3 -g startsavegame.sav'. @@ -217,6 +218,11 @@ Table of contents the last dmp_cmds that reproduces the replay and the first one that fails. + If the replay does not succeed without mismatch, you can check the logs + whether there were failed commands. Then you may try to replay with + DEBUG_FAILED_DUMP_COMMANDS enabled. If the replay then fails, the + command test-run of the failed command modified the game state. + If you have the original 'dmp_cmds_*.sav', you can also compare those savegames with your own ones from the replay. You can also comment/disable the 'NOT_REACHED' mentioned above, to get another 'dmp_cmds_*.sav' from diff --git a/docs/landscape.html b/docs/landscape.html index abf01c9d8b..f60e859fc3 100644 --- a/docs/landscape.html +++ b/docs/landscape.html @@ -15,20 +15,60 @@ For a graphical representation of the tile-layout have a look at Landscape grid page.

-

Eight attributes (counting "type_height") hold the informations about a tile.
+

Nine attributes (counting "type" and + "height") hold the informations about a tile.
These attributes are referred to as - "type_height", + "type", + "height", "m1", "m2", "m3", "m4", "m5", "m6" and "m7".
The most important value is the class of a tile, stored in the upper 4 bits - of the type_height attribute. The lower 4 bits are used to encode the height and - slope data. + of the type attribute.

Frequently repeating patterns:
    +
  • type +
      +
    • + + Bits 7..4: + + + + + + + + + + + + + +
      The tile type.
      00Ground
      01Railway tracks
      02Roads
      03Town building
      04Trees
      05Station tiles
      06Water
      07Void
      08Industries
      09Tunnel / bridge
      0AObjects
      +
    • + Bits 3..2: + + + + + +
      Presence and direction of bridge above.
      00no bridge
      01Axis X (North-East)
      02Axis Y (South-West)
      +
    • + + Bits 1..0: + + + + + +
      Only meaningfull in tropic climate. It contains the definition of the available zones
      00normal
      01desert
      02rain forest
      + In any other climate these 2 bits are theoretically free of use, however using them does not seem useful. +
    • +
  • m1
    • @@ -58,32 +98,6 @@
  • -
  • m6 -
      -
    • - - Bits 7..6: - - - - - -
      Presence and direction of bridge above, for tiles that support this.
      00no bridge
      01Axis X (North-East)
      02Axis Y (South-West)
      - Some tiles, such as houses do not support bridges over them and use these bits for other purposes. -
    • -
    • - - Bits 1..0: - - - - - -
      Only meaningfull in tropic climate. It contains the definition of the available zones
      00normal
      01desert
      02rain forest
      - In any other climate these 2 bits are theoretically free of use, however using them does not seem useful. -
    • -
    -
  • m7:
    Animation frame/state. Used for houses, industries, objects and stations.
  • @@ -196,9 +210,7 @@ -
  • m6 bits 7..6 : Possibility of a bridge above, in the direction specified
  • m6 bits 4..2: type of hedge on NW border of the tile
  • -
  • m6 bits 1..0 : Tropic zone definition
@@ -510,8 +522,6 @@
  • m5 bit 4: pbs reservation state
  • -
  • m6 bits 7..6 : Possibility of a bridge above, in the direction specified
  • -
  • m6 bits 1..0 : Tropic zone definition
  • @@ -539,6 +549,7 @@ +
  • m3 bits 7..4: owner of road type 1 (tram); OWNER_NONE (10) is stored as OWNER_TOWN (0F)
  • m5 bits 7 clear: road or level-crossing
    • m6 bits 5..3: @@ -573,7 +584,6 @@
    • -
    • m3 bits 7..4: owner of road type 1 (tram); OWNER_NONE (10) is stored as OWNER_TOWN (0F)
    • m5 bit 6 clear: road
      • m1 bits 4..0: owner of the road type 0 (normal road)
      • @@ -663,10 +673,9 @@ +
      • m7 bits 4..0: owner of the road type 0 (normal road)
    • -
    • m6 bits 7..6 : Possibility of a bridge above, in the direction specified
    • -
    • m6 bits 1..0 : Tropic zone definition
    @@ -713,7 +722,6 @@
  • bits 7..2 : lift position (for houses type 04 and 05)
  • -
  • bits 1..0 : tropic zone specifier
  • m7 : @@ -835,7 +843,6 @@
  • -
  • m6 bits 1..0 : Tropic zone definition
  • @@ -969,7 +976,6 @@
  • m6 bits 5..3: the station type (rail, airport, truck, bus, oilrig, dock, buoy, waypoint)
  • m6 bit 2: pbs reservation state for railway stations/waypoints
  • -
  • m6 bits 1..0 : Tropic zone definition
  • m7 bits 4..0: owner of road (road stops)
  • m7 bits 7..6: present road types (road stops)
  • m7: animation frame (railway stations/waypoints, airports)
  • @@ -1082,8 +1088,6 @@ -
  • m6 bits 7..6 : Possibility of a bridge above, in the direction specified
  • -
  • m6 bits 1..0 : Tropic zone definition
  • @@ -1101,7 +1105,7 @@ 8 - Industry tile + Industries   @@ -1425,7 +1429,6 @@
  • m6 bits 5..3: random triggers (NewGRF)
  • m6 bit 2: bit 8 of type (see m5)
  • -
  • m6 bits 1..0 : Tropic zone definition
  • m7: animation frame
  • @@ -1576,8 +1579,6 @@ -
  • m6 bits 7..6 : Possibility of a bridge above, in the direction specified
  • -
  • m6 bits 1..0 : Tropic zone definition
  • m7 bits 4..0: owner of road
  • m7 bit 5 set = on snow or desert
  • m7 bits 7..6: present road types for road
  • @@ -1598,8 +1599,6 @@
  • m2: index into the array of objects, bits 0 to 15 (upper bits in m5)
  • m3: random bits
  • m5: index into the array of objects, bits 16 to 23 (lower bits in m2)
  • -
  • m6 bits 7..6 : Possibility of a bridge above, in the direction specified
  • -
  • m6 bits 1..0 : Tropic zone definition
  • m7: animation counter
  • diff --git a/docs/landscape_grid.html b/docs/landscape_grid.html index e2f3c1f977..d34fe9840c 100644 --- a/docs/landscape_grid.html +++ b/docs/landscape_grid.html @@ -17,7 +17,7 @@

    Landscape

    -Six attributes hold the information about a tile. +Nine attributes hold the information about a tile. This can be seen in the Landscape document. This page tries to give an overview of used and free bits of the array so you can quickly see what is used and what is not.
      @@ -28,13 +28,14 @@ the array so you can quickly see what is used and what is not.

      -
    • type_height - 8 bits in size, stores tile height (lower 4 bits) and tile class (upper 4 bits)
    • +
    • type - 8 bits in size, tile class (bits 4..7), bridge (bits 2..3) tropic zone (bits 0..1, only valid in tropic climate)
    • +
    • height - 8 bits in size, stores tile height
    • m1 - 8 bits in size, used to identify the owner of that tile (eg piece of rail, bridge, etc.)
    • m2 - 16 bits in size, used to identify the index of the given tile (object) in the (object-)array
    • m3 - 8 bits in size, is used for general storage
    • m4 - 8 bits in size, is used for general storage
    • m5 - 8 bits in size, is used for general storage
    • -
    • m6 - 8 bits in size, special meaning : lower 2 bits only valid in tropic climate, upper 2 bits for bridges
    • +
    • m6 - 8 bits in size, is used for general storage
    • m7 - 8 bits in size, is used for general storage
    @@ -42,7 +43,8 @@ the array so you can quickly see what is used and what is not. class - type_height (8) + type (8) + height (8) m1 (8) m2 (16) m3 (8) @@ -55,6 +57,7 @@ the array so you can quickly see what is used and what is not. bits 7654 3210 7654 3210 + 7654 3210 FEDC BA98 7654 3210 7654 3210 7654 3210 @@ -66,69 +69,75 @@ the array so you can quickly see what is used and what is not. 0 ground XXXX XXXX + XXXX XXXX OOO~ ~~~~ OOOO OOOO OOOO OOOO XXXX OOOO XXXX XXOO XXXX XXXX - XXOX XXXX + OOOX XXOO OOOO OOOO farmland -inherit- -inherit- + -inherit- XXXX XXXX XXXX XXXX XXXX XXXX -inherit- -inherit- - XXOX XXXX + OOOX XXOO OOOO OOOO 1 rail XXXX XXXX + XXXX XXXX OOOX XXXX OOOO XXXX OOOO OOOO OOOO XXXX OOOO XXXX XXXX XXXX - XXOO OOXX + OOOO OOOO OOOO OOOO rail with signals -inherit- -inherit- + -inherit- OOOO XXXX XXXX XXXX XXXX XXXX XXXX XXXX -inherit- - XXOO OOXX + OOOO OOOO OOOO OOOO depot -inherit- -inherit- + -inherit- XXXX XXXX XXXX XXXX OOOO XXXX OOOO XXXX XXOX OOXX - XXOO OOXX + OOOO OOOO OOOO OOOO 2 road XXXX XXXX + XXXX XXXX OOOX XXXX XXXX XXXX XXXX XXXX XXXX XXXX OOOO OOOO XXXX XXXX - XXXX XOXX + OOXX XOOO XXXO XXXX @@ -136,10 +145,11 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- + -inherit- XXXX XXXX -inherit- XXXX OOOX - XXXX XOXX + OOXX XOOO XXXX XXXX @@ -147,46 +157,50 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- - OOOO OOOO + -inherit- + XXXX OOOO OOOO OOOO XXOO OOXX - XXOO OOXX - XXXO OOOO + OOOO OOOO + XXXO XXXX 3 house XXXX XXXX XXXX XXXX + XXXX XXXX XXXX XXXX XXXX XXXX XXO~ ~~XX XXXX XXXX XXXX XXXX - XXXX XXXX + XXXX XXOO XXXX XXXX 4 trees XXXX XXXX + XXXX XXXX OOO~ ~~~~ OOOO OOOX XXXX XXXX ~~XX XXXX OOOO OOOO XXOO OXXX - OOOO OOXX + OOOO OOOO OOOO OOOO 5 rail station XXXX XXXX + XXXX XXXX OXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX - OOXX XXXX + OOXX XXOO XXXX XXXX @@ -199,16 +213,18 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- + -inherit- road stop -inherit- -inherit- -inherit- + -inherit- XXXX OOOO OOOO OOOO ~~~~ ~XXX - OOXX XOXX + OOXX XOOO XXOX XXXX @@ -216,10 +232,11 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- + -inherit- OOOO OOOO OOOO OOOO ~~~~ ~XXX - OOXX XOXX + OOXX XOOO OOOO OOOO @@ -227,10 +244,11 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- + -inherit- XXXX OOOO OOOO OOOO XXXX XXXX - OOXX XOXX + OOXX XOOO XXXX XXXX @@ -238,10 +256,11 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- + -inherit- OOOO OOOO OOOO OOOO ~~~~ ~~~~ - OOXX XOXX + OOXX XOOO OOOO OOOO @@ -249,68 +268,74 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- + -inherit- OOOO OOOO OOOO OOOO ~~~~ ~~~~ - OOXX XOXX + OOXX XOOO OOOO OOOO 6 sea, shore XXXX XXXX + XXXX XXXX OXXX XXXX OOOO OOOO OOOO OOOO OOOO OOOO OOOO OOOO X~~X XXXX - XXOO OOXX + OOOO OOOO OOOO OOOO canal, river -inherit- -inherit- + -inherit- OOOO OOOO OOOO OOOO OOOO OOOO XXXX XXXX -inherit- - XXOO OOXX + OOOO OOOO OOOO OOOO shipdepot -inherit- -inherit- + -inherit- XXXX XXXX XXXX XXXX OOOO OOOO OOOO OOOO -inherit- - XXOO OOXX + OOOO OOOO OOOO OOOO 8 industry XXXX XXXX + XXXX XXXX XXXO XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX - OOXX XXXX + OOXX XXOO XXXX XXXX 9 tunnel entrance XXXX XXXX + XXXX XXXX OOOX XXXX OOOO OOOO OOOO OOOO XXXX XXXX OOOO OOOO XOOX XXXX - XXOO OOXX + OOOO OOOO XXXX XXXX @@ -321,19 +346,21 @@ the array so you can quickly see what is used and what is not. -inherit- -inherit- -inherit- - XXXX XXXX + -inherit- + OOXX XXOO -inherit- A objects XXXX XXXX + XXXX XXXX OXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX OOOO OOOO XXXX XXXX - XXOO OOXX + OOOO OOOO XXXX XXXX diff --git a/docs/openttd.6 b/docs/openttd.6 index 0382306d7e..4e04be32c1 100644 --- a/docs/openttd.6 +++ b/docs/openttd.6 @@ -1,112 +1,152 @@ .\" Hey, EMACS: -*- nroff -*- .\" Please adjust this date whenever revising the manpage. -.Dd May 31, 2011 +.Dd October 13, 2014 .Dt OPENTTD 6 +.Os .Sh NAME .Nm openttd -.Nd An open source clone of the Microprose game "Transport Tycoon Deluxe" +.Nd open source clone of the Microprose game \(lqTransport Tycoon Deluxe\(rq .Sh SYNOPSIS .Nm .Op Fl efhx .Op Fl b Ar blitter .Op Fl c Ar config_file -.Op Fl d Ar [level | cat=lvl[,...]] -.Op Fl D Ar [host][:port] -.Op Fl g Ar [savegame] +.Op Fl d Op Ar level | Ar cat Ns = Ns Ar lvl Ns Op , Ns Ar ... +.Op Fl D Oo Ar host Oc Ns Op : Ns Ar port +.Op Fl g Op Ar savegame .Op Fl G Ar seed .Op Fl I Ar graphicsset -.Op Fl l Ar host[:port] +.Op Fl l Ar host Ns Op : Ns Ar port .Op Fl m Ar driver .Op Fl M Ar musicset -.Op Fl n Ar host[:port][#player] +.Op Fl n Ar host Ns Oo : Ns Ar port Oc Ns Op # Ns Ar player .Op Fl p Ar password .Op Fl P Ar password .Op Fl q Ar savegame -.Op Fl r Ar widthxheight +.Op Fl r Ar width Ns x Ns Ar height .Op Fl s Ar driver .Op Fl S Ar soundset .Op Fl t Ar year .Op Fl v Ar driver .Sh OPTIONS -.Bl -tag -width ".Fl n Ar host[:port][#player]" +.Bl -tag -width "-n host[:port][#player]" .It Fl b Ar blitter -Set the blitter, see +Select the blitter +.Ar blitter ; +see .Fl h -for a full list +for a full list. .It Fl c Ar config_file -Use 'config_file' instead of 'openttd.cfg' +Use +.Ar config_file +instead of +.Pa openttd.cfg . .It Fl d Ar [level] Set debug verbosity for all categories to -.Ar level -or 1 if omitted -.It Fl d Ar cat=level[,...] -Set debug verbosity for a specific category -.It Fl D Ar [host][:port] -Start a dedicated server. Sets network debug level to 6. If you want to change this, use +.Ar level , +or 1 if omitted. +.It Fl d Ar cat Ns = Ns Ar lvl Ns Op , Ns Ar ... +Set debug verbosity to +.Ar lvl +for a specific category +.Ar cat . +.It Fl D Oo Ar host Oc Ns Op : Ns Ar port +Start a dedicated server. +.Pp +Network debug level will be set to 6. +If you want to change this, set .Fl d -after -.Fl D -.It Fl G Ar seed -Seed the pseudo random number generator +after setting +.Fl D . .It Fl e -Start in world editor mode +Start in world editor mode. .It Fl f Fork into background (dedicated server only, see -.Fl D ) -.It Fl g Ar [savegame] +.Fl D ) . +.It Fl g Op Ar savegame Load .Ar savegame -at start or start a new game if omitted. The +at start or start a new game if omitted. .Ar savegame -must be either absolute or relative to the current path or one of the search paths. +must be either an absolute path or one relative to the current path or one of +the search paths. +.It Fl G Ar seed +Seed the pseudo random number generator with +.Ar seed . .It Fl h -Display a summary of all options and lists all the available AIs, blitters, sound, music and video drivers, graphics sets and sound sets. +Display a summary of all options and list all the available AIs, blitters, +sound, music and video drivers, graphics sets and sound sets. .It Fl I Ar graphicsset -Set the graphics set, see +Select the graphics set +.Ar graphicsset ; +see .Fl h -for a full list -.It Fl l Ar host[:port] -Redirect DEBUG(), See -.Fl D +for a full list. +.It Fl l Ar host Ns Op : Ns Ar port +Redirect +.Fn DEBUG +output; see +.Fl D . .It Fl m Ar driver -Set the music driver, see +Select the music driver +.Ar driver ; +see .Fl h -for a full list +for a full list. .It Fl M Ar musicset -Set the music set, see +Select the music set +.Ar musicset ; +see .Fl h -for a full list -.It Fl n Ar host[:port][#player] -Join a network game, optionally specify a port to connect to and player to play as +for a full list. +.It Fl n Ar host Ns Oo : Ns Ar port Oc Ns Op # Ns Ar player +Join a network game, optionally specifying a port to connect to and player to +play as. .It Fl p Ar password -Password used to join server. Only useful with -.Fl n +Password used to join server. +Only useful with +.Fl n . .It Fl P Ar password -Password used to join company. Only useful with -.Fl n +Password used to join company. +Only useful with +.Fl n . .It Fl q Ar savegame -Write some information about the savegame and exit -.It Fl r Ar widthxheight -Set the resolution +Write some information about the specified savegame and exit. +.It Fl r Ar width Ns x Ns Ar height +Set the resolution to +.Ar width +\(mu +.Ar height +pixels. .It Fl s Ar driver -Set the sound driver, see +Select the sound driver +.Ar driver ; +see .Fl h -for a full list +for a full list. .It Fl S Ar soundset -Set the sound set, see +Select the sound set +.Ar soundset ; +see .Fl h -for a full list +for a full list. .It Fl t Ar year -Set the starting year +Set the starting year to +.Ar year . .It Fl v Ar driver -Set the video driver, see +Select the video driver +.Ar driver ; +see .Fl h -for a full list +for a full list. .It Fl x -Do not automatically save to config file on exit +Do not automatically save to config file on exit. .El .Sh SEE ALSO -http://wiki.openttd.org/, http://www.openttd.org +.Lk https://wiki.openttd.org "Wiki" +(includes community maintained manual), +.Lk https://forum.openttd.org "Forum", +.Lk https://www.openttd.org "News" .Sh HISTORY Transport Tycoon Deluxe was written by Chris Sawyer and published by Microprose. .Nm diff --git a/findversion.sh b/findversion.sh index c0d500a8fd..6be52b696f 100755 --- a/findversion.sh +++ b/findversion.sh @@ -106,21 +106,21 @@ elif [ -d "$ROOT_DIR/.git" ]; then fi elif [ -d "$ROOT_DIR/.hg" ]; then # We are a hg checkout - if [ -n "`hg status | grep -v '^?'`" ]; then + if [ -n "`HGPLAIN= hg status | grep -v '^?'`" ]; then MODIFIED="2" fi - HASH=`LC_ALL=C hg id -i | cut -c1-12` + HASH=`LC_ALL=C HGPLAIN= hg id -i | cut -c1-12` REV="h`echo $HASH | cut -c1-8`" - BRANCH="`hg branch | sed 's@^default$@@'`" - TAG="`hg id -t | grep -v 'tip$'`" + BRANCH="`HGPLAIN= hg branch | sed 's@^default$@@'`" + TAG="`HGPLAIN= hg id -t | grep -v 'tip$'`" if [ -n "$TAG" ]; then BRANCH="" REV="$TAG" fi - REV_NR=`LC_ALL=C hg log -f -k "(svn r" -l 1 --template "{desc|firstline}\n" | grep "^(svn r[0-9]*)" | sed "s@.*(svn r\([0-9]*\)).*@\1@"` + REV_NR=`LC_ALL=C HGPLAIN= hg log -f -k "(svn r" -l 1 --template "{desc|firstline}\n" | grep "^(svn r[0-9]*)" | sed "s@.*(svn r\([0-9]*\)).*@\1@"` if [ -z "$REV_NR" ]; then # No rev? Maybe it is a custom hgsubversion clone - REV_NR=`LC_ALL=C hg parent --template="{svnrev}"` + REV_NR=`LC_ALL=C HGPLAIN= hg parent --template="{svnrev}"` fi elif [ -f "$ROOT_DIR/.ottdrev" ]; then # We are an exported source bundle diff --git a/known-bugs.txt b/known-bugs.txt index d26ef9ff86..34aca33002 100644 --- a/known-bugs.txt +++ b/known-bugs.txt @@ -1,6 +1,6 @@ OpenTTD's known bugs -Last updated: 2014-02-25 -Release version: 1.4.0-beta5 +Last updated: 2015-02-24 +Release version: 1.5.0-beta2 ------------------------------------------------------------------------ diff --git a/media/extra_grf/assemble_nfo.awk b/media/extra_grf/assemble_nfo.awk new file mode 100644 index 0000000000..cf6b425c1d --- /dev/null +++ b/media/extra_grf/assemble_nfo.awk @@ -0,0 +1,32 @@ +# $Id$ + +# This file is part of OpenTTD. +# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. +# OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + +BEGIN { + # Very basic variant function; barely any error checking. + # Just use the first argument as the file to start from when assembling everything + path = ARGV[1]; + gsub("[^/\\\\]*$", "", path); + assemble(ARGV[1]); +} + +# Recursive function for assembling by means of resolving the #includes. +function assemble(filename) { + while ((getline < filename) > 0) { + if (NF == 2 && $1 == "#include" ) { + # Remove the quotes. + gsub("[\"'<>]", "", $2); + assemble(path $2); + } else { + print $0; + } + } + + if (close(filename) < 0) { + print "Could not open " filename > "/dev/stderr"; + exit -1; + } +} diff --git a/media/extra_grf/openttd.nfo b/media/extra_grf/openttd.nfo index e93b2066fb..66149a37e5 100644 --- a/media/extra_grf/openttd.nfo +++ b/media/extra_grf/openttd.nfo @@ -104,3 +104,4 @@ #include "rivers/tropic.nfo" #include "rivers/toyland.nfo" #include "tunnel_portals.nfo" +#include "palette.nfo" diff --git a/media/extra_grf/palette.nfo b/media/extra_grf/palette.nfo new file mode 100644 index 0000000000..4a6ae69505 --- /dev/null +++ b/media/extra_grf/palette.nfo @@ -0,0 +1,20 @@ +// +// $Id$ +// +// This file is part of OpenTTD. +// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. +// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . +// + + -1 * 0 0C "All black palette" + -1 * 0 05 18 01 + -1 * 0 00 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 + 01 diff --git a/media/extra_grf/shore.nfo b/media/extra_grf/shore.nfo index 70fae8f4d8..7b7c12ad3b 100644 --- a/media/extra_grf/shore.nfo +++ b/media/extra_grf/shore.nfo @@ -47,7 +47,7 @@ -1 sprites/shore.png 8bpp 82 200 64 32 -31 -1 normal -1 sprites/shore.png 8bpp 162 200 64 31 -31 -8 normal -1 * 6 07 83 01 \7! 03 0C - -1 * 44 0C "Missing shore tile graphics for the toyland climate" + -1 * 52 0C "Missing shore tile graphics for the toyland climate" -1 * 3 05 0D 0A -1 sprites/shore.png 8bpp 290 200 64 15 -31 0 normal -1 sprites/shore.png 8bpp 370 200 64 31 -31 -8 normal diff --git a/media/openttd.desktop.in b/media/openttd.desktop.in index c037e3c75b..513ff712df 100644 --- a/media/openttd.desktop.in +++ b/media/openttd.desktop.in @@ -9,4 +9,4 @@ Exec=!!TTD!! Terminal=false Categories=!!MENU_GROUP!! Comment=A clone of Transport Tycoon Deluxe -Keywords=game;simulation;transport;tycoon;deluxe;economics;multiplayer;money;train;ship;bus;truck;aircraft;cargo +Keywords=game;simulation;transport;tycoon;deluxe;economics;multiplayer;money;train;ship;bus;truck;aircraft;cargo; diff --git a/os/debian/changelog b/os/debian/changelog index 1ff0deed6c..d56400af01 100644 --- a/os/debian/changelog +++ b/os/debian/changelog @@ -1,3 +1,81 @@ +openttd (1.5.0~beta2-0) unstable; urgency=low + + * New upstream release 1.5.0-beta2 + + -- OpenTTD Tue, 24 Feb 2015 21:00:00 +0100 + +openttd (1.5.0~beta1-0) unstable; urgency=low + + * New upstream release 1.5.0-beta1 + + -- OpenTTD Wed, 24 Dec 2014 21:00:00 +0100 + +openttd (1.4.4-0) unstable; urgency=low + + * New upstream release 1.4.4 + + -- OpenTTD Tue, 21 Oct 2014 21:00:00 +0200 + +openttd (1.4.4~RC1-0) unstable; urgency=low + + * New upstream release 1.4.4-RC1 + + -- OpenTTD Wed, 08 Oct 2014 19:00:00 +0200 + +openttd (1.4.3-0) unstable; urgency=low + + * New upstream release 1.4.3 + + -- OpenTTD Tue, 23 Sep 2014 21:00:00 +0200 + +openttd (1.4.3~RC2-0) unstable; urgency=low + + * New upstream release 1.4.3-RC2 + + -- OpenTTD Sun, 14 Sep 2014 19:00:00 +0200 + +openttd (1.4.3~RC1-0) unstable; urgency=low + + * New upstream release 1.4.3-RC1 + + -- OpenTTD Sun, 07 Sep 2014 19:00:00 +0200 + +openttd (1.4.2-0) unstable; urgency=low + + * New upstream release 1.4.2 + + -- OpenTTD Sat, 16 Aug 2014 21:00:00 +0200 + +openttd (1.4.2~RC2-0) unstable; urgency=low + + * New upstream release 1.4.2-RC2 + + -- OpenTTD Sun, 03 Aug 2014 18:00:00 +0200 + +openttd (1.4.2~RC1-0) unstable; urgency=low + + * New upstream release 1.4.2-RC1 + + -- OpenTTD Thu, 03 Jul 2014 21:00:00 +0200 + +openttd (1.4.1-0) unstable; urgency=low + + * New upstream release 1.4.1 + + -- OpenTTD Mon, 02 Jun 2014 21:00:00 +0200 + +openttd (1.4.1~RC2-0) unstable; urgency=low + + * New upstream release 1.4.1-RC2 + + -- OpenTTD Sun, 18 May 2014 21:00:00 +0200 + +openttd (1.4.1~RC1-0) unstable; urgency=low + + * New upstream release 1.4.1-RC1 + + -- OpenTTD Sun, 04 May 2014 21:00:00 +0200 + openttd (1.4.0-0) unstable; urgency=low * New upstream release 1.4.0 diff --git a/os/os2/installer/make_installer.cmd b/os/os2/installer/make_installer.cmd index 289b6ea54a..6fe6dace66 100644 --- a/os/os2/installer/make_installer.cmd +++ b/os/os2/installer/make_installer.cmd @@ -1,6 +1,6 @@ @echo off -set OPENTTD_VERSION=1.5.0 +set OPENTTD_VERSION=1.6.0 set OPENSFX_VERSION=0.8.0 set NOSOUND_VERSION=0.8.0 set OPENGFX_VERSION=1.2.0 diff --git a/os/rpm/openttd.spec b/os/rpm/openttd.spec index cd19fd9219..5ad5a53cab 100644 --- a/os/rpm/openttd.spec +++ b/os/rpm/openttd.spec @@ -17,9 +17,9 @@ # Name: openttd -Version: 1.5.beta1 +Version: 1.6.beta1 Release: 0 -%define srcver 1.5.0-beta1 +%define srcver 1.6.0-beta1 Summary: An open source reimplementation of Chris Sawyer's Transport Tycoon Deluxe License: GPL-2.0 Group: Amusements/Games/Strategy/Other diff --git a/os/windows/installer/install.nsi b/os/windows/installer/install.nsi index cca07eade1..ebe9ed3dcd 100644 --- a/os/windows/installer/install.nsi +++ b/os/windows/installer/install.nsi @@ -1,6 +1,6 @@ # Version numbers to update !define APPV_MAJOR 1 -!define APPV_MINOR 5 +!define APPV_MINOR 6 !define APPV_MAINT 0 !define APPV_BUILD 0 !define APPV_EXTRA "-beta1" diff --git a/projects/generate b/projects/generate index 542a27d6e1..42b684d2af 100755 --- a/projects/generate +++ b/projects/generate @@ -77,7 +77,7 @@ safety_check() { done } -grep '\.h' "$ROOT_DIR/source.list" | grep -v '../objs/langs/table/strings.h\|../objs/settings/table/settings.h' | sed 's/ //' | sort > tmp.headers.source.list +grep '\.h' "$ROOT_DIR/source.list" | grep -v '../objs/langs/table/strings.h\|../objs/settings/table/settings.h' | sed 's/ //g' | sort > tmp.headers.source.list find "$ROOT_DIR/src" \( -iname "*.h" -or -iname "*.hpp" \) -and -not -ipath "*/.svn/*" | sed "s~$ROOT_DIR/src/~~" | sort > tmp.headers.src if [ -n "`diff tmp.headers.source.list tmp.headers.src`" ]; then echo "The following headers are missing in source.list and not in /src/ or vice versa." diff --git a/projects/langs_vs100.vcxproj b/projects/langs_vs100.vcxproj index be9e0c6227..078a7b374a 100644 --- a/projects/langs_vs100.vcxproj +++ b/projects/langs_vs100.vcxproj @@ -227,6 +227,12 @@ ..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs) ..\bin\lang\korean.lng;%(Outputs) + + Generating latin language file + ..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)" + ..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs) + ..\bin\lang\latin.lng;%(Outputs) + Generating latvian language file ..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)" diff --git a/projects/langs_vs100.vcxproj.filters b/projects/langs_vs100.vcxproj.filters index 64221319e2..fb16aa64e0 100644 --- a/projects/langs_vs100.vcxproj.filters +++ b/projects/langs_vs100.vcxproj.filters @@ -97,6 +97,9 @@ Translations + + Translations + Translations diff --git a/projects/langs_vs80.vcproj b/projects/langs_vs80.vcproj index 6cea19753f..1413a80d27 100644 --- a/projects/langs_vs80.vcproj +++ b/projects/langs_vs80.vcproj @@ -513,6 +513,21 @@ /> + + + + + diff --git a/projects/langs_vs90.vcproj b/projects/langs_vs90.vcproj index 5fe8dca8d8..db6fef1a43 100644 --- a/projects/langs_vs90.vcproj +++ b/projects/langs_vs90.vcproj @@ -514,6 +514,21 @@ /> + + + + + diff --git a/projects/openttd_vs100.vcxproj b/projects/openttd_vs100.vcxproj index e7b30aed60..37f9948032 100644 --- a/projects/openttd_vs100.vcxproj +++ b/projects/openttd_vs100.vcxproj @@ -311,6 +311,7 @@ + @@ -437,6 +438,7 @@ + @@ -805,7 +807,6 @@ - @@ -882,6 +883,7 @@ + @@ -896,6 +898,7 @@ + @@ -951,13 +954,8 @@ - - - - - diff --git a/projects/openttd_vs100.vcxproj.filters b/projects/openttd_vs100.vcxproj.filters index f51295d386..06800ffdaf 100644 --- a/projects/openttd_vs100.vcxproj.filters +++ b/projects/openttd_vs100.vcxproj.filters @@ -162,6 +162,9 @@ Source Files + + Source Files + Source Files @@ -540,6 +543,9 @@ Header Files + + Header Files + Header Files @@ -1644,9 +1650,6 @@ Command handlers - - Command handlers - Command handlers @@ -1875,6 +1878,9 @@ Tables + + Tables + Tables @@ -1917,6 +1923,9 @@ Tables + + Tables + Tables @@ -2082,27 +2091,12 @@ Squirrel headers - - Squirrel headers - - - Squirrel headers - - - Squirrel headers - Squirrel headers - - Squirrel headers - Squirrel headers - - Squirrel headers - Squirrel headers diff --git a/projects/openttd_vs80.vcproj b/projects/openttd_vs80.vcproj index f7d087146b..f859fcf18a 100644 --- a/projects/openttd_vs80.vcproj +++ b/projects/openttd_vs80.vcproj @@ -514,6 +514,10 @@ RelativePath=".\..\src\depot.cpp" > + + @@ -1022,6 +1026,10 @@ RelativePath=".\..\src\direction_type.h" > + + @@ -2510,10 +2518,6 @@ RelativePath=".\..\src\depot_cmd.cpp" > - - @@ -2826,6 +2830,10 @@ RelativePath=".\..\src\table\genland.h" > + + @@ -2882,6 +2890,10 @@ RelativePath=".\..\src\table\strgen_tables.h" > + + @@ -3118,34 +3130,14 @@ RelativePath=".\..\src\3rdparty\squirrel\include\sqstdaux.h" > - - - - - - - - - - diff --git a/projects/openttd_vs90.vcproj b/projects/openttd_vs90.vcproj index 2a0b600536..0cf6627fef 100644 --- a/projects/openttd_vs90.vcproj +++ b/projects/openttd_vs90.vcproj @@ -511,6 +511,10 @@ RelativePath=".\..\src\depot.cpp" > + + @@ -1019,6 +1023,10 @@ RelativePath=".\..\src\direction_type.h" > + + @@ -2507,10 +2515,6 @@ RelativePath=".\..\src\depot_cmd.cpp" > - - @@ -2823,6 +2827,10 @@ RelativePath=".\..\src\table\genland.h" > + + @@ -2879,6 +2887,10 @@ RelativePath=".\..\src\table\strgen_tables.h" > + + @@ -3115,34 +3127,14 @@ RelativePath=".\..\src\3rdparty\squirrel\include\sqstdaux.h" > - - - - - - - - - - diff --git a/readme.txt b/readme.txt index e89965cc3c..817f397b51 100644 --- a/readme.txt +++ b/readme.txt @@ -1,5 +1,5 @@ -Last updated: 2014-02-25 -Release version: 1.4.0-beta5 +Last updated: 2015-02-24 +Release version: 1.5.0-beta2 ------------------------------------------------------------------------ @@ -308,9 +308,9 @@ chosen main OpenTTD directory: 32bpp Sets: newgrf (or a subdirectory thereof) Music Sets: baseset (or a subdirectory thereof) AIs: ai (or a subdirectory thereof) - AI Libraries: ai/libraries (or a subdirectory thereof) + AI Libraries: ai/library (or a subdirectory thereof) Game Scripts (GS): game (or a subdirectory thereof) - GS Libraries: game/libraries (or a subdirectory thereof) + GS Libraries: game/library (or a subdirectory thereof) Savegames: save Automatic Savegames: save/autosave Scenarios: scenario @@ -661,6 +661,12 @@ The md5 implementation in src/3rdparty/md5 is licensed under the Zlib license. See the comments in the source files in src/3rdparty/md5 for the complete license text. +The implementations of Posix getaddrinfo and getnameinfo for OS/2 in +src/3rdparty/os2 are distributed partly under the GNU Lesser General Public +License 2.1, and partly under the (3-clause) BSD license. The exact licensing +terms can be found in src/3rdparty/os2/getaddrinfo.c resp. +src/3rdparty/os2/getnameinfo.c. + The exe2coff implementation in os/dos/exe2coff is available under the GPL, with a number of additional terms. See os/dos/exe2coff/copying and os/dos/exe2coff/copying.dj for the exact licensing terms. @@ -674,46 +680,47 @@ http://homer.rice.edu/~sandmann/cwsdpmi/csdpmi5s.zip X.X) Credits ---- ------- The OpenTTD team (in alphabetical order): - Albert Hofkamp (Alberth) - GUI expert - Jean-François Claeys (Belugas) - GUI, newindustries and more - Matthijs Kooijman (blathijs) - Pathfinder-guru, pool rework - Ulf Hermann (fonsinchen) - Cargo Distribution - Christoph Elsenhans (frosch) - General coding - Loïc Guilloux (glx) - Windows Expert - Michael Lutz (michi_cc) - Path based signals - Owen Rudge (orudge) - Forum host, OS/2 port - Peter Nelson (peter1138) - Spiritual descendant from newGRF gods - Ingo von Borstel (planetmaker) - Support - Remko Bijker (Rubidium) - Lead coder and way more - Zdeněk Sojka (SmatZ) - Bug finder and fixer - José Soler (Terkhen) - General coding - Thijs Marinussen (Yexo) - AI Framework - Leif Linse (Zuu) - AI/Game Script + Albert Hofkamp (Alberth) - GUI expert (since 0.7) + Matthijs Kooijman (blathijs) - Pathfinder-guru, Debian port (since 0.3) + Ulf Hermann (fonsinchen) - Cargo Distribution (since 1.3) + Christoph Elsenhans (frosch) - General coding (since 0.6) + Loïc Guilloux (glx) - Windows Expert (since 0.4.5) + Michael Lutz (michi_cc) - Path based signals (since 0.7) + Owen Rudge (orudge) - Forum host, OS/2 port (since 0.1) + Peter Nelson (peter1138) - Spiritual descendant from newGRF gods (since 0.4.5) + Ingo von Borstel (planetmaker) - General coding, Support (since 1.1) + Remko Bijker (Rubidium) - Lead coder and way more (since 0.4.5) + José Soler (Terkhen) - General coding (since 1.0) + Leif Linse (Zuu) - AI/Game Script (since 1.2) Inactive Developers: - Bjarni Corfitzen (Bjarni) - MacOSX port, coder and vehicles - Victor Fischer (Celestar) - Programming everywhere you need him to - Tamás Faragó (Darkvater) - Ex-Lead coder - Jaroslav Mazanec (KUDr) - YAPG (Yet Another Pathfinder God) ;) - Jonathan Coome (Maedhros) - High priest of the NewGRF Temple - Attila Bán (MiHaMiX) - WebTranslator 1 and 2 - Christoph Mallon (Tron) - Programmer, code correctness police + Jean-François Claeys (Belugas) - GUI, newindustries and more (0.4.5 - 1.0) + Bjarni Corfitzen (Bjarni) - MacOSX port, coder and vehicles (0.3 - 0.7) + Victor Fischer (Celestar) - Programming everywhere you need him to (0.3 - 0.6) + Jaroslav Mazanec (KUDr) - YAPG (Yet Another Pathfinder God) ;) (0.4.5 - 0.6) + Jonathan Coome (Maedhros) - High priest of the NewGRF Temple (0.5 - 0.6) + Attila Bán (MiHaMiX) - WebTranslator 1 and 2 (0.3 - 0.5) + Zdeněk Sojka (SmatZ) - Bug finder and fixer (0.6 - 1.3) + Christoph Mallon (Tron) - Programmer, code correctness police (0.3 - 0.5) + Patric Stout (TrueBrain) - NoProgrammer (0.3 - 1.2), sys op (active) + Thijs Marinussen (Yexo) - AI Framework, General (0.6 - 1.3) Retired Developers: - Ludvig Strigeus (ludde) - OpenTTD author, main coder (0.1 - 0.3.3) - Serge Paquet (vurlix) - Assistant project manager, coder (0.1 - 0.3.3) - Dominik Scherer (dominik81) - Lead programmer, GUI expert (0.3.0 - 0.3.6) - Benedikt Brüggemeier (skidd13) - Bug fixer and code reworker - Patric Stout (TrueBrain) - NoProgrammer (0.3 - 1.2), sys op (active) + Tamás Faragó (Darkvater) - Ex-Lead coder (0.3 - 0.5) + Dominik Scherer (dominik81) - Lead programmer, GUI expert (0.3 - 0.3) + Emil Djupfeld (egladil) - MacOSX port (0.4 - 0.6) + Simon Sasburg (HackyKid) - Bug fixer (0.4 - 0.4.5) + Ludvig Strigeus (ludde) - Original author of OpenTTD, main coder (0.1 - 0.3) + Cian Duffy (MYOB) - BeOS port / manual writing (0.1 - 0.3) + Petr Baudiš (pasky) - Many patches, newgrf support, etc. (0.3 - 0.3) + Benedikt Brüggemeier (skidd13) - Bug fixer and code reworker (0.6 - 0.7) + Serge Paquet (vurlix) - 2nd contributor after ludde (0.1 - 0.3) Thanks to: Josef Drexler - For his great work on TTDPatch. Marcin Grzegorczyk - For his TTDPatch work and documentation of Transport Tycoon Deluxe internals and track foundations - Petr Baudiš (pasky) - Many patches, newgrf support, etc. - Simon Sasburg (HackyKid) - For the many bugfixes he has blessed us with Stefan Meißner (sign_de) - For his work on the console Mike Ragsdale - OpenTTD installer - Cian Duffy (MYOB) - BeOS port / manual writing Christian Rosentreter (tokai) - MorphOS / AmigaOS port Richard Kempton (RichK67) - Additional airports, initial TGP implementation Alberto Demichelis - Squirrel scripting language diff --git a/source.list b/source.list index d39274e795..df35cdd26e 100644 --- a/source.list +++ b/source.list @@ -19,6 +19,7 @@ date.cpp debug.cpp dedicated.cpp depot.cpp +disaster_vehicle.cpp driver.cpp economy.cpp effectvehicle.cpp @@ -98,6 +99,10 @@ townname.cpp #else #if OS2 os/os2/os2.cpp + 3rdparty/os2/getaddrinfo.c + 3rdparty/os2/getaddrinfo.h + 3rdparty/os2/getnameinfo.c + 3rdparty/os2/getnameinfo.h #else #if OSX os/macosx/crashlog_osx.cpp @@ -172,6 +177,7 @@ depot_map.h depot_type.h direction_func.h direction_type.h +disaster_vehicle.h music/dmusic.h driver.h economy_base.h @@ -563,7 +569,6 @@ autoreplace_cmd.cpp clear_cmd.cpp company_cmd.cpp depot_cmd.cpp -disaster_cmd.cpp group_cmd.cpp industry_cmd.cpp misc_cmd.cpp @@ -644,6 +649,7 @@ table/control_codes.h table/elrail_data.h table/engines.h table/genland.h +table/heightmap_colours.h table/industry_land.h table/landscape_sprite.h table/newgrf_debug_data.h @@ -658,6 +664,7 @@ table/roadveh_movement.h table/sprites.h table/station_land.h table/strgen_tables.h +table/string_colours.h ../objs/langs/table/strings.h table/town_land.h table/townname.h @@ -721,13 +728,8 @@ script/squirrel_std.hpp 3rdparty/squirrel/squirrel/sqpcheader.h 3rdparty/squirrel/squirrel/sqstate.h 3rdparty/squirrel/include/sqstdaux.h -3rdparty/squirrel/include/sqstdblob.h -3rdparty/squirrel/sqstdlib/sqstdblobimpl.h -3rdparty/squirrel/include/sqstdio.h 3rdparty/squirrel/include/sqstdmath.h -3rdparty/squirrel/sqstdlib/sqstdstream.h 3rdparty/squirrel/include/sqstdstring.h -3rdparty/squirrel/include/sqstdsystem.h 3rdparty/squirrel/squirrel/sqstring.h 3rdparty/squirrel/squirrel/sqtable.h 3rdparty/squirrel/include/squirrel.h diff --git a/src/3rdparty/os2/getaddrinfo.c b/src/3rdparty/os2/getaddrinfo.c new file mode 100644 index 0000000000..3cdda21f1b --- /dev/null +++ b/src/3rdparty/os2/getaddrinfo.c @@ -0,0 +1,299 @@ +/* + * This file is part of libESMTP, a library for submission of RFC 2822 + * formatted electronic mail messages using the SMTP protocol described + * in RFC 2821. + * + * Copyright (C) 2001,2002 Brian Stafford + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +/* An emulation of the RFC 2553 / Posix getaddrinfo resolver interface. + */ + +#if !HAVE_GETADDRINFO + +/* Need to turn off Posix features in glibc to build this */ +#undef _POSIX_C_SOURCE +#undef _XOPEN_SOURCE + +#include "getaddrinfo.h" +//#include "compat/inet_pton.h" + +#include +#include +#include +#include +#include +#include +#include + +static struct addrinfo * +dup_addrinfo (struct addrinfo *info, void *addr, size_t addrlen) { + struct addrinfo *ret; + + ret = malloc (sizeof (struct addrinfo)); + if (ret == NULL) + return NULL; + memcpy (ret, info, sizeof (struct addrinfo)); + ret->ai_addr = malloc (addrlen); + if (ret->ai_addr == NULL) { + free (ret); + return NULL; + } + memcpy (ret->ai_addr, addr, addrlen); + ret->ai_addrlen = addrlen; + return ret; +} + +int +getaddrinfo (const char *nodename, const char *servname, + const struct addrinfo *hints, struct addrinfo **res) +{ + struct hostent *hp; + struct servent *servent; + const char *socktype; + int port; + struct addrinfo hint, result; + struct addrinfo *ai, *sai, *eai; + char **addrs; + + if (servname == NULL && nodename == NULL) + return EAI_NONAME; + + memset (&result, 0, sizeof result); + + /* default for hints */ + if (hints == NULL) { + memset (&hint, 0, sizeof hint); + hint.ai_family = PF_UNSPEC; + hints = &hint; + } + + if (servname == NULL) + port = 0; + else { + /* check for tcp or udp sockets only */ + if (hints->ai_socktype == SOCK_STREAM) + socktype = "tcp"; + else if (hints->ai_socktype == SOCK_DGRAM) + socktype = "udp"; + else + return EAI_SERVICE; + result.ai_socktype = hints->ai_socktype; + + /* Note: maintain port in host byte order to make debugging easier */ + if (isdigit (*servname)) + port = strtol (servname, NULL, 10); + else if ((servent = getservbyname (servname, socktype)) != NULL) + port = ntohs (servent->s_port); + else + return EAI_NONAME; + } + + /* if nodename == NULL refer to the local host for a client or any + for a server */ + if (nodename == NULL) { + struct sockaddr_in sin; + + /* check protocol family is PF_UNSPEC or PF_INET - could try harder + for IPv6 but that's more code than I'm prepared to write */ + if (hints->ai_family == PF_UNSPEC || hints->ai_family == PF_INET) + result.ai_family = AF_INET; + else + return EAI_FAMILY; + + sin.sin_family = result.ai_family; + sin.sin_port = htons (port); + if (hints->ai_flags & AI_PASSIVE) + sin.sin_addr.s_addr = htonl (INADDR_ANY); + else + sin.sin_addr.s_addr = htonl (INADDR_LOOPBACK); + /* Duplicate result and addr and return */ + *res = dup_addrinfo (&result, &sin, sizeof sin); + return (*res == NULL) ? EAI_MEMORY : 0; + } + + /* If AI_NUMERIC is specified, use inet_pton to translate numbers and + dots notation. */ + if (hints->ai_flags & AI_NUMERICHOST) { + struct sockaddr_in sin; + + /* check protocol family is PF_UNSPEC or PF_INET */ + if (hints->ai_family == PF_UNSPEC || hints->ai_family == PF_INET) + result.ai_family = AF_INET; + else + return EAI_FAMILY; + + sin.sin_family = result.ai_family; + sin.sin_port = htons (port); + if (inet_pton(result.ai_family, nodename, &sin.sin_addr)==0) + return EAI_NONAME; + sin.sin_addr.s_addr = inet_addr (nodename); + /* Duplicate result and addr and return */ + *res = dup_addrinfo (&result, &sin, sizeof sin); + return (*res == NULL) ? EAI_MEMORY : 0; + } + +#if HAVE_H_ERRNO + h_errno = 0; +#endif + errno = 0; + hp = gethostbyname(nodename); + if (hp == NULL) { +#ifdef EAI_SYSTEM + if (errno != 0) { + return EAI_SYSTEM; + } +#endif + switch (h_errno) { + case HOST_NOT_FOUND: + return EAI_NODATA; + case NO_DATA: + return EAI_NODATA; +#if defined(NO_ADDRESS) && NO_ADDRESS != NO_DATA + case NO_ADDRESS: + return EAI_NODATA; +#endif + case NO_RECOVERY: + return EAI_FAIL; + case TRY_AGAIN: + return EAI_AGAIN; + default: + return EAI_FAIL; + } + return EAI_FAIL; + } + + /* Check that the address family is acceptable. + */ + switch (hp->h_addrtype) { + case AF_INET: + if (!(hints->ai_family == PF_UNSPEC || hints->ai_family == PF_INET)) + return EAI_FAMILY; + break; +#ifndef __OS2__ + case AF_INET6: + if (!(hints->ai_family == PF_UNSPEC || hints->ai_family == PF_INET6)) + return EAI_FAMILY; + break; +#endif + default: + return EAI_FAMILY; + } + + /* For each element pointed to by hp, create an element in the + result linked list. */ + sai = eai = NULL; + for (addrs = hp->h_addr_list; *addrs != NULL; addrs++) { + struct sockaddr sa; + size_t addrlen; + + if (hp->h_length < 1) + continue; + sa.sa_family = hp->h_addrtype; + switch (hp->h_addrtype) { + case AF_INET: + ((struct sockaddr_in *) &sa)->sin_port = htons (port); + memcpy (&((struct sockaddr_in *) &sa)->sin_addr, + *addrs, hp->h_length); + addrlen = sizeof (struct sockaddr_in); + break; +#ifndef __OS2__ + case AF_INET6: +#if SIN6_LEN + ((struct sockaddr_in6 *) &sa)->sin6_len = hp->h_length; +#endif + ((struct sockaddr_in6 *) &sa)->sin6_port = htons (port); + memcpy (&((struct sockaddr_in6 *) &sa)->sin6_addr, + *addrs, hp->h_length); + addrlen = sizeof (struct sockaddr_in6); + break; +#endif + default: + continue; + } + + result.ai_family = hp->h_addrtype; + ai = dup_addrinfo (&result, &sa, addrlen); + if (ai == NULL) { + freeaddrinfo (sai); + return EAI_MEMORY; + } + if (sai == NULL) + sai = ai; + else + eai->ai_next = ai; + eai = ai; + } + + if (sai == NULL) { + return EAI_NODATA; + } + + if (hints->ai_flags & AI_CANONNAME) { + sai->ai_canonname = malloc (strlen (hp->h_name) + 1); + if (sai->ai_canonname == NULL) { + freeaddrinfo (sai); + return EAI_MEMORY; + } + strcpy (sai->ai_canonname, hp->h_name); + } + + *res = sai; + return 0; +} + +void +freeaddrinfo (struct addrinfo *ai) +{ + struct addrinfo *next; + + while (ai != NULL) { + next = ai->ai_next; + if (ai->ai_canonname != NULL) + free (ai->ai_canonname); + if (ai->ai_addr != NULL) + free (ai->ai_addr); + free (ai); + ai = next; + } +} + +const char * +gai_strerror (int ecode) +{ + static const char *eai_descr[] = { + "no error", + "address family for nodename not supported", /* EAI_ADDRFAMILY */ + "temporary failure in name resolution", /* EAI_AGAIN */ + "invalid value for ai_flags", /* EAI_BADFLAGS */ + "non-recoverable failure in name resolution", /* EAI_FAIL */ + "ai_family not supported", /* EAI_FAMILY */ + "memory allocation failure", /* EAI_MEMORY */ + "no address associated with nodename", /* EAI_NODATA */ + "nodename nor servname provided, or not known", /* EAI_NONAME */ + "servname not supported for ai_socktype", /* EAI_SERVICE */ + "ai_socktype not supported", /* EAI_SOCKTYPE */ + "system error returned in errno", /* EAI_SYSTEM */ + "argument buffer overflow", /* EAI_OVERFLOW */ + }; + + if (ecode < 0 || ecode > (int) (sizeof eai_descr/ sizeof eai_descr[0])) + return "unknown error"; + return eai_descr[ecode]; +} + +#endif /* HAVE_GETADDRINFO */ diff --git a/src/3rdparty/os2/getaddrinfo.h b/src/3rdparty/os2/getaddrinfo.h new file mode 100644 index 0000000000..0a588a40a2 --- /dev/null +++ b/src/3rdparty/os2/getaddrinfo.h @@ -0,0 +1,101 @@ +#ifndef _getaddrinfo_h +#define _getaddrinfo_h + +/* + * Shamelessly duplicated from the fetchmail public sources + * for use by the Squid Project under GNU Public License. + * + * Update/Maintenance History: + * + * 15-Aug-2007 : Copied from fetchmail 6.3.8 + * - added protection around libray headers + * + * 16-Aug-2007 : Altered configure checks + * Un-hacked slightly to use system gethostbyname() + * + * Original License and code follows. + */ + +/* + * This file is part of libESMTP, a library for submission of RFC 2822 + * formatted electronic mail messages using the SMTP protocol described + * in RFC 2821. + * + * Copyright (C) 2001,2002 Brian Stafford + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +/* Structure and prototypes taken from RFC 2553 */ + +/* SG 23/09/2007: +On Windows the following definitions are already available, may be that +this could be needed on some other platform */ +typedef int socklen_t; + +struct addrinfo { + int ai_flags; /* AI_PASSIVE, AI_CANONNAME, AI_NUMERICHOST */ + int ai_family; /* PF_xxx */ + int ai_socktype; /* SOCK_xxx */ + int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */ + socklen_t ai_addrlen; /* length of ai_addr */ + char *ai_canonname; /* canonical name for nodename */ + struct sockaddr *ai_addr; /* binary address */ + struct addrinfo *ai_next; /* next structure in linked list */ +}; + +/* Supposed to be defined in */ +#define AI_ADDRCONFIG 0 +#define AI_PASSIVE 1 /* Socket address is intended for `bind'. */ +#define AI_CANONNAME 2 /* Request for canonical name. */ +#define AI_NUMERICHOST 4 /* Don't use name resolution. */ + +/* Supposed to be defined in */ +#define EAI_ADDRFAMILY 1 /* address family for nodename not supported */ +#define EAI_AGAIN 2 /* temporary failure in name resolution */ +#define EAI_BADFLAGS 3 /* invalid value for ai_flags */ +#define EAI_FAIL 4 /* non-recoverable failure in name resolution */ +#define EAI_FAMILY 5 /* ai_family not supported */ +#define EAI_MEMORY 6 /* memory allocation failure */ +#define EAI_NODATA 7 /* no address associated with nodename */ +#define EAI_NONAME 8 /* nodename nor servname provided, or not known */ +#define EAI_SERVICE 9 /* servname not supported for ai_socktype */ +#define EAI_SOCKTYPE 10 /* ai_socktype not supported */ + +#ifndef EAI_SYSTEM +/* Not defined on mingw32. */ +#define EAI_SYSTEM 11 /* System error returned in `errno'. */ +#endif +#ifndef EAI_OVERFLOW +/* Not defined on mingw32. */ +#define EAI_OVERFLOW 12 /* Argument buffer overflow. */ +#endif + +#ifdef __cplusplus +extern "C" { +#endif +/* RFC 2553 / Posix resolver */ +int getaddrinfo (const char *nodename, const char *servname, + const struct addrinfo *hints, struct addrinfo **res); +/* Free addrinfo structure and associated storage */ +void freeaddrinfo (struct addrinfo *ai); + +/* Convert error return from getaddrinfo() to string */ +const char *gai_strerror (int code); +#ifdef __cplusplus +} +#endif + +#endif /* _getaddrinfo_h */ diff --git a/src/3rdparty/os2/getnameinfo.c b/src/3rdparty/os2/getnameinfo.c new file mode 100644 index 0000000000..14fd89ef15 --- /dev/null +++ b/src/3rdparty/os2/getnameinfo.c @@ -0,0 +1,367 @@ +/* + * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the project nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* + * Issues to be discussed: + * - RFC2553 says that we should raise error on short buffer. X/Open says + * we need to truncate the result. We obey RFC2553 (and X/Open should be + * modified). ipngwg rough consensus seems to follow RFC2553. RFC3493 says + * nothing about it, but defines a new error code EAI_OVERFLOW which seems + * to be intended the code for this case. + * - What is "local" in NI_NOFQDN? (see comments in the code) + * - NI_NAMEREQD and NI_NUMERICHOST conflict with each other. + * - (KAME extension) always attach textual scopeid (fe80::1%lo0), if + * sin6_scope_id is filled - standardization status? + * - what should we do if we should do getservbyport("sctp")? + */ + +/* + * Considerations about thread-safeness + * The code in this file is thread-safe, and so the thread-safeness of + * getnameinfo() depends on the property of backend functions. + * - getservbyport() is not thread safe for most systems we are targeting. + * - getipnodebyaddr() is thread safe. However, many resolver libraries + * used in the function are not thread safe. + * - gethostbyaddr() is usually not thread safe. + */ + +#if !HAVE_GETNAMEINFO + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "getaddrinfo.h" +#include "getnameinfo.h" + +static const struct afd { + int a_af; + int a_addrlen; + int a_socklen; + int a_off; + int a_portoff; +} afdl [] = { +#if INET6 + {PF_INET6, sizeof(struct in6_addr), sizeof(struct sockaddr_in6), + offsetof(struct sockaddr_in6, sin6_addr), + offsetof(struct sockaddr_in6, sin6_port)}, +#endif + {PF_INET, sizeof(struct in_addr), sizeof(struct sockaddr_in), + offsetof(struct sockaddr_in, sin_addr), + offsetof(struct sockaddr_in, sin_port)}, + {0, 0, 0, 0, 0}, +}; + +#if INET6 +static int ip6_parsenumeric __P((const struct sockaddr *, const char *, char *, + size_t, int)); +static int ip6_sa2str __P((const struct sockaddr_in6 *, char *, size_t, int)); +#endif + +int +getnameinfo(sa, salen, host, hostlen, serv, servlen, flags) +const struct sockaddr *sa; +socklen_t salen; +char *host; +size_t hostlen; +char *serv; +size_t servlen; +int flags; +{ + const struct afd *afd; + struct servent *sp; + struct hostent *hp; + unsigned short port; + int family, i; + const char *addr; + uint32_t v4a; + char numserv[512]; + + if (sa == NULL) + return EAI_FAIL; + +#if HAVE_SA_LEN /*XXX*/ + if (sa->sa_len != salen) + return EAI_FAIL; +#endif + + family = sa->sa_family; + for (i = 0; afdl[i].a_af; i++) + if (afdl[i].a_af == family) { + afd = &afdl[i]; + goto found; + } + return EAI_FAMILY; + +found: + if (salen != afd->a_socklen) + return EAI_FAIL; + + /* network byte order */ + memcpy(&port, (const char *)sa + afd->a_portoff, sizeof(port)); + addr = (const char *)sa + afd->a_off; + + if (serv == NULL || servlen == 0) { + /* + * do nothing in this case. + * in case you are wondering if "&&" is more correct than + * "||" here: RFC3493 says that serv == NULL OR servlen == 0 + * means that the caller does not want the result. + */ + } else { + if (flags & NI_NUMERICSERV) + sp = NULL; + else { + sp = getservbyport(port, + (flags & NI_DGRAM) ? "udp" : "tcp"); + } + if (sp) { + if (strlen(sp->s_name) + 1 > servlen) + return EAI_OVERFLOW; + strncpy(serv, sp->s_name, servlen); + } else { + snprintf(numserv, sizeof(numserv), "%u", ntohs(port)); + if (strlen(numserv) + 1 > servlen) + return EAI_OVERFLOW; + strncpy(serv, numserv, servlen); + } + } + + switch (sa->sa_family) { + case AF_INET: + v4a = (uint32_t) + ntohl(((const struct sockaddr_in *)sa)->sin_addr.s_addr); + if (IN_MULTICAST(v4a) || IN_EXPERIMENTAL(v4a)) + flags |= NI_NUMERICHOST; + v4a >>= IN_CLASSA_NSHIFT; + if (v4a == 0) + flags |= NI_NUMERICHOST; + break; +#if INET6 + case AF_INET6: { + const struct sockaddr_in6 *sin6; + sin6 = (const struct sockaddr_in6 *)sa; + switch (sin6->sin6_addr.s6_addr[0]) { + case 0x00: + if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) + ; + else if (IN6_IS_ADDR_LOOPBACK(&sin6->sin6_addr)) + ; + else + flags |= NI_NUMERICHOST; + break; + default: + if (IN6_IS_ADDR_LINKLOCAL(&sin6->sin6_addr)) + flags |= NI_NUMERICHOST; + else if (IN6_IS_ADDR_MULTICAST(&sin6->sin6_addr)) + flags |= NI_NUMERICHOST; + break; + } + } + break; +#endif + } + if (host == NULL || hostlen == 0) { + /* + * do nothing in this case. + * in case you are wondering if "&&" is more correct than + * "||" here: RFC3493 says that host == NULL or hostlen == 0 + * means that the caller does not want the result. + */ + } else if (flags & NI_NUMERICHOST) { + /* NUMERICHOST and NAMEREQD conflicts with each other */ + if (flags & NI_NAMEREQD) + return EAI_NONAME; + + goto numeric; + } else { +#if USE_GETIPNODEBY + int h_error = 0; + hp = getipnodebyaddr(addr, afd->a_addrlen, afd->a_af, &h_error); +#else + hp = gethostbyaddr(addr, afd->a_addrlen, afd->a_af); +#if 0 // getnameinfo.c:161:9: error: variable 'h_error' set but not used +#if HAVE_H_ERRNO + h_error = h_errno; +#else + h_error = EINVAL; +#endif +#endif /* 0 */ +#endif + + if (hp) { +#if 0 + if (flags & NI_NOFQDN) { + /* + * According to RFC3493 section 6.2, NI_NOFQDN + * means "node name portion of the FQDN shall + * be returned for local hosts." The following + * code tries to implement it by returning the + * first label (the part before the first + * period) of the FQDN. However, it is not + * clear if this always makes sense, since the + * given address may be outside of "local + * hosts." Due to the unclear description, we + * disable the code in this implementation. + */ + char *p; + p = strchr(hp->h_name, '.'); + if (p) + *p = '\0'; + } +#endif + if (strlen(hp->h_name) + 1 > hostlen) { +#if USE_GETIPNODEBY + freehostent(hp); +#endif + return EAI_OVERFLOW; + } + strncpy(host, hp->h_name, hostlen); +#if USE_GETIPNODEBY + freehostent(hp); +#endif + } else { + if (flags & NI_NAMEREQD) + return EAI_NONAME; + +numeric: + switch (afd->a_af) { +#if INET6 + case AF_INET6: { + int error; + + if ((error = ip6_parsenumeric(sa, addr, host, + hostlen, + flags)) != 0) + return(error); + break; + } +#endif + default: + if (inet_ntop(afd->a_af, addr, host, + hostlen) == NULL) + return EAI_SYSTEM; + break; + } + } + } + return(0); +} + +#if INET6 +static int +ip6_parsenumeric(sa, addr, host, hostlen, flags) +const struct sockaddr *sa; +const char *addr; +char *host; +size_t hostlen; +int flags; +{ + int numaddrlen; + char numaddr[512]; + + if (inet_ntop(AF_INET6, addr, numaddr, sizeof(numaddr)) == NULL) + return EAI_SYSTEM; + + numaddrlen = strlen(numaddr); + if (numaddrlen + 1 > hostlen) /* don't forget terminator */ + return EAI_OVERFLOW; + strncpy(host, numaddr, hostlen); + + if (((const struct sockaddr_in6 *)sa)->sin6_scope_id) { + char zonebuf[SQUIDHOSTNAMELEN]; + int zonelen; + + zonelen = ip6_sa2str( + (const struct sockaddr_in6 *)(const void *)sa, + zonebuf, sizeof(zonebuf), flags); + if (zonelen < 0) + return EAI_OVERFLOW; + if (zonelen + 1 + numaddrlen + 1 > hostlen) + return EAI_OVERFLOW; + + /* construct */ + memcpy(host + numaddrlen + 1, zonebuf, + (size_t)zonelen); + host[numaddrlen] = SCOPE_DELIMITER; + host[numaddrlen + 1 + zonelen] = '\0'; + } + + return 0; +} + +/* ARGSUSED */ +static int +ip6_sa2str(sa6, buf, bufsiz, flags) +const struct sockaddr_in6 *sa6; +char *buf; +size_t bufsiz; +int flags; +{ + unsigned int ifindex; + const struct in6_addr *a6; + int n; + + ifindex = (unsigned int)sa6->sin6_scope_id; + a6 = &sa6->sin6_addr; + +#if NI_NUMERICSCOPE + if ((flags & NI_NUMERICSCOPE) != 0) { + n = snprintf(buf, bufsiz, "%u", sa6->sin6_scope_id); + if (n < 0 || n >= bufsiz) + return -1; + else + return n; + } +#endif + + /* if_indextoname() does not take buffer size. not a good api... */ + if ((IN6_IS_ADDR_LINKLOCAL(a6) || IN6_IS_ADDR_MC_LINKLOCAL(a6) || + IN6_IS_ADDR_MC_NODELOCAL(a6)) && bufsiz >= IF_NAMESIZE) { + char *p = if_indextoname(ifindex, buf); + if (p) + return (strlen(p)); + } + + /* last resort */ + n = snprintf(buf, bufsiz, "%u", sa6->sin6_scope_id); + if (n < 0 || n >= bufsiz) + return -1; + else + return n; +} +#endif /* INET6 */ +#endif diff --git a/src/3rdparty/os2/getnameinfo.h b/src/3rdparty/os2/getnameinfo.h new file mode 100644 index 0000000000..c1861aa033 --- /dev/null +++ b/src/3rdparty/os2/getnameinfo.h @@ -0,0 +1,29 @@ +#ifndef _getnameinfo_h +#define _getnameinfo_h +/* + * Reconstructed from KAME getnameinfo.c (in lib/) + */ + + /* getnameinfo flags */ +#define NI_NOFQDN 0x0001 +#define NI_NUMERICHOST 0x0002 /* return numeric form of address */ +#define NI_NAMEREQD 0x0004 /* request DNS name */ +#define NI_NUMERICSERV 0x0008 +#define NI_DGRAM 0x0010 + +#ifdef __cplusplus +extern "C" { +#endif +/* RFC 2553 / Posix resolver */ +int getnameinfo(const struct sockaddr *sa, + socklen_t salen, + char *host, + size_t hostlen, + char *serv, + size_t servlen, + int flags ); +#ifdef __cplusplus +} +#endif + +#endif /* _getnameinfo_h */ diff --git a/src/3rdparty/squirrel/COMPILE b/src/3rdparty/squirrel/COMPILE deleted file mode 100644 index 8dbbf8c2fc..0000000000 --- a/src/3rdparty/squirrel/COMPILE +++ /dev/null @@ -1,41 +0,0 @@ -Squirrel 2.2.4 stable --------------------------------------------------------- -What is in this distribution? - -squirrel - static library implementing the compiler and interpreter of the language - -sqstdlib - the standard utility libraries - -sq - stand alone interpreter - -doc - The manual - -etc - a minimalistic embedding sample - -samples - samples programs - - -HOW TO COMPILE ---------------------------------------------------------- -GCC USERS -......................................................... -There is a very simple makefile that compiles all libraries and exes -from the root of the project run 'make' - -for 32 bits systems - - $ make - -for 64 bits systems - - $ make sq64 - -VISUAL C++ USERS -......................................................... -Open squirrel.dsw from the root project directory and build(dho!) diff --git a/src/3rdparty/squirrel/HISTORY b/src/3rdparty/squirrel/HISTORY deleted file mode 100644 index 8de77ac16a..0000000000 --- a/src/3rdparty/squirrel/HISTORY +++ /dev/null @@ -1,357 +0,0 @@ -***version 2.2.5 stable*** --sq_getsize() now returns userdatasize for classes and instances --added parameter 'isstatic' to _newmember metamethod(thx G.Meyer) --now array.sort() is implemented with heapsort --added SQUIRREL_VERSION_NUMBER preprocessor definition --now floats in scientific notation also accept numbers with no '.' (eg. 1e+6 or 1e6) --fixed some compiler warning --fixed a minor compiler bug --fixed some bugs when SQUSEDOUBLE is used in 32bits systems --fixed bug in GC - -***2009-11-15 *** -***version 2.2.4 stable*** --fixed bug in functions with default parameters - -***2009-06-30 *** -***version 2.2.3 stable*** --added sq_getfunctioninfo --added compile time flag SQUSEDOUBLE to use double precision floats --added global slot _floatsize_ int the base lib to recognize single precision and double precision builds --sq_wakeupvm can now resume the vm with an exception --added sqstd_format --generators can now be instantiated by calling sq_call() or closure.call() --fixed a bug in sqstd_printcallstack(thx takayuki_h) --fixed modulo by zero(thx jup) --fixed negative enums and constants --fixed generator crash bug if invoked as tail call (thx Mr.Accident) --fixed some minor bug - -***2008-09-24 *** -***version 2.2.2 stable*** --fixed some behaviour inconsistencies in thread.call() and thread.wakeup() (thx Mr.Accident) --fixed coroutine error propagation --fixed lingering return value from native function (thx Tom Leonard) --fixed a bug if array.sort() is given a bad sort function (thx Tom Leonard) --fixed some minor api bug --added sq_arrayremove() and sq_arrayinsert() - -***2008-05-16 *** -***version 2.2.1 stable*** --fixed a tailcall bug - -***2008-02-17 *** -***version 2.2 stable *** --added _newslot metamethod in classes --added enums added constants --added sq_pushconsttable, sq_setconsttable --added default param --added octal literals(thx Dinosaur) --fixed debug hook, 'calls' and 'returns' are properly notified in the same number. --fixed a coroutine bug - -***2007-07-29 *** -***version 2.1.2 stable*** --new behaviour for generators iteration using foreach -now when a generator is iterated by foreach the value returned by a 'return val' statement -will terminate the iteration but will not be returned as foreach iteration --added sq_setclassudsize() --added sq_clear() --added table.clear(), array.clear() --fixed sq_cmp() (thx jyuill) --fixed minor bugs - -***2006-08-21 *** -***version 2.1.1 stable*** --vm refactoring --optimized internal function memory layout --new global symbol _version_ (is the version string) --code size optimization for float literals(on 32bits float builts) --now the raw ref API(sq_addref etc...) is fully reentrant. --fixed a bug in sq_getdelegate() now pushes null if the object doesn't have a delegate(thx MatzeB) --improved C reference performances in NO_GARBAGE_COLLECTOR builds --sq_getlocal() now enumerates also outer values. --fixed regexp library for GCC users. - -***2006-03-19 *** -***version 2.1 stable*** --added static class fields, new keyword static --added 64bits architecture support --added global slot _intsize_ int the base lib to recognize 32bits and 64bits builds --added functions with fixed environment, closure.bindenv() built-in function --all types except userdata and null implement the tostring() method --string concatenation now invokes metamethod _tostring --new metamethods for class objects _newmember and _inherited --sq_call() sq_resume() sq_wakeupvm() have a new signature --new C referencing implementation(scales more with the amount of references) --refactored hash table --new api functions sq_newslot(),sq_tobool(),sq_getbase(), sq_instanceof(), sq_bindenv() --the api func sq_createslot was deprecated but still supported in form of C macro on top of sq_newslot --sq_setreleasehook() now also works for classes --stream.readstr() and stream.writestr() have been deprecated(this affects file and blob) --fixed squirrel.h undeclared api calls --fixed few minor bugs --SQChar is now defined as wchar_t --removed warning when building with -Wall -pedantic for GCC users --added new std io function writeclosuretofile() --added new std string functions strip(),rstrip(),lstrip() and split() --regular expressions operators (+,*) now have more POSIX greedyness behaviour --class constructors are now invoked as normal functions - -***2005-10-02 *** -***version 2.0.5 stable*** --fixed some 64bits incompatibilities (thx sarge) --fixed minor bug in the stdlib format() function (thx Rick) --fixed a bug in dofile() that was preventing to compile empty files --added new API sq_poptop() & sq_getfreevariable() --some performance improvements - -***2005-08-14 *** -***version 2.0.4 stable*** --weak references and related API calls --added sq_objtobool() --class instances memory policies improved(1 mem allocation for the whole instance) --typetags are now declared as SQUserPointer instead of unsigned int --first pass for 64bits compatibility --fixed minor bug in the stdio stream --fixed a bug in format() --fixed bug in string.tointeger() and string.tofloat() - -***2005-06-24 *** -***version 2.0.3 stable*** --dofile() and loadfile() in the iolib now can decode ASCII, UTF8 files UCS2 big-endian and little-endian --sq_setparamscheck() : now typemesk can check for null --added string escape sequence \xhhhh --fixed some C++ standard incompatibilities - -***2005-05-15 *** -***version 2.0.2 stable*** --performances improvements (expecially for GCC users) --removed all dependencies from C++ exception handling --various bugfixes - -***2005-04-12 *** -***version 2.0.1 stable*** --various bugfixes --sq_setparamscheck() now allows spaces in the typemask - -***2005-04-03 *** -***version 2.0 stable*** --added API sq_gettypetag() --added built-in function to the bool type(tointeger, tostring etc...) - -***2005-02-27 *** -***version 2.0 release candidate 1(RC 1)*** --added API sq_reseterror() --modified sq_release() --now class instances can be cloned --various bufixes - -***2005-01-26 *** -***version 2.0 beta 1*** --added bool type --class properties can be redefined in a derived class --added ops *= /= and %= --new syntax for class attributes declaration instead of ( and ) --increased the max number of literals per function from 65535 to 16777215 --now free variables have proper lexical scoping --added API sq_createinstance(), sq_pushbool(), sq_getbool() --added built-in function type() --added built-in function obj.rawin(key) in table,class and instance --sq_rawget() and sq_rawset() now work also on classes and instances --the VM no longer uses C++ exception handling (more suitable for embedded devices) --various bufixes - -***2004-12-21 *** -***version 2.0 alpha 2*** --globals scoping changed, now if :: is omitted the VM automatically falls back on the root table --various bufixes --added class level attributes - -***2004-12-12 *** -***version 2.0 alpha 1*** --codebase branch from version 1.x --added classes --added functions with variable number of parameters(vargc & vargv and the ...) --0 and 0.0 are now considered 'false' by all conditional statements(if,while,for,?,do-while) --added new api functions sq_newclass() sq_setinstanceup() sq_getinstanceup() sq_getattributes() sq_setattributes() --modified api sq_settypetag() - -***2004-11-01 *** -***version 1.0 stable*** --fixed some minor bug --improoved operator 'delete' performances --added scientific notation for float numbers( eg. 2.e16 or 2.e-2) - -***2004-08-30 *** -***version 1.0 release candidate 2(RC 2)*** --fixed bug in the vm(thx Pierre Renaux) --fixed bug in the optimizer(thx Pierre Renaux) --fixed some bug in the documentation(thx JD) --added new api functions for raw object handling --removed nested multiline comments --reduced memory footprint in C references - -***2004-08-23 *** -***version 1.0 release candidate 1(RC 1)*** --fixed division by zero --the 'in' operator and obj.rawget() do not query the default delegate anymore --added function sq_getprintfunc() --added new standard library 'auxlib'(implements default error handlers) - -***2004-07-12 *** -***version 1.0 beta 4*** --fixed a bug in the integer.tochar() built-in method --fixed unary minus operator --fixed bug in dofile() --fixed inconsistency between != and == operators(on float/integer comparison) --added javascript style unsigned right shift operator '>>>' --added array(size) constructor built-in function --array.resize(size,[fill]) built-in function accepts an optional 'fill' value --improved debug API, added sq_getclosureinfo() and sq_setnativeclosurename() - -***2004-05-23 *** -***version 1.0 beta 3*** --minor vm bug fixes --string allocation is now faster --tables and array memory usage is now less conservative(they shrink) --added regular expression routines in the standard library --The 'c' expression now accepts only 1 character(thx irbrian) --multiline strings <[ ]> have been substituted with C# style verbatim strings (eg. @"string") --added new keyword 'parent' for accessing the delegate of tables and unserdata --The metamethod '_clone' has been renamed '_cloned' --the _delslot metamethod's behaviour and prototype have been changed --new default function in the integer and float object 'tochar()' --the built-in function chcode2string has been removed --the default method [table].getdelegate() has been removed --new api sq_rawdeleteslot() --new table built-in method rawdelete(key) --the dynamic mudule loading has been removed from the standard distribution --some optimizations in the VM - -***2004-04-21 *** -***version 1.0 beta 2*** --minor compiler/parser bug fixes --sq_newclosure has a different prototype, the "paramscheck" of paramter has been moved to the new function sq_setparamscheck() --sq_setparamscheck allows to add automatic parameters type checking in native closures --sq_compile() lost the lineinfo parameter --new api sq_enabledebuginfo() globally sets compiler's debug info generation --added consistency check on bytecode serialization --fixed += operator, now works on strings like + --added global slot in the base lib _charsize_ to recognize unicode builds from ascii builds runtime --added registry table --new api call sq_pushregistrytable() --added type tag to the userdata type sq_settypetag() --sq_getuserdata now queries the userdata typetag --the built in function collect_garbage() as been renamed collectgarbage() for consistency reasons --new standard libraries(sqlibs are now obsolete) - -***2004-02-20 *** -***version 1.0 beta 1*** --fixed a bug in the compiler (thanks Martin Kofler) --fixed bug in the switch case statement --fixed the _unm metamethod --fixed minor bugs in the API --fixed automatic stack resizing --first beta version - first pass code clean up in the VM and base lib - first pass code coverege test has been done on VM and built-in lib --new VM creation API sq_open() sq_close() (sq_newvm and sq_releasevm are now obsolete) --new api allows to specifiy a "print" function to output text(sq_printfunc) --added some small optimizations --new cooperative multi-threading capabilities in the base library(coroutines), VMs are now a built in type("thread") --new built in functions have been added for manipulating the new "thread" type --friend virtual machines share the same root table, error handler and debug hook by default --new compile time options - -***2004-01-19 *** -***version 0.9 alpha*** --fixed a garbage collection bug --fixed some API bugs(thanks to Joshua Jensen) --fixed tail calls (in the version 0.8 the tail call optimization was erroneously disabled) --new function parameters semantic, now passing a wrong number of parameters generates an exception --native closures have now a built in parameter number checking --sq_rawget and sq_rawset now work also on arrays --sq_getsize now woks also on userdata --the userdata release hook prototype is changed(now passes the size of the userdata) --the lexer reader function now returns an integer instead of a char that allows better error checking on the input(thx Joshua Jensen) --faster compiler --try/catch blocks do not cause any runtime memory allocation anymore - -***2003-12-06 *** -***version 0.8 alpha*** --fixed a bug that was preventing to have callable userdata throught the metamethod _call --fixed a garbage collection bug --fixed == operator now can compare correctly different types --new built in method getstackinfos(level) --improoved line informations precision for the debug hook --new api call sq_compilebuffer() --new built-in api function compilestring() --new syntactic sugar for function declarations inside tables --the debug API has been finalized - -***2003-11-17 *** -***version 0.7 alpha*** --fixed critical bug SQInteger the tail call system --fixed bug in the continue statement code generation --fixed func call param issue(thanks to Rewoonenco Andrew) --added _delslot metamethod(thanks to Rewoonenco Andrew) --new multiline string expression ( delimited by <[ and ]> ) --normal strings ("") do not allow embedded new line anymore --reduced vm memory footprint(C refs are shared between friend VMs) --new api method sq_deleteslot() --new debug hook event 'r' is triggered when a function returns - -***2003-11-04 *** -***version 0.6 alpha*** --fixed switch statement(was executing the default case after a break) --sq_call() doesn't pop the closure (just the params) --the vm execution can be suspended from the C API anytime (micro-threads) --new api calls sq_suspendvm() sq_wakeupvm() sq_getvmstate() and sq_reservestack() - -***2003-10-13 *** -***version 0.5 alpha*** --fixed some minor bug --tested with non ASCII identifiers in unicode mode(I've tried chinese chars) --added built-in function string.find() --the built-in function array.sort() optionally accepts a cmp(a,b) function --the debug hook function now has a new prototype debug_hook(event_type,sourcefile,line,functionname) --fixed some debug info imprecision - -***2003-10-01 *** -***version 0.4 alpha*** --faster VM --sq_call will pop arguments and closure also in case of failure --fixed a bug in sq_remove --now the VM detects delegation cycles(and throws an exception) --new operators ++ and -- --new operator ',' comma operator --fixed some expression precedence issue --fixed bug in sq_arraypop - -***2003-09-15 *** -***version 0.3 alpha*** --fixed a bug in array::insert() --optional Unicode core(define SQUNICODE or _UNICODE on Win32) --sq_compiler uses a new reader function SQLEXREADFUNC --the debug hook passes 'l' instead of 'line' for line callbacks - and 'c' instead of 'call' for call callbacks --new array.extend() bulit-in function --new API sq_clone() - -***2003-09-10 *** -***version 0.2 pre-alpha*** --new completely reentrant VM (sq_open and sq_close are now obsolete) --sq_newvm() has a new prototype --allocators are now global and linked in the VM --_newslot meta method added --rawset creates a slot if doesn't exists --the compiler error callback pass the vm handle(thanks Pierre Renaux) --sq_setforeignptr() sq_getforeingptr() are now public --sq_resume() now is possible to resume generators from C --sq_getlasterror() retrieve the last thrown error --improved docs - -***2003-09-06 *** -***version 0.1 pre-alpha*** -first release diff --git a/src/3rdparty/squirrel/Makefile b/src/3rdparty/squirrel/Makefile deleted file mode 100644 index 594ec8b1c2..0000000000 --- a/src/3rdparty/squirrel/Makefile +++ /dev/null @@ -1,23 +0,0 @@ - -SQUIRREL=. -MAKE=make - -sq32: - cd squirrel; $(MAKE) - cd sqstdlib; $(MAKE) - cd sq; $(MAKE) - -sqprof: - cd squirrel; $(MAKE) sqprof - cd sqstdlib; $(MAKE) sqprof - cd sq; $(MAKE) sqprof - -sq64: - cd squirrel; $(MAKE) sq64 - cd sqstdlib; $(MAKE) sq64 - cd sq; $(MAKE) sq64 - -clean: - $(MAKE) -C squirrel clean - $(MAKE) -C sqstdlib clean - $(MAKE) -C sq clean diff --git a/src/3rdparty/squirrel/README b/src/3rdparty/squirrel/README deleted file mode 100644 index 9c3bd7b76d..0000000000 --- a/src/3rdparty/squirrel/README +++ /dev/null @@ -1,22 +0,0 @@ -The programming language SQUIRREL 2.2.5 stable - --------------------------------------------------- -The project has been compiled and run on Windows(Windows XP/2000 on Intel x86 Windows XP Pro on AMD x64) and -Linux(Slackware 9.0 on Intel x86, Fedora Core 4 on AMD x64). - -Has been tested with the following compilers: - MS Visual C++ 6.0,7.0,7.1 and 8.0 (32 and 64bits) - MinGW gcc 3.2 (mingw special 20020817-1) - Cygnus gcc 3.2 - Linux gcc 3.2.3 - Linux gcc 4.0.0 (x86 64bits) - - -Feedback and suggestions are appreciated -project page - http://www.squirrel-lang.org -community forums - http://www.squirrel-lang.org/Forums -wiki - http://wiki.squirrel-lang.org -author - alberto@demichelis.net - -END OF README - diff --git a/src/3rdparty/squirrel/doc/sqstdlib2.chm b/src/3rdparty/squirrel/doc/sqstdlib2.chm deleted file mode 100644 index fbf53ec2af..0000000000 Binary files a/src/3rdparty/squirrel/doc/sqstdlib2.chm and /dev/null differ diff --git a/src/3rdparty/squirrel/doc/sqstdlib2.pdf b/src/3rdparty/squirrel/doc/sqstdlib2.pdf deleted file mode 100644 index 72fc15c505..0000000000 --- a/src/3rdparty/squirrel/doc/sqstdlib2.pdf +++ /dev/null @@ -1,1714 +0,0 @@ -%PDF-1.3 -% -4 0 obj -<< /Type /Info -/Producer (FOP 0.20.5) >> -endobj -5 0 obj -<< /Length 246 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gaqd[\IQJ1&-UA:?a4/j=Osr[Jq*pMi=8^1`.4Za_?id24lM2b[+uF7AnR]0Q4ej;k9Tg),:)c*7W;lXW&kJok9tubis9_(_4P/*D/T*8;Q*)>(=mXhjT`"b>?n0Pb;#0GGp)YQMZ:%Nr.,]Ee)267S5JJPh(qWc.2JUaBD$]k#7;O+_fr2/Q4AiQp[&KcBNMUK-,KPb[[BBjHJC?@,=d"kc#.j8KbXf_i75B.qI)8(I~> -endstream -endobj -6 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 5 0 R ->> -endobj -7 0 obj -<< /Length 1047 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasao966RV&AJ$CE(_tHW'$$Ddo4`99KG>D'5hXt!eaDq&+nrXf8D?8/YXB;^F4ot&;YF>$C33$R8(!afRg9emADDoN/Gq^kFG<%$"-FhiSoSSum`^8D^FT^E01>:QhB:j8S4iIc_3g`<(ZIeSFbcT)eJi3m:JO/0#ego2NMb(gI!*VY0P8Z-r@N'UT(?F"h&Y_<=^n-jDu4[b6tEH.H$cf-MA$FdM91QcQO2Y@7BLign\JkFbaS>$e3FcoJ8#_N6]YFu[7/uM16Gq?!%D'plAM.ilY2J3tif8V;%hMiO1D))GSQfbBUk8fujAtdoh%J0tictI5qs*AfS5DYn(Z39C&Oq!\YQr0-]D2BYiB#%'CkGuNnB-rtlq5%>`+ohaG([_Q,;0ekW8V3\9YY*8O:nV)n_%m^$N_@a(U%h&K?iem:)hFG6`XgqAkXEtJb#>mX`8g\)2frpN&1dqs'E(s<="*3eS;[87[IUJu*[?gVp3qK5f\oWadQc"(BZkuPdi.GH%,8S(K?6hi/DHRaZ"p9eoW5gf3)U.`2-e1b0HE4V;_4N5Et!nH-l]A^eYNg`ShQa#iU^IbipEr$0fPPB-//Fbr\r#uldV%o!ih_KBDnR/Zn4JU,"Y((^5(AZrjJ5d\'KQN/A9ARObUYE/M=g&.6pIj4RWPm4;<3RfEBJpQs(EM&jBY#d$^AG6 -endstream -endobj -8 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 7 0 R ->> -endobj -9 0 obj -<< /Length 71 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Garg^iGoCd.c`?]8EV`b1=.gR0K1`91K?+0ZOMGdU/Zh'Y!=Te%#&:?HH*JE! -endstream -endobj -10 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 9 0 R ->> -endobj -11 0 obj -<< /Length 1275 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb"/l9llag*6.GrMEQ\]$2_`c1!(]3FJdNRE9m.H8dl^SK@iclkmOSI`N7'NX((Wn%fY*'\qfHgs">qd@INiG'C+8p-fJpg+ep)):AID:a)$O@DI<]9P&O*DS:ja(N@j^PH(H$I.`b2)gH*!g-:L$GAet26_GB9i-)"(ZQ1E)@X&;t-\AG_S8(D1M?!Tj!j!WHB,0u#86'5]AEg05+)Qcb2rs+*?TU1HA;'B4)d>Ig?YAkY]\PIGdlW,j5(T1X&7JYAjVFa"5o#L%5-p.&P5p/usnSD4qoruWp7e&G3o-DZBZk;uafB`!XQcl&I9Et\%Fid0Z^G6EO)^G0GB)P9,OkJd)T;Al/+:s=""pb@c7ad<1,^krR=pQfQUKJmUEVLu55bS)06Tlt&hUo`"[1Y8$%nQa4#dat0il2.[oNC3Ff9<"$U,;ZZ/P7A6%hAR*5p4OT'JI[fpZT1"-0tSg#?lPM)m]Qr5eD1Cf?oHoK05ReFil6R-Bh:_&5@o(_(NFW1tB/H>B*-I'k])P$RFbfSdu)0g/d;b!cTD'"$e!UhAs]sXuf#ockl`a]d;C6G[G5]C_ngt)?YXc%m:./#kX/f&/a`&!pt`p@R#NY)^V6TV/NJj>m'(Ol%&J-#o\"PU!VR.jktbX]&B"?KRe.rU]?Ufq-#XNssdD'^NI*bRo([LB-,Na"/%TXR0ZUNj5/mn.U/XB%d/s[VJ[TY0'h8Q%5_;8WV&/dIZl[r(dK4jDXGKW$QO@QPScZYA#7H@AqAOAGa7CNW$kV&JP1:PY7:Vb?70sg:.rftX[KufNH4>6Uptf>`j8hDb?h(SHmJSST`;.3]!BXEX`)Rm/TYM'D#Rh1mO=;Ihgn&]L_amFbR\o0/fsEh!eL&^5:WUn>+=M_SnD4tE>M?(WCeQEEU\7(5jt2n.TqHOK'LJW@9gbn!mbuiJO!M:V4T>XTXYDWpH=:jHHOUIda06O2*3,G0tH\"l^`g3-b@1W`q,K#admI76]'m4n -endstream -endobj -12 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 11 0 R -/Annots 13 0 R ->> -endobj -13 0 obj -[ -14 0 R -16 0 R -18 0 R -20 0 R -22 0 R -24 0 R -26 0 R -28 0 R -30 0 R -32 0 R -34 0 R -36 0 R -38 0 R -40 0 R -42 0 R -44 0 R -46 0 R -48 0 R -50 0 R -52 0 R -54 0 R -56 0 R -58 0 R -60 0 R -62 0 R -64 0 R -66 0 R -68 0 R -70 0 R -72 0 R -74 0 R -76 0 R -78 0 R -80 0 R -82 0 R -84 0 R -86 0 R -88 0 R -] -endobj -14 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 655.001 179.44 645.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 15 0 R -/H /I ->> -endobj -16 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 644.001 228.88 634.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 17 0 R -/H /I ->> -endobj -18 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 633.001 194.83 623.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 19 0 R -/H /I ->> -endobj -20 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 622.001 231.06 612.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 21 0 R -/H /I ->> -endobj -22 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 611.001 205.5 601.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 23 0 R -/H /I ->> -endobj -24 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 600.001 169.28 590.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 25 0 R -/H /I ->> -endobj -26 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 589.001 219.11 579.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 27 0 R -/H /I ->> -endobj -28 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 578.001 210.5 568.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 29 0 R -/H /I ->> -endobj -30 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 567.001 292.71 557.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 31 0 R -/H /I ->> -endobj -32 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 556.001 196.66 546.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 33 0 R -/H /I ->> -endobj -34 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 545.001 194.83 535.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 35 0 R -/H /I ->> -endobj -36 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 534.001 231.06 524.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 37 0 R -/H /I ->> -endobj -38 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 523.001 225.77 513.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 39 0 R -/H /I ->> -endobj -40 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 512.001 169.28 502.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 41 0 R -/H /I ->> -endobj -42 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 501.001 219.11 491.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 43 0 R -/H /I ->> -endobj -44 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 490.001 214.39 480.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 45 0 R -/H /I ->> -endobj -46 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 479.001 198.32 469.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 47 0 R -/H /I ->> -endobj -48 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 468.001 194.83 458.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 49 0 R -/H /I ->> -endobj -50 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 457.001 231.06 447.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 51 0 R -/H /I ->> -endobj -52 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 446.001 169.28 436.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 53 0 R -/H /I ->> -endobj -54 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 435.001 219.11 425.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 55 0 R -/H /I ->> -endobj -56 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 424.001 206.66 414.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 57 0 R -/H /I ->> -endobj -58 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 413.001 194.83 403.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 59 0 R -/H /I ->> -endobj -60 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 402.001 231.06 392.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 61 0 R -/H /I ->> -endobj -62 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 391.001 169.28 381.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 63 0 R -/H /I ->> -endobj -64 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 380.001 219.11 370.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 65 0 R -/H /I ->> -endobj -66 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 369.001 201.66 359.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 67 0 R -/H /I ->> -endobj -68 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 358.001 194.83 348.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 69 0 R -/H /I ->> -endobj -70 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 347.001 231.06 337.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 71 0 R -/H /I ->> -endobj -72 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 336.001 220.49 326.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 73 0 R -/H /I ->> -endobj -74 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 325.001 169.28 315.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 75 0 R -/H /I ->> -endobj -76 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 314.001 219.11 304.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 77 0 R -/H /I ->> -endobj -78 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 303.001 212.45 293.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 79 0 R -/H /I ->> -endobj -80 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 292.001 247.16 282.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 81 0 R -/H /I ->> -endobj -82 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 281.001 194.43 271.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 83 0 R -/H /I ->> -endobj -84 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 270.001 169.28 260.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 85 0 R -/H /I ->> -endobj -86 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 259.001 226.6 249.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 87 0 R -/H /I ->> -endobj -88 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 248.001 142.77 238.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 89 0 R -/H /I ->> -endobj -90 0 obj -<< /Length 971 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gas1_9lHOU&A@P9n8Y3KKWesRgleV$dR2K`83JdmGer`M1,^j6$2sN;0Z5l'C8I3YH"NZH4C`H)D/MO-.#bjW+[T>Bn^2%a+?K1_oT0L)u?7'<'Uc<.IgYI(MXYSh0b7UseQ*4HA+>@ot>=.0YoI#q_d9RA:nfmE="Y]=WF]2C+F1.:S5Ptjk"\nDH/A/3%'Eaf\B&b/"qbEg=^47!#no2XVcga.TRAe30!LU%FfUH]Br5g^OuBPH.:?gGZ2J7ZhGJGWph&\0A'BQ7^Ea[i-@JF\X6RMQf*R;fF,"?Bp.'LHK8,r^ZQ>M<6J\)!\Q:IU03Ya@FDimSA(MM0+Zi+>n^7Y#om:hK)RFBB:X,nb=qJ6YCaT.u>UW24(%@8__iKUmj!F:YFl!J*m_#m,Pn9Tm.FO0TlR(S*ujDD!hQN/CC3L,\uI2JA^tAI5M1_nLm$C8>#~> -endstream -endobj -91 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 90 0 R ->> -endobj -92 0 obj -<< /Length 2083 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau`Uhf%7-&:Vr4+loI0eh[)=$,[h8@NDb@D5`@U1ju$.3n>WNY!f\>rq]L'U[BPbEI^1d!Kt&>ms+b$hFB&6=')m",;5!EQ:9YFHf]Sb=+TP(T>4Zc_Y;J0(MUPSp.R^AYask)\7pQ0VJZ:H.-CDtTUA,k1rnN+qje3<\;K8CLZDb8c\l&3h$N(1iIk5rA[Gg\t$K]rH3F[^GJE@ci-o9W5?NJ)%:g_,>s>E>UnQM%0&leZ@jH,RIpud66mK:";sXK&@&88`gtY"9NG/D-[7X>(,W8iRljkFs@0*)F(P0&W,^'AmeUY[3PmY+.*`-nC!L.ML_/a.Ense3C#tYg1aLhGCq#F8S"DY\`?$F?hCuo!^JHsXSg't5\&#n;i]fn4T/ea.%7Nutfhi("INMFD>kE>`A+rM+ZndhR]WV`=7)So/K\9Q3!&!lmUfl5ZfeZ4p8-@3XQN?Ld]PkpY.g0$#:mUdlt/'8.l!NPCDp5am!!2=_Bl>+3120L'l2HmRZqht$:0E]G,cmK9)F-Pr"a?PgTaB<`a]@%O04b3`6;L-/TAFRpW%J"hLtL7C3.-l2gg:$q*9h;2^Q]("sg`7>7bc3IID(WRE"WRo%=Z=-`k6DI9SDRmW>MjT!9soB\5AEf\)>i;+(k%4rpWk\>*Rd)mtrZV8[",NO)%J\ZIoIJM%OLRa&PF2ke7Rnrr4VKGl2*,si=!;6gr]QY[jFPV&RMa)MF9]%2a]Y"9tW6po'#Phg',SjpQO[No).J<;iH6%V?qVjS`(,/O^;>agHSb1W<"W!0U>knB+4'4aN9?:Dss+PV<%.R[:8:K.KYY'nBi$5?68@'N[b8J"lB8$Z*JF($YiF)^q8KBn5-(7DXZ(noEf[a_=UR]\RQr6dqe%(!ME]udD*1N(*T0;5ep:h=6kFfI$)DG@;MMX:/N4YKI!la+%r#-]'@4h4C%id963q3e6(+#Uo-tgrGejS2;RLuZ]'d=2L"aZ_oG&,K2P?*S#W'TYuWs^[59F!96,BbL^$MEOEG`s3tg;^f&`L2Yq)J.r/7serVV.S,I/6]fiY.h^O/&mO7EF<\:nL49(C6c9AqXa">C>R?#Vk]IS/-=5g1#=^i8Gd=dO@K-Y0P:Zc~> -endstream -endobj -93 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 92 0 R ->> -endobj -94 0 obj -<< /Length 1700 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm=bAQW(&Dd46gf5=:@DnKR/\:-t=s+!+[X`SRG9P_*,?0t68PY@rI;+fZLPeL)Llk+oC*%#BUZ%a(bBi^N/&k4%TO>=U(;]RG^ro"Ba?=RsN%dO0?ET@4Y:EI-pWIKuol!_Wl#h;t)@tmfX3LSR]a"M8dNQnJO5PaDs`$bh=-Ml9g\:o@ms(#iQX6P+>*e8VqTmHeL\li477j7aIBKEtb0PHDB^oTM[RE<6I&0Yq,lr$Xl0BoO)!16bT;8$,KFR>k!hK:q1dF.@2h-GKm^dl884=/apD+9O1Sn^)9T$*[D\;8HRA4^GG2Y.3J4:Z4]9n"M0IK[P5&&[USOCN/N^Ni'KnjCLho:6$/D@/F6#5$1C1m!cHdi@@O+qCS<]_+MujCA3@o:'4O`*gkQ0E_.0pQcOo2a&H<,-q9Wn/OQF%D9@Z47$Pi^PZdd^/8IZ>#argK,<2unnoC?qJ$X]q9A/[2n]\*3l,IP=]6cRKNk(Z,\K+225AD59Yc&PcY!V]0?&.0oW_hQ?:!@,U@@"R++d\+S+rjfJl=-ZUFd&/2<&)32P\40j1s1ZOYS@dYWQ#&-ZTA`sXA2SFe=?0h5]dS`gd^A;/h#nLWSWO4>h>]dNSA4t",*g`b+oFbA4=!^0Sps]Z_I5k?TsS)Gg=;Z/kS<,`#.=4Nd9BrHc?ubqUomoGqZJq>Zg91KU7CtYn#NL*,Y+,kVM6p[%h%0u/SSZo/q[nqiSV&L,TR35&/pb_5LXML0'G0a1n>j=M@MCfVjl3dli)O`hQ^KIU1i_CAO`fO#PCh$'jOp%PC#4ce(XXK%>\rh?Q-!O]P.W$]`&C8Y-^e;hYd0IBh6F52dE;MA:(q@6>n27XZY#ftgmh][sQ(4A1b+fs;+/"E`2%cpK/[1c85Fn?nR&A*%\PO,-OSNiLTIT4k`Y-Up:lV08JK+PG;Gm.O1%qeT2#Ku)<;m"<)-S?OTePAs6)C@0%B$q"d:2hjN`M@-O65+6OXBih30CMVpk:cn*DQ^#pKZPJD#7I"g!N`l1&WK-6:02^Jni@!VQunC&)M7;^'+d?i#@Q%U0/X"R:);e.A(2QN"ZKr@*XSJ:RVe+k>m;^O*89VDAAXHen8lVn,*^"sLmG*6rd<;N^T87OW.24RJ$DP5b.GYFc,ced/@3<&M_FDd&R'?l*_I_=O(`FCL)99!GriE1J"0a=bNp#?[SH/_E<%/GON7:naUG-'kH`QBahBM%+$<-s3<~> -endstream -endobj -95 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 94 0 R ->> -endobj -96 0 obj -<< /Length 1355 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU495iiK&AJ$Cki`^d7\ltaHYS'JFcf+T7(\e'Z(PsfAlk;2&tNk8lUsg63Kbgq:(\W-ORqVY2cT4.amI;nE/7'G,jUH:W5Z@C8>TK^.MV.V4Jd$m[l^,,b"=JL@M5tj]kUJN%pg6,X0WFAbu;qj/;_%e,@2IO#P@>^o_.E04/UG4Y$"SERteI!K(&LU:jj8Zk1"'_QoFM=te-\g]CfES$e-J@)X'EbQak$ie<#kcQA94f2Wj"T'fatG$K;jraO=CT#MUKV;b!1d[mHpGp3jflfbi3=g?ouqJUN6pSh"dE-Wiejn]3#HaHANdEjD>SfZ41H?QCb-M'A[=G$]hY*uj\X?e#_'Q)9G_,b^8F;*ROT7j-qF$dL#)f:cCuN@JUt6ZOcgFi4Im=b/.e0ffGR5F_?;j)"^6Ds5>7kP-[U;a]`Ofbd\al3@1;MoPW,5b_DaFknlR>;RqFa:AhF-%O#GKH,WkoU_\*T1N=/pH3'+T-gGksN'lEB*`6[Zfa?oJ5>X^#K;qOe0YIm>pF=T*PQd.!fY68icQp0l`S80kfurblgr+hbT6/$5Yb;+qUOQ6Ob&er\CPD;H1g@7FE'S7@EQjQBF]L?,!1`Buo::2:/m4XWRI+RS2gs('f^c+F[G#%_#4;7J``Mlc$Al"Wi2UeS6[PP6HEfPHfFUXdFiOo[0q?t1k.GTa&/l_$3s/Hk%Sdp/I"_%?PGTR:ZXOq253[uc)DcHbU73'Dop/_Y3&?>=l6=E=TgN(B6>T8k&H%4m!5Ui8=_@rgDmIjfe;'m&RME'Df0p0E@9'UB+_:"mYlk.ap)L[FbP6k1ZK?M5."1`3!ZO+Cc!&.TY3$$:3Zm18d]c\#2H/76WPJ#Z?<*H]T(kGfE%^((b*(9(1'+%'-O'*~> -endstream -endobj -97 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 96 0 R ->> -endobj -98 0 obj -<< /Length 2063 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!;d?#SIU'Re<2&Gf;&881rYlJ#DZUO'.l;.eFoF.^mT$0on\A\!dYlo@dAtsHMjrJe%j0[,qYP2?QP.\:?.ThGFFR`QH!Ri5KGHM5]=!Z!M8U+T0HrS/,^_o`9Hf!r`b`jB=J+81+r(rWYH\>n1l?o8hT[C^/2`?_$kd[leJgGKYb`PaLg9ffXDbB]sVbQ"]JV_0=Vu$-fo+6&t!rjcI&Pm$NrXXFkB[e\hZ<*.ckf`Gg=F66$*\/CW%u5RR!)VOhWO-:h!1DsnFbA>Tl;j8em4J81#B-NDdn,\+M4YUfjXU8L2!m4&-;(.`U\WS+AtDuY.UdisRd:ATG5hPhq*?_-!=;gno;oK4>hd]qUCkW68TUT"EJS2%E3N^6c[iYLNu%UWA?%mpGkDi+Nn9tMF_K!\[DVm[C]1q9/gThE`U_CH?)keHgmkrU*a^8f;oj[gThg%q'hu^qaDM%Z#rX+;F(7b'fED+MPbj5SSoK_[j,P9qWTMkuE$p0g=?.7L<7hDQO?,Lp=<,X$FVLHlRXgFRSY*fQt^^l8D4A"]>i\q18U@Xu)';gPVcdR/j(QsjunnV0r<-a&\OYD0Kb"IEa%aBQjBri4K,lMEC<9$j-9>j_n^`/5`(']-HK`QFP^9OWc"71oj:H]>e<^eAck<:CL0H#;"jR^=u`>`F#7$:>HlVQmF-^K(/BKGEq3!nib1Nktr=U.(t[1ej0rW&+KoDG5.G&]/i/pQ2FQ<$D`=-17W("$:Eq)lsoO"9ML&>$P6WO.m9]`I_"H+=88C;+M0,p%KROD0bVLSHhM]W[m')Ua?q4,hSlJ4I1+4*^ekB5r]@qNu*VdS*3j99-ANe)Yl#iU>b.E"elgPg=m,LLkbs0Sj;q"8;B.;K@D4?p_'hB,n?n=^9p6H,%NV50`>[,&:GIZ(W%E"`bPT`E&D#oB&4^H4X%r6Q%cAp'73\XV`#3kJOap9#,c\)),f;[oDb!=T'K0=s":9GYpapa<1ipl.JC*oRSRehLrre]hX6'87PP".[0N#h('48qBBp0>`l!%L5RgrIJ>__6$b$.8oG26I=DKa0,^tPGJ%t'VU4%mL"5,l0\j$iu_RH^[)B_$oB&b>9L[N;2DFJ!5"#8Rlp5?%`>BDd8MUu.J_oMLca)t8b'OU9PjFP@-8jf&1<<'/uUZAVUY'IeHX4_nSm"Z6eg?AN4o-WS2oXNle1d$4m))9>_&Q,qC$N^>5MHGYSRSaEnDB4&(&ZNY(s:`cq-S,Hn>#?3muXUjH%f(Hn9KTR+9&/qSP(mTGR*BHB6hsj'h9!U#!:"Gg?+: -endstream -endobj -99 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 98 0 R ->> -endobj -100 0 obj -<< /Length 727 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasan?#SFN'Rf.Gp^sB4il!Q^Hg='WVG7edmU_q9"&?*:P12Csm+9R?PM"5Yp(X-gHd;S3EZ=bMEUUI$JYsR[4m7I%(Vp[@lKmc!?m+^YHag.&.U>SuCDTD2Tu/P%V9!dD'A3)&"WlJg!0u\+1&aFb!!JDP=1eg%0o1&3B4!hq[JBbF\74b\Q[?PJT(%sR^b67KFbj&50nEhFLs,U'\pV#KCWFgC6>af02&V`l400skgq4Sg+@'Q`O8U`Tq87$RR,7l<2?6)YKdEXH\8f;Fc_PUNErL>W7<_mf^e&4H5A1Do.Roh-7X+3=n>T,8Hst).#-';#Wk>R/a0VZ$H,A7Se[iOIW*h]aQuL$!h9?JI[WA>'YU#X1bn>B#p=LX&cjNoZMs]f=m'V2EER+&4BWFQ;Zr4hS+f!QJab-_4+64>EbJ;YFih,\Y/clW%TGgo^j*>bgVq3qXOT&)D7Abhu`)2&crQ2.^fuNU[#D(9V+%-dg%g`Z$G+:fsJ!a`Tc<437e`cm:l%bH`?O83Bh*D@%_7ME(0@9DhpUlMWXO'28hjUb~> -endstream -endobj -101 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 100 0 R ->> -endobj -102 0 obj -<< /Length 1445 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm<9=(*G']/^gclIE[<4L`)>_I.G<_6E-JA'$cmmlM%#q/s=Fn/M$kLuOeJgM@OJ`sq_DqnZT,:uLk'5s1+=mE,7bJ',a`8G1uU-W,P[3(URB;rk*j\TBc:b;scias'hP]tJYt^$VHC"6SRXg9UEj[P;JT3"HU]P0S.ag*N"\ojQp@k''(cc5AINUqVTEfTSEfu.Yl1[&24FG-A2m+qR:]d]2/jZS=7+S,GkJ,KE?i!>J?5n-IjN_Zk:hpc@c@SUT_UR[4d6bdkW6Tb4Jj)MlaFcnnlS0JbFYO2^?p.8eMg`4j^mh-6pJc;E5U&mJLc8UHshu1c3Hi;9:ggONfci7CB]iH4TS5Kp0jTH5<6N('pl!M9#h`h@=k"7--I74I#EcF0#Y,1X1R"2CY(?LNLY9rU$E#n\nCZ$pn8C"I!Ekc#.7)C[E`+.E[d@daDg@R^pTfCsJ0TdLcu>CK.'f"3)KUT%s2epH!-];3jn9I"^^E*c-3-Qp=DVQrduY^S:$F$]fB&"Xm+dRfEI511H"FL&;D8;\2uJS\,?K-2;S*&R$3BfcC+HehLRXMm`Pm8A^SZB5F&gnEq[W#GC+9-.t6pc[_M.Wb,INa1tPF5H_o-q=NL;,Wq@N@5V]bJeNtXGXoNa`36WF9orV'sM;qF^#=_e^Pp'Wk13aj;48NX:S-Zfj;d^lCf2L9$TVG689b`B(d"De79eDPXmg?!c:[>#?JgM>6H\R/$J8+:"PWo)L$6"u."loP1.l]WNfG2g@`Jbgp_0XX6j9o[eFR^-6pf(rN2U[_GokHF,^KOW[jpkkcL#/R7,Z5cn07+oZG]Q+qM2=6`n)CCS&2*jqLB)_^EH*,US6t;1mUaI<9)kAWgQ&`pHWcq)@3n4Ab/+D3s6586mMo3tINQ5P.oku]-,^-Hs`]u@%hF%#l6Iht;OHWa99B:n!GSG=D#^M^bqqO^rnGR&NYd)-l2fE=od]_EMp[55[X7@[WLtO5kr>sU08p]1Qn'10AI#s,>:7dsAe,csi(e(o`US>U$ItpNe"9~> -endstream -endobj -103 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 102 0 R ->> -endobj -104 0 obj -<< /Length 1752 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!kuhiFNj&:Vr4_:rRu4V$KoR.dL`[F/*Ue4P"uS5(>\4]I#S5^'R0f67K1*YU5t\o1TE-oNm\^):eV2f0;HqhkYDI=@S0\PnpFi_a=,d/P:S$s%LSW[L:Um6GuIJ,RKJ/op!%CmBC,O1&HAOX(aid`=,D(GJ8J7+_q6r4,K3,9/md+en_+*"#(/FTH&!5GWZZVb+4=,u(lm]jF#CaigMu(?@Ur#L"mY/RXOuj`3$GpZ0P.C,fktS?`"]IEMt_1bakk'[@?@_K5@F$2&Lt"n[nh$%DoB*[+J["S!^WNIQ*M4a!12`B\"HDH4.>5:[('ho(Il6Vs"\d/"g?jbJn82^piB.,>J2XH%iMS_Y0_PVD3'^1@%`9b+J:ro--\U$I]C]WEqVE7Dbrg&;7_-bX>YpI=/0fAh\^4m42-F[$<=lu<%cP'1V7\qOJ2_8RW=-t@b3\Zdm:MolI%7Wt6PthnDVJ%M*sUgo[olDE]b#"aCNHHpa?.(,)"f2]jL[5/JrgPtUnuO?Q^"f!Mrf8o6ZSqaP6,,h*a/o_'F:"1NN+]d)kqh+4/`BiWW(g`e-^rcB&lX\P]NJ;[f,BhJkFS/?B6jNkfPUgAD"[JWJ^i\%at%X'[)F5iL>\%D#D4?o&`@43>7*GFj-V]g!T`)3<_Kdt.6N3JGb+1t:0\Q\8HF'eMomPF:X:5pNm2@Xh)jCZhn7Jgc",JKp3!dJU%+(WbJqZm*f]8Q@'T2N-fY8.&_DQFVE$X>?%mZg%]56f8kJNRQPX`ZU7P)ae,o8+_;;1"b9q(B*3OToe$GC]>P0MV1l2.kKJB2QBL-P3i<=`tq[%B^b;&'mjZ0]\'_nOnmEu2aA=D'HHd5U.5>c+N2U2q!&6bPOnUmck]I609lUj'jMgNI"k'5!\WN,`21@]ASfb$aNFSr5;fjGi6p:sa[aV%(/#KtWMYk="Q2I]DQf#>'c'F>f7<,a)Ni7%3-9h`V3W=%IBtnitJ9RUZrJL5!6'V*k'TD4VUP,aO1:ZY8eU@/8o4RlM*:1*iBL(ek(R:GcPC&0[,-LsFk77RZe\]bS3^KjB;SbjcU5bFRoTp9fpB5'Dh_qNRh&dpZ$erE(M"'&.&GY%];D28Q]mAHV8J8oC$$R\WCh6/,*_$8mCKFX]fO8R31$nE^Bao`2O-DsIE8TsCn>1_P64M?;9:I\pHoGqV`!@KE@uX_V_3lJK-.=p4i3`ApAS2"FP3Qm(=>6A-iq>kiTJ4]kc`W7&Zd?HH@3OA~> -endstream -endobj -105 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 104 0 R ->> -endobj -106 0 obj -<< /Length 1223 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!;c92jS!&AI=/pf?TTR3-B7ujSa8:?*-:^qs!2?k9N;(^`]1D@'H#k!3.+J&?[?)KL(9CoK)cPF#lHE3'B>qGCs6gqGdP.lB+4ZU'"A?;p($UJhQ[mEq+Lb>g8T1XS7in\0*IF\G3W+j`GflG]IhDo_j"nGSe4(Z?,b]pLEZID,R>H#SRV;lR+?+R:j_@03:n&X.;oK#?4(?;dF#[]B4uCq*C>dDW[\E&rXSj8t.Vr9E,?,Na47h4d>ir(RcXc.+T?GZMd!oUb>8gl_-#Zr3o0V;#dql+"]'(pgl"@UD>1-u^YLF&_';\.&0Hu%sRn'VPrlZ<^@`7>mXZd!B11`9;V5g`W,(5(7o\Y?S>@MTHI6T%4bDDpaN0fY^F(6U?9-L0aaM[/"tXQ8Bq.PL'nF!V`7^fVQLXd4UI'L'r:6OXOTRp+nNNfQ`d\tdYIeGH2n=Be,LPQiae>cohLK'-TcD5sr4?d*P)/+.^`k,ebKVnr'"FmCY+8E[OKn>\@raK:_o1so#>Ia\)r,Eb=Zc"s,?O6WEO)-K/)o._mNpk*Li4iiA78_.Y>Nj.?JcZ;$NISs9;,(LeheEg%BZ5.>!>j#NhgaZ?BjCK\*RJVBBFG08lBQ[mU$&`pQUYEf9c3-Yg[e2kC#@^@L!AsL2$ZN0WQe:IPn?HfHGF%!S"ZRYJA1j-"l[,8!?oW`\9K)Xh'*gk:JK#!Y4;;6eKTBDYp[it0DY=\5C:/'@-fh+H48t:?*32QqPMAdL;.:YTG^m/L]NW:T$O:isUnlQO-^C$sKn?jbqWhKoHemdH0Yi'1N>)C*#7&;R<(jh2c\[i/js_Qn,=7T2Z=BFW@iP'(+m))NOUj~> -endstream -endobj -107 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 106 0 R ->> -endobj -108 0 obj -<< /Length 452 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GasId3H)bg']/F34MlWRF#G&$5c&3#^h'K+38bck85dKYkc\n7A31>@AU2VBG)eP=RegFA4pXOAO`X0W%YV4bG=3!N`?]\[mS4Y48]Pg]^JN0hlBZdT(I1)P;aGO(0I](iR6I4X"9q:kVV,'?aMHBK,j*JE[P)i0M\6$^C*@lt/kT&KHC,lqtSlK9ifY1qS]ZVKpW]55f>K9"KcKV0\IDB58DGH._p?-.>)B2$KfM.@*MDGe^.q;%Jk+2lbY<)G(D%L!sX@&:#!N5kD:ZgBXqNoAl\5(8"p6>q/L%GU`D!Jh~> -endstream -endobj -109 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 108 0 R ->> -endobj -110 0 obj -<< /Length 1150 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHLac>C>&A@rkG]X&P)XaCTVp$7i&g0Gkpm0$QG%e>b/T+1PFT6d3D9F9f7@[a40ORusCO**UO!T9Xbhi:H#a\r$+H,oOP0JptMB>:r#>2?T5YFH[2>M=mn]>Wp+!/KJ2[0U^$Vfardd+l9:D\J&rDU:*Q-8+&lN?s@/:PDD'O_\c@Jh9,j80"^,qr7;K(fMb70/]Pb/q:[qE;$ThfN9Gg<\m<^.VOoXt*S?^-$k(f0d19bJnaf/hb5TS.HuAbIUr<@UGf'3"!02qQeE:?ImlRf=pM*j,qCpGtLKcQ#-UN^9QZ3N)27hLMCl2<$#oUGi"]/q!(g?8I_);s4bk^+(g&X$TG*DTE[>>M8XtZ[X#DH/o.U@dpU:mh1IC7i&X';@C(W,;Q>S$[f7cWFHjF9gcQe"..R?(FSLjAeK>tOU59-"'4Ias!$)pU\ptiEaVNB_@3YqQN91VaG%kr'IFVSB!FY0atG_WD9G8e\!^2@`b*UXhb9Rjk/L.%mIT(%(?%5dbKAQmj+cU'>\Nt@>];kF-Imks8qr86!PfP1rf8m?u;9>Oorcr]Ih2WH/He"?QKA\0d),2]%5Vn&X9rRg@0pig=QA4C-PGd8E.,@jQ26$Tad+esV#0l`mgI]bK5pg9J"fOQF`Y@-=hf<_IY8mRDNCWBKFhuVBO,r^%h?5bs^niLBn0W.0)\d?V0f6R,aGE>\'O0hEVO^^'g+Rl3q],`,)>O3B@IpO8BfVmh,ae`H2$K[fd=-2IS[X[(FQ:V6tZ7M!'6%paQ%hcEis-[\[GlQ$Fmt\mKq='0\+bjO#E$!j8VYDZdZC_"YqlgoUe>PT5pKcf]:kfAQW]p@$_UpmH^Dp)BYQ~> -endstream -endobj -111 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 110 0 R ->> -endobj -112 0 obj -<< /Length 1243 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasap?#uJp'Rf_Zi6chK<^IFNmSg\kB=$(R1l9uOb^(W]A!o#.i!A,LrUgmIL+<=ma\2oT4nn!lUFZ/rC@T=LmLY>]Ze@"8'.o#mbo^q]>J:g(779,9`;+>N^8M!Jt1"T[k/eK%:H7B=>/9-Inij@L[YSDUt:V_"VQo\X5c)gPK8pTD4D@kJu$BM#e:-WJL)B*a2@Sbn"9$N^WrL,@H@#@n%=T?c4'Amp?UgS(,b5=j!3&U`L-kY>iCd[."PRI:RB8d6%FQ[.JH7I(R4t$1[F-H5WkE6n&nRCf\A#.AoAZU,##+HF6_oh,.+?LdT5:S`-Rh%[@P9f&W8Wh;8jpaL"&P]7W^!J?T);#Xc8sP^N4kNrKd]pr3rap#ZHj4N-0?7^*:E_B0'50U/2CoE\mgo%Ver"JPV"9k'"VREgs"m_@SW3,BlVG!VPNTS9?bp!r@q+.)Ft^]`2-l!j+6)^6]qgH<_?5"1"o:'q7&boW\Drl\)!g[Ym$(ObW.s]9D7t^PK+Kcenhuej.a#;MM+u,rH="kY;,.F75uok"4N5DSkkMdF+(;n0'$qRiE0b;_H'QJ/OhUYEj);:UC0p[9L?78AO33/DB;#l>YWL3_>:CXE.\M7?JieLq=iqJkM(cIRu^qE9TM>AX*`.aFF@a>gc12;*UR6%_)?u(^-cD(*G!oL`ITg?EK8rQKI#H@#4P/!R%mZ_h('Hi1QR^tWYXRDp.Y38Ck0`U,(c/lQ[:_+/%qAU2HKJppmtOh+'[1(Ki1>`nX-OW/ZR-<)4& -endstream -endobj -113 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 112 0 R ->> -endobj -114 0 obj -<< /Length 1631 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D9lJcG&A@7.kS=D:=HV*GM`kmg?S,)^GN1h;iZ)X"ZAD,:.oAme?b_gOR6t2A($mOk'I'YI(q7\tQ73,:j=I=fC,\=[lmMS;I8TOW9GDh[1*u")gdoR#OU3ZP%t.V":'_(0i-k*C\G.F&>JV-sIWI6BUSV(@JofU+CS5%"RMqcJln%563i*6mOfLj2V;u]pW66@a0p&I-``Ujm++kNcm)tM4u*1)WJ5\P,q1qO-o\^ih&M;Mq-)LMn,R],/8nt>h,[PN-*9+VHLa")4#YWnk'.o9oX$k[;"D+A=]pY]PkhZC7ZrI'QO:ViYgKPHir4:1>sID/&b+K8"8B%lI9Mjq;\-3Di'o,NB>d%mqo&uOKSg(M70(!Vq!kfI6bRGc]hoN/=i`=WZU.[\VK=e:pN0jd\a-1h3(rKRi9iE2=K5cOj?hE)OBO5@1Uo<'I_<6XQam1-<\kJF:=_.2[#gDG!W_XX:#l(A"%.3+\BD2mV`.K$YT#Hgi&GjuK-'f,5jcmun?l6X;K?m6BD/nqiIP?iN/CK1g"tuLka9%1mqg^AbP?M$E$,YPdSAbS?A+b+JKHXe]_U"`:?Igq5P2=`0_u>XiqJ\?McLM)^7Ql#WOa>Xn)Yd7qJM6h1qa/3Q0GCE7EpeJL]"h\md2%K,b,!>sHiao<9I]Or6=L[jZW+9S&2[APW^#KN&A?X\LhI1cP`%hPE"R[7#3t.c:qk5Xbs43tD-&[W>QHV=\d#+JQ60tf)k]__+YApo_c'TKf$CG'BWd*R_9F^g"]6p>KQ]t(\^G?lABPj\@TH3%cQm;W]A3*V&u)=[r]/C"<3!![;9"ua>eM&1WrLnWm3J-"4a]-"%LnN,$4j^^Yo,0QaZ@%%a_pWKt%L]UH'\T@7JbE==kIG:t]KdP@f)"tpJfB+_8tMs_*p9_nYgLandlBOfYn>]-.Im"UY9:8dW@#SZ$`p34a[lbTD'6]CG=o$+7<\iq<$MLXYX4eD0AWA7=N@N?"p)q@>'=:d'JGCiZ'ZDb7E&Jde=ca>lJd^kt5)hu(>li1T;h`11'3*>%X0!Q1$hY.'kG_hC:0Fk`lnmEg[#N1!o/)^W]&NJ(7fu@.N-$AO>d6J'N.1NrrEepnV$~> -endstream -endobj -115 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 114 0 R ->> -endobj -116 0 obj -<< /Length 586 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GasIe9iJn_&A@g>j9Q!+dO$EnRklb`kQ*):`,Pj5R\:EhU5o5!e'Gs9o[M.Z]sfZ,41RtrET4ZX&>U?STFXh(q"Aoj)i!:r'rl8#m.pQH?o19?eO\W>"*Z,#F!!P[1MgZLpA.K^cl;d*3-co;\1m_#'dsUkW=:`4m88]GW=YQS!KIYu/3ZHB]G=`6+T-2XLCfqA&\68?A`AUeOarZ?/:Y*``i%)F(C+0T[qBamalK?oM#7B3(%9rR\%MJ4q]1dLm#alJkJiIlYUtXFD]'?A6_Ph"pZdf/"XDfbpu,L7R<%\`n+BH"ll3\"qG$+lpDJuY>d`5lF>g*C6UF:Tcf@id3XDI3S!;2b*;^lrCu=fC(5L[WQoaet<_gMdR]SB$m*bObkks'o5MU9OZd$c:5@1k\Y(hq,4mE\QZbr5Cp>#)`c[M+B,rfT8dG.e\gXCS<0KS_X[A0TrnIe67jJ2Q;8DI@o:Mk>`3GJctB=4t6R2IEUCE[MZ^&^uf5(`~> -endstream -endobj -117 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 116 0 R ->> -endobj -118 0 obj -<< /Length 1596 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm<>E@K-'Ro4H=K!`9b"g!$4-^]r8s3601h!B5.Scgk*PdhVCCf6,[JfPW@-fm`0P6N+(XI%Qhmn.kp?R"m]/QU!=N'f)D8,:4D;EYu$9qg;%72qmo8-tfg-!qM%43$[$(_[8CVt:Omnqui"qFM^o*nb[DFGTnCNV9;(HK[2L>$9Wr\Ird24]=X5YuaXNST?L=@@B3d_.%\gUfZS7;]G;K13;=1QQ,iWbBZsC*im^a**n4_*JHL4TYm!h.MBP&e)PDXL/N5ZR\[)0"-&20:ukia7jumb+gS#7HNC"Wr0#n\Ql$-h-RZb!^2-D\iI_tWd*_RM;cgqE[/g3oMSgC\XTjo`>ln!BLWb+l,-B6TciX?]]hm7A0^350**.*aNbrt+EdY`,\m0m`/u<\C:,s^iKu;#.Zb'XLt0%`;]Qc_rBH`$T]ErFrNnh"Y!sJhre]Z,:@a4Wr]"O?Rji/bA8btkhiD*DMr:IN=,F4tC#&]OP_2@"0s\`0o55\^;hPkg6_BQo_7TM60'D9H(GMiOA+rQmHRo^%^*lZ77W@r'+aAKX! -endstream -endobj -119 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 118 0 R ->> -endobj -120 0 obj -<< /Length 1842 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm+T$L,Ie[3(i2HYru;odXCu6Q>Frd''4("?:9M.O/+1eo#(+Zp,R<#Md0o+]PsFl"a4/H_[\$#9ShU(EOFkT@Aql0oCM=[Np!8Q6.!C+cM29WHJ?DWKEIf7`d`,,#5rT*]34$<3;r3(9g^d%>_Lb4+(P;03FN2c3a!<0Q?$+D,R0a.h9H52UH>;XI1cl-=*_SalJ-&N"A-(THH/rcPMH.UM8EM9n'9,mjCNgC(aST0U/47^!!R&/g'.?5_.;nS6sJZE1(.H<%CGJ0u6&b^g6ss;#m+mb?eFd!*$KSQ-]dR!(QE1Nq(249XgoYk@JK3%h3G#YqoE%K.agM7oUo2@ik7coLf3nfX-RU,#aa&7bJIL7Sbtf7Jed%CpL2jCK0@W*)+ubPBW67i)6e\Nn&#;+,qlFHpiU?nD^^ah_1q>Jo1!ge=XRH4sPHo1W)X%SDmK\h!`roMBNRbZb*RVFTG+E<'^*LPScUI][,M2Kp>9Gi)BB#'Qf:/[R-DVuIS6Z9UVs34k2$'k**XMEE8#pml7J4)jfr6PH"TQT?]"'#:/)kbpN)PEi$#,k)A!&Z@$+?.6/YL5Pbm7_@35Yh&DrQ"JbP.j.1de$$=%[C#kn?!i(_KLLpS&^)]DEB7_N2Kl+F`<.-":l\%OqC3io"$m8^@E#rQ]7/)-nQo-ds/W"eE<1F7#.,P6`eJceMIdlR*(RQU%RmGdaB)=cLkYOslCN]lqU4!G2ETm_E1Su?i,[P[n'3<9J3r)kgaB3+<)84Tf2TiLM/q!$/Wenc+&]HpXH7\@4\rUT(>rK)+Cn>Vhf"Ba>g>,rWZRZHHjpSo,AaO?lL+5XsgKO!Tm=]Ebn;o8Y$V's7P9Adl(*(J8W0?EFD(r2P$B=p!i43sX",/jM9JlgrQ+o>7T@PL=!(FRajL?MpohMlY1_*gYi^f<44#l;ZPA?Mnj60K!iI+-&_Xm;r]9nV`g'=uo=>Q$I>/huXG:PA&Ibm8jq]Be15@:&b7:DhMK~> -endstream -endobj -121 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 120 0 R ->> -endobj -122 0 obj -<< /Length 1681 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHLD/\/e&H;*)+UBK(@h'`HHtcp>$sqOITU+pMG6/6AD*7/]QDeUhhe'q8u<;8+,0cHNoIbAT&\WOIg@Fb*utGfa>1X*`%j4aCfp1^%8.V`VK'jOio^;(#=#HgIeGEOVB!+P/*Xg"8"Soe3VJp@l5ll-i3f0#kh)6]T[MfKL,aY"h_.V_E&=$,P<3Ma\$`UQ_KR:.!Z4'J[Q[!guHgC;HXaA[/>5'&6FcmQ;'NrSe/1XNc<`^;;Kij3'4FW-U120dkBVoT;TAg[KjNCh0`^s2>pfQsmqimAgau1l=&#]Xc3!)nrf+*o2eAk:-b;]Y5Y#V+`=[)j0+*4l!chhDPWu4X,B_<%">.fcjGOa@IpLet-@(CTsO(Mu\]?k2Z"t0baY%rQpm`hIgXOg@iKM!Cu78Z$Ye=]Fh)gOr(39(R&Oi*JmhmLU%549f6EU;7R>Zu$Ura6I!2i-\RT8N;/6`.p1S0`Ko(b9V8BI`36"4S)lG--c"X*j/GIZ!,6nT&!hcIk7Lkok0-)m&G*f=:E`e]L>l8*$TMm3oD>GW/sFOVf.>Lf,b(qJM%)7&JGUUPk1ba;6h<3^Kf#6Z+3't-aHkoOfR]/Y3JIYHk]dENBa#1.)L6;HmE0.IDb5:HI_)/d3Y6Q5,[kC2:*odc22f'AWP8W=N:(aPG/n:o`/[64RJr[k@ObNN]/1]Z'h_i?p]K$q/?rS2-U^e*YaCSA/A]r=^G$jKd@KqL"42C]q!R[g=.sUjs+VD(-/5HYR@e]FZX3TlOA4?OiG'"[Tdk@ZFF#=SF*n.P:kD6;XeR89s%c:9CQk2.6PaB_o"PRC3a7"eoJZOjX@C;noEKo&TRbU?H7o,K3_k]\>-B7CEh/k!=X&R5Jc$X"NUPm!W0aI0<)>YdP:b#U4]nB/4JCUFIM'2Gm_Yq%W.m&]#%4*BuaF^#k!#8F__.k^2_U0N,!_G#iMjkjgCdc=^B/G:4P6tkF`hd##eq%SjLJ'[P`^#Dj)G#bS+/(+"`gZpLo2`I(q^4)AZnotKhW-BJ&$mcA*8cu#)\E%NidT:Zr,K!+D3.Fe/BJuNo8KO;jmd"Na`s(TO.AGY=H+\iLm(E+=ZnVecf`[2,5$K82,/2khd0UjTmtR*Bo_JsT!P*C~> -endstream -endobj -123 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 122 0 R ->> -endobj -124 0 obj -<< /Length 1763 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4968iG&AJ$CE,q*t%8?8noTkG!9ukM;D7Q"5PCY/R@RH7d#l2kT?P!3g,m@Im3kf"OphFM42S_@;@iJ@-bJ#/6&!]+L#-XZYB!t!Q+\>X6Z_+9$[^sqT`i5/N7SO6YQc2B\X&HW]-X)XPYnBsSf->u/Z3DOdAEue887=oG[Q3E5n#>H31!&Y;onN0G#Shitum2fc!AggK:;'.=bA-j!EV,c<@Y(12Wf5*>&Oq4][bNG^YqV`OD"Fr$_2g&>H:M>\=i3$*ZHCIZ-529H`@:UPk;.tO5;:,b4*9&N7IB,!DqFLjcY6p:@TphK[Ie/RD90N^fo?']ad+`0WPMWR]D(bF;7-%%e_Cf)^1h=/.V3mcg^\F9UN`A(Qcd9;qt0j);O3;$b(-;bq7cD>6L!Am`umK>fS4uC3k\$H8pm\af`;eV(b5MQ#<4:3@hCtq7CAl9+=ku1meT5K8QdVt5#^0)NnG]L3nsjk!#72_'s_ION&[]XN1(f;`M11c2"e22X"a@)Sd)OdH>Fn]k`LG>aF)?S0BaVX+F)JSFNlgCh^RC=0"WrTO/(U"pZ_lH_DH#fm=FVN:7/`Di9aI3GD";e-9RM2(?[2UD(JRdNICu!V,LSoefpg5+k;PbHP3]U:194(q%Pfo)hgqU*Ug:*kl4YI^;20==EMH!e!9g[Cp1:/n\+0+r5<6_KjV%Lm&ZVPH*ZBJ#_j45D%L!A!i8+bF'0E_p(SVW7e,pJF?jf^]u$f.k9AuopqYFMA@pc;H/G3904Eu`A7u5co3-$glSul]WZ?t!q9WC3q2/nE?'2$SS/6ALqCATOX)"/)[o]DS-:8p4,KgC,+To=?o*^IU:QR>6Xm28f6+HaEuq,MG6u;*WOmf[l--E?k#c7]I1.58'u?Q+5d)-YQ>>od&Jg)d)S9TtWF+%N0g#4Rdg#4)D?S/P(V0))eo>17G8O&XJZ!tTMYt.~> -endstream -endobj -125 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 124 0 R ->> -endobj -126 0 obj -<< /Length 1330 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!Slc#]@8&AS+Gi958$<>(+Kp6JHpGdfND]tDGu>K"`FOFmDirqB22+Y?e5aL(E_*#qQ,hsP5DIZ(biXM/OP5??E`?4i&,p*-"Ljot,jb>lNpCj!4uJV'[0$'RW4OAIPLE\(mg9Znm&9$V#Cdr"*,k'3(=Gu%%W`$:MT\-.MJ[s@NC?IqDVZ$WSIkqT4u^[hBo2Lbbtek?dPLa_eCbC$4A52?i\N#2[:,+Jk1IiXdM_#X>9^;'Qj:KQCqL`>=G#J9&pf8$C[7NFSb7/>+pjD/m"Ic,h0;?q'P>c2`oeQ'8bo?a"1/^.?SMqQgV_5/0qB'LR[.n7$JlKSDs^s1L7kuW"K,G&haT.B-pF^&QW.eqcC?[T7PX4,G>jf_Mk(R1!QJuofh-(:SS4j\G.0&]>1i6@h:I'Y3H9YC`1.lZ,Y!@YUZ/S8MPa@#T:qq*^T!7KmdnZ*0+C>2@");4iu7`cM[ei^'(f[^QWPU+H)(1Kal\EPmmJ:ABk:'4daOE5sIb-;IB@4%]&c:6Gp"Dj'>QAR5puNk%-Z8i(Kmahj_X@aEBLa\YH2/Hn.[noVBcK3C61KAjY([nDtiI/fUcH%#jaG,F&HKq!O9u3X@VA_N@HiDq+ctOfCMJWdj>*]lZD2VlnWIGDdXO0dnDN:>[)E2*Wc.q'X:ZbR6i[i6^=Zm0B#-`%L9TTi&6/Z7-& -endstream -endobj -127 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 126 0 R ->> -endobj -128 0 obj -<< /Length 1612 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!Sl997gc&AJ$CkdVRJ)3LY"a_cq=B[IkZ<_deBODW\a?qVG1DDqO/'M4ESRC;0F%RmXX--%e`B86#P*j`i_c`)\JjEoQtiHtG*p3cjp4\U02N!YBHQQJs$i!7+\YSP$Ug-,Mj1]TqB:I_Z^#`%\B8l1sKeHKo&E4KGYqiCS[_XkC)&2?JEJro`K=q28C'_Mf0DJ$_$_QI^.Jq.se]1l^tlJ2RO^YadRD->QQnbu4bm@(?7gU&OoPfL(>>FW;)0nK"\2u/SYX;UQmOKn%q[<:@oKXDJKW'FUP`"lWnr(%i_qdlV:.XIU>9Mbm?YsOP;glAK?l]+U>OC$^-+FP0P,eB:S:9ie0!CJjZ5i9EA!`ScDj?1Csm[,g4h7I=*IS%/=DTVn/=j@%:o_U#&2hb)MXC@P%cMJCu\h%QHE1#aFiX_UG_A/")'J+@:*N$a\AQL89\u72#^\@b-f2s4Bi/AXH@'(fo]?4Ci3Jobr(iA$%.;PCBCVPb/tI0pIc6G67QrSUmCU!o9g]_MhnT4JXkjZ.)8a9W5Nj21!PJ@(63(#`j4Zo6*GO:/f?DX&_@KBg@LRJ+FlSTqUi8T+_Df_H!B,OJS\I]h7S(#6?a_[7_'AEdeGF0oJ!=Xm9TU@@a`9^n)3/<>q$]`8[Ud$&b6d9_a5sCDh[9`&M/Q"*3YK&PPk05mRZ-<%DS&(gW:(kkF+Dh=djgi89V:Z3:C82l>Ei\&qNXb3W$DtN;H!o1:/'M>^L4`>LMVQ!<+)#5nAZlLj+nJ+).qI3KK]Onc6O-Fk?q&q\bl-rE6)0t$2+;rI(Di6tO!(>0GR0f)F?`ZC(hi!"MBi[ji0tgf;?_UC'-F3@f3Y5FM0c#Oe`gB)"TU*e`7<0NUj*<)C:_"JJafM=firg]hB/$BebukS4FXB4;!I;UO&:25A3'_7NBX+7epcN!^cOFCR9RI&12t+tfk[)-qTL.I`77grMYj[*;:eP*ob!3EA((Aj2ImAIBas=>,a@UADgo3WM^Sq8Segg8Z@A)_Wm2g&62DCZ3Hd1~> -endstream -endobj -129 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 128 0 R ->> -endobj -130 0 obj -<< /Length 263 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gas1X]afWJ(u5!&h["kB/Oe0O6j>S:2rfElYR-Ut^n8*FLp7tZl#K#%?8!%,T#Er$-6Od+TLKWO4VT:``Iop='+bu4"\/3Jhj@MV,ZH0^WVGmn#oOO,I/+d8r0]ulPcc$FeA7C3q7CO\EV-^l,1LpYK__O(;>8KH]09R>~> -endstream -endobj -131 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 130 0 R ->> -endobj -132 0 obj -<< /Length 907 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU2hf$st&:X(TiQ"t#cTgFmT%LE,+ct=^]MO8Jla@C>dO!2Wq!2o4Vfiu^l\>8a]A.hlqhUR+1N\(-/-KW,RquH6l>lY*HBduj7;e+68Jq--I7"kb]#1/D*<7W5$-2jt6Jgm42V%L<*&H%R?&?D.N$ii*1:38'Tn%`7^fh+3%S@%.PFK[>m"F@h5N%uikg1X^#C_n8'NF]YR(cUt3\:j2X$BnpKE3R^\WH1sb=h"MTE0bke,*2W4k91!ZT0qZ2[EqAu#p@e(;[nhuE$(B#rLA]-(cLPGhW$-Cdd0BTLB&K^97[:pN^9[<0^Ci;.!.BW,;1-cqb?rmL9M)4qOUkY:.0AB[RId84'7J/:eCRCB/6<(N>g4\N_GPTrS&$&]D4s%$79#mNOhY7VD#OR/=A1Rd%![D,s-e(d7GB8[s8bmasaE/spV7n^=;K_qFFEGd'-AKTC"M(-*DUk79;*7_4TG4dAR1?p^k3D-0eaaBeF#8f*lZ="M5V;pt_MF$NelRS\8[s&&C5Oo)bPlC^a&7^k~> -endstream -endobj -133 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 132 0 R ->> -endobj -134 0 obj -<< /Length 1408 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=lhf%7-&BE],=6Qmi2GH=5e75em6\i,&3^4$$MEnFX=/]rGP1jIFl[-'NPG1gL1'C,Lj$$!(m`W5;n!8mh?LnFjC^cAjRmds,(G&2JLIE-@,Z5tKQ-dp!(O^]$B"uW`DPBqSnk\=W`"KFBC.K`b1S&^-0/q:^+HL+fi$LM`F["76Nu0**j2>SNr#*:]D`hJQ(@L&KN4:g<`k]3gh$+Ak.S`]NS38^c-;X!TSk3_4Wb)6fYWu.RK7HY+"kmbs?sis778-0D8eWSBFnf5j>Z/XFS)4"8X<*+Q*c0,lgiHnTHk7sb*k8W8Pi%qU6%XY6b'Y;<:RJPno5$SQ(a;\/:iI;G;jV0T+1["@&lHXm9qHh@!`D+q@s3AF+k2Sb6%V09DtC7C!oRVeYqFbc$SY:0mSS<4R8bn"-8li)r:c;1\Q1HARa-5E*SPG>RiJ<(CW;W]Tr-X2ECC!N,K5`n?k[&RGF6#kK*?dHE/:f'IIZSPJH0a&\r9>f)c@D$hH/?rTjRubQ^ciXS[E`^F.g'2<1BW+LFjjW4^hg97>JVbDNCic)*nuc\sX0-"mNOA3]o'_8V5bjG4=hEDOJmSl[.sBS;,"iEX3("Fo.Phen>a#_HmSiWE5qpS9BSDQ5EY:g7Er)-`T!4TrJ>oGSuJ2L%%\e$)FQ.pSoBNO*0\r:DH50db9>VSV+7YRPk(VqOEYIWil`(8$ES/A2tR.M&2UqgVk5J%qLA=m4^iRq$!C;s!)_H@Y#coS)aNGWd&@["\n?c3t:[JC[5UXX=J0O?/DQ%^cc/o/Hud"A<>\RQ4'jf#?Tnq3*d7R.I]`/f;pp3%/ofNac/%U166s>_4UDkY(;M_<"(bA$4/?DqqbaW!f@OE2XgjQZCUcE%DdO?ec1Nh2)j7cFI1kqt5pHEFY+A\*m\\^UsGg"pWdaM6*TGZn.R_3r32B66t"PZLrO@oV$0@98/(3$uJ.=\>:MUk:ml+e)XXPJ64`O1A=JSlMK*tVh\gB6MkRX#NDn&68+7g!Co*AkaniJ[!BNn:92[V5=&uc[Y7\]kCjK:alG^91\S4FT+pc,AXs7eg[sS-Hpq2t:_rFu=`k.=4j/5TgDS2m6cq]`G(%-B)`3uh;OU'dP-ih7"ARqBb+hIJp#stLA-+qTDY%rs=NZ"*48,c)16YD)T%YQ2PnNkn824h+P\A`lXI.?uH`2jN]?3`^XkDW8#.-o<=2#'DO%%O[p&4FUAT@)`h>;_bcn7M>C?T(M#](cpM[)rSkFmqC]sD7F\VlY]!SVHT2fqnf8,BPurkgr^cO5.F1Ql4<5M`NCh-l]'Mj.R#(LKsFPb&pn>2XJto_f1Z`W,3cg+<50gatZN/,4HDAW3WMnH7%~> -endstream -endobj -135 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 134 0 R -/Annots 136 0 R ->> -endobj -136 0 obj -[ -] -endobj -137 0 obj -<< /Length 550 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=i92C1*&:j6IMESD)Y09)gC8-RA9Lq8_e'PC"&dl3dA,Z.>+3Kga9/R\3S,GN_L=tNDMf.r/JXFG&/#/I_,9X8+J8")s1b]9*A1R4+krq.0bcKLA8o)Z$P[$#TjX-'aaXbIS#A=MHFD5!hSt!tdi`R8\<>qLi([\eRit@me,cf]PhF8/T.LE>MamCCYe0e[o2p:af.A6s#c8] -endstream -endobj -138 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 137 0 R -/Annots 139 0 R ->> -endobj -139 0 obj -[ -] -endobj -142 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\123\0\164\0\141\0\156\0\144\0\141\0\162\0\144\0\40\0\114\0\151\0\142\0\162\0\141\0\162\0\171\0\40\0\62\0\56\0\62) - /Parent 140 0 R - /Next 144 0 R - /A 141 0 R ->> endobj -144 0 obj -<< - /Title (\376\377\0\124\0\141\0\142\0\154\0\145\0\40\0\157\0\146\0\40\0\103\0\157\0\156\0\164\0\145\0\156\0\164\0\163) - /Parent 140 0 R - /Prev 142 0 R - /Next 145 0 R - /A 143 0 R ->> endobj -145 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\61\0\56\0\240\0\111\0\156\0\164\0\162\0\157\0\144\0\165\0\143\0\164\0\151\0\157\0\156) - /Parent 140 0 R - /Prev 144 0 R - /Next 146 0 R - /A 15 0 R ->> endobj -146 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\62\0\56\0\240\0\124\0\150\0\145\0\40\0\111\0\156\0\160\0\165\0\164\0\57\0\117\0\165\0\164\0\160\0\165\0\164\0\40\0\154\0\151\0\142\0\162\0\141\0\162\0\171) - /Parent 140 0 R - /First 147 0 R - /Last 150 0 R - /Prev 145 0 R - /Next 154 0 R - /Count -7 - /A 17 0 R ->> endobj -147 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\101\0\120\0\111) - /Parent 146 0 R - /First 148 0 R - /Last 149 0 R - /Next 150 0 R - /Count -2 - /A 19 0 R ->> endobj -148 0 obj -<< - /Title (\376\377\0\107\0\154\0\157\0\142\0\141\0\154\0\40\0\163\0\171\0\155\0\142\0\157\0\154\0\163) - /Parent 147 0 R - /Next 149 0 R - /A 21 0 R ->> endobj -149 0 obj -<< - /Title (\376\377\0\106\0\151\0\154\0\145\0\40\0\143\0\154\0\141\0\163\0\163) - /Parent 147 0 R - /Prev 148 0 R - /A 23 0 R ->> endobj -150 0 obj -<< - /Title (\376\377\0\103\0\40\0\101\0\120\0\111) - /Parent 146 0 R - /First 151 0 R - /Last 153 0 R - /Prev 147 0 R - /Count -3 - /A 25 0 R ->> endobj -151 0 obj -<< - /Title (\376\377\0\111\0\156\0\151\0\164\0\151\0\141\0\154\0\151\0\172\0\141\0\164\0\151\0\157\0\156) - /Parent 150 0 R - /Next 152 0 R - /A 27 0 R ->> endobj -152 0 obj -<< - /Title (\376\377\0\106\0\151\0\154\0\145\0\40\0\157\0\142\0\152\0\145\0\143\0\164) - /Parent 150 0 R - /Prev 151 0 R - /Next 153 0 R - /A 29 0 R ->> endobj -153 0 obj -<< - /Title (\376\377\0\123\0\143\0\162\0\151\0\160\0\164\0\40\0\154\0\157\0\141\0\144\0\151\0\156\0\147\0\40\0\141\0\156\0\144\0\40\0\163\0\145\0\162\0\151\0\141\0\154\0\151\0\172\0\141\0\164\0\151\0\157\0\156) - /Parent 150 0 R - /Prev 152 0 R - /A 31 0 R ->> endobj -154 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\63\0\56\0\240\0\124\0\150\0\145\0\40\0\102\0\154\0\157\0\142\0\40\0\154\0\151\0\142\0\162\0\141\0\162\0\171) - /Parent 140 0 R - /First 155 0 R - /Last 158 0 R - /Prev 146 0 R - /Next 161 0 R - /Count -6 - /A 33 0 R ->> endobj -155 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\101\0\120\0\111) - /Parent 154 0 R - /First 156 0 R - /Last 157 0 R - /Next 158 0 R - /Count -2 - /A 35 0 R ->> endobj -156 0 obj -<< - /Title (\376\377\0\107\0\154\0\157\0\142\0\141\0\154\0\40\0\163\0\171\0\155\0\142\0\157\0\154\0\163) - /Parent 155 0 R - /Next 157 0 R - /A 37 0 R ->> endobj -157 0 obj -<< - /Title (\376\377\0\124\0\150\0\145\0\40\0\142\0\154\0\157\0\142\0\40\0\143\0\154\0\141\0\163\0\163) - /Parent 155 0 R - /Prev 156 0 R - /A 39 0 R ->> endobj -158 0 obj -<< - /Title (\376\377\0\103\0\40\0\101\0\120\0\111) - /Parent 154 0 R - /First 159 0 R - /Last 160 0 R - /Prev 155 0 R - /Count -2 - /A 41 0 R ->> endobj -159 0 obj -<< - /Title (\376\377\0\111\0\156\0\151\0\164\0\151\0\141\0\154\0\151\0\172\0\141\0\164\0\151\0\157\0\156) - /Parent 158 0 R - /Next 160 0 R - /A 43 0 R ->> endobj -160 0 obj -<< - /Title (\376\377\0\102\0\154\0\157\0\142\0\40\0\157\0\142\0\152\0\145\0\143\0\164) - /Parent 158 0 R - /Prev 159 0 R - /A 45 0 R ->> endobj -161 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\64\0\56\0\240\0\124\0\150\0\145\0\40\0\115\0\141\0\164\0\150\0\40\0\154\0\151\0\142\0\162\0\141\0\162\0\171) - /Parent 140 0 R - /First 162 0 R - /Last 164 0 R - /Prev 154 0 R - /Next 166 0 R - /Count -4 - /A 47 0 R ->> endobj -162 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\101\0\120\0\111) - /Parent 161 0 R - /First 163 0 R - /Last 163 0 R - /Next 164 0 R - /Count -1 - /A 49 0 R ->> endobj -163 0 obj -<< - /Title (\376\377\0\107\0\154\0\157\0\142\0\141\0\154\0\40\0\163\0\171\0\155\0\142\0\157\0\154\0\163) - /Parent 162 0 R - /A 51 0 R ->> endobj -164 0 obj -<< - /Title (\376\377\0\103\0\40\0\101\0\120\0\111) - /Parent 161 0 R - /First 165 0 R - /Last 165 0 R - /Prev 162 0 R - /Count -1 - /A 53 0 R ->> endobj -165 0 obj -<< - /Title (\376\377\0\111\0\156\0\151\0\164\0\151\0\141\0\154\0\151\0\172\0\141\0\164\0\151\0\157\0\156) - /Parent 164 0 R - /A 55 0 R ->> endobj -166 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\65\0\56\0\240\0\124\0\150\0\145\0\40\0\123\0\171\0\163\0\164\0\145\0\155\0\40\0\154\0\151\0\142\0\162\0\141\0\162\0\171) - /Parent 140 0 R - /First 167 0 R - /Last 169 0 R - /Prev 161 0 R - /Next 171 0 R - /Count -4 - /A 57 0 R ->> endobj -167 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\101\0\120\0\111) - /Parent 166 0 R - /First 168 0 R - /Last 168 0 R - /Next 169 0 R - /Count -1 - /A 59 0 R ->> endobj -168 0 obj -<< - /Title (\376\377\0\107\0\154\0\157\0\142\0\141\0\154\0\40\0\163\0\171\0\155\0\142\0\157\0\154\0\163) - /Parent 167 0 R - /A 61 0 R ->> endobj -169 0 obj -<< - /Title (\376\377\0\103\0\40\0\101\0\120\0\111) - /Parent 166 0 R - /First 170 0 R - /Last 170 0 R - /Prev 167 0 R - /Count -1 - /A 63 0 R ->> endobj -170 0 obj -<< - /Title (\376\377\0\111\0\156\0\151\0\164\0\151\0\141\0\154\0\151\0\172\0\141\0\164\0\151\0\157\0\156) - /Parent 169 0 R - /A 65 0 R ->> endobj -171 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\66\0\56\0\240\0\124\0\150\0\145\0\40\0\123\0\164\0\162\0\151\0\156\0\147\0\40\0\154\0\151\0\142\0\162\0\141\0\162\0\171) - /Parent 140 0 R - /First 172 0 R - /Last 175 0 R - /Prev 166 0 R - /Next 179 0 R - /Count -7 - /A 67 0 R ->> endobj -172 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\101\0\120\0\111) - /Parent 171 0 R - /First 173 0 R - /Last 174 0 R - /Next 175 0 R - /Count -2 - /A 69 0 R ->> endobj -173 0 obj -<< - /Title (\376\377\0\107\0\154\0\157\0\142\0\141\0\154\0\40\0\163\0\171\0\155\0\142\0\157\0\154\0\163) - /Parent 172 0 R - /Next 174 0 R - /A 71 0 R ->> endobj -174 0 obj -<< - /Title (\376\377\0\122\0\145\0\147\0\145\0\170\0\160\0\40\0\143\0\154\0\141\0\163\0\163) - /Parent 172 0 R - /Prev 173 0 R - /A 73 0 R ->> endobj -175 0 obj -<< - /Title (\376\377\0\103\0\40\0\101\0\120\0\111) - /Parent 171 0 R - /First 176 0 R - /Last 178 0 R - /Prev 172 0 R - /Count -3 - /A 75 0 R ->> endobj -176 0 obj -<< - /Title (\376\377\0\111\0\156\0\151\0\164\0\151\0\141\0\154\0\151\0\172\0\141\0\164\0\151\0\157\0\156) - /Parent 175 0 R - /Next 177 0 R - /A 77 0 R ->> endobj -177 0 obj -<< - /Title (\376\377\0\106\0\157\0\162\0\155\0\141\0\164\0\164\0\151\0\156\0\147) - /Parent 175 0 R - /Prev 176 0 R - /Next 178 0 R - /A 79 0 R ->> endobj -178 0 obj -<< - /Title (\376\377\0\122\0\145\0\147\0\165\0\154\0\141\0\162\0\40\0\105\0\170\0\160\0\145\0\163\0\163\0\151\0\157\0\156\0\163) - /Parent 175 0 R - /Prev 177 0 R - /A 81 0 R ->> endobj -179 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\67\0\56\0\240\0\124\0\150\0\145\0\40\0\101\0\165\0\170\0\40\0\154\0\151\0\142\0\162\0\141\0\162\0\171) - /Parent 140 0 R - /First 180 0 R - /Last 180 0 R - /Prev 171 0 R - /Next 182 0 R - /Count -2 - /A 83 0 R ->> endobj -180 0 obj -<< - /Title (\376\377\0\103\0\40\0\101\0\120\0\111) - /Parent 179 0 R - /First 181 0 R - /Last 181 0 R - /Count -1 - /A 85 0 R ->> endobj -181 0 obj -<< - /Title (\376\377\0\105\0\162\0\162\0\157\0\162\0\40\0\150\0\141\0\156\0\144\0\154\0\151\0\156\0\147) - /Parent 180 0 R - /A 87 0 R ->> endobj -182 0 obj -<< - /Title (\376\377\0\111\0\156\0\144\0\145\0\170) - /Parent 140 0 R - /Prev 179 0 R - /A 89 0 R ->> endobj -183 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F11 -/BaseFont /Courier-Bold -/Encoding /WinAnsiEncoding >> -endobj -184 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F1 -/BaseFont /Helvetica -/Encoding /WinAnsiEncoding >> -endobj -185 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F10 -/BaseFont /Courier-Oblique -/Encoding /WinAnsiEncoding >> -endobj -186 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F5 -/BaseFont /Times-Roman -/Encoding /WinAnsiEncoding >> -endobj -187 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F3 -/BaseFont /Helvetica-Bold -/Encoding /WinAnsiEncoding >> -endobj -188 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F9 -/BaseFont /Courier -/Encoding /WinAnsiEncoding >> -endobj -189 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F6 -/BaseFont /Times-Italic -/Encoding /WinAnsiEncoding >> -endobj -190 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F7 -/BaseFont /Times-Bold -/Encoding /WinAnsiEncoding >> -endobj -1 0 obj -<< /Type /Pages -/Count 28 -/Kids [6 0 R 8 0 R 10 0 R 12 0 R 91 0 R 93 0 R 95 0 R 97 0 R 99 0 R 101 0 R 103 0 R 105 0 R 107 0 R 109 0 R 111 0 R 113 0 R 115 0 R 117 0 R 119 0 R 121 0 R 123 0 R 125 0 R 127 0 R 129 0 R 131 0 R 133 0 R 135 0 R 138 0 R ] >> -endobj -2 0 obj -<< /Type /Catalog -/Pages 1 0 R - /Outlines 140 0 R - /PageMode /UseOutlines - >> -endobj -3 0 obj -<< -/Font << /F1 184 0 R /F11 183 0 R /F10 185 0 R /F5 186 0 R /F3 187 0 R /F9 188 0 R /F6 189 0 R /F7 190 0 R >> -/ProcSet [ /PDF /ImageC /Text ] >> -endobj -15 0 obj -<< -/S /GoTo -/D [91 0 R /XYZ 115.0 725.0 null] ->> -endobj -17 0 obj -<< -/S /GoTo -/D [93 0 R /XYZ 115.0 725.0 null] ->> -endobj -19 0 obj -<< -/S /GoTo -/D [93 0 R /XYZ 115.0 666.009 null] ->> -endobj -21 0 obj -<< -/S /GoTo -/D [93 0 R /XYZ 115.0 632.684 null] ->> -endobj -23 0 obj -<< -/S /GoTo -/D [93 0 R /XYZ 115.0 233.665 null] ->> -endobj -25 0 obj -<< -/S /GoTo -/D [95 0 R /XYZ 115.0 127.26 null] ->> -endobj -27 0 obj -<< -/S /GoTo -/D [97 0 R /XYZ 115.0 725.0 null] ->> -endobj -29 0 obj -<< -/S /GoTo -/D [97 0 R /XYZ 115.0 514.701 null] ->> -endobj -31 0 obj -<< -/S /GoTo -/D [99 0 R /XYZ 115.0 725.0 null] ->> -endobj -33 0 obj -<< -/S /GoTo -/D [103 0 R /XYZ 115.0 725.0 null] ->> -endobj -35 0 obj -<< -/S /GoTo -/D [103 0 R /XYZ 115.0 655.009 null] ->> -endobj -37 0 obj -<< -/S /GoTo -/D [103 0 R /XYZ 115.0 621.684 null] ->> -endobj -39 0 obj -<< -/S /GoTo -/D [103 0 R /XYZ 115.0 347.085 null] ->> -endobj -41 0 obj -<< -/S /GoTo -/D [105 0 R /XYZ 115.0 177.98 null] ->> -endobj -43 0 obj -<< -/S /GoTo -/D [105 0 R /XYZ 115.0 144.655 null] ->> -endobj -45 0 obj -<< -/S /GoTo -/D [107 0 R /XYZ 115.0 570.14 null] ->> -endobj -47 0 obj -<< -/S /GoTo -/D [111 0 R /XYZ 115.0 725.0 null] ->> -endobj -49 0 obj -<< -/S /GoTo -/D [111 0 R /XYZ 115.0 655.009 null] ->> -endobj -51 0 obj -<< -/S /GoTo -/D [111 0 R /XYZ 115.0 621.684 null] ->> -endobj -53 0 obj -<< -/S /GoTo -/D [113 0 R /XYZ 115.0 415.7 null] ->> -endobj -55 0 obj -<< -/S /GoTo -/D [113 0 R /XYZ 115.0 382.375 null] ->> -endobj -57 0 obj -<< -/S /GoTo -/D [115 0 R /XYZ 115.0 725.0 null] ->> -endobj -59 0 obj -<< -/S /GoTo -/D [115 0 R /XYZ 115.0 655.009 null] ->> -endobj -61 0 obj -<< -/S /GoTo -/D [115 0 R /XYZ 115.0 621.684 null] ->> -endobj -63 0 obj -<< -/S /GoTo -/D [115 0 R /XYZ 115.0 145.225 null] ->> -endobj -65 0 obj -<< -/S /GoTo -/D [115 0 R /XYZ 115.0 111.9 null] ->> -endobj -67 0 obj -<< -/S /GoTo -/D [119 0 R /XYZ 115.0 725.0 null] ->> -endobj -69 0 obj -<< -/S /GoTo -/D [119 0 R /XYZ 115.0 666.009 null] ->> -endobj -71 0 obj -<< -/S /GoTo -/D [119 0 R /XYZ 115.0 632.684 null] ->> -endobj -73 0 obj -<< -/S /GoTo -/D [121 0 R /XYZ 115.0 209.54 null] ->> -endobj -75 0 obj -<< -/S /GoTo -/D [123 0 R /XYZ 115.0 281.78 null] ->> -endobj -77 0 obj -<< -/S /GoTo -/D [123 0 R /XYZ 115.0 248.455 null] ->> -endobj -79 0 obj -<< -/S /GoTo -/D [125 0 R /XYZ 115.0 662.0 null] ->> -endobj -81 0 obj -<< -/S /GoTo -/D [125 0 R /XYZ 115.0 335.841 null] ->> -endobj -83 0 obj -<< -/S /GoTo -/D [133 0 R /XYZ 115.0 725.0 null] ->> -endobj -85 0 obj -<< -/S /GoTo -/D [133 0 R /XYZ 115.0 666.009 null] ->> -endobj -87 0 obj -<< -/S /GoTo -/D [133 0 R /XYZ 115.0 632.684 null] ->> -endobj -89 0 obj -<< -/S /GoTo -/D [135 0 R /XYZ 67.0 725.0 null] ->> -endobj -140 0 obj -<< - /First 142 0 R - /Last 182 0 R ->> endobj -141 0 obj -<< -/S /GoTo -/D [10 0 R /XYZ 115.0 725.0 null] ->> -endobj -143 0 obj -<< -/S /GoTo -/D [12 0 R /XYZ 115.0 715.0 null] ->> -endobj -xref -0 191 -0000000000 65535 f -0000053910 00000 n -0000054176 00000 n -0000054269 00000 n -0000000015 00000 n -0000000071 00000 n -0000000408 00000 n -0000000514 00000 n -0000001653 00000 n -0000001759 00000 n -0000001920 00000 n -0000002027 00000 n -0000003395 00000 n -0000003518 00000 n -0000003804 00000 n -0000054435 00000 n -0000003940 00000 n -0000054500 00000 n -0000004076 00000 n -0000054565 00000 n -0000004212 00000 n -0000054632 00000 n -0000004348 00000 n -0000054699 00000 n -0000004483 00000 n -0000054766 00000 n -0000004619 00000 n -0000054832 00000 n -0000004755 00000 n -0000054897 00000 n -0000004890 00000 n -0000054964 00000 n -0000005026 00000 n -0000055029 00000 n -0000005162 00000 n -0000055095 00000 n -0000005298 00000 n -0000055163 00000 n -0000005434 00000 n -0000055231 00000 n -0000005570 00000 n -0000055299 00000 n -0000005706 00000 n -0000055366 00000 n -0000005842 00000 n -0000055434 00000 n -0000005978 00000 n -0000055501 00000 n -0000006114 00000 n -0000055567 00000 n -0000006250 00000 n -0000055635 00000 n -0000006386 00000 n -0000055703 00000 n -0000006522 00000 n -0000055769 00000 n -0000006658 00000 n -0000055837 00000 n -0000006794 00000 n -0000055903 00000 n -0000006930 00000 n -0000055971 00000 n -0000007066 00000 n -0000056039 00000 n -0000007202 00000 n -0000056107 00000 n -0000007338 00000 n -0000056173 00000 n -0000007474 00000 n -0000056239 00000 n -0000007610 00000 n -0000056307 00000 n -0000007746 00000 n -0000056375 00000 n -0000007882 00000 n -0000056442 00000 n -0000008018 00000 n -0000056509 00000 n -0000008154 00000 n -0000056577 00000 n -0000008290 00000 n -0000056643 00000 n -0000008426 00000 n -0000056711 00000 n -0000008562 00000 n -0000056777 00000 n -0000008698 00000 n -0000056845 00000 n -0000008833 00000 n -0000056913 00000 n -0000008969 00000 n -0000010032 00000 n -0000010140 00000 n -0000012316 00000 n -0000012424 00000 n -0000014217 00000 n -0000014325 00000 n -0000015773 00000 n -0000015881 00000 n -0000018037 00000 n -0000018145 00000 n -0000018965 00000 n -0000019075 00000 n -0000020614 00000 n -0000020724 00000 n -0000022570 00000 n -0000022680 00000 n -0000023997 00000 n -0000024107 00000 n -0000024652 00000 n -0000024762 00000 n -0000026006 00000 n -0000026116 00000 n -0000027453 00000 n -0000027563 00000 n -0000029288 00000 n -0000029398 00000 n -0000030077 00000 n -0000030187 00000 n -0000031877 00000 n -0000031987 00000 n -0000033923 00000 n -0000034033 00000 n -0000035808 00000 n -0000035918 00000 n -0000037775 00000 n -0000037885 00000 n -0000039309 00000 n -0000039419 00000 n -0000041125 00000 n -0000041235 00000 n -0000041591 00000 n -0000041701 00000 n -0000042701 00000 n -0000042811 00000 n -0000044313 00000 n -0000044439 00000 n -0000044460 00000 n -0000045103 00000 n -0000045229 00000 n -0000056978 00000 n -0000057032 00000 n -0000045250 00000 n -0000057098 00000 n -0000045504 00000 n -0000045705 00000 n -0000045941 00000 n -0000046288 00000 n -0000046486 00000 n -0000046654 00000 n -0000046798 00000 n -0000046954 00000 n -0000047123 00000 n -0000047288 00000 n -0000047562 00000 n -0000047862 00000 n -0000048060 00000 n -0000048228 00000 n -0000048395 00000 n -0000048551 00000 n -0000048720 00000 n -0000048870 00000 n -0000049170 00000 n -0000049368 00000 n -0000049521 00000 n -0000049677 00000 n -0000049831 00000 n -0000050143 00000 n -0000050341 00000 n -0000050494 00000 n -0000050650 00000 n -0000050804 00000 n -0000051116 00000 n -0000051314 00000 n -0000051482 00000 n -0000051638 00000 n -0000051794 00000 n -0000051963 00000 n -0000052123 00000 n -0000052315 00000 n -0000052609 00000 n -0000052750 00000 n -0000052903 00000 n -0000053018 00000 n -0000053131 00000 n -0000053240 00000 n -0000053356 00000 n -0000053467 00000 n -0000053581 00000 n -0000053688 00000 n -0000053800 00000 n -trailer -<< -/Size 191 -/Root 2 0 R -/Info 4 0 R ->> -startxref -57164 -%%EOF diff --git a/src/3rdparty/squirrel/doc/squirrel2.chm b/src/3rdparty/squirrel/doc/squirrel2.chm deleted file mode 100644 index f289edd1e6..0000000000 Binary files a/src/3rdparty/squirrel/doc/squirrel2.chm and /dev/null differ diff --git a/src/3rdparty/squirrel/doc/squirrel2.pdf b/src/3rdparty/squirrel/doc/squirrel2.pdf deleted file mode 100644 index af3e0fde9b..0000000000 --- a/src/3rdparty/squirrel/doc/squirrel2.pdf +++ /dev/null @@ -1,6426 +0,0 @@ -%PDF-1.3 -% -4 0 obj -<< /Type /Info -/Producer (FOP 0.20.5) >> -endobj -5 0 obj -<< /Length 242 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gaqco]*cD?&4QKpMCE&o3;_QsMHU9D\t)sA0PV_"go0+KHisl,*LLp9/;hPIK/+9qL3ODc"L/XD-R"&PP9?to9cdO^b_(UoJR,^t4fXaV*l1s(hf6dZA.$iuD"u).S!&PO>r7V:qqXVEI0U=0mG7sAWmV*Z%c@b(d,nP\Eb_Xje&sj6s,!HjU@qn5CB!ftO"(S1 -endstream -endobj -6 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 5 0 R ->> -endobj -7 0 obj -<< /Length 1100 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasao968Q9&AI=/pdUZcKcb0YV5PX5.]$TD`djHhOm=Z8n=#bBB0ulWKOLp;rIK:J%!SknV>3/6R/#6>VLpZWMkUF9,F?<#%=hM6Mkp!uBj5X$B2#V2>=u>L)5!(7V&8*!fU%#V69""keG\0eUbVCc5.r[(!8>"DSYhfG[893-2tT1i8c%;:Z3D/uE8j?BK!h$XJApc)$;3-ItK1.bP!IVr357,=/cjMBSALe)R#Po&70$jj*1c,Haa9iTARZD>$lCoK*T6^XuqdGRg:a=7sCF&@T:+8e'qhSZ$hkpkh(3/N^S+25;.:g"Q8%WNhlUF6rg(0&1BXO((l>;:%"FU<.[UZE^W'Z'?VtckL)2MZNV3*-J>irIPqji:W.#TTu%jI5EX$d;62d51St5A8+Vm&R"8iCZ#^r&J,(ZM2DTb\)BGmcq+h5ghXK-Rii#oKG?CT>/@u_0ML$gnDYSfs)M.]auTrhRM/Hi8fGL2O"tk<&ncl4F46`Mlpi!2AtnGL!`:[)QlcS*7A8[R)7\pHK15rmH>*7]a?>;jh0J.0ln"S@mk-",=nfhiqo&j+^$Hd23H9aXfL8\GGK[=C2s>7'6p87ej'W@H'[TPF:ha)(JJ3*V^OLDAEAT7o\N/pk_klbaiBNK)d)dMIAX8?J!B;A5`pZL%t'I<)4e*Q2ef^NoVMGn\J!0L$d%f~> -endstream -endobj -8 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 7 0 R ->> -endobj -9 0 obj -<< /Length 71 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Garg^iGoCd.c`?]8EV`b1=.gR0K1`91K?+0ZOMGdU/Zh'Y!=Te%#&:?HH*JE! -endstream -endobj -10 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 9 0 R ->> -endobj -11 0 obj -<< /Length 1807 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb"/lc#]C5(rl%A=)dGlK*hD4CSj8IC#!]tBr9-%4Z#;5ZEp.qndD\&+UTAM7%q7/dba*rb2SW+[6XLX*.U<3(_$_!5`E'Y>1UTB9Z=T`0d-Q!*>*.1K(\G_mrgb^ZFIGZ>SsBoLOT@.3WOISrcPKdUFuQ'a&s^WP_"9Ec55mkig$s)1OPsJ5bLV=#`J[6+WEd^R]jjn:K6>+\aYW35SL$R0W0Y8oI#b[9?Hku`/3cO?n0D$JO!!X#CaE-&Ao%TDC+A<=UDr)\p4kNi+Z:6>f5J[^Qp'ECW)2,&P(MrIe7Lu$H/%0D)-+WO@oE"Kofpe`qJIlp!2$N_=pdEPhKDSKMfL@6gqa7GVP/#94"kPdEq76GmBE:.;$Sa[f<[5fZX%Efbb3#e6;Z9O_N2i3Qj?g(Z,,P/T1oh2oJ:XTO,DN?=ecDF2hl0AOJ+4p^eFn`S:)pZU6=4uHD*R7;`mLIlj0PoH=(;Qa@PELC(dl=1Q7,7&BfZptLk@9tIfV)GA/58_#`+:r3[]qG=M6)'nVns*C.91'P25bK@"4j)_%<]lLG2n!bd@4a,Z@B>JpAOV%5pS[jo(6.0O&EjF1_`(h,Df2$bm[KVboVWhY!DofsXBu"@Sg/S@I@nf]b:74$^#/pOcNA`i2+[U?U*8;GZRnQlQ>rna'`1XW5_ht6..lst9:0.U9XhFG25G,d!pu;d'0O`bmJ_665/2TBcQ1S`?Rm)>V%+Z7`uH-WZB9V(roZKNC[m_~> -endstream -endobj -12 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 11 0 R -/Annots 13 0 R ->> -endobj -13 0 obj -[ -14 0 R -16 0 R -18 0 R -20 0 R -22 0 R -24 0 R -26 0 R -28 0 R -30 0 R -32 0 R -34 0 R -36 0 R -38 0 R -40 0 R -42 0 R -44 0 R -46 0 R -48 0 R -50 0 R -52 0 R -54 0 R -56 0 R -58 0 R -60 0 R -62 0 R -64 0 R -66 0 R -68 0 R -70 0 R -72 0 R -74 0 R -76 0 R -78 0 R -80 0 R -82 0 R -84 0 R -86 0 R -88 0 R -90 0 R -92 0 R -94 0 R -96 0 R -98 0 R -100 0 R -102 0 R -104 0 R -106 0 R -108 0 R -110 0 R -112 0 R -114 0 R -116 0 R -118 0 R -] -endobj -14 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 655.001 179.44 645.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 15 0 R -/H /I ->> -endobj -16 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 644.001 184.15 634.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 17 0 R -/H /I ->> -endobj -18 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 633.001 211.48 623.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 19 0 R -/H /I ->> -endobj -20 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 622.001 209.1 612.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 21 0 R -/H /I ->> -endobj -22 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 611.001 209.1 601.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 23 0 R -/H /I ->> -endobj -24 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 600.001 207.43 590.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 25 0 R -/H /I ->> -endobj -26 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 589.001 219.38 579.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 27 0 R -/H /I ->> -endobj -28 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 578.001 198.55 568.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 29 0 R -/H /I ->> -endobj -30 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 567.001 211.34 557.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 31 0 R -/H /I ->> -endobj -32 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 556.001 233.7 546.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 33 0 R -/H /I ->> -endobj -34 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 545.001 196.32 535.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 35 0 R -/H /I ->> -endobj -36 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 534.001 188.56 524.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 37 0 R -/H /I ->> -endobj -38 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 523.001 192.45 513.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 39 0 R -/H /I ->> -endobj -40 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 512.001 185.78 502.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 41 0 R -/H /I ->> -endobj -42 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 501.001 187.45 491.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 43 0 R -/H /I ->> -endobj -44 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 490.001 190.77 480.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 45 0 R -/H /I ->> -endobj -46 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 479.001 191.32 469.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 47 0 R -/H /I ->> -endobj -48 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 468.001 203.56 458.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 49 0 R -/H /I ->> -endobj -50 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 457.001 189.67 447.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 51 0 R -/H /I ->> -endobj -52 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 446.001 224.94 436.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 53 0 R -/H /I ->> -endobj -54 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 435.001 207.98 425.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 55 0 R -/H /I ->> -endobj -56 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 424.001 203.54 414.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 57 0 R -/H /I ->> -endobj -58 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 413.001 196.32 403.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 59 0 R -/H /I ->> -endobj -60 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 402.001 238.24 392.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 61 0 R -/H /I ->> -endobj -62 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 391.001 218.72 381.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 63 0 R -/H /I ->> -endobj -64 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 380.001 206.32 370.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 65 0 R -/H /I ->> -endobj -66 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 369.001 187.89 359.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 67 0 R -/H /I ->> -endobj -68 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 358.001 191.89 348.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 69 0 R -/H /I ->> -endobj -70 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 347.001 268.01 337.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 71 0 R -/H /I ->> -endobj -72 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 336.001 193.0 326.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 73 0 R -/H /I ->> -endobj -74 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 325.001 190.21 315.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 75 0 R -/H /I ->> -endobj -76 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 314.001 202.44 304.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 77 0 R -/H /I ->> -endobj -78 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 303.001 191.88 293.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 79 0 R -/H /I ->> -endobj -80 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 292.001 188.0 282.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 81 0 R -/H /I ->> -endobj -82 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 281.001 276.3 271.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 83 0 R -/H /I ->> -endobj -84 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 270.001 250.49 260.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 85 0 R -/H /I ->> -endobj -86 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 259.001 236.6 249.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 87 0 R -/H /I ->> -endobj -88 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 248.001 202.99 238.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 89 0 R -/H /I ->> -endobj -90 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 237.001 191.33 227.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 91 0 R -/H /I ->> -endobj -92 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 226.001 189.11 216.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 93 0 R -/H /I ->> -endobj -94 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 215.001 190.22 205.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 95 0 R -/H /I ->> -endobj -96 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 204.001 251.6 194.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 97 0 R -/H /I ->> -endobj -98 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 193.001 192.33 183.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 99 0 R -/H /I ->> -endobj -100 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 182.001 290.1 172.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 101 0 R -/H /I ->> -endobj -102 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 171.001 207.43 161.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 103 0 R -/H /I ->> -endobj -104 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 160.001 238.26 150.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 105 0 R -/H /I ->> -endobj -106 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 149.001 201.32 139.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 107 0 R -/H /I ->> -endobj -108 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 138.001 189.66 128.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 109 0 R -/H /I ->> -endobj -110 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 127.001 238.81 117.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 111 0 R -/H /I ->> -endobj -112 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 116.001 170.66 106.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 113 0 R -/H /I ->> -endobj -114 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 105.001 219.67 95.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 115 0 R -/H /I ->> -endobj -116 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 94.001 218.83 84.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 117 0 R -/H /I ->> -endobj -118 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 83.001 218.84 73.001 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 119 0 R -/H /I ->> -endobj -120 0 obj -<< /Length 2026 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb"/l>Ar7S!/9>//,V6B&+r>QPiTk298a;D_cdk'(^>VYka7`*V6lIFqt8FW1?CoaHJ)]Z4tTTY@Ot#!FH1T+,d6C+T3q1EEMh$+^)B#l]+GoB`EtAIN"q%1EMp_sc]dmk=2,Rs*]K;Q/(^C.5J!:!a;kft"St#s.sJNJ_.=lG%\"nq3)bFBe*@ZDL'eNVSQMNn8<$tRV[P1?Y+1A[oH%SnRr>u##7qs)\df!9hhnH(KPkNdX&4VLf/F,50*_m8[+OhWMk3XEW(FlkV2DWM$B%uSq_6In\"9S6e\gmG&hb!Yk(7S%sT;Ei3Id;R2kEMVX3Mj!WnoS2/79GeOo$K[48l3KFY&o![muPmfN^(6u)A;](PCA^tDr*Q:=lCSWqZOpXkfB!eJ']m^uKdHtJRKmpmaXRB=r:IVF/L^2snlF@ac-B@e+6CsqU.e?Wa.Vl%s",8`3=JM*I=gr$HaZ(&+8Y@jsQr(e)HFe6[cl`KILGL8AMJ\Fd8h4[QgK*,;q,Rb7J%&h2HR*EK2H/14[%fh.b6B."niW.V!b5>D7`<5RR_+E,+0\G.U7poGe-Y_0"$HW\+A8gGIbr,Kgg(=F`"p&.%pH6+Z7>0Q%PLMn@+tW/mc15TnG*3=)rO_M+;J2fW$'"G_:/#]sD&irmj9$5\h`[na^eL+#?\1Sr))\gIJ6f7jqT,)SuW5i3jnFQq<8)hb\H2Y1L*.WM>lif?RB4gBT1\Cfl)!_H3!Fa1<.>!=TP'FK%e)!Ss7?S]G=j9mIYtk0"moi96i*X)ch$iPk+f`Ruc<-bC+.=1JfbgVXR2/V$)66&k*#mDrDE`'#&=HkWDN&R3@q*g:.R=3F=`d&I>%L*p?r[+:RMM*0(bI\V5*l"Wq<:60iO+OGC3UX<^Y7ChMM>\^$]FDBo_>;V\ABQ%7E&"dlRN%El&S=gH'!hC0FXahF*@_4pA62)W^O&l.7d,M4^]]ePJ/r![J(n'n1"SPu0CO6blq(e90ptj(gD>*[#?cB"CZq"b!^MshK586^t;d?fOUrGUj@B(E,B'FL.QTF>t!eF*uH8P*F"P6k[1*pE&cbU**M@D^6TRfq7lt>@q[B_rbjdNAWFkR@o#g7Y:R?('&5TimqT2[fa_JMuJZ&l)_-lpD_FiP.X"U#_NodH7hLD69bXmYd_A9HK?4oVR65c7D;+G9)3]5(ncmrP&!UfD8uq`St8Tqf,8W+-AW"T"`*q^gB&/!egEf1h^hX*Ci:9N^)'7bq-mCNE1+#(ZtP4dpS2''r*+#8Q,iQRke6DCZ!7)RNL/G<48=ZY?N\,=U1`TsqCYdqo2CFFuirUIOgM;t>LaO3PX!QL3V,N`l\-Lr\'WT6?q@N1PYSO;`8P>BScI8"W8rphj&,Nq=3WnhI2t.EKU#C@qDeHG5SOq$!!!*t2H]Ek53$*k[giBqu5CDs)=2kN1+r?'jIahuD[N:kohJS5.c2pHR:`qA3NsR&9~> -endstream -endobj -121 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 120 0 R -/Annots 122 0 R ->> -endobj -122 0 obj -[ -123 0 R -125 0 R -127 0 R -129 0 R -131 0 R -133 0 R -135 0 R -137 0 R -139 0 R -141 0 R -143 0 R -145 0 R -147 0 R -149 0 R -151 0 R -153 0 R -155 0 R -157 0 R -159 0 R -161 0 R -163 0 R -165 0 R -167 0 R -169 0 R -171 0 R -173 0 R -175 0 R -177 0 R -179 0 R -181 0 R -183 0 R -185 0 R -187 0 R -189 0 R -191 0 R -193 0 R -195 0 R -197 0 R -199 0 R -201 0 R -203 0 R -205 0 R -207 0 R -209 0 R -211 0 R -213 0 R -215 0 R -217 0 R -219 0 R -221 0 R -223 0 R -225 0 R -227 0 R -229 0 R -231 0 R -233 0 R -235 0 R -237 0 R -] -endobj -123 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 719.0 171.21 709.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 124 0 R -/H /I ->> -endobj -125 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 708.0 183.45 698.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 126 0 R -/H /I ->> -endobj -127 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 697.0 250.49 687.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 128 0 R -/H /I ->> -endobj -129 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 686.0 224.39 676.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 130 0 R -/H /I ->> -endobj -131 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 675.0 318.27 665.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 132 0 R -/H /I ->> -endobj -133 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 664.0 224.37 654.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 134 0 R -/H /I ->> -endobj -135 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 653.0 223.82 643.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 136 0 R -/H /I ->> -endobj -137 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 642.0 174.0 632.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 138 0 R -/H /I ->> -endobj -139 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 631.0 236.6 621.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 140 0 R -/H /I ->> -endobj -141 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 620.0 228.83 610.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 142 0 R -/H /I ->> -endobj -143 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 609.0 212.98 599.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 144 0 R -/H /I ->> -endobj -145 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 598.0 222.44 588.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 146 0 R -/H /I ->> -endobj -147 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 587.0 187.87 577.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 148 0 R -/H /I ->> -endobj -149 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 576.0 251.78 566.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 150 0 R -/H /I ->> -endobj -151 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 565.0 207.45 555.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 152 0 R -/H /I ->> -endobj -153 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 554.0 223.55 544.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 154 0 R -/H /I ->> -endobj -155 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 543.0 254.94 533.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 156 0 R -/H /I ->> -endobj -157 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 532.0 176.21 522.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 158 0 R -/H /I ->> -endobj -159 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 521.0 223.27 511.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 160 0 R -/H /I ->> -endobj -161 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 510.0 214.24 500.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 162 0 R -/H /I ->> -endobj -163 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 499.0 187.88 489.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 164 0 R -/H /I ->> -endobj -165 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 488.0 198.44 478.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 166 0 R -/H /I ->> -endobj -167 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 477.0 184.11 467.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 168 0 R -/H /I ->> -endobj -169 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 466.0 185.22 456.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 170 0 R -/H /I ->> -endobj -171 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 455.0 204.11 445.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 172 0 R -/H /I ->> -endobj -173 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 444.0 199.67 434.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 174 0 R -/H /I ->> -endobj -175 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 433.0 187.44 423.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 176 0 R -/H /I ->> -endobj -177 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 422.0 186.89 412.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 178 0 R -/H /I ->> -endobj -179 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 411.0 188.56 401.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 180 0 R -/H /I ->> -endobj -181 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 400.0 185.78 390.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 182 0 R -/H /I ->> -endobj -183 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 389.0 203.56 379.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 184 0 R -/H /I ->> -endobj -185 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 378.0 190.78 368.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 186 0 R -/H /I ->> -endobj -187 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 367.0 198.55 357.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 188 0 R -/H /I ->> -endobj -189 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 356.0 190.22 346.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 190 0 R -/H /I ->> -endobj -191 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 345.0 187.44 335.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 192 0 R -/H /I ->> -endobj -193 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 334.0 199.66 324.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 194 0 R -/H /I ->> -endobj -195 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 323.0 193.0 313.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 196 0 R -/H /I ->> -endobj -197 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 312.0 203.56 302.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 198 0 R -/H /I ->> -endobj -199 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 301.0 208.55 291.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 200 0 R -/H /I ->> -endobj -201 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 290.0 222.43 280.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 202 0 R -/H /I ->> -endobj -203 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 279.0 214.84 269.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 204 0 R -/H /I ->> -endobj -205 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 268.0 231.06 258.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 206 0 R -/H /I ->> -endobj -207 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 257.0 237.7 247.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 208 0 R -/H /I ->> -endobj -209 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 246.0 210.83 236.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 210 0 R -/H /I ->> -endobj -211 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 235.0 232.04 225.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 212 0 R -/H /I ->> -endobj -213 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 224.0 177.88 214.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 214 0 R -/H /I ->> -endobj -215 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 213.0 271.76 203.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 216 0 R -/H /I ->> -endobj -217 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 202.0 290.1 192.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 218 0 R -/H /I ->> -endobj -219 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 191.0 215.93 181.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 220 0 R -/H /I ->> -endobj -221 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 180.0 222.61 170.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 222 0 R -/H /I ->> -endobj -223 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 169.0 184.27 159.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 224 0 R -/H /I ->> -endobj -225 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 158.0 223.27 148.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 226 0 R -/H /I ->> -endobj -227 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 168.0 147.0 245.5 137.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 228 0 R -/H /I ->> -endobj -229 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 136.0 237.88 126.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 230 0 R -/H /I ->> -endobj -231 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 125.0 218.45 115.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 232 0 R -/H /I ->> -endobj -233 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 114.0 216.22 104.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 234 0 R -/H /I ->> -endobj -235 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 103.0 222.04 93.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 236 0 R -/H /I ->> -endobj -237 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 92.0 269.81 82.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 238 0 R -/H /I ->> -endobj -239 0 obj -<< /Length 835 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb"/jbAs(+'Sc?EKpH.EMJc[bFkY-N1S1BKl))p`N+H3F#"Q[Ie#+k9"u-V]U=0TDI)_XOa+BFira,nM(a[J^NuVTco2.8eI'diHnuE9jR'A+X@cH>X,qJW\ibg"69U*C_D[89l>_mc>)s6JP6KP&nRjuQo@%pt]]C1<$J5-cW7@3o7u5gaFa3L(>iDYWs5D2kb%=O:idNDrlZFCgWSNgS8LFgpt4Y6F-5%n:[ug'!!35uk:T"nQQV)f(LWh]@)i)`9sXng:]uUt&C?hDj!nJeDSa6AYZeX_bJcc#>f;1kC1K)`?%OqPAtHc/V6YmFGAtoUpbcJ6j&ZN@9b_NQiEd,ffG:*=*_Vn:ZVE[)7VX5)ot->@NVLlL!<43 -endstream -endobj -240 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 239 0 R -/Annots 241 0 R ->> -endobj -241 0 obj -[ -242 0 R -244 0 R -246 0 R -248 0 R -250 0 R -252 0 R -254 0 R -256 0 R -258 0 R -260 0 R -262 0 R -264 0 R -266 0 R -268 0 R -270 0 R -] -endobj -242 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 719.0 250.64 709.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 243 0 R -/H /I ->> -endobj -244 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 708.0 214.54 698.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 245 0 R -/H /I ->> -endobj -246 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 697.0 398.68 687.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 247 0 R -/H /I ->> -endobj -248 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 686.0 208.69 676.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 249 0 R -/H /I ->> -endobj -250 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 675.0 189.14 665.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 251 0 R -/H /I ->> -endobj -252 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 664.0 209.82 654.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 253 0 R -/H /I ->> -endobj -254 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 653.0 181.78 643.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 255 0 R -/H /I ->> -endobj -256 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 642.0 212.6 632.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 257 0 R -/H /I ->> -endobj -258 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 631.0 259.81 621.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 259 0 R -/H /I ->> -endobj -260 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 620.0 164.56 610.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 261 0 R -/H /I ->> -endobj -262 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 609.0 229.83 599.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 263 0 R -/H /I ->> -endobj -264 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 598.0 233.15 588.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 265 0 R -/H /I ->> -endobj -266 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 587.0 226.77 577.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 267 0 R -/H /I ->> -endobj -268 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 144.0 576.0 208.14 566.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 269 0 R -/H /I ->> -endobj -270 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 565.0 142.77 555.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 271 0 R -/H /I ->> -endobj -272 0 obj -<< /Length 726 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GarnUa_oie&A@B[G]]$LeRgDR-:i[\&erluk^f$h'G2r)76,M*^=3orJdV[t]]Y^AbjZ&`9CL%sN2"8:o,*aP(Eh^k-nrCIAW\(-1b\b`a\^+,YJX:s3t:Hb*MY1WM``CcF9qgsr[,"8oh]?P`?"f7b4"JO'++i*c()"M9Xe&2d'@SZspI@s151\p$6mJ`H'sV)ou[_OOOjS5:cXJ-e>?WeR)X!OZLG[.YAT(=^G::sIotd8u3KH?5I>Ot?dh%H/#U+m9^-EM05Z%u[1'd@m8Fh_J/IZ#3uCo^qV%P='?J;I-ce)2n?Df"0]5)L>%)_!J!KLHRfW(iU&`$>$QefQE-RGgs[WPL6jFN^%mOWKr;'gKXg!o>VGLG7J/l_'91H4EF)E-L!L9$Vt=\I5XRD#jj9*0F-ouns[1p?IQ%ZYW,Ao6#rI-i^pKK\!ap\,G&Z3GfXn[\;KkGNDO1.srTF3.qt`_q=*mt^X>mN'P^(uOsiRuW-RnE.8`?f]S*p^\5kD&i~> -endstream -endobj -273 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 272 0 R ->> -endobj -274 0 obj -<< /Length 1558 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasap>Ar7S'Roe[:]iOGPF.W6HPQijLBZ<6.#.P3Bi`RnAJ:=XQ_NKLbP'[\8X+LraE-:+o:87?)im22+6Jd]GHQW_'Lf/^cR-*.S2ch:IZ>.PA6V>6UVI8>q:`DEs)CIcP)=J7'Sdih,EcA,d!Y7;"gr>ed=BYOkCWlO.#\d+t)-OE,>*'Lk[AFop9kg"$[\2`5*T`;SnmjH5.591-iK>MK.meG[U4&H0Y;Q_n*uI)kbTre7=OFck>^!W1.F]X[+Tn=,L>mM2GUM4\TJOrkq1[G\MAs@1#K(RJuV!P?*YZ+,^NKp<<;0ecY!Gm7@k<"RMsF[#J>*XGdUlMHtKQUUV&W!][!PAe=\lhCq>h9-'NI]>h___TKf")gXGrVdlV)^IseAc&2ZCm`G+U&(]TD0Od%/S]U(6NKKL=0!B&=R8U4Kk:g*BaqKS&L8QO2EWSqd;V+ZNmm,DeBj.fK-(_iJVmBtX_bcBm,lr$muJD)Ff'9r06nB#0]Z-!4GBDJJjQmP_i#-1'3V0NN4t+%EYCf6Hqe87ig:S`:+/@2l>VAFK(K`Rn9]<%SJm-jgpW83$=mG"u09'>Pe-h9g4j74bG"d==o0s$9.3A0Te56@(O&/Cb\.WhV?Uc]8b20J6HdAF]oSd8r7?5jZqGCPa6k."QK#XLqogA\j#B,tmm3]f8ZYp)@cQb8QFMX"o,??bg55La\k#rjFB$HFg^p^LjrqtQlZ[r)I[#],0p=X:)hi>u$/U7`T^E**\]H#uh*OK4)B>E+JOT-4p_Zm5f#0[#Mo'N*N2`H@AhqfEF>:4BP)e(t>C: -endstream -endobj -275 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 274 0 R ->> -endobj -276 0 obj -<< /Length 1576 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D95iQE&AJ$C#eA#JCPEPr>[W,[h$-ET=C;`9Qb!E*VB)@V30LpGJH#$nE--]msO7UZr9mY.%W!.O-nJ?r#9rc+9hV+`PERH$0*;\@&j>?;_6nlfpAWI]G`/S/(ue]9d'7%NBXNGJt6HR49Fj=6<@[[8[9,rNj/ic:QFlY=E2q=^-&)[Q0t+Y7gi+o`NK%e>hg*Zq<>r-3%pF-nZBU+P_O,&B@gUK5&6H,GI$N1)ULDU6MiE>kO/Bui)D@#85[_`+;5B4p`'In)I\jP7_FSUh!;FuP!oLD>10Z3!52rH?YUjJ$N=2a4X7M_?S:3jg^[WA(5@T.XJ7pf+#&l=sn$I9+>=L/n1o@*uJN.S\qs5cLF.UHK:W:"%HO-QEbb3FB&;8;ie]?=nMBHSq#?ZRm,Th`gbY`R&uEd\++?fG8X%EKS%XFfm"(1ee9,X&.b,E&,BWIqt8s1)35@oqDDl$Bn*TV@c.[qZSRHJN.g>5.jio_I:5KVY7+f@*G6W)Pe,0j9ol?'B:mOe1djeh`']TqeF0Jd.'cP/olr:26.Q@4:?n^ecN"6QC"t/a5Z6id/YCE_r?.&e1ph(_[!TKNRS@+Q''WTfNiKrCGElG%;E\A'8EmQ62PgDjA^`F%;&t9P,"fc_G[r!m?NuRM6cSk/!SaPUWs_(VE9X,DOlo.BLKih/qhSc);""r3.nTATDQ`6>.FD$#gm*Jk$s?%M:CiOdW4C]@=H[)GiL]DLD!`=ZVg1fW-SRulY>40q4AMEXVSlqIV4r9L>%c+_&i@h+!g;hQdn&l2pd(,gY#UOb^ibd:`D[^nKe-SmRN,$Oq7)W6/2^>,LU:i5!QPnP]2eUD.km;cHI=o6e`,"&1`HoT1m5PmHd:n5>0])HN^l3N$1gl&=4a>O*eqTt&CA-0R?jLfWF#.!4JR;+NoXt%1-(kE2uh[jl.Lj@T.LN17$(."@29mM#pVb][AWF@X6VI=L*ZojS1=oqb8AJ*h:G_L2[l%,".^ME"td;eTVkRWMB8ZA1=4iu/%#)Ga'De)'ijNd<8`,J@qV?]]:VA"n+!_73qPdOL^U567&CAad*"5gQlOm.@i'#+-7m+I9nlCYM`/MjfAjQ:lp8o$gbueTKBg@L$"0`g%tPO)#Bb;)43iTF;=$14=p4G<[#JLAsHe$T!&5ljqqcT^VeMmRJ\hrXN7FJtYU)#(R^MN$2])4O[4Egb![BU.5c1NWs*E*f?dTTHGS\1R*sk=6T6]4X8gVB*,prP="3<9dJpT.R]c~> -endstream -endobj -277 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 276 0 R ->> -endobj -278 0 obj -<< /Length 1831 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D95iiK&AI=/(qq93Af896'j+kU72OSt$5>@DWI(;7Ysh'T*/a=Ihj4s)F6(\f(Q0VJ^_r:k_iODH^+A`E^W&(e,Mm7I\asFf4+HCl?[q2C4`fQc`*^`Sp$D.&5@6K!"B:GgO$ONpJ+gZ]4/[7*S2dWR:93YjRI[_;_NGYqgQ$0fEn\OYpJ`iXXoQQscn]O8,tb`RV]!1f-aZdnZK\eDg/%i+:r!8<>&9]qpU'4M\pn>8h_(Qo1B.cJ/EpPN&s/nJ?!fuuUV3+jG1t\D/;`?:S2G.d52D:\;LubA/n#.Ia`9:>6RAI2.2^qd#4JQ!Og<%-$&]VlK]R>=Q`T/%[07%lb,/8+!\!`e!9Fr4gYli$0.D6P8U1f%[;ME?Og5Zd$VOEYLopnY:e?L@r;8FBq$Rh2]iU7q/:u`73$;oJCFd,5Pg5&#,[=FmA7Q;KqU!RDl9,Ll)$4s_>2Z\TQJ-$iT_gIVC%]gq0l)j``9P`j>.3OCDTo_=%Dps\]4-)VAL-i+kuFL1;TVJBZXIJBa\MdW[)DQW!BI4X;iVZRdu;5M>PQo$gcKhR+(4mj*9k'r()]uCjj]F)FY%"'TZQ:Qd7HgUcn2hJMS;=1A'oQn"gY!Si26On5tHSQd5o&90mV7F@O9kA"64g\"ZH5Ls6b2c*gJ6,B@j*[o)69>om$@bgD<*M`,iXj'PA\Lh5Ahr4;*=p:"1CP,[iabYp&_pKK[PDlo;pr0X-g-u-jsF`s8-F\fg6N(f105>mJl<;;"1!phEBZgi*md5_lI5^)1_$NP3jEJG)TI*$l&*.sl5)P45%rRj4s1FAC/#C=Z'n7T$B9q,S\K?-UjZCOXI>$5G4dQ@/o=!sF?ZU9GM[:1).Gk#diC3:Ko^+fim_G4hcjf#XlRrG7FbM@_:9*3m+'aeZ!++kF#EC9nC0Fh]eXlnPsH%G/=PiQe^$=;*2IM6X<+RXD7Hg>rW9?*0\1kP"=3J9et0D+R9-As&@?2Mgbin*L6csiZCGr!c_pD;dE`62AA"2$>.?#VVD9g^=P:g1jj[rIO*SilqqAUDd-q+TVF)!gKTap>[-bS9)&XY![pbRu4afM69/a2FBnj"M3?4IY>\e.*3>:CU%/tRiCYBFI(;8dh',$D52!h$6kC-d<(RQBi;]?s.ej<:15_)gc`k&-Zj!N[%='bV0UcXakOAKcQ\NWa]3Ib8N+g&PL-s1,>!65Bg`_HrfJK:+m)Nb%Q3YoU?+$Bg1(V$-rh9iKl!C-61s`dI#_1coh!6iB$h1D&sm4l"Q&q!\9^,^_N/3dB4gW1AioI..7ni7^]!o0Wc!Q()O!^769%$DCq.Z-HDJd:SWVD6T]ag"GG9"AfcI:;*5b3DPQ/kP4"cJ:Z6[p]Gs\kJA@&]&+5t:EeO3(fCd@XGJ6:[hRf0]>"4FBr]3"s-:Oh>]Hki^00_a'j^he)da5*)Ym33>qab!X^9[DU7QFP;rDgjbI0@pi/hK, -endstream -endobj -279 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 278 0 R ->> -endobj -280 0 obj -<< /Length 1586 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasaq9lK&O%)(h*(qm;qAi,h8:CM8WM]JI;=C?^8g)cJH8[N!N*F!6H*R'"?g9NNCfeFjT>4)Q_irq4("d2J0$D*Prn7.#F][.ajVDsAfk@_%mU+#B_E4%^89bNQo@.0M"+gc=fptgf=K&LSSnsWNY'^r5Z-qdDI@&c0R?YY[!]+qi<)lYQ7[s#t-BlaIDA?N$!q*p9!7;6_r$eVhjMYeFCkT+iPGO,(GEt=3Hunp4d\qh0,4KqD3s)(#m^^79hKpr>m8X%soS8tX:4"Q%K'FI_%&,OOC'5+,*">)=B0/AK?5"Y[LdG,H?5@%e:"$C&8ONA3Sb*k=](-`]AgR1,2&Y2"ToO.kZtl\?6jS@$/)hXe`*QC]]4_f<.HB3$s-6mbCVs(0:.TVkm#jCfjfr.o.Pe:gg\:D>-&eqXt9_8Y0+:j,2A+Hrtu8$;/Ur*X7SK/V1Q$sHB'+1<-LWA!#7e#Ad^d`Gel+as=P6=1O\Iu$G[Mu9g6%nul[obsMa5gW:XK$E<^1?KJp0]+0Bo)`XGg^[P\XUK>Ff.^JDWuS4_7(+lG[e'0]\.McYNhlel8orWSeJ,_U'%J>fpf=8aX-^##J7U+sr>(9BPmhG'I?nN^:*#"co"#ieFR.Z#0%F^;e=DehR':OTP>#QC[dkgsKMeNoM0:3NMd'(\uRS852^c.J'r14F.[sr3)1IiU^PNhq_4.eLtTX9)'Y=cqc9Ar@OE,%S@+<`IM]/M,n8H4Kr7r"9Qsu"'9O.ca;b&.T8d;>_jq\)_SE*$7QG'OeR9=A+/.aRi8_"Qa<=HpC)Zn4;J$Dq,ZOU()4X=cMj6f0.gn4Qm>u -endstream -endobj -281 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 280 0 R ->> -endobj -282 0 obj -<< /Length 1995 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%$968iG&AJ$CE,r3GP9>71<'*6"D3CdquaAuJg`!ddI1N)k:t2N(F^fqR?IT42,)FnaDmWubggGlO%>j1hD1j/&Va^6bc#&)@rlJ/Nf1oHfBm87EpU=nA*lj&O6qKU'rtU5M0D$g[_K,C*S[p?g[Y!]=^Bj0#A?6qP-r?D^M+,YV9<&e>3>4Q6$f<"p#(LK,FejrK,%I30/-e(O>NQ0V15sJt5ETdO>$DBep%#7A44@\W_tQ-mcnc2YNV'ZLZWemPU//\&)#RNB!VZ7WG.9;S_:H[4d%^MFa$K$A*aFIH\Z23E]li)U/1i)^\]dp=?m.AQfcnKf)t/&hZ`C8hiF3XsP^0R\@RJe.<:,:`qKPJ,k\3=Yoi_k-cSn7Gftl)d$8bU'JKPK*3[(12amZ$=[[*6AJu-Zgh%T"0"sXgB9BKb^T6bB9&BJV0&ZFd;Q90$6:BaKQ%mC&u.\8LL&Zbq&N5R^$'g9@/^P=_hnFq?FjCm\,p->\@7'fQ&RLjW.`#d>e5ZOG]N4'aGdId9oKeZ4CLXM]!'&MA"7@O,S$`4M-(84/bpPUpuJ6OW1[tJf$qbco-CE]9hoo\2JT$%e,Be;g[kt"a>FFn2eRc`-mBkgF]-Y_%]H,.f+d#`LcftsS03o<%_Tr3^hU61$%)>Y:%.\*'W`O-UjI7$7LOnL+\8TZSsWn.)Fbp5k0_(/`!gYC9IH6Ueajqbi)Z\]"YCGfrq4VcnAp&>BBeJXoS'l;2$JjjZ&sPOKFPK;oNLV6;p)m?A7,^S2Gi;&PXh:JhNJS;lIfG,iBf8^%(E>WaP4A/ZlOWW4!%IkH+/Ji,MuDegFIJ,],>Rmen`p2PrMtnhYJ*]VNY7N?gZd>+'CV^cbLO+]$>@'E1A"m_%#o(B_@KiFV9?P1C<)oro9S/U'Bh9""iY-rO6SlhU,/IN)Y'@$/4q+LB,FqVk["K&)T5#s1RVcEd5d&*+2VUD\ZBhlb(nR0nVp3-8mo]1!fm&I*9r\sJ[R+7Ub-fP1l4bpg`H4dTtt0D(N6)jQ_$4<^'(2;h5$%'oe]d3&=TOdNu8p-oCN-AHE9PD]XcsscNLqXrN"QIjioaW>-)%edthORU[>f`pl[2\h#)HhDE/akc3pq61RM=(n&\5(7STB>O`&kE#4n')ccT&#"SeBZ$$.W\ItbUjh#~> -endstream -endobj -283 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 282 0 R -/Annots 284 0 R ->> -endobj -284 0 obj -[ -285 0 R -287 0 R -288 0 R -290 0 R -292 0 R -294 0 R -295 0 R -] -endobj -285 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 505.14 668.561 540.12 658.561 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 286 0 R -/H /I ->> -endobj -287 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 657.561 132.22 647.561 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 286 0 R -/H /I ->> -endobj -288 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 191.92 596.122 298.56 586.122 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 289 0 R -/H /I ->> -endobj -290 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 161.11 484.244 231.35 474.244 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 291 0 R -/H /I ->> -endobj -292 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 526.45 407.919 549.78 397.919 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 293 0 R -/H /I ->> -endobj -294 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 120.0 396.919 139.45 386.919 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 293 0 R -/H /I ->> -endobj -295 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 314.494 374.919 352.814 364.919 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 296 0 R -/H /I ->> -endobj -297 0 obj -<< /Length 1193 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU39on$e&A@sB#e@$rV@5[Xa[%N[OqbSEF\cueZBk'eOMqYTmj9IZhb-P*88;^OG7.d!naLPnhTV)X\6HZDbT[/jN-js$V:t5AWd@@T\^Bsh[U-"N>K8WUkRX*sihhOX_@YQrKOHp>f0X;"Yj0D%uN$OG/XC2EqLqSrI5jr9[N.lG`ad=3UqTqdph'VI9W':1b&B[3sj%<\GQ\.*9q)ucRNg=VY^9Ld]UMUL9SS?u2=$k`h_J(806p@ESu:U#m9'\'\)(CTOsocUZB:7Y4&1fHB^X:B`<]K\[`&dTX=J^r_,fO-OpLNY<;U#1U5_g1OC_R]G]?clV3QC-&`2Nqo2GiXNTKVh):dfd?^##'flNn1ZI>Lqp.fN!*`pmfY&"k%BOP3s.:]bZ>"+hX]H.%<<%W4#p6SG):9eeHJ[ZePeb$#8,>0YRGC)NMeD1O6Ub<_1(tXB/`4KZ,'^r<5hB#Oq!^98JGpV&(]!*"[S0/U)$W2eIY$@-G.\)07uJ)L[&Bs15l711JJob84dFA*7&E2DbsAr2(OS6_ETg#-?(@=rOZ9Tf*osCJd,##-_*8R**:*1H4qm)Bk?sE^oB^MG#Z6#8QH`I?XV34sFt6^mYX#)H.3!b)MHV0@1D4I>(lU/pB,@o7E1YNn9YK%ac%>0r291Q%n`<&EYr@=V%CPb3-"n,8SQs$]A=W>=3ITc%PV'rsQ"+*Y'%JU%;p;`pQsj*0/$YDk<B*;$=c5k8]LGCr!~> -endstream -endobj -298 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 297 0 R ->> -endobj -299 0 obj -<< /Length 1682 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=,95iQE&AI=/#hXcH,[j*SeKPAX_<0,!U:sVfcn]/?Td?&"Op9V;pE_-.1Q(;*]?,a_*0TpQpJJY/?JI[B9m,Zlu?i^5!*0kPB8bqBD(!1Y*^2.0LdLt)C@HMH+hrga]8K-a;^Rf1RM`F?iNUjpGYK+MFK\oas:M@R[ai,1oX)'AhaJq*1jRmUeiXf!3RAl5`7jRH7\c\C>,kGRiYVMZ`3:Z!G(Ai<80%!BpVX5/FD!=qJ!ee9L'_r]^_]oZGdPl=#K]YH/5$)X3cX?X_NEL-`M:>-i+f+:D@.n>SQA%)?c0L>h\B/*WS=RZl%6,R6Of05:HNKdj+@0iWZTh5EKNB"s&YjB>dUIX6Z8/$G3lH+DH/XFmO43#B-`]ZB:EF^7PmqVFQXNPS-U/SsG)@hp`+HI9s@Yi)m7eY6Wn%71Z>P@d\3rg>L$eoQ3sRZ,BeZrC&KTph8\b@0>Mektu$j,URtYX]^Pm2>$R"k(^sJg/U0cFt/YKR3'2c71BW>=h&45U[A+%5DWDQg!q=(#fQg2q)HDpkDFh?CuneKP2Ud5tm83TZNt(S:i^Bd5WN:dMVg8$.A@4ks"[U!)-LK?q1l*rtst=B-pdbE?h-]M)g[n<"tpr&q-rRkOf:*\fntQGib*,Phpm.FU/-@QFd*'hN`e81'*#M_;i;/3ZTt,n`fgq^O(U+uGqc(I@i@D[V0P4>Ce(nm5C)*8<1[Hlp6tH\hP])#C0)c"?b`W.e)m%P=G:&5CXYbb7Xfo@2C-NO;&g&\b3&':Q+7CbrmWX#:&Tkne=*\te`Y%,p@P+'%BUAFpP6F=2n;:&=1@P7?Fg_2hcek"^I]rU5Nr#B#e.:m4V"2Feef876+fqg7Q!Y)+o$5+*,0=-`?ZL6OBd;.<7"Gh,,/M$^\sVqo,!3\T>[=LK68/Urq`F:+\bbfSo0VhIt>2;s&rb,k^T\tcAMe)8M]MLXr^1&'Gl7+gau;u>=)3s-#o"XC:S2<]6sB%Sj#htNVJ]M%K$%*YP%bZ4V26-)uU-bIM\m~> -endstream -endobj -300 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 299 0 R ->> -endobj -301 0 obj -<< /Length 1421 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%#>Ar7S'Roe[&GdRiD&ADbNSQ@_"^5:&Q,T8#]g^W"uGN(#]k=!#Mb0%Qg+<8I<\M(S#Q;1B\`s&YMJMu@dDu5=4OA-V9obSFP5DcG8uUsC?j2'PL$ZcSQQO@9/UfJS7F/>j)V'Ob2I^KF*.(E+S6OiV3!/N,SG.ACX]EVl.RHR39C2%qaD@tsJTe%WQH*LP&inB;pZ=b=L91hOWXI"1=Zo_5c^cnGjiF9"#^B5<%9pJWZ&qXe3M;LL_?%.$h7"b^l`Mk)EMa*u#nHV(L82K;M-!;Se_d>NB8/`TdfuSWf>KFkdr]PK%rmD7ln_bb1-t&]uFuc#&0F5($?i7ScG[GUm:\]u)U'^JlF`A-fLf#uedXQTAZljqBBWV5X9oM'#mT),C"RMSgEe50WXa4!tO21[ll7,Sp!(N[qqM#,Vk(";Dm"+lum)CEUW%ROG8BA$fqNPGLJ3AIb$am>L"^N^LDA$")F)$llJqm6r4/odne[rX;Jd1T,r>@W*2'ED/=^+O,fJQpBKkMC0#JqC>M8nNFR;T!6@HuFnTEljd6E1IDFkj\5ZGMTX)pSm'r#7n2__c'&&YSqOC1KpjG4aM$.%;!rg$N1_["'(^?j?Np86D2to/s4'fj.!2%Vl+tohF9<;r?@gTJ;)R^d?:%40E.;G"A6/RW6eu0#4gs;ocTU+a-,qoOs*kePqHg6Q^jWnG[PADDj#N%CO84@W^@KD7RDT@B!%2m/#dd\9[Q0eDoWk_(/eK28-TK0i$76Bck?Ef(H"jr>!+%8eY\6N9\D$I+kb&2*ZBKkAIf2]MOXk2/7eGXSuCOgb.Gb,Z/9S(Om'pdkBYqrmOkPhY6qS/-h)5U5Q9Gs"pB@*`;U!2pRh4oH.PACg-~> -endstream -endobj -302 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 301 0 R ->> -endobj -303 0 obj -<< /Length 1371 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%#bAQ>u']&X:KP[/$*h#kflH*Xg)5,e#n1G1X`hj`!AB?(<8HqW`]qd'E=0c:X&0N;QahrJnPPVSV/\_l;&<(S4:1lQ=cU`T2*si4\_?a'SO^NSC*cJ)_f"XB'"eS+tQYtu#;9m""EslT@3nLcc5&0Yl;Q0&8)o0$=Q=7CFOXZ=5-ZU.YC)WK-U=+5b;&ncE,+]j!t,IZI6-5E\GjKk>%qS.XP7H0+r(rAQC7%k*183M,?[.j(,g,1!4?Ek,fjMn4J-Vk26+>g"`u[B+3';#,R,F%c^[V]\_GdqjYhW^Y.DEL*tcYKHf8VEk*aDnP(?>KQ*FS=n1jDqY\Hro2Cs7*Z#,O@02g!%)^*a=@2_jiUkGE.1oJmZQ?+.`)U-\6qGa0ins8H+[]dt\I]0H!Ed=SbZnW(',WW^+V&ae+@^e3.(OadT)rSsIgHW1'GBh/c.ca[o%p28?[=Y,G(B3G/quSWY\M%<7OV8_dpWTD#SHMc8qH.'R%Q3=oaH#>O@4;WhfH([HIA`Gf.Lo&l`#X6"E"#-r(mX(jAb?p\M`QOVL&X'Cpq/kXW[s.0][2%G.o?^bmY!]^_'h9U;uPDNEr.((/3Bq+_Mlrj.(WN+F`=j@?!7dj/)DHg,3aOOWVmOIhi$G9[I\]j]H>5ThLmZA_:G8E)mO\]_-3[aSu;Q8SHo,_Q@*/`WV-ke#/]/b-VhMLcss,[KXC15mZ#js#-aFaMkn590]dXf?ZA+3t"8kI0Cm70001O\Ou&)]40Hp>47HQs*ZpJJ\oC*mV=`o3"ua=V!:\+[U!7QmjU);k_ojZ[?c>A!!ni/?A_auiPnIBQml,5tDmLYr<=iaI!0r=uu$qcH<\YT:?B1sGJMnsdsT<%^t07gMA?C=P2[8@#OeTZF(\rq@++:QJ$\M,V@XE\OM8&BqHk8oA/*HRo~> -endstream -endobj -304 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 303 0 R ->> -endobj -305 0 obj -<< /Length 1333 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU3997gc&AJ$CkU%6?[!_(Gm<1,h2FWKGD#k^cfKO7cg+-,5Q]gBOP5b3=+si6`);6oL?pP98^>XJ2T_rsj]6TI"K9:qZeUE7C_[JUtra?$F-&`E*,4)COB0EG5Wm(@:;bHM!M%gnGPmEL1u>d1dRp5B_J!-qOY/B]Z`gK,a"6-(5;68ho\6o.r9ZJ+a>?1jX$FtJQ9Wg.\k=lBUYgdAL'7@;q8h5SeP29j*&c8Z:j@r/(7Q=.Thgig$FS/gu/iIWW_JN0nYLE93qtnFcAX,*-l'$4!@K1KS4XW"Zjk#b-PAd!a9W[N9iACK7:2`#62fLm,l)?]S&KK"JM1X@$8pb^11:We;<5[sQ6#RbM,[>RoqX[@A5'RL.WC9*5`/,u["l"ZlS%:GUlZ!-=1kWjf.PEL+PY;D%&=)eaV=JeVBR$I:9s>DaMX87aeBV&"NZf>-"]9tXs2+oo4PYHOg#b*Mi6C2bHq7^.6q]2=6k_6+BX*E3sI\B3N[%@S,1?S+"S/E)mXA$BUs2%HmAa,+'XVI1QY1e],>P8&&3V*[5)?\=^1>+TFKT\i>EOYA^6+?4R+!Ki0;2=.qa;PgD\0msg"F(f2PT':3S"F+V&KE:f./*S[BY4;UPEh#>lk/Ua@&5bY:Ro~> -endstream -endobj -306 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 305 0 R -/Annots 307 0 R ->> -endobj -307 0 obj -[ -308 0 R -] -endobj -308 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 138.6 576.841 182.47 566.841 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 286 0 R -/H /I ->> -endobj -309 0 obj -<< /Length 1240 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK997OU&AIm?6l]lAg,6,Uk5k4j@oi_O5ucjZEq$MT)j/i#O6s*#s,NX0nYDXl5XMDI2'-CB5(E0[o6N-:G/ZT1,Mu_,-bd'X@*dFhlsX@fO\ZOK]Z&1n10\S6Rk4`ajPe7\l+\S^GEg`mn'McQ:Ga#,g2n)b%-SO!W6qO5=&)23:"n'0l\6Fi=R4?<7kXhpTUBE&[UmB1R56ltBHLC[O^Nth48(<1um\n5X=f+7_S:hT1)H!*,gb#5DSQKcNF`>Na7c\Y#l#s>mAW_8GLEa?Y6M.LEOU"lq6g#9k:Kr7MhXE.gbuC;)i#7*I(s6#ju7A(^-M'C9p[Ecc?e,8/tT`h`,">fR?Q3qfq(13EqD\*mS-'-:;>TXa[)0Fl+46VdAJhRg`Yc`1:qJFSVLK]sV/^^noo/.?BaPq:'tITV]),U+W2WLX$3r!F0IBI-VL]V\^UIui`2l@N'H+n<9Cd?5GY-sc#=M0hG6t$/_7Bt(NSB5>>\`ag*Jk9e^a*k/+]i=E0[DT=9/SMZoe+EE4#oI$>_Qf;7k0\WiU;X[6F-=(trTe%_b\0*'9&QJ`"@mlR*n!*[I8[(ko6&\a3cAUQn/:N,WS-8fMWC+i]Im[OUc6;]LK>$u"OEr`Cio8'';bH5:YX]8D!i>=ihuf5%8'@$+QPE#SA$]Y&It(Y*(86k<^c[006l%b3GhE'p]p0%R_lh?\9&Eo];oq@:mJ*qB$ri\.JP3++.NmjtX-g2#8WT@LUU"qkq8[hN/]lLJiu?WTA9iT1-"3iVZjc\=!RB6-=aEXFd7#ho_*T4@o?kY[ND7BJlE_?aR5Z'EnA9US$]_Us%jj^Reoq-%OIOoh`^3N-Lr9=aQCPE1pZ$WiTjN"X#"PO[&pP`:fF\Z,?n$jR%?6m)(tI;H&>eC8L**#%N"2^kmqC]~> -endstream -endobj -310 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 309 0 R -/Annots 311 0 R ->> -endobj -311 0 obj -[ -312 0 R -314 0 R -] -endobj -312 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 218.85 516.542 326.63 506.542 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 313 0 R -/H /I ->> -endobj -314 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 240.51 386.943 348.29 376.943 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 313 0 R -/H /I ->> -endobj -315 0 obj -<< /Length 1695 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau/YbAQ'(nF!Jf%Z0:<>4_]s_ZgF/!%D(SD1u;r,$7JgR0Z529@C+sI!g_)-"fbIQ4GipR@2lV5B`udMmLUQO^X[%1_uQ:e(C6pL'^)fYj@eqQo5='A$IihRICSom[H(VnnsJlAR8^\ru-f&6'TuXlAP07RlOZri`6&cm9i8-rH[ka,"G`5,Pu"cH_/EteqdL*;F8JlTfujX`>q`)?IAsejKr"PMRF:I!MZkOP3B0R15,^LQ'0qcRo=XcknJDd`'Q[fDLIU>j@Vi-uD&Gj-"%j0%WYQ`3GVo@i`%SkmZN2J_q+8P"-9"pl8aP>WY2f1^uDkh1EFGXV!:[*jYnP?.^L^^@ls8OqYYgN*aY+-OcBm`p5h&T3-T_tem1pT\o?5D/Rre;iI`5!#.Re1,SdWe/g:M*D@^aMU3^!)Ms@FW@lNp>e4cfBn`#RVFXs+Y\fdM/r*Ek=&[+hjVDVF4_aL:3=N?6I)s/GLU1W5IE]aTmFY#fE-\-Y.KrK-'8VTdm:eP(oiSimC%g@sT?7J/'UG=gLAP7Eoj,C,`[uQC8ok3)I)8?"UmPCRl%5BY?J<=OtT+,G\KsH<0R&ojfW?VMek9AL0mJI=\:d%R(&BS,;*X,?ttj$[^Lp$.B$8e/)\Z(#ca'8h,n1kpil7dcE!8gU=$KL`r5pMFBY&]<)(I*Wf\;jgTW,XIdnpQu(70ML.@5)ZjJ"IBmhB;af-^b%2Y/9@!B2e[lMo4?L6D,`!Y_&4*'HL!qkXr8_.o_Lb!XZHE1o=:R%@?/0-BU_gUrmQ)IMh;'".:rSF8^,"P!V9>7Sd/1oQNLHeh.l5(2#k]s'$sLDS=6(%;Z(kKs7O:%%g>"Z#l~> -endstream -endobj -316 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 315 0 R -/Annots 317 0 R ->> -endobj -317 0 obj -[ -318 0 R -] -endobj -318 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 385.406 679.14 412.066 669.14 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 319 0 R -/H /I ->> -endobj -320 0 obj -<< /Length 1396 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU395iQE&AJ$CBROlP\-tsB\*H\WbhHZ<NaN'Um:CUDba\:";:ZOFS`Idn3-9Aq/7C!9jQTJ`9E="`Hl)ns3:9W_R-9"A['ChVc)(VfcJIC%)u82,cVNp-B-f66_@C%5&F2/]J21Bu%CqANAoFNfSJ^\mnJO3C(cerOr!O-RdkTH(%:GH=D^!R@M@RZ$+?Afbq?94Dlf";4-.24mO;rk0$&\%lpj?dc\oobYW_ap#eM>L9PYQUijJ7rS7LKXb?#$@6c"Nk.0nElVgE`94X76a!Qr=H$00Nr&D:Ka1(Q/<-!#cC/Ra&F=AZj7h2>$m/u?HrLR*#u3Bba3cI9McQF`D;/AT-pX=QW\k!FYQeS1s-9O0>E;M=))XsMTs,Q8$giRe_!-/gVsf:\s90[.m3=]Huo,?&"aDt'*,6(neuJ&qa?W<,Xj.WD3MGlWUAtri_@Z=jtY$MbhMJ"IG45B-KtAEakHG7SKB15MQK%rq0L9LThE221c-/8SXkUlnRo_08.>[t8Zhh,lb&?R<$%CQR-3VSGq_5I%;YV4E,;ab$jWl$1N=Aqc;UdDiERE,fJRW39nJ$aJ3_CeYaIhHUEh0u:-BTs:VgM:'N&eb/p_2-QS0dZm7(n(Ro/=F4'U`t[EK+n6GqSuZIe&=De1/n4aM9XdjS4CSU0HV>Q+?)]NNM6D^Wph]_'N>)Q"oV%)PkEPoH%oMq!_.93kno#GRnR,tH7mATPj.;8:[V#M*i#BrDeG2PLJea@bPc[E1'Ga`h%BYnC1T*'%WmR4Zuc&V7aDsAlD=d"#VqTB4!^TOg@OccVm33fZgAi!F&S`2p55t9qcPp;U1imjgL.W^[(dSo9!d@+R76SSJiO`Z[ZR/f%q%;BngXH/$3XY$e<7\6rrF_ -endstream -endobj -321 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 320 0 R ->> -endobj -322 0 obj -<< /Length 1582 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%$hf#8L&:Vr4_*2*_]au!L+,4ZsPBsfg\@jLZ&04#c;n-.Yd,C)F#19F_%!FDS+'kkP>bJMd*^N1`)G[R;BD'ILt7B^S?kH8ZsHXpG>)hG/8&D!korpAC-&?dEQP]k67E7X2k\1_9?rF!b)3J\L93'OrEZos78Dc3A*c^7$2B#2njb!tQC>UcA+W0B%PbuSt!^6i9PTB=[h\QgV,T'XK7m*d`HU^Sq*ilr86/@Y/\l8tOI#FK`c&qZHPjEem)VT\'6.;:+,9*+mURa/Y^49&2@AAt]N,5VsAOr[D^:H8MT#0'kJZD3]P7]#A]-]+"\E"DIoD/OF3Lgl5t&][hjX$[!MZj6IEkYrS,H,1]u^s\#rpAS5i^<*FY%]A>IaL-E5W?mIhCr))'jIaQe$:+DImM^[#Fo<4H3$g>9FWFm]%kB*9fJb83,iBf_EVPN&8\=olH,FBT,Z_U_D\c[VWk@Va\dn;004R'+#Nl=jjLm17jq9@\1NPa0iuYGl?S$'iahl3c3!\iRCqGVVM-W![p[60>Q-sW^0\'KY#NO]:D[Dju#`W[+qfPVICo9S5G<<`/\..g6CgfNIaPniq]`:"45t4?q/0>%42#.$LBIoMJZ<`K0Z$fucKNk5V(H\j$YsBj@$ci^9(M!CSH!nC&d46bdHVJk.O4K\>EBiIC:gGk'V1>M!lo65N7OSMj:,]Cl9Z\bXd5*PIaEp5he5AondE-XA7f@Y__?ZF$]jI8m[)Vg;5,o*`WT)YL+(Z3iG.QbCBWN![>j"920n\j]uVlU5+Vcl;Ln"=g;:hIjOi@[_:Rg(`JW_07i8r"3ZI-b662*Fq0idm$8O`PA60<5Xq@^iNa+=1t5]b-a1Q^r@O4Z_kcmi&beKL -endstream -endobj -323 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 322 0 R ->> -endobj -324 0 obj -<< /Length 1021 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0B;/b/B&:WeD7(c>QlM2DI+g#uk[8#B3VFB2@n6j&YBH^eUBW8$2pK\C:4)G%@dY*:$cM>)acemEi$[No03YkOYX^Kt[etrZf`?/3tMFija!hL-CXm+B6TlnVM@eM8fMb%T(RD`7"m[&3^)NuArL5<.2iLc%TpmacESnW6lQ]Xg-*[^EZT)BDdpI5Ma7KV6V!Zl66f%^VH@nAqH2)X]>a$;bcl3UMti6i6GU5/M8`V#P;9e\K^Q.RR(0XKnRLCL"mb_A2MmB6VJ6>lmN1\Y78QVD5+NKfErQ*Tu-DPta&OD*ekD0D%p.TfApNnV1.(0254l/STO`g_F40/eXReJgg;PNS8B7nh<--*?q3ZFCZl<=?((?&?s<2Jc`Z1q?nW\`:O/EBI6(.eA('J;XqrgK%G=iu)PipV09K_jcC,QR[Y3EV6aDpPl4r]+q1cnjb.@DbdX^P$PngLr_<^D1P40fF75R,!+ApTo,\3N8t2toDB1*"UT=\iB_EmS6n(lTLQf'EL,u[.c\0]bMKnCIF!uYDBT9#pSV!`]7fKO6"s;\[%4;k=;Yh2^*),>9T2q_qksV7X@,d:7P:)ceqrb!]^e^JA(]0n/8I5f_f`#'Jbtno*PuAfbI*/-nIV*sc%^C+=8Q@-XhG=lCCqC.N4N$UAX(+L#grC'$`m9^,t_*h>%V,nhOj)l> -endstream -endobj -325 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 324 0 R -/Annots 326 0 R ->> -endobj -326 0 obj -[ -327 0 R -] -endobj -327 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 200.54 156.341 244.42 146.341 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 328 0 R -/H /I ->> -endobj -329 0 obj -<< /Length 1778 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasa1bAQ>un=Hg[F)_7@MY3:(h*ZD@"^7RSU'>q"K*_V/.D!S=j+MOGk3rY"hh>3I,D9$,Y;J2k!7*!0DD3%'g%TAr2#HJq;KiDn4auOIBXp]SB_?bAP%VSb/$(u&HdG`+Y$Bc"5R%<8rO6n61]X^3Np`h%5clM6l0rQ4CA+]e*>M1ZBftK4<,\CkM[4Xm*]&l%9kul'>:c0]"pPm--KB+8`oY-R6i]5QN$=gOa$)m!GP3D@/Sdl?L^e\rD-H\nu\EB(MnZBIurBJ;gA^dI*4Vl:+SQr[KdW@,5",^PUX2.RDL^o#mo)ja5;(=eoIQbdsSq4&#u`\ZYZaD5oOIV/J9cZm%YHa0TdU.F\OG-LLdG"A*cVa`&p$%0's1Rn@^r^t)()Qb%ndM!A&O"=E7\;^AG<=.:1Sb;ucZ2DN))k))1_aIg:?Y[A1j3W$">,pM6u!n!>k58gC+H>E'LQ_\Drg3Q!WD9$^Ep4(Vm/$@fh.r\u[:3oU8\/TXn)g+!3Jo'YhHBo5tDN*[H/oUqb@`MoMP#-:%2i?rIE;Y:QPUL0aVP619!&ccVUb)@g!(l.D9n]-'RPeWJo*BiK5s59hc:%?TVg=M*PE&MMPnNM).j/=-J==eu0M!m)9^ogar^kP.\fKb3G-)gPPpWAHI37`KeSp?mj>*[lO%qO9d65F?P,$RXbA-IR!*05_7'/"o66s3Si/Y\[oC.!<")p33*-7JO%7Jj(6]s`PoW;_!/gHT*L7oOXa63#f0FDIH63Gi6dFdJsM4Nm13*+e]\`:=W[peo^2FLf$Eu1hhKXRjrQZk6RZ)3(MFobA"tVl$L`ti*Y+5kHWl%U_[XM]hR$\qH2T($FQ`5q?e=H]W7\,?<@)`A?_ZTt.,P'er-#c( -endstream -endobj -330 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 329 0 R -/Annots 331 0 R ->> -endobj -331 0 obj -[ -332 0 R -333 0 R -335 0 R -] -endobj -332 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 237.19 687.0 281.07 677.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 328 0 R -/H /I ->> -endobj -333 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 404.65 666.0 459.09 656.0 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 334 0 R -/H /I ->> -endobj -335 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 331.6 295.777 401.86 285.777 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 336 0 R -/H /I ->> -endobj -337 0 obj -<< /Length 1415 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GasIh95iQE&AJ$C#ek*`e;QqTH8M*Y]=S6PLBY9Z/^ApUBh,*Q3L#ab?0m(08>O1d,#p=)E/'nWHlVGCAo[d'44GRZZT0XCkHpnB$UeMIuC8mr]n"i-o>WIkjk&4'7G=q`>K927PCP@@No!M$['(cuTn]2k<9!V9kuja')oSk3]dF0GBOmTTA-1QZp38/QFu+9>$(f6=bP83!Z-[U(23XA+:NW&f+pE63cU4pIXS;m+gpFYV7=WVnR4pOJsdp4R:KnG9TTG6.IC6HK=hDa'7k%UIAWqaWm=D9f.XLKrrcf4($P[%D"rp[BN;&?:-RZACcMuPEm\j<*l,e0E^]kPAdY83[!B.MOTI_8etE1Nr*G"fME,=*%lQ"R*IV>:/2X?)ZeW*1>'pA+1jFH>2DM6LN#KqJlIlc#5/.cGd1*o`nU7&Te!ia97e&L[B@TFUpi5"`m=K6!N>:ig=*C@?"WouE]d%A,uGWDs5QTt-#VL:Bg!6-EG/U]L2?2M73u*I*Kb92gobNGqtf$2gX)h)L2(g)^pb_#o7Uua'RC3rn1=5,3s9mMXuG85qFN.+o*"AP1a/FNc''SDRpMg-J:\6Dn=4JG&O-Z+Z&[7Q"=LVH&(XZb0QAomBXs`q?a]4,X3WGll@$5I87'Tq+o+GO45;Z3Ac#"JH_TaQ>8@C\A&c>Ah[@qhiq?g(R!/db%#l8^lpfY%5P4*uj(L2M(_An;H@RI%/eZJ[n_cTK6M[K^#f(/4LJ/oX4Aj=$eEgCNV6lXp7U#86$0G`&jV0`R,[PCXG%394s%E:"2J26*tMW)';U/DPs17(:"qSVC99p:rn?#Q0iAUMt-^DDY(+:]r6^1koMUI[b<#"P0GBXoc9thcRHUAZ?Nn1dcZ.Z"eXW7k#:$a,@bEY1t)g5ME?&F][Zn=Nbk7"4Lhc3P^i$1Rj7uKt).^^^@)m9HJ*61q.R?hiD/BIog%#!>t%jdK#_jFC,l#5KH+gt,[@d)F*V3CL>6Y#=U1(_*JXqIRAg?1@?qh:9uPF3h_Q[oC@a?PnHhL5Y08^$rfEguR56cB"j0R;u2s9&T+D@^JQZM3>?^o$@rdrX,N]qiW3I\;hGGh43F'O)uI,8sOf;OKCLQbU0NOckpTsU\7@g3",Ge_bs_7QuO(*^Ii:*Zh(-R](W2Z~> -endstream -endobj -338 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 337 0 R -/Annots 339 0 R ->> -endobj -339 0 obj -[ -340 0 R -] -endobj -340 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 138.6 222.176 207.77 212.176 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 341 0 R -/H /I ->> -endobj -342 0 obj -<< /Length 895 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%b9lldX&;KZQ'tVq`-49T9-uBL>Zp"'2::W5F-q(M3&nh7me&g[cG;6st>lh3Y6"776HM$W_lZ@.B73N<&#c4RjK[pN_,5;g>BK$eZMA(QhHh;A^<1,Aacp\psDjL6PHX:R4XNdg:AuX*pca0)spZf:ImC"X\F`21OZ?Is7kSHk+6?oaGIhZ'_/6!_&WaS%*]CesF]5aThA)*aQ>IGF_ah4V?>1`XRC+L-sR*%VDYSWXGQKu]Jg!83sH9s>6rVG\e$dLhl#^0]DL5?$R$fE+2#kQ+?+QKQ4DE#.L)"P[0Rtkk[W!cOMn(VTCOT7k(%*nGKG?EWIhHu5_@0DtuA5l5G'7c%@PEBiM-J3*rET'[LLSTj*Ehbj!e)[ul3j9jmA>d=\!]\/.Da.^8],56?c&9:RZSL%E-cXaY@.pN.@W@0#%X,aq*8$`#=8n2jN&OB=PE*p0F>if2Pa#+"+FVFrl#kXX\-PC5L#rH,$+/eoA]45nW,s7h)rZ-.24;#'=[SaOehPQ!28U8XZPX4][,+ph -endstream -endobj -343 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 342 0 R ->> -endobj -344 0 obj -<< /Length 1837 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4>Ar7S'RnB30`4fR;-B$mVqXQH[(ll^^eeNfW!\KLBUbJ9V%i;B)"uiWM3N6596Q4:5eqG/T$)=14S8ODc'sdA!rL&GXLC.f@X!G@^A>_T9Nl$J',3ooou#e\l=nSEgVmq@#:N`VjITL`H`RRrC\@MH@fd``#N?jFRt)*%PN@g]JdKb+HQ$MD8UQtlYmCHKX34&HSp=NZ7S3\UrtmJ_f<%ZelMtpX2-C^_Z1`uqN2jKB_NkBgp=g@F%hJ9A4Voh@k[B2rHAAMRN;%[LCSQIGF3[l:_].B/pr$)'Yd?p1)"#AI[,p6!l7o6):qtil^HsR(qc?gaXA_)3oBWe"qAKcAnR`)G'Qb)@/rfbWTKo2%h00EF3eKH*[;./U263Z+8U1L,jVK9V%3SE\&&?7L!aA)/4D^Sb0(amC#N/2u'>N3$G&h1&)YGE$1l;/9;7Rdotb9--"Ig^Gt@+S[R^i+F@kI,*D@=j)E`\sRfU=p5*.*To$qtimWauWl]Q&Z>DX(?Rsn!9/\0(6@sq96V//b?VYk-o9,XW\".Ha*O@"qr@48M4le1*s!q8I&q>X'#Po!"l#"n&!]$ddoWg&MNW?0CiR*nPX.N2t*`eV.\gpd*D?!2EgIs.am,V@tul,cfAFu;Ntd*RT7i%4b0qNJo)7KEcUi9b.I\>V`(pB_J%E#qG49>L."1$VHJsgcK=_jo"0Ie&I6ii4#DPp.V]Y^$"j8-[7e)WQ=EBotsJa_oOn7':@^M7YrpH%o1bck-(a6BjTQOHhNft#c\3K;F"jF@lbf=q1"N-5)!P/RLfo-T<2;7:jF2$Wf7+%*+Xd@Aj93:_^f=cG3)PO/`eWmKHrV^#S[6bfu+kOO#ePe]"Cl[BSeeJV=MBR0Gd\t:g_RD>#hA)tK:HA -endstream -endobj -345 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 344 0 R ->> -endobj -346 0 obj -<< /Length 2418 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat$:?#Sa]niab)^caM?Z--2pA&.i+j+k(VI?dAVl^30p6CQ=4g7t4Gh)Vf4K(HOQ/\@3o^chrUR!<6Kn3j="`hJ5;3/eULu`PhUcImh_g4@X:,J+#"kGb9do3"A6")3l4)lEG!uPG70GSHOpEPrd8ONuh-hfL>DYkrb&H&*QF8=W*+Olu7mlp3.?jhmCV3;S9dWauG\#9F2LUeTmino+6qA@rc8TlNKJA1rr7A&n\3*BsN*/1iep9f6U]-i8/kd*iK!$A25g;B9Xeouklh[O10@c(>"V-%Ed*Znmd4Va4Tek\BL<=rY4l&r"0;.&jmk+/LF>ZdCJ<:=FXgelW<(Z*BNXlDZ!jF##?7=e[^:?H']_\4G/+B4i!gFm1r'"neiVHeB<%=EA&RQ20U\^HD*]b'&NVl"`MVY:V_hk`/8a9'\]TA9jVaHAe@I,BCUp)s;q>uad[4X*b#7RQiC2T$!3!3?'$mc':'1G^\%'->8#MN$bl5[pelNP#Yp+#eRFVFkT@uO`(B'GdQfc[N=ZUlQ!)=_S'%.dNn%cQt7+C(ER820<)%3nUUCO2bQ`*#_'eA#+4l7"AfO"qp,jN'1"%=F.L^b&EQkI#Q6c9P5E)+m+!`k:0pPmU9/\X2bCB5&?I0J.Z53j)DBLdP$ZqtoTT42>\dkWCCD.<4i(WYS^E*W#?La&^2&\4;5.iZYAja9]T=(6\_V``1g7$MVUWLTZQ>*jA;A>p_a*[*-dq#c"aRhJ$Sh?Y1?rfWd?B?qO-_4rEjBk-eH4ra;2uP6f!,gGlEQL?)[+%rP>h)f#GgIdcg27rqD7&.P:PRT@4>#A%`MKF(^Zh&[Y6@L&P16Jhe#/u!XkHkh+24@3&sX_`G;gN`a@@>]O)L)GX-6!om8l_i:]C?2gr?mjc)G/h]dtrtDGCHW1:^[h=H7im@D;f$:!Ij"pKu[[A_?_]!4o9@jl-\1Is0rO"6R8:7,Q[Vjf&C3[.)n=O/i(bpJI^&DNVuB1>t9$/>=Sl+5ndF5JSar(%Xf1+mJ[r$Y<3OP;A"f!PDlC`]bQB)PgF74F(`$-),#mqLM%I09)n55'IaRs+RJh(KTpH?P1pEkYn"(]"[q[2Vu)P/M(qpXs>;AP09'p6IfeV7VUr)JU&kY'ohsqM29HWqqBG7af@!rn?"+f69h](doX0'6EAEk\[eZj7\e"T@e)2UE'rCC'7FI+OpunL53>B38j@cQI/M&b70rEJm`iqVO$mC`8/!32enVq_PTf7+GA6;m=2Vitn$Z3K.G)A4P*u!'f6S^+k[P!9fh4mU5YuaUe#+IA)(dme_456m,[ptt(dKn#,/gEL.u@`]<_I$h>"b[ol5B1N?)D1$k9&1GGWi'@M\;:S3XMS\%SuqYH9"\XSO+4@9g7#,$;G)2#lEC81R_$"95c`#C*puEE?*@)^:sKhr.AXl@%R#h8M[@L]b5-]hu307bBd,Ue5'FKWd!`G0)+N2F!L#1o*k9`)rIG5#N>/g5S?^P$A$VI.t_`*~> -endstream -endobj -347 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 346 0 R ->> -endobj -348 0 obj -<< /Length 1287 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK968iG&AII3E-.4)O^[7gLXR<59RZ+JP>9Y,PQOU1&n?eq#r8q:PQ0JC,ml>#;Jr&IGfBh:p4_<5+'7osPH,Yfi=M-m>G`(kgJ"j7_]SS=Jp]6D3Jmn+/U-'Lq>4E1IGnIp0LRY9baYeIP)E4;R49i%cee4'E5t-.K-bbX4^he&5t"O?n\Nao`_@!fm`gsHlX?i3^W<4Vqoh&n8gu7#[Xr6uWd;!o"k%;VjQ!p'*VEPKCM!ak/sia&R@I0?kNZ@aK[jPpm%0I*V".Vm*XgOJ;M]1P.e-n?\2fqWe?4L2+e_;d%6eOo:DXSJ<*US\:RS=_YogD_s6oCJ$mHq;dIpf3aLYI=jYK5qniI$E*J@kr@.h;`*R^:GIL<8Na^AI8/rQ3fQ)paH[i*Lg3tTZU0=!)XQDnC?l8Dioq3-*D*:c#<0:uuo5*s)6/aOtk(ISdp+5(J)8R`<6h(4i<%p3]GYkrbhO@0>k0n/Fd+a??S*\CAhulr"cW7)U]"7*KlBmqLZlG-MMT#]13j&Nh9Z'dbpSHTedK$4A(HqsAT>ar1kP6oQ2/eIo+T?9$_qtbiM$;'9WnNg1CSkj%AeMLpcK0]2m=G'Q6?(KcB`e66!^N,4U3\%(-3=%7-P9s:&Y=g"@?"VHmCL1frIdL3cgZi!Kpr#2s$A+J]#`mY#=JZG!r?(e3VkKo5>P%KT8kAW)LkHI2j)ieH2blkr1PB++7t`Tb?UI>:0Z76)_AA@]+K8X6X,q,md);oCuE`.rU25ZFY+Bpgr(l-T%Tca-nkZ_-SS(FRnVUh6QbeOYB*ViF!D:'0eH_\f^TM'Ur9BA:H;K$gir(qPQMpAj>5-K6'A\Vge_ggiGO~> -endstream -endobj -349 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 348 0 R ->> -endobj -350 0 obj -<< /Length 1932 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=,>Ar:F'RnB3Yk$41gFrhZSR/,KU37V.XZH?df`u=LM,fV)g:6B\ec3?kYQ;fn@dZW_YM@VrH5O:lC=3B^@lFg?YWiZB4';BnqXNb^Uq(h^@qR"G/$g(6n&1/W%@j&=b0s+=!S'IWEQR_*h0ItG?:+EgQtRq@gjJ\b!2dSOGkrP0L50nM?&8_>h\6jq+WH?/fCDjJNNsuc7k9[OMkG1#"N1)IM$9g#;E*_WT;UbbZN(@jN.i:h9V_@q(9du0`pbs;VHK%gX9f'J1^FSX`M=L#%QJqDQ10lAo/r*".XL`+e9d7eXSSE;OB9UktG_J2)gpn#jb'Ck64$61ua6,PqHE^t6piP]r,KM>WYklk^"LL+[m-o,CHpR&'o"4h\M=UhDP9m;^s&;Y-(@Sq1KSe.s3,XM2/l**M$^Jf#9eUTdFl!ugfJmaO"(fep]0A%(I\p0nQTnrh_J`(0qS:*>DcnU0;IflLjN(0lAW5mQC-1o99?p,p?'"0lBk[05"U@?Wq``F>dttiOb>%'."A&"G(l`l-C4Krb""QA(^?\MY\,!kb"#m/-3J*fJf[VDb1%<;Y#&rU'rX0r;gFU>-[1#Uke?tg3,U;X#KMZ3U7&pqn6#7:1D[aRdj&YZW`p$%!+QhLiJ\Qd2>#oV8h\JC;UCp/UV_R:ipKe%c*$/?Q34)l#Q<=>&:$3+Ee0mccDNK?*i[$G6l*WGZq88;*U="Wq]&$Rcr%3_DDGFKHCnTjHjB3g$bNS.CiWYojuJ%_OCWS.6ng5T.eJ+)^r:V'^LC#2^H#722$l(:=erB-oNbE+A)^YP^:^R&0rLlZ:A!G=%@U/gTk(MoSM3-@njYtcR(/AIHi97P.k)'Vs^!*E2S&F;Qch!#`_,E$Gn0:Wh$C@]&,8pCuW!@l23US@VB`3!/SfGlRC.+d(G6_;m[ENeChnQUkgKQ/\?8[^Wo'-)XH[X0HbKi>RBerQQo)H4:fuU.1;;``Ar]CDcR/)ibHKo+'Q78c^`2^LS;V#GBFKPKeG>684@*PdXW73gZLA(A@U%.+&`%W7!Nj:8a+jV;VLhfDUTN-7cSL8DhpW.MtCJT_E*#.1JRt2K(F[p,%:NJ1sbYaXlI??7DDd% -endstream -endobj -351 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 350 0 R ->> -endobj -352 0 obj -<< /Length 2292 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=-997gc&AIV:E;,N$A4)9LSk0hC%@TX[/S^r63!\03enem=Of7)PKDtV*6qSH@PW*7W"J"uj3V.5s<.je2HH+\Q?'d?-:okmB(_f`$]9!2u#S#n7gBD`/IN)Ni9b2rF($tmiH^^&&LN2rk/&@B!7"&5@-<$$9F$*OhcMHqXph/@!crHZYsa"?cn_e$bq4Cpp]Y!]\_MZELR[s&fMJaFi2-7M:.:p4sL@qO-[G?VpgjY7dA\"SR"-_?^7$XitK,tn(?h')bb!,N[Q-O\JQRQ3503e@ZDT(]:Zqs+T;ecouD$qY*h,"e.B%VZ-@_'5H!uU;Pt:S;pH!1'D7UAH\^gTn't*k:J&NLKcj=NT3kf*f:nXQgSV=!\<7`7O4gPU>.krMLV,L+Nm4\Sm?Mchq#cqPdRRfrejU>ljj^7r@j\-nGUekL#?#L`Y/M(#W$]9@KsSnjc5_L<\>$dKAu/C'DmC5gf-)I<0^b4EY"G65q5-3Hm]<$Sr!9ZJ;skP%^N@>8&7hdWWQ=gi^JD.Ba_0sGrjVoR$ub7?1UFX2MW+(J:HCc_^HW7dD/CCm0"VJ!V559A;I,nFk,=j-60+nCLs2G8\Cs<1lK0bH7?4d?t(]mBsS?Y+?a=&[JQHK$Y=>1_?Cs(U+Z7=N.&[5<*i8r.%Y7aKlYnX'DiAu-f,]ci!_lLqnt(k5OuMu)aXWgCkO]0>.'L#8@oBj61sQ4Y$0Uo?em9DDi2H5J95hj[&hT&)](ZCmTJms&[WOP].!b@sn%N5F5cVBQWi_E%UK!!PA`s?/W!0\d"o;*4:rg"@nl,m2lj1\,EK3]^K>aM55Z-tX?9huGo;I?KZh/KM)8!EhjJ*>*R<%1L]CFgqN'!5lT<<*LarAC$Ojb:p/`oAU`jti'WnY4t21/s6bYJ,u5A(VEj;qo\./;hfF@^S$$+q"aDJ.R_Od7t+7FiSA[&tHC90iMkqn[5ZR*7NaS0j<`f4sP`QYmY-5$o&B9-,R37p7F#Ap]4$ln%TD:IjeToV?G)':gV]67lS!2oE(9brqjaH>B';Z+UeL&Bqr__AZn(,38-21D;OT.rV-r1HDU(`H_A60rS_1bSEebKebQ\286HRZTVmd$s=?6,gsc&jk,JKR>Dn]U2c&3KfW0N;MBc=LjlUaa&l]ZX89f+jdR%O4E"9J#'P,%oo/Plq\R+WP#j(d5cB'd=e@"!]`AQfe-:g^dBESq?urri'(ipc`R_\VsNDQ!RNA'jba]:SA@K2N)4`YBQNM&h+mU23PE(tqY=rRtG-Q-F8Y\%:5>@MVZi3P0c^Y.aks-5Uf7XZtW[^dE$=MsgJ8^)tVq@'9^D_9oiql6AfGF;96J)55Q>#Fd@Y@r96qakWni*dB9W3Q8YEL6?ZX/tS_RG["isP>4,`Boa1!5(P%pp\^J)5R=oNFoZ4"2>SsY]uI7FX0;@a@X;SEJ -endstream -endobj -353 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 352 0 R -/Annots 354 0 R ->> -endobj -354 0 obj -[ -355 0 R -] -endobj -355 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 340.168 516.68 409.338 506.68 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 341 0 R -/H /I ->> -endobj -356 0 obj -<< /Length 1802 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatlQbAQ>un=Hg;p6#PL(l?b#.=0W8)`.`ld)J<]FUtiJ>A@`s9@7a2UAnOlUr8Bift0Zb"Q0\Kn#-(tIeE1uB46=BfmJ2_bViP]/C8n*/As+q%5:DlfmGmYrFT'7VR`8R-UE*#o.+/s#Q9'4qdVPafo[YM7OJnF/@OW6DNrq[P`Ufm_d0OWooio';//X^RGoo7?_dgY`4S'o\LO*bhn.q-4$R^O&5E[S_95QH][XnT[8eh+.'i:9a8[>-.(0o+H!(@cX9h1L[JTol#VeWu7a5Pu+*btF?"Gqk$rOCFIBO6@&.%8trg7:n(Guh+.^bkJlP+3tmhgnu8Y'3e1\5Xc0,`qm9n85[UJ,nl9\QT_1#7+1,i_\2FLGD0_3GI)+8F@uV?PO!j@Coh<%PEH"*7u"6@S=rVBc7t8T)[#7+nEVr["Yna%do:_B5JpbMpQ=J(\-j>DTT>7]/0im'f%&lMH?DHj[<62aI.6IM\6FK_1H.lVs3%R[VkCQS%(N_"*ZfcXK3EDUeq)EJa4VlOBfnj^I$5GOCGsR+9E**pLU2hTsXL,?E$iP6NPPt!f1jK%M7i]ZG-(F.h.4l`X9*#l.GiIEAPfd?^5&YO6@B@qB/HsFc5Kaf4!n$e+mWuMWmtD/U^i>XQu"4VMBIQB'G+?+!.[NB+7ED):L%k.$0SQg79*P<1?qeX-;$c_(D_6]bD+mL4"Utd5`Qk2e%XGqEOW),ISaafFEFP]bp9kY3p:jNud!098c[^co(qGhoEd./8MB2LZd'TAAA>moYZoRKMiMVS]<"N.'ZDPY8Vj]4-EL+dSoO`m7i#2re%3W7?ia2II!94hkB;RtfZl/Qr5IP(6KVpdR*ZPpGcWoT;nUDF1Zh/[Sl"6'Z"CA3@I)=NG%^f_PJ$F09q5)$^!Rkf%bA$L/(hOq3^q=O6FSaF%>O8Kh_jl1@W.ohG$DjuLWFTXbY4F<9$N#]_kQ[GZ('Z26T"Fb#JKJH@t#%uSK-Y=,=]0A'#Tk"=+/W1.G#73+C9`X-k!/ZR7pQ7bZ>;*GnAEnUggO:N\VCt5DLQ=o(Nm";,Of%6I%J)XP76LL;sH\X.sRCC]$qB4?ulGO2M`Nl"tU_g[`p>/ZW^=8mgcZVAYT5eYqnIX0=h4'Q`T/ti"GBk<]X(2VO%iiia5?Wjeg2:R?-Qf5N/_%m>)m-*-4(k"H`WRKg99:-tQ*C[sj"u?^%S"rDRf,=Y!db`Q*e`c>9if"&,\!`3kC;Y,u0#9njlITaO=)08.*"$7e.1U*neDDFe-uo6lKhR($AO-mc@2(\SjU3d(G$"2cf,a@FgjGhV\1(P:G',W2gZ8HDG+r]nAT]8uq[`rc>HN-k7*3HAohs(r1u!0q91NpPhe]rbM9iFPG)ks%=5V3UYK5rp(_l;.9i9Ani,.>p@?GLoI`r<,KDlAI[jbn0u)Y7?gaX"`Hhu2c[e8O5$MCmEqO/7rrUPQL>l<6ALL58?QU#`2g`!lIUPg$Lf`03c3,;*J!JC0_(`p7j7G!K@aS`~> -endstream -endobj -357 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 356 0 R -/Annots 358 0 R ->> -endobj -358 0 obj -[ -359 0 R -] -endobj -359 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 240.6 477.24 309.77 467.24 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 341 0 R -/H /I ->> -endobj -360 0 obj -<< /Length 1377 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D998*k%)1n+(jhYRk\@2S+53HUBfj-(:nX32RN=Sr-?7YB;Hoa[T\09N3g)'tEL`G+MHiQ>MpWW*tE7[!](,h8oV!u"MZU^g1mYq=fm::ES+tVJ!(?5+On-(G+7T*AO$+!$N:=^^C8*fNe&3lK$m1/qt0,T(R<]*5CC1*=@KV6Q?^UlnR8d#hD;#lMc53ef>bQ#&u=!;'8eJ$&na\@844%GiGHc>C$asmm8;C-;Hf+U>DXhR6q1P^OH#TcU<&"8HRk^W>o.c=S/c_JPPMR@V'tKpQ$bnq8pa@B=]mX=BtrZ"0o7@=8Um=n%HR?G-f(_T$t28&#.XjEQ>ClB(TS_=%$>5+)PWH>lIF)FI5KHf-QTIcFrmqVQOa^!Lk]>/Jn]MEWA3R5CpUS?`:Pb4N1%3rdj?N0Z-T")43^W=Mc77uo2pWLp1C^[=VfaYGe8F\$W!q;5PrWHhW%N^O.uCIlUM_ko([41,"[HC[/LBg2rAbC%$u-7mgC:"XaiMH0h&4?_rAiY=f<@hQK(6NVEc3./899QrJHo(.1tQi:4KPe!S_5Ko8G3eUKbJu?S+MnAZC`BfY$EHi3F/0.>rm<3!- -endstream -endobj -361 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 360 0 R ->> -endobj -362 0 obj -<< /Length 1722 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%$997gc&AIV:&:CGnG.8`q(L=D'Utm3qH737p&dJfI7GDQ&dA:BW]g_sJ7hTB2[\QXV$YRERk"3kFn!A5/O3GEmEh2=Sc?6R>fQ#l**?7J_$lD9mmjp9XbOj\=kGtreFM/nCLp:R4k)cdi7-=6h]>1O&Vn^<6j_DB<2k5B#:^@O\P`R(_)jJ>$;+f>1rn+D3TSS7'G*,Boi)A^qd2eIG5[46WYZ?@BU+h=BZcpCH+d0JdH+k&K,<'65q61YBm-iOs.#PBuWEf&%Me]2_D?5)od@e&l_RT8KYEHQ*gmEKe+Z!*.Zg<^+8rb*eoV23+6UYS$1@?J4&!,5V+X0c`3N[*g.T$g&(22CY7EI>_mUTR-"T;!4?0MJf,-"rEORf.:_nulp'6];Qdo=$uZLLX&lU+Ol/:$?g*]:Q)[VcQQ7<^o[0*#Ujl-6*,.:\jtoSUK!!C0UiqhYN/aS//,$c)"&ZUnQP@ef^Y`5[!!QT)b-9DZTcR-:oWN\Lb0[t.PD$3KT!^WW/=1.5R8*X).UB:?.K%b(gSAg&&htlQ`@,%>O:NoQX3_s,d([g&sk@a2e>On&5h'FgA8bJGRc.S%DjTY:W;;'6YD1]6c[A>o2+&Y*XkOYYaV+kj>A9m#>\Zn0*30f?F=D.L@#q*`iA!%P+/E]g*/5!E2[Vqa6cZ=##..NdBnG+_cHo.TZZ@^,OTbD'qjE5lbMO7s6pR8W0b8f:tKQQU6Ge@Q2HPXc8eaqE#5a(To%]h2F/]S/R^s-/XXkLk])QJGAZG_T4qpa=um-9L$;]VTsB&3)%6Z_Ql2qI)N>@C2TD4/Jgc485ASFIJipl9'RHX4O%jP=-6KaJb.F^rRHj[Q=KW@hal7Gt?B$-lc%OX^lha$&-qdkYSSh6VhV@\f+Y2DQg?=OR\jbl"r$l>aHRj#B92P\9O%U*"P>FGcl;j!&WpnJ'4%DD+K030MD\")n3e\T!mUH+QtYObU52KSD2$KCpI7+'7410l7U^:VS#)?c0Ktm4po+=R,+4[U)C1XDC@=&BSL6,m=)CcHA:t(?4%2MT67:4Y$O[Eke]=C9%GS<\EgrS+2ZL1X3Bka_p'RmOW<[N?KbFN`rGLn%kg@t/X[=O"l`ZD7?SbS[q7m[o1#;8b>.,Qib$lP5tu*p/C$`,bYV#Xf7_A%rM?(o=r_<5(sY(q,sfncr4CtJO^#ZL"AfW38:%,s]5l._'Ll0(P"rf7V#+$k4mXB"WS^>8TZ5SFHV2_m@fMO$%9Lo[KJhB81L+S\WjB:*g+]c3VJ;a"X\b1;qF,UR=bGZVol$GQ\@S44mE0>kYF\tfQI:B"0(8dWrktf7%O"q<,cOtZYYr?kh#26eIb>ZL!j`l!(OtX;E:#S&QF8RucaO.n(&c;50[a95QR[&rou*b)!=_!p%FTakM,()~> -endstream -endobj -363 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 362 0 R -/Annots 364 0 R ->> -endobj -364 0 obj -[ -365 0 R -] -endobj -365 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 154.932 500.661 209.372 490.661 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A 334 0 R -/H /I ->> -endobj -366 0 obj -<< /Length 2066 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GasIi997gc&AIV:E-#\OaG/+>JaFMA+p$+ZJYE?hW-b1Kg*S:JNZR^/62u:%iaYNIb$nd1k7]iqIPVrRq-e^GmSg\(!tq]dqn$6Y\-l@=r.V1*)SnOl8=6U3Vq']!mpE9T`^rk@ebsq.t]e"3+tY_I47?q'CM=ku#6'HWWL/a]&$efsl/&VRn=RID-b!u7sZs/aedcUc1#d#]HrH[mhJ0n-at4goPDlVJ4Ronbi[Y`[\RjT9Ord,t5ISgU36jhY:`"2i$fT9kf<_&rejW%Ob-^t95O"_JC'>"D(DH@9Hd#kqb4F5>n?YYg_qV/>mX#I521rKU(q'["q#-Ph9L`F'\3ZA,e9U<"b)]4,V7-E!3`f5]Y1m3HfdI-#8^@(,%)cH9,AkQ7i2$7G@`fS15I0.V9JFh'brgf:9_8`^E#_g:G_<=gG\H]ok`Se27/p4kq$3]k_`;`/FXWlL1_/b1)Y;g"p5%uq1+9]:H./TFQ%A%&fpi27!i7>Xf>cb;1d5Cl[q56(=bcOWfour>K[r/]m=jA4Z2UdeO73b:SfKUAn2#n.8i`l'c^ALc+%ZZ`TRpFO_L5HZBSk6c[-qZfV8GHA#12NHXA_I#O:JJ_'At[4RtF,iU%mn0ri;N&h.b`,csR$qBsN1=bh$Nfm[[l)!^s0P[$nNO]2q_T>(WL9q`=Y>K6b,od%WdK?`_9);l&TF78neKb5J="LXCAj>X<,SoNBr2U)hK=Z#Lk-3*VuP$ic$[p8Qup^IpGa^ucpIqB:9U$8#4J898n31HZ\qX\*Kl?)$Q?"EE0F5%[im;0QDXX&78@<'C$+lH_^V<2c2Bf2S7Kdj_VYGjU0Li)^?FW;apl*4/*Xr,PK=RN9EieSCKtDn>ab>]-?K)8FQh3dL(IAh$@k7UBQ\D_;_8Uus+3[)At9S`cH?K1hJ@o4)m+m"HcJKu0g67AO773-1r_2ST#UTNW!C'Z6]?E;;DON:iI"o82VZCtgY"jh-o'Y/Y/be&+OZtKj@=GWk3I<=q2A647U1$u?d\(g)dE!+``^^>Pp^I8]p+kf)\Rp#I;1;p.4e"0(XAZq<-Bu9ZFZO.m$?(jWC79u@V(lqs!S=J'W?]Uf@PS_/K7DZifI^2:9U-[L[oOq;!fj,/hTbrP\l4M*aKUEAJE\W45c(d3GYb2o!Y5;7AHH@@GBYK`fSXecI013rCIQ,bC`C4l+c.F8UtX([Q8I&c*"\TUU_AcUcj9G\+=6i4,MQ&pYlebh65?l2)es.H05f7n9InG'-.c)dY<.?_*t>[7LBWN+Y-fr1O_MqocT>/n?n=EGKi$SC7P;><3^,f;hi*c_nj5O8>t%P]?bRbMOQ6e=F"EmV%E)iDXiSC&n5o:%-d&1fFX-./$;';[30rNk?_R,AP/^RqIlX2jYrTK"M]4g_o_]f_G@0I4ZSWd28IAJifFFS)ZISsBcas^'Dd&%hJs9+>U[T^GD7cg&%5?-2o1tYu,kfN[ouB?Xh:>,kPXbmlqB,5&O!=~> -endstream -endobj -367 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 366 0 R ->> -endobj -368 0 obj -<< /Length 1408 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=+9lK&M&A@sB#^^8`A/U5g/8:"`]#?;K*XWVSXkNq0;76HsoTJhn6.,_HPXoL:KoXV-(VULEK5ZL^n]0JJrc8i$0oD`3Z\bHp-Ac4'T0ru,K\J(JBbp*IkjP!5oLdS=X4ui$c;R\12cMOCn-AgNI6;JRVjou&6ri6bl8oP6;KRH]dBhD\NqI_gn`bYcRT8,KI)E>c2E-5/n^-t7&65Iu$rjS=+BcVCqqL>,B_VCmN@^LN@!sn9aNTFfr/D;3BIWf.V[UKS/a#c`3mq1o/7n5X+L$O%'Y2S+j8/O%Ya#jg)sjH`d>@i?[`&gFm-q>1N%$$e(Wc1X5fbKBVI!>Ri>*iu?P;5F6F#c_g79O`Fmr_hWMep3_@PTjkQ>4nY7-I^qm#\Zlae0uCKOih@>_)It2;7p,a!b=3+VPe[]]^/=K3%8g8:u;nr<2r"/nXbDl>g@c)\PI'B%"h`b#FJnh!FerXU'^-:!;aondR,K[j18NX@?XmH/W=B\.usC4Yau2k6>IDg;j=$gKmNMT.?d(7UauVLS[!H0H^AK$gtf%MM%^7"*9WJ,-5nI_8E^*3[":(h)i!YOFV0X%%)k'J]Y1`*.884'KW*Gl=E7q\`a(,eL!\e&;^;sY\&qDacs(N9M(P!`eTl];K_eiVrf=<,aiuYQn!;gs3g)-!Vl-[ct'YlBq1r8mduuL.X_OOp\4O:._r3@3]*.g>K9%iUs)[j0rgUdW9ZBF:Vt\@*0o3!@?.IkhdRN0COql-&=:]9IokA@+XWG1`M"oeA.9Jeo()0N_o'lYT=&&c:Vph^_r:/T>(Z&.CfS4X)qbu4-Xl`I&5\a%S/$ijY9k+,`Z&'&-^(,2\s#R(A%-EY!4ShjBhul0A,"M06XeZ9%a$&)IAH]Ec]DnRQ;`9c=F7'LZX0@@66#%0Ft24Ailg6L+LF^9okt'kX`-q*f</W\Duh`Nm12%W7h*Zq7$f11plieB1ApeM&Z/47rOdQB'_V.!t.3FVPa8Y^*`_&:50(GT[Xk"-!:!Rf`J2@~> -endstream -endobj -369 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 368 0 R ->> -endobj -370 0 obj -<< /Length 3038 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%&D/\IE&cSA/@I0=kJV;F_jJMm[=59KNTIl%u/W0.nTP`C`,E"b!X>`<7^R*@W3CBngB9=ip*g+@.iK0S'oA0#_it(Au$q.=EhVAV:rRSZK:anU"PcZL4UG)Dr[c\C&>q=fI1Z4AIs*PjJ69$(q/h?+p).=a+VaReGU9gTE!kr=tlIQ'P@.2mW.6ogH'eg/Q'C,O4I2o,f@*bEeiCSfB"'5pDK.cFWBaQ#Yt#Oaks3;TFOklJ-$YNDGulocRdo[LXErR!/Q[4&)E-0JdH[Ko\%;p9h>]U9_1baPM&7!JS"gW&lA"t@,6fe5.U-XlfAEp\h0`;7h2]LbWN@mG@),p@=o4l=`5`scDP($Pj(0C^0_GhqmHWcDU4MQ1"-`BCJV%K^5&fmdfUQAeV_86][WJ7ed@k8&nfS3)[#,Osplgcn!sH$PFXAA]$MG#U5e"5aXC&_>RBL3W_*=?rCSrp,-+C#Gg#k:11C8*^YfLn@q\IWhaGQh_nVKT\LQ1$^-?po`qP>j7L\\nGnR=pGC:(]G7:F2)(`uO;pL?AN"&:2;Q,a2PQENJ,*a)DZ(Yon(Yui?0YH$/T]f-q.Kb;YO_*4`ai>?1FHD::6Dp)DmO[a09f>GlL55R"h?]cs")ftk)Mt(LhN%]S=a4Rr,S4W.[?1UjZ7O!mLJ'=V6rVeKaR)^Clb6q_6QWC\W1IgniCV@FUC>1mqLXC3#-.BS[)7\l;UDD+dV#nC/HH9>^I#L"0\idS2_1O7Jo?_XtEe;MIleSWnHLGZAfJ1Y6DMaAjRil9(:hdD*)n4\M5%poRe]Tn>XeS[I"p^pXT:qM53r$[@'S)1Q;\&X0LqtTAWOUGUa)^7&H_;8O"PKQS">se%VF=ofB]a8X_VGNqiij%jl]]eP#X_;@I8S957X+4>Ki:mRk#K^2$s';L]>[6AVm)YgaagXn#UPCar%r%6Bgj;sGc3`>Xo,d]RE=+T54(F%oJW@a%9pQ*k@80p)D,Y)*FN9Vg`aY>P5!qr>=3UUu-up-K`F,'?=3J@9AlWeU'QWKMZnQJ2Z;7;[?UI\a5n#@M`KkAjg8qj!U;--O#]+`?$>`HA2\0gH>CbO/c>,GJ%@hphFYi9&iSnjp^ES3luAhT0a*NNjahMf?$=(EM$@r?.lRn96FYd0O46\VOuAb3Him1+AB-%@k_`OmiYt(5nj,-J/#[CkRT3R2Q'i2-V9'4EUemcH9'rW:m[DD6;*V.AThAO1.ni>hQhKg*G8C:9X\m2CA179Ta+`Y/m4K\(9;8b__.'SrSIS?Z"\qhY\6',p>;&=9-ZNKuiXEJaL&88m@WaMV>P93<3q'Nt8LIY^P7n@#mIdp2OjNCZS-%3lQF!.rn*-M[$3qb[]3m$jXaJkhSF.)"$='rfi5uJ=L^"MMWpU$rE-Qqf\@kQE]F'/8l!)0?f!6hBKD:c2X"?R72;A%@QfaS460Z@W4+)patUn2U?O%\>k-ZbR%k`R,<<(K>6l34[V^'7#\s9kTEZ57/QBi+BP1T7;/\qkDHTp;>k3?J$t3PdRD[T:hD/'^E[\Vnq^_([7%+aIbYNueAMW-'Uu4@q00IG30RrXOiQ,4NnUZ4*77qqclTP?Cb#mH6Ur']=.XDo*^%>"i(Nb0c:,j=gu2Q/,N6=B#A,(58'Tea[=iXlBWIIIV%oiSTA#,OkZh]8b-sS>A;OdJKYJ12n\uS6j(9N.WG7O4aj\A`sRF#",Lfbq0=mt6s/Rqnod)65A..PH7V[i^R!8dLYIL_"KSuJL]C1JdgHGSnC\+4gOK9_:J3C&$V28h?.&b*!@8`8<&qfJU]B]9KlO1t!5cE%c+>K#aBd^036Q)\k^/o:Q_*o1qh!];A-ZLT#=.Sa5\p)4D2gQXj4M+=ihVrPl$ucT/8GR,/P]0!(U1t:HWOtL/(ksYdg'_.p9KfU$uHIW@o35nqHDSVJhjgD/]I%Jn[:/Mhkr;ma4C,rBXs3MEJdbbZ+>.Nj[l]NUsa3S\/=A?Yt0N74=H&b4ud!I/eTc$iC5 -endstream -endobj -371 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 370 0 R ->> -endobj -372 0 obj -<< /Length 1130 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0C9on!^&A@ZcU0J&"*THO@C+h)[V=mrH>>nN&$q(O2c%ft4m=2<,6=R`b/ZTVQf[t+ShRp,6O0c[`.<(@RShjR[4D-fBNi.?I6/5P*_S[LX1YXtJL=>B>O4,j(7UpZ'I,J>ECZpfA@lFfp2]R5c3T$C\QSSmg@.7;$O^s@ul1a>Glj"("kB'm,`D3;RE9O`;rL_/Kai=qqB?n*M7eW;f=e8W)S8(tkoV^'R;,5pQ8.\%^0lpD!fFH.4@.Eq&0EMs%+p)5/V?@`_qZmH.*cqunH)b`]r,18MQ<>]nEsu=R`A%D.c/Z-UKgu.eUNGfE/A.g"?Z'm%.H\3P&N#.X*4hMiq'c,;/:4_^t,(Zf@hG2llW[qg8C-=[jC>gZ)Bk.9J4r.'%]/VN&a^XPn@hF"E@hc -endstream -endobj -373 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 372 0 R ->> -endobj -374 0 obj -<< /Length 2043 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4968iG&AJ$CE-/?JZ"ZD?=54jcR:_oEg:ujO_"hPn$(Q/g]0)0=(p$f]b_S?\p7-(kTleSIiR_Gb?pbND48*:OMi@k]$O$<7!c1:SZqrB>X`sC*u:8LD?k6XQGp?eQURXTP2orR?TY2sK[5I8]6GZ`fRDr8d)b@\2qIFNumhT)3m72@7cEQ2f1.B?&,`t;GPaOt2D8X*e8OjA[(]D7YW]]ID,GGD!F9Tks>1b/DWdd\o4>T$-Y5:qa:pMQS1C"0N.1tAqD(=*Y"5;dXu`O9@T4`@5o$[^'YjqC!prc1XK^F]J#0l1RIC_Ar1!=*sUL*%/H-Ur4ui1_W60-s(i;ldA;BLBbfTQXeRS]LIn;D_5++d5ohkDe7IBrVa<>>rN4D-m7Oh)K@9fgYJ8DXH$<:hcGe!-UEJIfh7inc%+,>SJ:>A=0Rj-/'RlMo1NAad%:fPd3/!uCOYJEDN=AJC4E2XSi>^2]nIR?J#J%9*`90Ucho;3M:i*R.j=3G:**`U*RO+SG#G-GCt=t2cfGqlK(UO$CidqJO-D`6QkRUomuM>7SU#R8P*Q,@9DMCQ??h!:^3f_\P-"&<2Zje5m;d``I!r5]U=t`-HQBdIaMTL)]87oWk*SpNr;e^ZAFfj"X?fEK`3_pcU]6,gZPt#A**R%WQ!1l_Le'U)Dk)!pDLs_5,cVt+0J7XchXSi2R3b$d4H@GRnSkRIl7FhPYpJ3;iQ-_'S1s_1!2S;,8[!>3He;=n^1eIgID*Tcb6*_J^$66pM*IG&(I3lL'@!tjq]I286N`G'0a0)R)e(#bM/'S/:mA/k2Dd=s`hu>[&4YHlOR(Ee^VkL$Acu@4sAf[69Z&o,kD;*8$PM8AEqLRml+!.'al'tLj'dkLDA3B4/GtG7s&VjP+KV:R@%or),83E@kTLId(f4)&4O%,6+18[Vg,YsAB6&uiZo_Da06u)J\Krh5aHKY?c8eX)0>aou@D7sQWcIOaT1n[WB&?%2Mt%R$9l--N,`%rEGcNB8?*<5O9SeqUeVQ!^0;&P9tl6PQQ-i@9BP;K;3NgrH#>Il&)ukr`e<;$/Uh8JA^1TqY1`IgM3`f]3bF.U$_H(=L8GI[9GNDJ*"ut0kiK8HKue+#5u2mplbt4S:(<=dAiqaZJKKL_?+nj@+>d3s#Lj5_fBD-C'IOh7sUNc;[cLb:&5\GpRk.h+QQ\77eA0GrpI6;kL\=b`D<2?b<$to!A>Lop]\>FnFsW@Dd)]JCmgD[)/:"(2&/AlbuVh*Ta8un`iVn)fA[7t(sqXH\U.MXMeic*L(^t(gs?TW]?pa($6-p<32]fH5m?PcdNi7g,:Z^+[P7.qm@*6;"#^%1HLX*4s73hn6mB-WOWaU:dSonRinXP"ZJQFi]aF$FjE1A9`N<#:GET53J,KU2T@'?%%a~> -endstream -endobj -375 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 374 0 R ->> -endobj -376 0 obj -<< /Length 1996 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4h/D%+&:`#5@J$BFO>%=?@4>mpXD83N5Tb_!gVZ,VZ:%o3,uGEA]%O=fI4'K"Ub(7;L*-]h7,Aa%]AN/'lK[ec[.$6>/QUUVDm?qF(EWMM$Qfo'35I$4(TV0"1WVu'bF6Ln_qeblk]Uc!glZoHKni.$0gIYD)[r`lNg:480$dH?cHInT*r*iaBr=>e`D"eg\o0LNV5fqp)L[$nW$knr]Bb.pAY.TP?_$Sgs_rnJ(mFq-u/\@'`%h^C0\_"qURfclb",Y!WO@O^duWQ?dQ'lD!&d0Vn/BSf&/P3Y;]gK/f!C@EV?P//6KmlK/1%i)!W]"6$7DE,V6%2ndgFihG1dmDO$/EJ;r-Z^[q"AEkfqIFf/-STq[-["3Rg_i]28O"Uu;I.d$Hse;Pn>_9#o*3PU8^LqH-DqQAop+8.4N#O(i_)?2kcBpaPZA$u6,q'e$d:'Y:@Dfb#kOt1\3hnQ"[q0jjbke*926uf0D*#TEE_\DlOC1"tkrR>EgjHbRHWBl?g$hjH0_V5!Xk2I:0j'-OH_Z!'=b>ZFiI=ET0dX3]7JbDoBrG%GY2-<=])653]F3*()#G^_TDQKjq"0."R@IECF(I5hUc]G1)8UqH"o<;5'/=so`(7i"3cBK);JK;Y\9I<"SkXkGQU)lsl5sC#0C%"=ailq''TQka]l^;qWA2F>fIFCXJmWafnC;@r@e.UaXiAc!^M/mPrTJ&Arp'#T,6_8^_>b9T]P6ONrg!V]@13ai?"P?Rg5CYEki/c_0W+J*@$9fHSZ*.AS'>,"pjEq`((;m7=FeG.5e@(5J%J1QT4KHf&?Fnsg"sLkc<=Q]!V.8.uo\OJ,O)J\RB![Fq#+eQFLJT;70^>*^%d\5TLB8&,?&k*lLaEh(`!Z]l1-(_Yah)"%Ve)[8N$F;R']=J^R%U^rFrj`oGLSb3GDp1u.f6\\X7?%0*_%M%?Tp.FIdZ*H9sA8>._E@bC&hujoi[LAm?4kA5Dk8G6#02haR0HeW@@*%c.Xfn:+VG1V[S@!T3%5?PjH5jY3fJrV!0q[CP2l,,groU1p9@?n3'_@9'+gRB^B<#5#gmm"cm'nKhq9Xd74dq_tb_ZGApXJ.qs&5[eoCGVX4.=WA6$1R1-YppX$4&$("cH(^@o@-4hI(_(L,kL%!S812=_lpIR\bNa)Z[$Csk\4MiM+]Cf!M&n)e?;mL%==QQ@G^a<]?42#& -endstream -endobj -377 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 376 0 R ->> -endobj -378 0 obj -<< /Length 1051 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!kr9lJ`N&A@ZcXIP*2%,NY@2[tn,k/'SLdrq\V<`->W)I0ULlZcRuos^c1dNs21]-_jc%Y7jupbJ\Vi&lH&:*"?%W[&;(P_7K`iJY9HjZ8#a`ONTW'^bG^YK037C5PXi(0ft4N4(V@nc[2`P$9P6+6eV2h/4hF?e#9uK2@i_n*:rbN&/S3e6$pl)8#tl&_@<=Gt?8e".$&#+3guM%-:59WHqVjWM!_*;\c*L(Ofo5/o5j0&+Fut^@kb6eZ"++gXis^m1[g$$7>[J5PMQ8Q`$4D4SFO20]%l8^4ZUGtTgEdSg4CAo=6gErDt'XHuiep-ZVPrN%>'<`r;^gUL5YFI8WJ=rks>"?!bfb`eW9e8L5mGGqE_P51("'JCL5Q9FiX)3CT8Qa"[T_agSS]V-r\@*kO3[(f8WHB\hm[@C:].#+YGX.2"_lsWVO1=6B4.J.i3oCYnmD#TMf&23bUq_&5m5k~> -endstream -endobj -379 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 378 0 R ->> -endobj -380 0 obj -<< /Length 962 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0Ba_oie&A@rkGU_QmTg_j)7A/lg5]c.kJ8]R=0G\4-dGfs];ZD0Ec(Yn$.LHi>4g9oH*]U;6nE^YdKI\GE0LQms;t+QC7lT?6Aj5j?&-5n&P8ZK(P+/.8-A@WAAa!*C@Vtba(M=,dN@^+4N-u5YGhY21d`T6U[0g=]Z+24^EJT6>g+JoU.[gqd0\V3K6^9LN[8HmN(nKoUt*P3=BOQk=uY!ASN'7V-`sEF*@p]K/b7lu)d#0"[Ul>CcTnLP]=BP4YO9KM'C;^bQ[RI4AC'^JQjH',3N@#.t_K_E!)=Cg_r!>-IgD!g7o;hV@SYESb/fj@Z\(;qR+#*lrXR$PiL6na'ap_+3'^&pP3+@lR][?:60&Kd\I`0=$TgUmbTi^(t7\MOi?,[X%)E>TfVJagQ=+N/g9.;E5Z^=T1VL!PJV>4q_Ae@Yq$lGBm`uYkm#P15#R2r:9$`-7U6&(!E;DtbKC;/BKP[i@5hPs./NN]geZdu"0Zf@chaGs#HgA\NFUut1W"G<5&)7A8YVeksfZd\AY^\m5=D]ST>CN6u_J)@E#RP3:TMq(=Z!l&'r`rueRU=IT?h=c^HF$""g[6'$,2q6EtPK<)mb+kCh^j_u>2tI[ne[#kaD/qu?9Rd'por)C~> -endstream -endobj -381 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 380 0 R ->> -endobj -382 0 obj -<< /Length 1306 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm;95iQE&AJ$Cki`!UbGQD>VM>6-6Z3-U>;$%]VJY`nPUk-QqX7'KPXsJ:jBWH#'$XsYTB7(j?T+sG?aC#(!2IeI"f()b7F:t*#iSgP5R\8>D9D(Gp#2Wc/M$K*4iX`)kP@1lceET=:SQ]04@FZhRr;C-EIn4rrjC+>=uFTrH_I7`i[F(VCm7.CWulaM,Qe@2@S/mZ,7%D)R/'a?kcjotqQfWBqh2X+lFc&ndT)#`_ecF@1V?:PrEpX0JRJ+2Qoqm]oLXB-IWgbmAt`ON$:o>9YJ&m8]b1Z[gm8gle](d1eVb/[p$(_d?BP7o@CQE(K%'l"agCQ)g9Crbn7fUeO'bJ3&qJGShM3(BRt;q(@$(%ASo\3PUC/"Y17`=&@R(-D8G,mZ/+t;AAmO-BP>G$6mSWR]+[.m]dYN4q[:`@emPuqFdl:4)7WXh&:ZMD_/\A.$(7p3e-OaPL*F>3hL=imr9#Z_O(>042?LtJU@`V$ALV]ch#4O;ncZrA:YGr/(1l26,nGe+3G@9$&\M[Dom$"q;\4Z+=&OMsB#%E8'B\UH-hY5rDplN>1iiC"eQAb6qN.E5trtXDJ31Ws*RVP.RmcSE36WFMcT:DXSWq.F[,[k9mP9A-k9\]6N(,'_.k+Nb_N)E"Vi[m6$[LnLR&5Q*ed]SEm/[]pX"n0_t/*[f"o7h9p-(Jq9FYiQ%_)!)4VqXo3?,oueidU7:4nhHd+Knakn`IdT&?snuN*8cs?T`]1'1*[d0>+e#YW18<`ZU#8*Gf"=\sDWkpni"&!);\%Cn$DNh/)i6rmHQAj<;JbkEY&;),nL+RTA=,rER8NQJc]pRWN=^;WHHkeF0b5b\<<)Gj=A'@@Oe8dl&O92=:0JV4Dt&?k=&>F>N0DnphO9CEgn02$uFNIA&j+4\[W/(1D>I[YoEDQ2"K(J@:Y\6%9?drB%gEX2Vfu@2d:p6=WNJuHCQS!;@`d.Wnfl`f?:fm)$L.TQ8_^0)irKmS@L%6!%$ud32obf=dHWrG8`X[a!8C!qPpGS>LSl!TruP;`jYnbHs*$K;&U;Mh(ZaZ1^:sIdc4Wc:ii7)1-G5WTB.o,+N=!,V'SDe9kJ"[OF6%terSrk2)D2TYS5"&\LR,qFY\S -endstream -endobj -383 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 382 0 R ->> -endobj -384 0 obj -<< /Length 1368 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0C95iiK&AJ$CW2D\,="ER<6S8DNM\bNMJC.$&=ND+d'.]2KP"M8DqN@Ri%V7`Q*eFAH8Wbgd]P!heMpG`C%g@F?Xd_c;m2!bNe0"6XW"63WoMObQ47@GdkR79=lNclWR-8J3L2jiAA[T"Z%X2+c^=Kf/9+E$WC=f:fWbXrRm?Z:@Rq4%HPY+La+jN8EDqPY6Obk_5m*7ohr4#?BnE/Z5k2+.jBXG]W9;pR9+Ee=+^A6aGVkTlQ--C=qE'p!9m),\%'=Tid*K4/\(LHg=G[?"5;H1?=dD0"%[S;dqAf`bK*WAA5NCSbX*mhLjYF+!M9SEb"p$S=lpNG*+W)2EE?:7OfCp.+h!,=`6X!RNe)^6KZg%l#G#lu6G].>.BY^u^d'acfOV&Ag[-+T9B=j(R2iW-bRa:QXX%W>Vamk:D;!J?eN-8uX<>/u>Ln\DSsi'HT>[_&;fZ3E0G*;0]R"I[[D0uU^EcK(Ko4ngC(3Ttm\`KNj@V/6Fq6Qu"4tP5DJ@tqdAT'M`SHCm=/7!a6=$A\alKF@4@m*9H6/=U:4!`G*L8a]*2Q-@L"K7bqamBiJi@1Ugf.:Tm\X.R^*-sO5X\B8NS2033eet@d1JCUR90j9(;M&1"`!(N\eDM%Glahpr9UDoP5AEd++e2!OMDFd:[UaV2bFeMEmcij-:*7H-G8oRqB\cM1_";l_F(c4r.P1KN01&eR(Hap4rI)^r(^)pEFLhts'VjRB5?G1c1"qls;hs53"VNe1E<8+HYV@W<2n<"tWVVWG8*,8ife[Q,DQJ/IDDPg&XcgKPBZ&Ti,1<0,Pm,cs/qsPWq]pd*3b2LtSX2MHQhO5VZ(>16$%;0pa@c*VpZ;;$pc1mQ#WJ/M!1nn=d_tA41+hkPfcnF\:[g!FV8IF$^W@_]8oMT$cA1^QStfRK7FA^-T_br[p4L#9\,[\"9X6uZB6:'*j7.?d]H*FFF/g.u3GgOQjX5Z3LPM#)j&`N3e2`050BO$IERILY*8&qqVjBcEC"6"iAK%u;Up`M=Mk=U;2oE6[q5VEaCDCb/a'Q+IBCW>5X^1?2@A7Z%k:tk^^=nb -endstream -endobj -385 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 384 0 R ->> -endobj -386 0 obj -<< /Length 1432 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasap>EA&-&:WeD7(g<-kCbhhCrJcf9qkNid&D+0Q$tF1'82%O+:eGc5a*`g>7+u=<`L!N5W+V-P0uoO0&?$[R;/8I-)MRn(\5D4"B*:st_lGN%W]=sRA]bA7Z65Z:\aA`0LN>1j_4#,J\TYJ-PR+S$Em@-pN`*((=hL8T.(9*G%^)Nclg.Ss,MC=$I\']7JWJbhZ%W04!1u`00#`B!QD1J+ln><]&Z8,CY^eqCAs"iqP0R2bF)SAtUg8.j,&2[Mn5cc>1T0;-kWK(E8WTOLo5E%De-a3V=Hq%<\73T1`UZ\RhIP/s!k4<(DcEQe/+Ai;]>eAL:f5g+WtM4m4[7f!29Z[ldc9Lp^OtQGmRS!Meq9`2WdHi*`4h,+.&QIWe6"9_8!5!iX725[,K>S0l#Wd`!"'QXDUjPY`0rPG[jG$NdLj,GFoBJh/M"+pScjqf$^+ImETuU,6Ln&6$ERZ@)mcADI_.qeeg/dYe.(n>i3H6T0f3]n"94=*.1tiOE'B.jE#s*$;Sce,j1qf?c!4$dQfRgN3F0mi`eP;2\k/cO9E[rLqO39@"t+`tj!I="GDu9&&7dEA_7*Dt9/R48=:qU#SlqAe=mOpD6JcYu^VVBOQ1rS&`]]uA4@%)il*"V\a-BIWZY#JQ?;F/.S1X\C8rW)93a"f2(E:,6p:rL.<3@gG_&Q&Iu_PCe["Q[XT65?o*R2#hiKPF5KDnMVG[3;&AuURID+#ICbtd(j8r[[>`QjVN%/ENl[")G5Sr$?AEHghgQP:P@B!Vi9all7uj0ZEWcbh/Z3M2mmseA^8R7H@N2mbX!BbG6$UpT5cn`Vdqat>SCGpN=;S?q([[tm$Slgo!t;gEd)_gI^OBFiXQZ+9m]>pU&[Pho>(->Ee*"Pj6Q,06:jAIbgSCUs1SdD/pMl51XNu1d/huZ"k6'gdNKU9`E\g+KQ-.=YZ"r`7p@>Iu.KD?N`k\b9FMM,R)sR=&,+QVWdU)8#q_BO%@*,\t$U.B`A=qu(KT!SjfnS+qPig2A*OW54,9+T2gmU=02~> -endstream -endobj -387 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 386 0 R ->> -endobj -388 0 obj -<< /Length 963 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!#[bAs(+']&X:Zufmu'hJ\,D5PEK]B]m;V@1?YKU.B<6sBV=Ku"n9H._Y]j,J3?50g]?8)b[oI=<@?q%,=nKI[9q.g-j`6bpah!PUoEo-alBn72DcL8%B6*Os/(%lm'2=Dqap,GA[g#C_9_RgDRcEf?oQG)V)nAagOk5!a=ia1iS(X!8eOER#G(B4[7u/L&sC%:p^5j1ADoA0?:3M^^QNA;`R7hB6CqGNU,50PT&WeBD;QE"iVOc!:(e50T4.82\+BFuBPTbB]1'o;.>[tI-h)cBpbFr;XF44f\O4\5#c.IAPm8)A%1Dp'un>E*ImQrVZR+I=f%d,n=Z6fT)I*(M6n>L:uae(;is`.D)+,W=@oYS'#D$YchLc$\2?Es1Zo0O(tSoLFer8qtNf+LH20l,9KVYrc%T'p@UGl6p.b),Kp+Sq0R_"ps7T$P)_)cLEg!ga'X`OpUYp0UHTMJnaEE!P(4)hM:b.F4UV=JV7K%DM%-8&rJ-H+Y?_7m%T?)qu7A.1[KdC*)H$RH(Dglh"#E@:*InEa,fN8i3':dV3#';EF$LMSgUjhOc(B'alO_##jNC*clhOSB_':"REqR`du1,(V.ub?@.S*K#;4O7=ZVQ4np$[!&YkILp-,V7+EbEiR9-ce%=A0j)->hg,N\^6&j3gr"V_5QW5t\GEpc#gW1hS;8.`j2E/3lem=WpPHtc;FDbO4>Yc*Euj9S#9@]Ecu"@JhF78GI#E7V~> -endstream -endobj -389 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 388 0 R ->> -endobj -390 0 obj -<< /Length 1251 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau`S6$&MV&AJ$C0KCH.P_&l;f66#?H10<5\$uY\(8=l5E^:u<^TTm(XV5N7R,^'7.*?27W]qJP,':LH'pIY6WEs.54b=@@;K=->eH)lP)+!>;Yoi'f`fQ>aK%:SJ)%9llj1TOI,O@fG,u8#\_a1B`R\YKj\kJs,0IBqXB[l'b=?;pm"=9I4cp52Q*6F^b.E)t-C+VIm;;+`8KJbBh/t4YGe5;W@`gLs_&U0$G.0d^,:6%>=&A;P:tU9_ZU*4Mp4fUAMlekZ;6OD(,FFGbac+FL9N:K`M4Ik;Pa=P2$7_sKkl7Wo9_(9S1^B&reo#>GnN,Mtk'o\^4*aBp;Dp>\KE7Dp6_u%=9N_orEHW^WmjWR*E8OdFdJ^+G(r`GMf/e&c#lD=/G5j6OB%;r"V&2Y"]lu`rEm3NdlY!X=bu4F.K'a^.i"3m+1P@Z6N+OOe,?a;$R*Q`+<_-^^WY&("\F.Q4$2^&U7Q"sCL%^dChmOY"n=B.*%3arK_-lpE(/BX'f'&P>KuId0QY*l,#VDVDSD>s17h2FJ/pQ,<_h>6S[gq_FO^7Q7M?]`Cl\Ec)SckBo9M+aR']1U-V#]HbTW@_:\XFS;H?Id]jOnjmfs]Q0)Wl(p>%U'_lFQF'"J>08(9.j^q!:s1@K`"D.Y+-11t7*?,(.h8>t5Kb38YKpE"qr*`M'o0US*iNfj$["m6Q2CURi36\/%s>\n`-u;4FO/nqmkBXs1sOl8iJ3(GUW`7skRW#&-KBaD\AX$"*aKLl!^B1K/>c=IU8I)[#Eh80TZ?;8n8eatrH?JPqYiahHq;uO,.o;GH^',]fe)#TNa'M`ODk1j#XR'sWCPX:?#VcDM6;:2I%3QY7Q9o7X4VeYhtJ@`1_02K& -endstream -endobj -391 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 390 0 R ->> -endobj -392 0 obj -<< /Length 1172 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!;c997OU&AIm?6sSqJ]-2?\VVq^l88pr]N?[FAPK%ER(WY@P^W1WRnKu0[/uXPO`h)?P1NqXDKO40=S\W#tRAY*kanq^CuXBCG.iON.^hIXMaQ[h#:ihqWJ6]\R4s+W`IBdT\P!/(*Y%]>NB_O4#l@H>?[!Qr0,RN]DHFOYWj6n9EuUb$mZ+Eq'Jie^^6eWoI1(31MWJJ#;QhAnOrWM+GdW5Ml1"s)EE(+4JFt!)Ku-o6*2BWO-.ab;&/[*E!Y68MHfY'L3pSrW$Xn#AKQo"]6X7_LClM%!Xj)[UOAa@=\fJ.o@Ft9Nf(?!F4E2!L_;<-mXLM+="BYg\g31o7-8jqB_E-$[]]N<*XZ+rbq$RQ$.m%pq)VfqsY.ek.S1P4])&t6k(=hm^#U6erF'hl>HH\BS/^7RH(`[.##0qFV,nY'i!LJ*Rl%0`]U8>.$_a2HjOF%#=;q&`':K9jL!7AtnVl#]%&AX=!=cs`i_V!e%*t!hc#bk;U-'D>-W2=bG+kl39VkfuSG)ER1ILe50Id\k'eet85.Q*3k>=1ubf/]O91Jr9qXSfccY9c2nL7Pf"H/XuZ&Gqqu%_7Gg:d111KNhp&Xb#l-5FADnm3ONMMnZ1&-j;i]*:./#]EgY7q-f_\IO)FH",/qY@I(rq+is7a]V0p69qk[a"QgD9\4O*T$S4c=/![%+IF6SY5')gq\Z6?+==0@BY\_'tHU3?FYsmiG*o8t1Bt\XMJ)uVC1`,5f#oBKYmITFC's>C4D>aD;)b8UpG`iNENMoLc;5f151r=;7GM_uQ_-"17)@`V?m\LQAL(2:;cCO/$0['Cb+MnC'd.(aPMcsH_3L6:S!k/cGh:UiDjC63JLY_6.qe=k+:Enl??IZ%Y[1_EZX"UOJ]?,`b6tI:W8kNIA]?snQf]c"'0PsKH*lCQR^&Chc?i<+ZUJ?)f[&.3N9uc`~> -endstream -endobj -393 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 392 0 R ->> -endobj -394 0 obj -<< /Length 1697 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHL9lK&M&A@sB#^_D\3ip%I[7(U1FFj'b^pdthcna^e.uRSnFuEXu^R#W\EMuF:cpJBfer5@$2ifa7;BL+`+$W2Sk9AO2'e@lrXusaiJ"G]r9"FVBjDCIDaa%&KjMW[(h`D?tUu&5m$SfL%QY.FM0k49@:'G3od:Bu[dDIp=iu9;HB#`l._/K(nB4pso`1@IkD;9-j!Sj4E9sV2'^Nh;B=anZa#7o4PLTNZ/cpf(s-lrq6Tgc=C1+d)H=fhbGV:!f&_'^Et1ViP9GBj&88!4f!Oc&-j#_A>8,Y>'\']A.3a_=&_!MC4drNMYmHu3N^V*0'Ek0Slkk.._9=?KRDFi<,Wmt)FZ6'MlKH-$381q>o:TIlhl?j=A'Efg$76kK$5"l0E5/mAHJI@&?kk5MED,'H&7V(h_S=O3cjLI6Oq4]IVN@br`J]MPF%Hnr]j,\_2bYpq<^Y(b(cFONa[hnf.#gn-ZEe#EZo[&MOXL]:&p;)#`n5,E<\sF(&X9EfAj7ioaA3ME1t@&hO"K?Z=bIDqct-<&IJqmrlDJBQ3&b5[Dq[bo+hrquPaiTff&\Pd>s?L-oHP&rI8dD+\3EbZlU<5e=SlaZ,)dhp[!-g>%@?]=8FKCG3#Xa)F%JquU_9?nZf6:XSnd;.M0!\n90ti[;"9_2Wc8F%Ls6U4%SNf[PXcK&QJu$,Q>X=_e;p+.Q3l;Z_o97W/Idr$j0M,Fb*,L2DT[>qn$h1T?dYeC]5u_aN0EPU_@8CWB625@1i0R2;CpNf!njHK8kieMO34A_Uj(7K.OPT*@f*oNR4a:\G5EFi)&J;!8BX>]4ao9l$]9+Bj:Bq2m[rDhLK#HF0P&JUJR!0=UQ:J$;AXL3rcW]%sK,n#4!&MFf3OZP#[mUC@iOfPhC/BVkkP!XOF;Rr9#uo(8RB].D/HaF:3!b>-P.U>Q%\jVq6U,Pu_'G8h$m4:FH+T9-l0W1dX[B]8dKd3N31;*[fD^FTIJF>KBqn0WhG=@=Jml]7Vhg?dSZIe^E:mbH:[3CaW4U!tG-(qu66bDY7"Z!7W+i64ZNU0Wq!Qq:#tR=T,f,\20bR[L#S)86VIoq@:eQip(d.7l!5YCgY"Ys+*cnGmcuJk -endstream -endobj -395 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 394 0 R ->> -endobj -396 0 obj -<< /Length 1637 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!#\hiFNj&:Vr4JaR*UdN.F^J3I;i9'o!B8pMr;aWXF=L=iI[S(mtW"rh.sODn3r<\*Rsch@/*Gl5g25AsW\rKK=VkBbGIYk"=Eb',uHj#__:J=A*/rP[AqSDVq";NS3.f0i7%re8F'Q+t$oIlQ1i[#qjW1,=sf]n'dAp$-o3ZGbQYCNZAu37PT;9Q3779V#c"='&S0"/C3n.">`)n-e=b5dC3M(+N\S5nKt.X.$d4kH:FrADp-+\PP_+jT;r?b`NSC]rDEDZlU*1+n9k3[-lC!6J\uiZ7L.LL#@hBcM2C8RnY+-30"4V2+2>`/;M=7c;mrQ*lN6?'*?DjN[JseEOXZ@dp:;0EA=36pmX7lBj\k_mn4T7EJ(HoPX7^CTt2Jf)%af-DhY'G"+20r.r.^t)t2-N.Ipf=EHnaTWt\1HRL)QpS<0\6e:G;H$ZQg*DdboM(kq[=HsMu2dcUhep[EGCN9a]3^OB;#5)T=_q_7piYkLDeGDu!u0'8-Q0&Rg_8?,>!BmZ9Hcjb:E0TGL$lVqgM!8B*4!c&r(YdVs+RB^GTgPWJZ9XLK"!kt'uf#'#'$F_'[=mV(9V+3&cr2Yr&3TitHCk.B,1H.%RlZ`<3#Ojt9FD)Z>NSDMD4BGQaDKt=O<)PkhWdj!nuBTd6$d+jL.[&ALnm;*SB^C%V]QUiI%)K,FBjA)H),;s(1^S=L]d'ptt`"]dYUO8++$JdKp]-,m>);F#A,t7,KP&t'R%SkJPp>11ZQq;)qI!X(7$6ZK9I*%GcV6RK$Z&"WV@LKecn.1E9q$aD'f?!FgZXY&Z-hR@NWO;Uk\-JL0?hR<"V3Ue;qD8RB.9QtG8]>Q\6rC*p[Yf5&J8VTMar5kk'mNB4YL]CFsKAhPd2Sg3#)Z=\2/EDOG#N)SY_Ul$RkKm'kuh*'"n8\P;F-?j'M^P:1L]jnu$$pN(:p[UOoH'ns,M[f^]$/Z<"b!.:8&-ng:t9X(4e?6,g<(mcm-^jqGdO$p]#^/i'CtJhYWj(N]OElh-7K`qSkp/4ll0'b*oogAolaHA,s+'],d[jpr:ak\rVm"#1$7[LS`8X+KFSH^je"(JiH"sP2)G-c-Gs08Mij7A?+"AG[ptYeoZ]b=/-A*d=A5Rapj/UH2A$or;[p_d''NK-=o:nLtrF%M2\Fj&^_sj>&V0b,m%IMc%mm86lE*3oS)h%+ehbJ#]r'9&3fg3Cab#dLL3]*;TGApoLR[`pX@4Q1R,#UjZ2S'l""3"#Ob5K7LA7ISn*;WH*E.gDmI4XI.AJN/cGT4rsk2Xl),akmjX4%`**,q(G&A[TF6f+8c(?kdTbde,__)9]eJ0GI1C@ir -endstream -endobj -397 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 396 0 R ->> -endobj -398 0 obj -<< /Length 1166 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK995Pr&AI=/TNmdR=c+;Sd,R`8V;>BElCk:/D\s+u/5Th7c+gFg%iYS%XK'elefN.rB>/:H9HJA8&"buefp6LA_M)hH(J,o`_Vf);j@(>1S"Eob'5ad?_t$V)YXZL8/["-G`o7hHgEd/[;?j%VVhW",uN=D3;+'W3#,_UO"i-E_&.A,i,=ju*GdL8)K.ITmtU?&I-Gq+-3K+rXGPSKuS:EbD#^pbh!$W4Q'_sk!OfM0ZP3_%-H.>Fr7hcI`n@$J[h+s@?%4p11#VV@:/.7F$\oU1??pXTq$\(Geb\Ibc-3jEi"4/RDTX3%$4M\h5U,D5cP5As'&M;p4m:-rH9">#X>I+VX[EI@?F./J]j.S$MIE$+2i`Z)7L'>)^!5#LdRl$<-=<+GFDEVOcK6'00Y5IuOcO$ERhPBiqLsX_H`D&DbLdYpW)`8Is9cQ#-e=2=,rK)jJeXH/WVmB]f,41O$=r"WVKSd+j,fQT;22:(ZU-#XZL&,X2H3**ED$nt!!_r1VHl5="k`J&5S*R!GBt*k9rSFW?.?^6b?IlPiEA58K\&H7&O@nl^.2+ek9)Y:4l/`kjjA<&_$st?n1)[a*nP -endstream -endobj -399 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 398 0 R ->> -endobj -400 0 obj -<< /Length 293 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gas2D_/@+D%#44r$B%i0=GYFZQ5u*r"#m%2ef?g4QEi*u64g=rTNbL.A8"g\[qb=H\IZD]I?pu1.:DnA'2o@U#124!8$$9'B.Bo6QrFg&#Dauq*I2>#I`X7P!trKC[Iit9>l.HDDs -endstream -endobj -401 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 400 0 R ->> -endobj -402 0 obj -<< /Length 2721 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasar93:/`'&N41Z3/D!^4+)DYQBQI_jk>K%I)_SmcgM!$IQ4j]-TO\k1>[\P$B;C)IT?/ZRhC,/a%.soUk$9=VuLD75S4cNr7SZ;)%V7IkXM_c_&Gu95blLZdise^QY]MWuEZeB-4uIop,u83M2j1Sr9drCS'^`HueJ,n#_\7(T4V>cW5P\D]#2[ek#oromK&lSLC'eU+0G(k:2[)bsuiae[%n*Q&Bo8X%T.VPSKr&fm"alN$d%s+YqW*HKIE%Eacf,Vj9JcQi0rccNVY8oN2uoGLDM4d%.IDnjp#WKSjWiS4hD:'&N#IT/9U%4fXod&60Z1O!E;^Z=S_KQo006XAOec?h0/`W`pbV;_KlKRk[HB5foHq^+tiNBR$Ml)%:)aH%qP@k[PHaADsWDeY;8ufeB',"85&>qHQSX=LJqjOb?T:`3(`fNgEIQM^dJ;!M5lc/Vd!tB0B^SKigtp&"^tI#,Sr\>a#,c/&b$E1D_Ot\AVcZK/[Z#a4P&C'0H@T)B:?3j03FNfk;icMHBKgc.)/,lF(*FB\f19ULWrYRSpQe^HpD`MtAX98A4iW\cC*sL+kOZOLZd\j.'`cPAF&)YU/Hm-X1C:M1F&c3$A?_IUF;I^mNM(-58ehd@1gG8q"gJ2_.9NHDf9b/B=Lm@ji<>aGlV9;@/pH!`1eq9nkEZe6qf_IbR[+b=(NQYJF$Pn,\E%5@Oij]4ColoKk4.O3lL>QC,7E"!lqBA>Tan*]42f^Q4kL361O(n13KguOn3*+NaB73o:5YGp=qorK1%eYtS:%l$Eu78"P./8AbddTp$@u?Sce%_,SP8UhHKMk0pr)7I(8d\EWhRkj[j!HRC`+Z7);TX6hA#(cqSpWX'q(G1XhEMZejC"C*cqaRA5Pf^8.&FpPZS`^i&"AT@Z)6m'M;3:#9JcK,a3B?aJ](1U3;)YL-)OJ[JE[./Z3Q/)l8.!fpQPH8upK&uMMg"^sF5^M:S7(\G&8:B\U@ooH)Ol(+s5N60$\W!3l:J;;=K>o3^:QorVCe]7QQ_[rO&>NrXLV,O+^9G`mf_eEG67UT(_\f``6.]*kSp@]cjV0h0o7^ir8N.O6`uNG99%U?`iba+&C4\QSWKfh3odu;"nKm6,=P%Xap4b(dob475YXaB%M=,FMM2m('Ih%T2\@+/[TK-R?<+n$JpI,_#"M5=:(X'pj=p8A2ld&%LQaS!nNB.#jd\eJm!3,"RT^^UO]qpT/0R`!J$<7TOf(n_E6XUXu"*%`Hh9f6Zq)gd$i8l>8jh@XC;-'TQbN7CP$WP`W(!/\\r+^9tkEm75V!2PA+Pdn63qr^c9a#\o7[kkkX(h)lj\epi==)[p]lA"uTq=NM",Y2Y1b((FCfPP+F28_/qM$Y7kE"r'-BD\S@[U*8!Y+]XT$YP;B9Nr:T#Vh8:d271OtFYuM+=73B*X86u2.U1Z3VpcnQN(NbA7on87IFT1@\q-4A>"9>\7fkjDP&%1$;Ork\6DK'!V(F+Q4LSrCM&bW8/-60<8a"])D78Q:]p(m0;(nD0,]]&Bb)1;_CpPja(@]ZP+Jihuo64HKU*/sRd"qJ-'Np^m2t'c&FYO3iQP`7@8QUt0cN?Hc?%u3NfCUI:bZ>>UFhpa[lf$iUF^W!$%p(\K#d^YI9P7Y"3(MEPR?.t!*8=^'U)\@BMMQHRnEKOO2ck4<>p#9>?dqkJ5rqLN5k0$3K+Y_E\NN;F4rR.$TJ$4jKA]l@h`Uhnfb"@.Wu8P;TSdq14k/^==tX1=Mt*)B^4^_P]@cP3%$UOJfl[:sjQ^Ru$:?K=-a)Sm/Vh5,&-0(qjoO[!8#@Id5t^a7OV#l1\ma"fa1W3^6Oq?1f8!/np_X<'p+eN1E:qC-#\qJ(bE?kAbbYPXq^!0-VI33KSu!ZPd#?[ZD*e)P?AW$6*GnJP8U:gtc/2:5E%g%Ab_e=A`1)eWZd&#%r$fuO>X+c5-@1HHEeMQ8ei'$#V_seIo0&DdS"aB:gHH>t]#pj&h)\`&D[QdAMDSg6]Xeq"OAg"%=8h;t6O_rm9LUh''m&#[X@Jf(0O;,4\Gkm`oArK`2bQ!%)4PFGTQdXIIgP*;:H`m7-s1f=_=\3c7g@YPc2R&+^ZFG\VGVG@CFVmI,VW#]%a)%NFgc)'`,d$PIl<8<_>:SleYR[9S`cZ\.=6W2ja0-K<@J1f`5pkM?1qXDY5qqZTcdZ;)kIR_#:ZGPMSqN0.Mkan-&?KLbeE_H#kIUAo`%bBui!>eC_4tH?Jj#IbF'&P3Tb6RDo-7q[b:RCif75k]/PP301adEh69Mj9PXm>0m15)UEEHIf\@!-0"~> -endstream -endobj -403 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 402 0 R ->> -endobj -404 0 obj -<< /Length 2090 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4997gc&AIV:&:,b;`@`b-XTgp6RpBRZUhI&/06%PBD;$<\99((M,Xq`[7j]MlAbluQ^2QQ:Da)I*Ak9\(>`A,9l4&&_$iM@INVOluF+M]XN,sN_35)4p0o^Z/2dm'Xne-'8>EcUBEf-GE,809/Vm"E"Y$qU12*jB3!0*nYK=mf]fIZ`9M9-R$hLV9G&9l]lM=M$uOXHFYNp>AUXf`/M+_7jb<(5_WOjM^p@bA2GesX1?d<#VWIU04Y'K(#'"OimBMKXdVq(5fZTn6CFa#7Df-%Q/WtfL$7(g>mG#9=4^+asKK?s*g`pWY!\"$GCmV00g7nVAb?A4Giq7"N1gBka@qa+LA/Jpkah%WJi-PokDBdm9cN0,gb\H7jETV3Sk:rbIT+tl2DCFOLT^kb%og#ekA=i%2CC[ZR[WQ@K=,^uO_?9PrLJ,ermmH\%uQ&"`_qhkc6^C/n!S,]@PI^k='&ih4/lqV8\\GIH:A$@A>(=ItVW'Ai]+bNb>=[%Mp(8(C/kUt<0#4PbqR$sp9Hmf(!A8A],P\=MhM$tCun3@b&hAJ"QA@o+$dSo/oZoBT,/aTnTnum3j5Ls4](CK,,9'+7GI\o/,H]P8^S#FaGN=Pg\P:tlAYha`WE9O-3qjg&[Fd2rrWl,lhpDb(3Hm,GLs27tfC-NZs>hWWTKGSXXVOo.n5ng3FdLNg(j(1^OZ3f4VBC!F:ZfKEkipF^C#r8>bj]jB0Za3g]S6TIT"D(2la+OWEqJN[FI/5G=8@pRPtgNtNC5\:)3`K6[T$"`mAR7P]?V?_,A^aQEWF)VWB'Tr@!*+6(d4U#+&:8IqX?$l8l*![/h!q-C1h#9[NrPq4Ps8RJYIcU+2qI`d9qS?OB"#j(Br1dSGQaZq05g:\n6*-4J"*(*$5Q~> -endstream -endobj -405 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 404 0 R ->> -endobj -406 0 obj -<< /Length 1485 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D9lo&I&A@C2E,q+'0hQi_X#\]JBBi5JNFSfO30U$]87kL,1-s'&IsmXd7=Z"9a_c)DJAps2LI^]o=0p$AD"9RU^%DLA+8K5r',5[NBV'Ws._3$WgeP"G_q$)l@h]*K%E4-*/P4I%3QG#$mjuMSLIkthq5gp=J\t=Ge(V';O$FZ`pb))U@kq7;HOp%"fY`BLq[sT4hJD5#T#/2Lmu'.%eSlT(-qLRti?3]A$TQOaW>0C!"7EuPLLA4I<'h$8NeuS=,4s72,sBCSE?@O<3c!Whl&a4F@>GNWpshum8L-A5@D)VXNP?+C+l62@;ZiG$Jbsec?X1DD4R4(,j2P(2-$J6JeI/LS<<@,*P[c>:s"NZAQSj],&FmP8mF_RL\DgHWW_\")tkq?dsU(i;@;"!bOFR`G=*?ld1B&7Wn(>6.Adm6G=c4tUYc!mc%btM#arc"V;@^Y3l_5?9T?DdNQKn`;Jo^fMW%sjHU6NYC=h!(5<>,?u:;J[?9G5#*OA]YAuZ=*i@rh7^P7]dYGFk,"ZnQJ_*`hOKg05[tK@)pr7-WKCmucEjNE97t'ThTXa,]`@^]chRdtQ)E*O0uBV?IBe2lp-fWq_E#E?1K\%)KVHi16HM1'<4b^iQe>O$n!%mF!Z"7]qCW*hQLCII7RNF8f'Eq)G.5]%@`cCLiVi9&OP/Nk4BN:Qn@>LVN\F&\AS"l>LUW!Z5)WST2RPBM0%)j(iLH#90fI8TYY6#JKgXM?R9KCRGIn@LSC=-N#Z\rd)CnZ;>Xrd!MKt[1GN=@BaSDR_'F^@6AER4$gD8dL=!KM/u?`g'(,/b;g$rt:2,7J54VDu_[%3/We'`=a/XZgkBXL:Z29N<.Z55o/\=^+`b&)H`l9(KfEkPFp,0D`i(06I[ZU73%ni?TG*X66T>EqT]-DnD8_97NsGn8hh3;sY*T@bh=f56$g"WgV"=fF,LMGNdZlXS\([I/&r*o0Eap,W[kU0$[n\E`KT(+FcHKkFd890oQ0IXI -endstream -endobj -407 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 406 0 R ->> -endobj -408 0 obj -<< /Length 2190 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatmNke6A;dF7o`d5+Gs\g(,m3^%E=ql>584j>']ZYTPi3qjsC-4;!Rc0iWD&=20^3r^n+T0o6W4q`C*U3oqrQk4ggE>>VOo4Apb8+3(1Zf^;=45E?>q@DS,7P$DX!/D\)mPBfm(%A_O&C>O2^0TfmeA3e;$6G@[l)eP$GX?^$NEe*J*rD8JEI(@D#$*&c6j@`#1gh&jK<\"$f,q^)%r&1]la+6j5=X`ZXHsG*WgA)]D@QpV/lF=IjTaF]QE0CdXe:q665;+(lYP_poLXV_-0"SFJD=qS+U(*iFq8AG5gD9R4?Y5"t",DCGZA%";H&2e4p6bD4gm5uXqhr70o@p/o[9c#HL"$DkjO-.N'(Kj?e\*r,0e1lk@qOSm^5gkfTu_krV"^DB9'1l!9M/5:dfre!EVq;P1j1#eC?nepqD3]PG5+?B8TaE3I'Y:7`<[Zde.BuZS!?7/>:lU5[dWciT/V\R7*4K?iP@&TKT6NH)pr-\p`TBoLnBEj8!@X6AKd"WincuNs%:*NR^E<$@++-+BthEuJ_B:@n24Bp*&d3^VD.I?nnCd5$:jOXL9JXfePNE)&CLZ"3U+h/g.0SeLWmFp'FSkRaY7L;h&r*\/AqdC@:<:t>23\Km%Zfb%5hAAFcf:m7fWhhBiIR:C'%i)3QqgC26h\7M_37KRF];Vp;_>Q@gVZ"e$KE\&HbRmUfe?S9blK4C_2::6Ie"",X5h>.S-$VLXqS8LOIl\i3G.n_o]Z?Rgh(Hj's!1lOV>MSI)V'Bp.a9Ce5>s#BEk,cOWie;(\qm?5BJ`,4!_D!\K(>(T/j;*$R[D7G#VheuD\:&sS1M9i%ZpI9?q8pod[K*VHeRi^Jo+_>R0GWsNF#("IRUMboY;)&U3=9/S%PS:#?;GSqlMPMpCR`pBrY1%3>3R544*>fh"YY_!&L7?a.?Y,`5_q!H#tI!iH/&8gE)AoeN5FIAI^TRC(M+3<5kg-I+Ie#h>-q_=p*#GSX&t.!Sq"T=5m(5\*@lr#%p/^ipH\]Hk]dW*"t+/XGRp_tT6LlG/-'7G"C2P&o]X=*G:7_""3j[Q482FoP(NKdjqmpYfhqH=AVU#K6tPkkA=:m0eO-*c;dFrY=c&2j:NI*F#9Mj[60/[j;iMn5rJY=JIR\%MF=IES(7B!UDo8,B&uT4'q.qi&+=o4L^ksRk&f+!=0n2Va,o0[/`&i>r13Uuo^GmDtY#C/hd3pB-`bBN794Y`c5&I^T@B8,eQI*MjHe(`K=VepLIA_6@6(Dc[*W5mSEEL?.9-UlcBL'9MXK592i;0>_%AYj=eqJ$'!_N%5XKF/&=W+dD7[WcH+V$OPn5P#g@ -endstream -endobj -409 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 408 0 R ->> -endobj -410 0 obj -<< /Length 1658 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%$>Ar7S'Roe[d*lAA%P![<]80l%FE%C[>B7+/n&LLkDK2b#*QXI9u[$Mub(tGBW#gR\!L;-,RUI,q8Z-`+XgRq@j.A:`o@b7YCMA-!\3@(U4fd:`BFeOTfgU,lXSq.O/CmBBDpe/R$qYe>)mB$n(^Z7Mh'/B!"3*QAE2S^K^X).^_jfg;X@0*I:iW-YaCW;8kr=Teh;?nE$#+?dqJ,mF,_R56A+"IBj)=5%rb)hR3$>4Y^2]'7KqNDegq;[OF?Z$SHe=XfTCPjJ-9F682GO)pRYBLZ_N^A(/W5nfn/V4d]k#nR&`eA_fNfujeT=ntETt(dUZ0>T;[XIFTa5f-LfC3+Tp,BRS=MKjHl"`f\I^"[/Qe`h:L;?KO12@pX6,p=k&EMP-&4n(;0+J*lID`+LV0Lhf235,M(\([ISC<8jlYg/!TKX/NMoE/Z58iZ$oBF_GhX)1'I,$T$r\`$>*tmghMn0%ZFZRjH\N"+C#@0LaD*C\RFRWQaP/AoCc;cG+B/kSWf(9+O]tuq^2Zl3J3S39c*#Dh-i:CjEicLqdn*b.:"#>172CPlh._6@bD+[3q5@2-ZQ.]9gD:YEo!0iodr%d%[S@$.NKI78Du's$FDs>^>W7BYOHFuM2H=@WP3NOR,t`_=7UtADE/+cj8pUL4#t%:bc\_-g;/!u)c**c9VabQDpi+f-P),d,oGAF\b<9YEA`Cp;T$R2)k!7q7YqCCHm/Fmje,NA\Yr^$q98Z2\3agN>$S+(kGO^O;rM5J_!X6/88Mi$aGYK2E!LA*k@\7/8%'R@[a*%9/F#q\k1;=jliuGcUR/]"02QWSPMG=n<@o;)VpHnr]9\a@-VDK[PE?4Rn?1LjXFT!^oDX&FH[+fdN;9Vpu -endstream -endobj -411 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 410 0 R ->> -endobj -412 0 obj -<< /Length 1991 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=,hf%7-&:Vr4+VYdYX=5[bVqnEbD32+GdKE.smU7.D>,Gf'ZKP1adU<+Q8O.Ccjfq6,_f_B4YM.."kgPd-TU[fU7@#260<@8X_-_a6LG!V=?28i9rrN[!7tZm'4=)HM8V9SiWYngXn[-9anDXA$o!-)D%:`A*g?"#j8^!:d-BY,XT]aIc["2\J$BMXt.8$)Ms4P;7QZ<^*iWle?)2[e@uk@nZtdceai^M5IG8/#$t'Ob&IL[\)*Ks2M*Hg6r?WFV7KJ=8Q!K4G(SPLF6O<-u^7F0G9p=*7dpu/s"\_8;_rPn4a.9B$&&t=&]*R_37p)Rq]`rl1`"][Q@\6epTtXBW-ZfuZlfqLK",Zf&tUR1ofQ[cf0poV$Fk9Gr-6`cl4LN'\u'_ZiIk:q#COrHk=NEhsQ^OOAgOc4E!3&0#Ll_SK3=)J#M8dk(bm6)X=\aJJZ((P+j%YLQN[H/^!k$(XkHnRfDo\L3B$#HF96UnqAe*h4a2SW@t-Y=R8XCV5AMq+2&57D6Vo`G+8U\?C^*MCIHo-(,ZXBg5F"Y9\+8Pf@*b_3Zb*a/o"r[`b=?@Tq9?/9NZaZMOLS2IGAO9f<]Bs?S4"DO*FIm7I`V5OQUenc)WCBZ($V/#sI>gJejl>mlMsK8:cPJnIVM\ea34oq<\/3haph&?@=Ytc=]X3e7W1^q,_CrcjB!BCdadSX.u/Z&$u6k-ORg]2&'*NOV4^>k@/'VQ`X>lI>ITNMurPIl&42aoO8?A:?\H -endstream -endobj -413 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 412 0 R ->> -endobj -414 0 obj -<< /Length 1416 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GasapgMZ%0&:O:S#lEZs%O9guWI7ZBV<^$^)I(mhW/H22kmLOX*(ii3./ND/,g2o"0eNM1,W2)PS2l?E?cRf"gVA@mE1M52E1QY%3j/=3%YC9UA1dol3q:MkF1@RkZrkS.TCP=.et;(@5?p0t3UtG8*\TdoVp1fG.JQun$n;?jjs(E?NS/pHiki7ug^;-l5(8C,lauBXIeO6QL^clYInkY;ObWsHk7LQ"#db]]Vpk,G$R10'V$8+r-3)_[#\2crk7JjGHu)+@3/aXuL2gl-"Yg:M!NO@t>k3L$EOc3;GSV))#XHmklfRVap,KHZO89";^jrg`ZFlE25$XB;U=a)Br5+>Q1'/jfO3f,e@hs`]0HP_#5/p/#n4ho?]\'r5Y)^#1]!_QZ"@>@m?6Bq\i7\>);`'?.@=1;I^df(];^?.@$H\3"g6"Z.n9L^(QNCn88k$q\m`1MNZ="mX"eI00MOF?89nXN-nL7l/77.mqJP@s[GN!@M_<%ZrVIC;IcZ;/ll2c!5/qeHLgZ1,]bi3S^A)STI*[%=d[V9(;FCDrR#kELi?6hoV1RgpaO2>8$dB*Sh$#*LcofWS#;Y9h:\oq=&O&P5*1`mBSP$F3/V8fQQNEWnrta.pVZp^+I:;d^fb>o.)X="6>R!In^;n""4Q"J-SPL@>Qb^b2aPreKMbVtfaetP?Lb2kZC%To-@o4"JW+>%f`6?_s:V<("GbFM034Z0cVr6t;=<0s=$0iH-!'FgWVL#(fm/9n/c'tt(+::K[gM5:L]\aN4=n,`#6*t.C@4]._h*04MegW_?2q_Co.C*hB`Hn!iFllo#h6;<7NX,_+6H'skTYg&(gos&i72+`rSRg&/H)gefLS&2iO5oI]])2'!QI4+HiV%83'9DT0g-[f&AEk5a?Gd6(r-u1Jq+f-eH?5&[:"c6(s7F_@+[opb6=cKq7G[,U.bj`Z<"WD\ZE<@l/,IkR7[MK5fi8HRa3CT.4$N.Ko>hr_L3=?tdOI)VED8OSmMr)I.+9b)A>idm1m]0;93:.sV';PQHU[iUZr@R0I8Fk]i[[!hHduNQ[Pr]\oES,Q7^m'[I)iiI*kX);2nj=P/:?2*X:59Di'RR>")F27_7>3;U9=^61i)8'Mq@Al(Pp-~> -endstream -endobj -415 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 414 0 R ->> -endobj -416 0 obj -<< /Length 1006 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHKa_oie&A@rkFGtd(,t1Z=EbYRj9p$J:/%mc.6-$?!2m)[904E8QJa$0OSih`&u>7Ku5Ejo&16:&-UALf+Vg#'4aB(6O#:RV#sGB*5dhrmq7))2(hR#W6ZLfUDZucU^s"=JC/-K;jJjU&S`?M+0nCrKo@WO9jFrb"XQlu#a#(X2aDmUbKebP);'R0#Tu50)&r[_T60'Xi7<2HZ!bea!,6JO&uZB6[h&<1^+=U*X>:\4cmZU'B_tl8#m9RH2Nco,Z^@.Sj"n=L5nB!gk1]#o\nDu[W1-0EC0nh=E`(0.RLe&.je.G6hqfUgUQrgab)&m9pX408['RjA[is#B:9hjFF]`kS;%YuV&@W0-I0L?*)(O-4^ch5[S?OsQ$'^+.HOcsY97@Tp-B5)Nfp<0%?!+,['$j6@EuI?DK31N&_GaV\n>77j8l83f*-g9'PV9Y3qWf:e06M1j>BY`7EN!MqPNDFa"&qM*^dM6k6%De2-(lnQU>P:YF@M8j'h>F+=$!=FsA!?#WpJj02BMgK+q#.?=HG+'[G->j#44_?fdU@5A[[YB$_B_g -endstream -endobj -417 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 416 0 R ->> -endobj -418 0 obj -<< /Length 2487 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasa2flH+2loe_7a/"nI&p;m`Vql35G'coP`bcg_:5>-KMiB96Fi:4`I:^KY%#Iu%`gn+j?_WTjj5<6D*7>0!mod=9okmqYDcoe=/ul*nAq/$jhh%DWhThgS8K)jF=PJ(M^[ITm`$E&0EthpIYa2FbG#.Fm*Z_L^DCHSN\Ok^2(0YVIq+iHLlH4-irNa!8G$(R8n*_RQajZQ6H%]1^2*FaI5CeYqu)=@)q")#rWf1aSWO$Vgg'q`:M=`K!?!*X%j)*GqEh"5D1ghPD1g;pQS4f@HaOU/,lARF\Z-jcV9jSMg=B]2EZdUW8cD<3\r^,D:NFWNAg@p$RY$'N00HYFgt1hbXIShT_X\ZmP^Q>,Z?c9Vs^HbREg(J&F7)5edcE,]"lh&1ja[-;VmG%:Ag41?][Au4&`aV@^c`5)EL3ZFtXXA4qs)"0.K)=_HZYt7G)T&AY=HfUk'1=H23A\]D(N>OlhL'KPEi$]^)c8[b`p;hb!F!n&FiV]!N[%E,7!]>klbEuh2FZ"4AORaMp9\O9Ne@`E,CW^[HLm58%CBFm"C$_9Vu^p"E.3V'Ft$V^=5lNJ>6*iuit0PiL3@,i,bd>RW8MqI7Or\iiqom3'HN%l2&sSUUs)="c&`?t\]JeYe0iQ#XuTsk$$)*E*^FoedDd5oCjTWq'JpEIE'[<;=%=j$]ti2HK0Tun`R%*[Y$"%t\CtCZ0mROg/Ft!q1<6J['%Pic%Y)MS$@tVR$HtJsIARb4,%B1.EX]dDfJ+d'eTNuMo=tOPe02-e]so_S)R5&h@kQRpY1$[oBGj!fRc6rQ`XdA*Y[YtG/OP?Lqc:1:]kFuG<5!,90)>s3+:Im(&J[mIjL@J_,SMdL&g;I[B$6c!J)pej.ZX4c#6aH3uaNiJc(uTAjoL%omj2p)f])M!Z&I.'H[ndMVJ,Jgu\1/$0jkC*=iNPDL!%pHlSb-7l7sE/jmp?s>:NZ1*bO*)CpIU5<+1!mt+?29FD_'RE_iUh/0fMO`oPZAe`j;_Ckg;f9[UAc$c#!1[0,ZJ-/'W_qh4P1.e@Fg6j(eF1BO?s!mAWLe;`FT9/%:^h8)h&ecrs^0jge.`_eCgi^_J#DguY^>+HC8Ii&Sq-`8C;uK0ti2PL<=;ZQJieBgg"eBX@l#_,\`7E.<^%GU!bA9]iphS>o)k3?9c_48&-d"`#S*"][VVIF\&"rb:faOFC-qa*pXnI*;mg]S1k'O@be#l*"B*Vln!cI$W&ATEK4`$r^ZQ;E%2A<`67UDd"s:p/F0LSNiu;&peLO`I_NY$&1c(`<`iLBno*;3"@QcT!R]5>>nAQa,04Im=F6h00:^$Xe_gM)D+KCZk5e!eb,g%%!0)JRamD\nE#bt'nH!BZ`qg8i,_>"hQ+?&\_qrrXd+\4(e8fmbnA*3V'\B.C]CPLL_gpOfU/[>YjZch:i@"0e<:IgAYRoJD--IqZMS0U&$al*7l3Aj2Uc(BrB>&+*]K[k>>+m=LQ?-8hR.3Wb>J:_2brA5pL0POorIJsnh~> -endstream -endobj -419 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 418 0 R ->> -endobj -420 0 obj -<< /Length 2168 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!S-bAu>qnF!L(Z"nd1fE;%;X>an,f?qhFB[^A5://s%u'tM8k,24?NDb\j7kG.cCd3Pf$`U_YB%D74EU$l,SF]4P-<(.V1U.%Oe"5T1Gq!"qm&Bqqt-DmY^J@N2leUX@;!42oih4]PddA3Y0=G-rsM_H;Bmgk'biB`9AE%&ioEbOk)VQEpATFDhol@LqV?J"T#qr`;IOhgDQ!7-*'[^C(\g:b,W6M9^gI3".+7rgHZJCDOV_,37@T1^/J?Kc;4Aol4A\;ZZL!V9\g_D(bZm)Ka7TpI&r"$U.V#qt]##fRRHPs"[Rum,O']u)0jQotlXm:?@+fV>YAW(5@[r)2&PkmtkLle&SDX]:(!MOuKJM<&["7*$LFE2`%3JT(n(.@KcZ#=50c3X=%t"H'[?LAA:"uMtF0CLV%eHh,DqI3166JdPO.hIPDDJAcoposE<7ssJl>lc^_W^8SDUd9t:mOrcWUd\1f*6CfWQ8bR"/_V1IZCje<d-+L5ukY_nDdK)XCJf/eq'nuTX"(\>Ak+6^U7[S;1O@#[V[rRn24$c(,&6P>f&sU:dJlW0@P#@kI9!br,O1(kelfsM%3hkFRZ/E*DA&<_73$uO]G\(V;%pVt`AV_9nQb_G:cg6d]!$4gKJlD-CFI$bC>#b(d:eK/eHCuAE9Znqo[L3\la!WJ6m1WaB-"r)[_NU!)BG1OO8"STShj/e;+Q*-QML13O6_iKYMS)W0+q9)[j@N=)K/s')';5aW@lNHRBE>M;-?%H,dq2^g])jH@(_VbmNPL?B+t7e;Q[,C8=8_hqf#"2gGK"Hm)-UC--ga(Ao4J6^p.6+i8s4`mJV=G01cP?+F<\#6_/ak=PPp0,j2o>s`Xuuk-uBVnb4oU?!q/#iJYj'\CRUT/T@#(-=hdok?E(p>@9_M&jaD-Y1ZJh.;*Z+6S7Pu;>l0lAOB6b-)3=@u"6'NJDgfs#$k5h]9mD?J@l:'5(\\Xb%ll<6([$#KlKc.%W-U*_*ep(t/eZ3sQjG:i?s8n4MYH9Y&ITsk0g?e3MV.b#VLkLOG'*NIqU[5rVM78VlLg58LsX0#(DL9`l'%VQZFl1%3n3h6?jQdY'C?XR_u-;qR3[,Ic=Y%O<7_Ge<&Yp5Q$R.5PM85Ll3&@B`oE[S*rl*P7Fs@NI;.Qs-S?3p&FA/;_,o'Q@F]E-HC!)lJ3B$&KH]SH99XgqXe'Ja._X!BE?'q^2eD(jljF%RLfqB'cu:1e]L+pLp4RG$Y:^:eCEMBV0D%Lq(`\AH0:F):fT7osp5EoBsfO-E4e7n5=XM!gkscGC>++DI8IGG9M+Ba>"1)DkOcJks-KWBI;^AC7L.FSdY -endstream -endobj -421 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 420 0 R ->> -endobj -422 0 obj -<< /Length 758 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm99lo#B&A@sBkQZ-\@Y6lmVe1ZWl*Q3KV`g8>8(`a%WK9EO+oM4@fWbQ:9b&0rqf]CEN4QP/I7e,3<;._i0Y($q%-H[2c'C5iMhOkrXG_)Y?+h\ben\eARi?0"O!.,8I%8485NJKLE'i.G*E:(c?PStj$0h@:'DLd<508otT8oTVWkU26P?X2]EV8H2XNBi'NS5"J^>IT%cf$4b_h%(;_#88*%B4@Ntq>q2;Aj2abkXPKc?g[,9nO.P5N<SL2(CPU^D;H$WWMGc'^b>CoYq[dlhGgV$XiP9.G=?OlS$'!6ErE@Z$phB9n4F_[GIJNS:T@r,o,dP!a36`orr*haG+2Y@>YR:;>G=U>[*q@tVWVm]q*?B.hg2XLWXm(O[cHl$2=Xon7o<3,?dSF]6iO*1APohjZY;J6CM+De]B1?eHsBpSIY-@=D:b'R['h$Xqm^ig-GG8KHF!]4ls?OAAd)o&5,=/\Md8c*!7js1]6N&QprYA"*Mq$q].Ja"lUlX,2C$J8~> -endstream -endobj -423 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 422 0 R ->> -endobj -424 0 obj -<< /Length 1063 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU3>Ar4L(k(RKpb>=?lYE#,:M\Kq9J($_g6XNg))Vs3'']V,T0ML.S7$#DeX+:Gms`Ouk:.Uih(p1,n;YLX`Mh]-M^U2\b:>kPW,kj4p)dmrbb0cF9F,:SZ%mk3i%O&&UiHNO,)a^[)t\95R+B_4Y-s;K=)$4Sf41Ec]+[ht2%1.1KrcMHD_iIPDmE#"kAr8TRM1)m*p`[DQ:=ZU:b?5/DM*r6bX7JT?;tR?Q8e%qofgGHI"a\Dl:`>A$o[BCkD>AL,2QkQ3[ViLjKu5>]hYDM8>#1Nht!bbsg#S$T6R-umhk"`O&Pg@[oiL77a_oLAKHo\D]Wl[pb+f?!RU7M1Am>6,\>X.4+gRC0^rGgI1P\NNVUj5BWFHl\/pN)'e`aM)5&%qjMKJal8&7^r\[BMmiXh@:B#Uhap;-_/hkaU6.B[Ui;EP(qQ,T=a=;Rk4E"M58t]k`GIQ-VPK\Ir`Q3fUhCjeLT%2imHPq/8G.'*5%!,Em9L#g.oN)L>]lo),-YM0l,H>#+GUMs?X8k=j"N1%8m3Gu[Nsl5l("]NcSDQ"LXM -endstream -endobj -425 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 424 0 R ->> -endobj -426 0 obj -<< /Length 1558 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=,D/\G_&H88.@I9CuUt0=sYBunMCA+g.h.k]?qrMju85'q/'0A&smG>$2$j;B=o5^j11#n[7#+0[d>`X3'^.'.Lr4j8rH@bhG"(&eCJ-TJW9EOF1`#C;A^FiQs`_40>9gABc^V/$eg_U+I=Z^4M=2_(Xr*t!OGl-taq"F<+hn+bu`o1C%0qpf:R"d0u2CI8p7`(GLqO'#^2m<@!2to95g:ntN?'d\BX"Zo7!"k#87=ON-:kkAa<\lPgZ.ghSR$?&L-b3)^C;r]aa>9eI:V9dChoI#]G#g11eQYm7)qD;FGu>rp0QCs?jCD;U,lcYk\Qo%dcncd#5Q1LD*.8\6So/J\%5'XD5QO-p)Hbl<*q/N7ms`#nj2&rn2gcVE(u3pUDLCP')"h3H&W$sQZH/*>:lGK?Wei\#h=n'BQ6F?ELFCuIJ0pf(/d_d?;*,LpfXV'5qO6df/;1kfnmaOIqYIS#2T/`u;%3C+8@qSrjJE[-5'#0HfL9sqPJNR2f\JeQU$U3`:)dA4/X,/lXY*8C.e<=Rs0i*4W$WNO+/s?_CHs.gZ^K`N/3I=r,2qm5c\k0[jFtU-5*/"X3IDK8+,c:#tBk(%if)N=Wm#_9-6"fMPj2C.]TKg_(1j0]LSlgX8iW#i-W'1:L+9Vg4HF:j5N#I-M'[FWo:"Umfl/>DIMt63Z^Z1_9O!O;.'E2=d#Qaj?Tq=aKX864A\M;R>.US3YM=3WGEFFTjk-TqOqT!FM#*jb^Z6(m7L8dOJt)<[0gWnY=SEEj>VkG>2M/TSaRM08UQKaA3EC>FoqAaG'rFseGuQ=Fm]X@M'nHB==RLA2X!um.qG>u9nTr$16M7,glDe;%:DT7rTOpm\r2l&"q5n&r%O=o=C2B>Cb1M:=)lH?II4%GYLh#L"eU_a;f+hHbqEf%gA($@j4@6)G1_C.1a=D[!*Ncrmg\q:)\jG6>@4`T<\!FqEGJ_2";7/51@"0W",[R`30 -endstream -endobj -427 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 426 0 R ->> -endobj -428 0 obj -<< /Length 965 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatn&?#Q2d(kqGM/%A8*io2W,gXRd]>,P,!'=sZURRl]hX9k]\FP;3B$oll_-AAga'G5ECpDhCeE%]&E`AMe2$X>&a$s[F*J;u-Ed"/,4oN_Tmmt;YCa)Du/d=r%#jW?t;:FH&aCS=rKf7hG4"(%W.Vft)A=Ht^B5-.b906oHr`h$Bk*6(Q$ib4m@B`=7:s*/BPNuTls)ieARoj^s]&$,!oYB6J!%qUHYrY[*'WHB]]LLILCbfYa-N)Qs=)HCW<[Znl-)V#A9cdTN'S&saV[_0.c[Cn\]5+Ykb.QbHHX$/rTT!p8Iq+e5`#\0M5CP]%D[\[S?P.#(X84Vq9>TuiXg1TE`1n]@U=rbHq;7>QFE:qip-R8[5l,#Er(dQLMnd\"J>m^C::2g2b6i8^RN,t-[D'tl>$3JqJFL17cPneJnD"&4m0r'9G%^>E^]dM[h,MKd@hO*ND1\!A-S:rnf:4COnD\Q#uJe!$L&6@X[fFMo=>eh9%Vu#jT3M#GL^kK`)aCo%i\Jpi7unfr,VB&6B#gC&E4=Dq_:+Z* -endstream -endobj -429 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 428 0 R ->> -endobj -430 0 obj -<< /Length 1342 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4h/h:0&:`lHn6oB8+,WqC$'H"k0hcD9=_T15QjftU9^GYs1Z?.f%S3`oS+1LZMWD,If+#,Q]9j.;\/cHpThcZpRXn-o?@Me37o`k57%>ZG2>Op)E270o_,99!%'FT0GKq4?S#$rUOsp9d5)UE3X14kRg4EO:HqMEoS(bdT&*rbdE`1YU.kUD"PEP7%&E:-AZuD4T"9:\@3<')SO=E+\p8u;%V;*Gb;UcNfk%Eh=:g]\$&\$&(>o-Dp4ZOF/Qk8EEE-AMh42Qa.)qOq:5ZUL$9eqd],nXO>WE!Fl*sN9g,^8SI\O/Ki\[>WXDp.=;qP,'P[&i1_lafEc+[>Cg#HlpMld&X;V?-:[+Om^`[h?L\-C%\0OkOTeMc#gbpR)iXLbPYEqYAg@]t1),14auro,+fLgc4kak[IHJ&U#5IG6,5+kXh*?#nO"e.gE;=>IkYpr6h1]pB=Xm;WPFUF04:-i;mE19Bo?Gld^o@'`,Nc1im4Cod/>79bSBmje=?5[Q*;>1XQ4Q0*l*N)og!4*4=>MY@f.B(M"O6VOiHA9YIg`gS,'4k6mDRS)Xe=)BhK'LI/>AO>F^0gcR0Z`*/G%3_ruGBej)NQ$2WhNifa?&d/L$:WLOKfb1lIRN5n,$Hlb]BJIl#O)>.3A(&lb/-ZT`FZc:IO!'03n>UfPcu)S(p:[%0!6JV<7pXJ7"qk1X#9b(V-hsXs?cbaf6'@s%)+)o*kuNlS+R9&_FmR9?4L,IV'W!B.h'c3o`AX>KLFf)19%.jk)LAn<\>d(*4,Bp*+)^MPlc6X3g!/Du?sF0RLQH[eSe(ITE(/J(Nffs2Bl[>rtoWN;]"@\kFr*tn"deQ#b4l,@cBVLpDTo+]QKfQ+#O>Hj!Rs/4[PLJuWGSOIZ\[Z5!!?!*s-+oXFN@2_%3@!X3V>?AfiBT.<#qt9;A_#8m>$t;UI.FsB>q$uS&,\kN?\6!,SoH6_UE;+U(lc,EPJj$5\kDj\6i/Xr)\!A/)B-Mhq>]E7q\tIn^_^6qo4lqL[tFLaFV6nilY\&/eEE$5Oa[@\9Fjb~> -endstream -endobj -431 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 430 0 R ->> -endobj -432 0 obj -<< /Length 1387 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4>B?Pt'Roe[i6dra=9RX74uGFTBfb":3qd_=et!5SKjb&(&`=q`l$olJ!ZbbgPP.^@S=>PQF$AN*27m);?=oM.Rj$NA/].r`dl"@3>C=DG&^M6!>H!>r'ed@#"aPKhd;uR3GYq6@(4*R-T>#s_C:72`X)Dqd!u]1gKjAA<^9Ph?+7o'bYp:'Z[&TjuN*I6M)6;YF^51fpVN4pZ"&67&l-gH%qC'%241*@)J/NO=2BLSTkJ&VchsMR-m_8\rqiu0]=cLH!YeKtEpZ%k-ct88#duf+QFC0'0>9l.ge5E0nM(tbcGaO"OAJK'RJWF7JSrlVO.9K(_C/]\I^q+8*=61I--moa6<_7'=4,QAJ;3/C#Wpm5^D)hY''(fg;_1*!9EQr2c4?a\9+M9$$7<[I]i!frteb64QLO=+rV+1GGcRF[=cVj\Zs^jXi&,NY4hI?(s5tb)#c*R^rMYPQCN4p9Jt=1sM31XhM%[cfks1G36k:Oi?7t6B3#hMu04m42OrUak?<2aLllIb5=OC\1Fb&D9`=1FQW+K7]-9o`8c(E]-..U$%Qg!?7p+Ec'7!WQ(2[dm>`YrLFBdc+-mRIk]\G?FqQ#N8kVJfU[20$%[EKKHkf7Pp^qLpFChuN]LJq"lMYgr"C91uhBA_9.\nmBZX$LE`f.5Kog]'b">@j3Y&YCp/&+Ek=JV0'Ya_Q8L^[IjHKd;G.L!kYlpUkTY*j$([,d41IqO4+G6jn!C'r==U2:AasceDZ:9M<%6Xq;Yd]qgl\=O^^]M!Bb0ZU]);(MWjVt$gHJ7b1"+<-hJV~> -endstream -endobj -433 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 432 0 R ->> -endobj -434 0 obj -<< /Length 1821 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!"q>uTcAn=tSF3dK,UpIi-!rQ*[ikgO,0pn$e3oDH[N*fk]h'0k@\]pV,4C#JhdB3mWK*B-DmSN%^D=Ag5"/(,8j[sUQD-2pRI5_!=Hc!@XrUa7H$=l*1^O0PGIM=\24s&E1hHX"t,fm]A\Z`!fRm(8an\m>aNM:Y=,Uu7Im-;=J#nN[N<*f2=d+X2jK6')R](McZcf"pgUD(t,%(eDBlh+eDgL!QoIP',d!u9?ZrBti5(2a95MH%bVAVUC:9Qp]>=g@hr^]5N4.LIuX%8hWU<1[&SG?$W?1\u)R@)6Z+$/Utikt3!MEK`4RB3X[2_Qq1S2rng]PGO6i>Me#"LRp=t#6]=sW/RR40<-&dqpV\G,$._RlalT`?$`o:k2LW*iq=YmJL$.da]8J<:!9Q_6:@&mOd&/YoDa,`EHcmq2]3Al6GbRX@\d&8oh9GbQ+OUe_aQo.'Zm$fe@/=0RA8uYd::UE6A!,s.6?";2a\D9:Ba_p/Wl#cV5;H-.U<9"$Zdju?N7'"B[=6TqeW(7PAt[`"1KJ=R4G$6H2WUUd+db26HQ%D&;%O[2Cl#S:D(+G:p\0Zg6_&=35t#&9CDraTQ41stL9O1*DD(&=ZRD>4Q:5sHlSP<@0(6'gP17_gZV^AkND0.#T)m?hk)AMg&e1O*Bf7iR!OQ]lMOMs>VX,*3Y](Kjne\_6f:pr`AWXS19EnoF(`hhb>7Z%p0>P8]s1U!%hnk<8GLo@9a6In/4LL1P!&+WYl-+=O=t?\-!t*R!M\.nni;gQnHPXN(G2GP#^0!0"84bA$cS9o"+6n!2)2o3,TfP,FM\/k:+;Q_:QADkNO%7a3:Q>\>;@HG/U8/FN;;S%QDO(Df;Y.lLId[Nj.=N`GA]ms5@l^d:6uF4)UW-@=]o[A0%>[6jE>u5-!9H(GbSJ]ZYVV5"2F7;i?:u>cM[aQ3\0Y^>,K^q49KZ?b8(k!o#Z7oFR8&YL4]o6!FbS>u]b*t;gX\uS2 -endstream -endobj -435 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 434 0 R ->> -endobj -436 0 obj -<< /Length 1707 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0DlYkN9&HD156Jq&:N?[Y!]0ee66],I=J0f40AKD%ZVCWp;\>#53qs-cBH'7:ADD;hkH)H#ZmeGhi\')nE;C_R[?B>eklprh.(Qi"hD]?c!)G3)uL?DfK*0fGa.'1([g9JdXGWkRCe)dI;QA*M;*a`q9*N$VKG)B6fI_p94'J$9?)3](4RgH]os/U;e1U_R"L/Zd\`m0RAACad2;gr:8"8?-,hF0]f3fR2nNE1\3>H&Ptd>jn$Y929CCfT6Hl@=VV?RF9Nd':qdcF?O)Y"tUBS9-C?pP;4He/R"b(#pJiIdWC>-h#C<\NkO!YM--ETN?MlHte6>sk/^'/k]C2o=ag4(C4VWG6'tA^)@XlHd`[!lji!(NnRM<<^"GVN>aI8F2BI[lBUnJN&:o1R[HK7Y?->kb:XbR-^*?B)VoDEYMh4Z#teV1'gl:P^SDE7MBms'tp0V5n='8eYc?Df,F3dI+J/qG-KF@%4H2KTu[\-,H5glTre.kaFOqMY[gL%!fn5>qZ<6QpC8Nl"J&Ol@2nAfHtnKSpq6PJiU1Lq&$`J\A"Ii](nI.n$eKRkj9?G+bW!#$'@WP!^;H4+6L]OK%74KR:a+9FZRr+O\'0Ilr)pnZ/sE['CW@0C#*0N\qg(RO>O`^L6l;3eHBgK=0R-"H%#n=r#&"[n/O"N3MrP?$nsb1;#-E/Qbf*9Z$1)JL0oiqh06@-57-"c).TGPpVY(C8!cIZe9KHi.'1\lJVjCAepO*NW6kdQVXJ(M2Qcdccl4oW8s9:9_4aG,P@3UYM&C5]Zj9Bf(SM_8=iG;I1MGd[d1#PL=<%-,1kR,#`[lA8=>Z3U5Vr'nK3ra1,me?83Pub-D?\gH)Ch4^%Bg#u;^$q1:#R$k7`^CFJDBP+HVqoXL8;?()p;%g1.d9'X0nB'"$MOU<6sW]Ra-d75un[i^>k0Se?6dOWm0a>#,9>EH"np>Z8aUT,2O*/JUgYR2uJ;Q3:1X/D3>=5n;^WabNGWGFu<^(Cb.s!pe!7CP%nT0PaM6b,c`rr/L&fAW+J/B[@6=9%t'E(GePjNQ6hJV=@,TY(_rkS-j`g;/#`n)3@Xlbb<8[U78p9(![q2g\R(K^Q,&Hb+Bg+qP39_P(]380Vr$SlK9*:%@/`-=@j:^#1=H%'T_F'>/Ts-'Ga3Ud4Ya?\3E.'1_Ik#Qnes4fQp:/ZJ.('Q9n)s;hKjDlr8gMmKT&"V-G_Y.bB)#rR^*t>f$]%u[fZO~> -endstream -endobj -437 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 436 0 R ->> -endobj -438 0 obj -<< /Length 1136 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK;,>q#&:X)OaCC?eM&k>B2MqW9d?r(,;YDlC.AUjNd3cg=Yb+/#F^c^meeFpn+PY\"GJ:]XMgIAH%4AieSo)`!&D=k-W:'gt@C`hcMDK&!]BPlSL+kQ[*`aVLMFE.<_%L^bSI-q8RK=S%q\ID:-aSfG,qLT\6%l&+&#a8<[NY-Wf2t`+Y3_]*i/5/1ROSS!TVh>#'8]%EdMkO0cgiqh_,MA6Ybd:rKe%@I=(S]lLOd\1`R%Hj/]Haa6`f`;]1O1kIe>OVSFX$Am$V=Oh=@P>;3`>/tu/&Q1VMt>]DHENl*D?io\r];FXps4BSkInarS/Z+Z^2T@\hmg9J1Ds1#=DHSpW%*OC:B=f1pRm*9u`>_9@B@WtQObc/lqSO@I0(,\`gqX^k-&F>Y/3El[b0lP#SL,R8(,E`#""#3&0:ph`6ViM88.+RX%GGC;W`JNPM-1?arT!\T[+s+"6C5uYhi6f)FM,(Sk0h9:/"V1D85Yhhs(5.`/JEm9o_mX@RYL\X;H$rTpm:V2pO8rSKs"*m(ltnS(qh/qT%UBP7F2O.7%+@uQLU-4djoR$e&@XBO[./LFu6%EpieNZhY/>MP=^3?H\lm3UNt2*CV6DBqIH'o[%Y>ta([2#q:B1QSBZq+_FW5LBJ>6/l%DjR>S86&j%G#bI:MK0^ll_4VfDHl>Vej%a:.#$?k"8:4kLEOmhE&J+Z4$e)^iWpn/O5GfZ_!B$5mR[b\KA4II<9(s][`NL>WOmd+*L@7p$I$fcR!JZPGWjs%Y)@#n<_a^9(>fMri;C4Q"6N$H?:P%NW;j;3U*-CfXM08TDQ!>"BfpZRDFFpFarD")S+XA$l\S7DirV$Xl+6DLsCVrTG_;euh<8FigBs\1>YLL>=O!/d9l>:-oH@:V"s?$XLV(Ru(KSEQFT$#mkSiA*G@#Pg;OD'fs;Pkq?d"Au>~> -endstream -endobj -439 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 438 0 R ->> -endobj -440 0 obj -<< /Length 952 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0C?#S1G'RfGRn7*u"M*DZk'9e.f!f;&R(PYbt\nb\J[`#;f^W6.`m&!PDF@(D4dsKBNn\+*H\X8B5Hk68]0EAH@-iiud"9SNh!9*K\LbK5LR'"2cnMX#U'CZ[Z5%tQp/ZM7D/u!Ueop@nN(i]hSs'\M9TmTR0n'4=@,VZ75Lq/d0*R2pj;siT7_oS`c.3]\*]>`p`#ZaF%#]=48-PMZob&8Zl0R_YeFn_lh:dZV/aFZLV&ioj]pf$-CGNn$t.lmf0tT$qIm6)msh\46X5!Xe9M)R(hX`?(ej,I#Ru",DkjlC!T^F1KT)db1`>LCfRk_nefa\bcmn)tdRY!tI:!)kf;OX8)5D]4Tr_B8=M&4AgBos0Z3]MF8anlJKL>bt!)Em;a4(.M+DO1Im-nn`!Ds#]7]/*#1A#B0,[rrh+pWpqH0Y*odV2"7G4HnkA$a[QbeaHj3Vk_b;-qLi$K71=sch2.'EPJ#TXn%7c]U$U#dS'L_Kqf7<*eeV9VN_t4JH&8UA~> -endstream -endobj -441 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 440 0 R ->> -endobj -442 0 obj -<< /Length 1438 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0C969,O%)2U?kdJc1U(p,^eXj?.kqnsuFH^rrflT9\9KDC\P!dC;[_KNj7>VRMq2q5.0*29(J3`#prF%F-s)[0Bch3es54b<;$ospS+U@hF1.&\o+_S'"^>4EW.!X,:>%@qe9S2O1FYLIb)i\o&sgQL^7Z/GHr!gY\)5cf$7#,,a3j98fiQ2!93/jD!H(nGTnZBSqc?\8'V79P3NG"oYARj&Les/7CcQ&F$d\M^Ep?+ZA8L>H[7Z?/GQb4lLYJ%W[O8]'$jCI`^V*'%7'!2;!+03`MSUhiaE/[qr3oC7tECoZGhB*:I:IG#?/SuYJY5Ik+MLpr;q9/i-AW'M91+`W;P4?%3rFn45am)&m,U-uX"";E'.#.4b>$j/M1B,IZ$SY7XDD4m$[9;fRb2&UAe2"fGR0*1e&34OWTTSJA@V&571?>lU+rAjK_#UUc^J)K.>%UB?E;P*ipQA]!4=7d5P[3%>0EW*O$em3_C^7#=nm22Tu1BBNlc$*1='K&-R4JASsUnb;*GRt]Mo]U4rVLO>P"TXohHa3"GFnt[5lI^oYNJ6pp9:K4P/M)?!ZA'hT^D`UCK^W1edAt*%-2"O^Cr'2)lpcc)PqBs=APA^[kNe&E^-.irF65Q9(%e+;%PNRanA3CCf;&\jP$(AFpPq$:oro[41UtIhdC^6]L^[BM`Do~> -endstream -endobj -443 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 442 0 R ->> -endobj -444 0 obj -<< /Length 1212 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!;c968Q9&AI=/pdWG'f6[2q-T]]dARL8$.2QA/,uKPtM%#Oei85bD,-;O5E=*MZQUos2p=n-c-i%443PPna'_m5<>ttIi@=l/-r#lU0E\e30O(*%=p-,&2DuA*H_dU**U,8?(qPW0dDu+Xt-]4&Zq9C6iF3UP-g";m'Ttgl>NbMHRL6h9GokmHs#IO7,fi.&_`8/4R,SJJ5TsdGh3pI,N_\9A"lE879:%DQ\]U%pV.Rg#CUl4occ?$i\=(aHqG5&CpT6.FhSc0MO.1jLUGi<;DKMU^V[g*5p[XmH*1&]4j2rS,ed2PE2_q5ll#]84`^+4'<>.Y-VBCSOLhhGc':d-8tZEE,#,\_DI:?K:R9?Zn1?#QbM4Ek.j6&VL\g_6Z>^M^nT3Ofl#*cd=tM7F'^Ync.Qk)gXXL0Y[)#JcGMDd!Tr@]f+Pu:4md[VntUNAMer2Ae_4rZg^,..1eQsZ#'bK8#i@LUbP/HIN'>l%jf7nliT4\QO8npK!DF(U)7ZlQ8LF..YJqZ10;j0]\rM\d_PDP)9?jbR;6UqtOZ"q8;<0SNl-S:IMYB!W6Sr%%8=Xfl:IM*\PVU2@s:8au/d>mt9dF@VuDaT)q(R5K0*om@:V+8mp*&XM5F``"=S<-=jZ6*LGQE?>l4O*_q@2lD774W!S(YYGW;<4g43_=;G+&f6Q$5S8jP?j7fU4gG']s^%ngM__\*GHNJo^W?5fiuk0L4cqZ`]`,%%FU1m&U!2r=!5M6Bp^%L1eFO7UmkdXqU&,IOrScJhhsr([]_^"A$4p(,%-!K9;`Z0fD:#'1+oMFl7M4&~> -endstream -endobj -445 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 444 0 R ->> -endobj -446 0 obj -<< /Length 1303 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau`T>AqtE'RoMSa;Z':?@9qM4`/UoL-T3``sX#S[8%ZtD_c?t;%Md4:16c:!GX^/K[KbKO87TU.W2\7WM$A(FOYi%LA%.;(``tcn^q"uI\n4#NsCV1l(%X'NLQ!T8/hjJk95+NBP^FhTi![fBY.n3#dl)EY[F^E,VPRjd4j%E@+[f()s6CYJrMY0eJqlg=;cS+5=PmJ["V]8uDVSQDDp6(Ij81[FSeD-Dh-aGhU9rFu@NC;5bdV-1g1:G6fTHomHOIHD]Q!g6\#;P!;L]j(iLq&(d9@%5+u3)tZE$eHu#bee0s=cnq?Q@baX*ke;,VVdL66Xm2S=[dW.?'HNd?CPltDO2L$Zl]g=Q0)WnD=7mYs_[(tBX@COlBR!#&51Xu#T`BUK)nasi-g7jm^8(g+A&SWV"cEtDn@XRXF:gcZt,,tor7`U5q!Zko(QdR9I\Eh0,6[9g,"ZDu<3M%5Aa.#eB2o%4L/ANiPM%:IWc5ioT^mc2bSQSLcj6&Xuj<45:X($h-m:lKH0n3[JH,LY$*EFWQ[+*Ws]XQgJ:WbMtRPnGNHeUWEAj<'iQZR*^Q$H(RBB_:tt`Q\p'@&4I%^K7.gk!R4X&WV+g+_M=2VJ3*U=p>@18gRFN]oAU9UB4P4b%r?gjAbF\2:m)lge,,t8]0!qfGBNZC*S%u.eEe@K7IT+*/e'tp?S5WVFr7-TSbCE2gXn[=fW,!9tX6!9ocVl\e*>/"bbJbYpepQf%V`7lc:V!ULK!Rgg_:P)C9r#7J"'WRJg&^/p[p@.kscX"JVadKtW!heHJX^24nK/G<)asP!mEt5\>KRm'ONFIJCV-i=:%Z-M:o@p9V>PB/\;\[>tmK-T_!S7L7.rikZiBV5.V\kRiDEXGn5_6E#-ZM17KO:an;b[V48J8:\=F2f<"7grdM^M(Y8=2,E;-=>.krAK^Q_!m7b-hUl$4BW@)Hb!u[=#.1$u9'mBk!Ii28q@VAY%Zd!J)+hdZg0atu1iJ*Q=EMiY$,6Prr!PmEu!Zj8F&Q^:r[c]3\%[JU'!$b/JI2kU+Rh+g-a%8emH(N&\!5Kr'O;SIR0(S854cje4rl5ZiP>LF_d/A])U\L0OA8'udqb98KI!X9M)-AllG3^,@TAcAkbKQ_M&gEUV!+GORe`DQjA,KY4"7B.@*I.-l^XGAhZ2@>1W0ssZ"iet49G*?e~> -endstream -endobj -447 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 446 0 R ->> -endobj -448 0 obj -<< /Length 1352 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4>BAOI'Roe[d%f([WWJkupM&ARB=$'X2Mo%!S"1%OZ(om9*.ck?^O@n(iWpc5:+$S2Li\92mss<@-a2F&^dEYpGk:#Bn5^4`"nE1L.#[3-35[pP]_TSEGC"Ua<=60DonE-E*:-CsYKX5\nG`%AIn>DmkHFQ4;e#S!6Q4rT)/cKA\uj3^;1\6>1IBKCmq/OQdZ7kN2A-g+bm#/9Vs>APq0)GjrDXc30#sE;?!Y1,Ag@cY"\bn8EI3+TH2IET>^O#O:EH"eCY[jdO$'/VJK34a>>D=KDs'@tATAta=KA+nE]`n;U)]cSdt*dU/+Dm!ftkBFN0R,sa1>m^pgqDIcYG$$LFldk(FdL_T:cr6miH-a&K1iZ*QCa.ANg[OPq5\sfQYe/Dm)B4h:u7apucRZ_Y9H94#"8q8m_F+G8J"96*)\:t^$>ejb*qjL@l6jhH3Mj8WU([\j/PD!50>?]JbPK!#MAg`5Kohk&e@:SNXMBbb6#-$^YG=Db<,r1FlGC)*;!-c_CGQ)\Z^eHJ[RQ^'U(Mj+c7QG:]AQ97;%YV@*rJiHQ#m/3&d/"\_7"bV`i7^X4`/S<=!^th/U0%q:=L'K/(Whc`)!-DAfpKVZ+.0'6euCe)):&CAnQd6`=#OB-($g<8PTl)baB4!!LkbL]>a0d7^LU+,e224W1XPcNaYUp754J4NQr4t][?Tej5N-pDcI*oH.1mVDn8]S2OP\**S8$qIlMG7ohG[?:to'W.C];OA/-iT4?6"O2Gd!Lg2GCrY-.n9khMoM'Vh4eIIVFS)s,bOe"4EF=FY=`rb2^ZdRb>iC1Y<65,rY9[Ck@;(e,03Qen\4#Sh`)B!1b3a4FF"Y]@%a9jj6fi: -endstream -endobj -449 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 448 0 R ->> -endobj -450 0 obj -<< /Length 1048 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!#[?#S1G'RfGRaC@;_kH?l8GhULkL-VhW`X>5VCY]NbOtFeqq"M;CLRlA#P>t/P06VF*\]<;La3I-#42!u-5nH:/R.m8[kTL22+*%p*l;,DS5b8YE45]npiH:O1Ko?8^>6[#8rRL7Gi-]a#Ns`oZ@1!8Ar>L=pg]B<(j&NV1ad8R6RqI\sP&Mu$V`6e;H'AuR8Ml_e*f_kn\"A6ljYH$_AeN0m+9Sc6[pu@+Z#o-A@IGBo!YJKE>`S@d[+P^XS4bd`LZ>\W=e)V`knS.)5/u=s#$AV%jRL8WVWfk%@V0J=lOi'K6I_8A."S(($'3ZC/1#,f0P.Z18cQ\QG^DRl?%2YH=f_&fNN#t5CM!\d#_nG5-\HVi[%+>T-%P&Ue,g8b"^rF[(O=C9lbfi!BZt"PY+i/fWt4QDW4'BAab,Dg]i7+XZbnuc6ChfIM`k@a*7c749b=SpWh+-:&+Q>W.`"/-CrXMKpkK>P)74PSUeC#IN:YZblrh7WEOW)!Dmu2_Bb\aVMCghje4)/GBcgc_KY)c^2P*Ngjl*S#WO<)VCM/4SCmFcJn>i/TkNkk*h+p%*"!)2:D[dCO=mH1lGKnh^R7OP;+rF>.Z.=N,dGAorTr=W+=c,,Vdo-h+c=q22J#%&pphclY_k'*s:M)PH8pF'4)kAc/F.R9[+nW^U;r3tL[i;+Ps^Dn&:eluut#@DI/TX.Kq#8sZT6h5".)ZYiYHqV%d'M5fq&^\mr+6Z*PThs -endstream -endobj -451 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 450 0 R ->> -endobj -452 0 obj -<< /Length 1205 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK9iKe#&A@7.pt!fc_Qm_*C/6Mc;`_8f+nSYn*@4R=9rta0N*rPY[$//m;iZp1^qg-_L#m7q^IsY_uba5OQ&,>mEHoqI'VMVC!2T&.Y60KCc-jIhj0C%o@u=1om<#`lSS]:Eke:?n1-m+ue(o1nDLs-E17$AE_S`pPM0PF_cl6bi`^<=Y6A<'`9-=l`8n,p!#q_Ne08VGnB4g[Xc1H2GAqIORI;3o6?Wm8Si"1'BO.+1!L@#B9Z2N'ufH'j.X[.QlDN7,Egceb`/#!rlQCg,8`4CNcDQ9[W2/G3c`,!&]km>BDs&1ej*d(BSKHJJNkA5*m8pjOX$Z3Sb>.+jY^7Qh%-ID6Pj66NDf#"4'.u:5&aI+j#b!$[0nTX>5WcZ!8Qe9"#'RgJWJ+OndY3'@L])gl-*\!J(2TaeL__s>Z`N!V\fTI\r_p";qDj>#71IM)QTr*D#?DM>>&nH?W@b!n+BF/IXY@r_-)%&&'Ys"1HhSg=i6r\7;Q0R(kmDV&N#j-Tc%e)MJ`s=XQ`28*la$$GUbMBbkCBtdlB*j[5\$-$.Rr)'s7p10MJcCpPH#@4L-<%L2O]hR7P;L<4aZLdj@MVbUdR2K?jDD`qBod>0T#Y4-R)\fSt7aYJKq^;@)fQ>"Wc?Qu4D3fk/qj[`;R.@cIPOZ`u*f`(R:o#'iVgD7t,#7b`+N#7-N)U#/>H4i1#\CneVP(b\JYs3tQ)p$;SCUrPGO$[:34odk#J]NL<#l4Fc`mWr./!>+^ua-[LToM'X:dKXs:qn*oN7C_fAXfd%EWF>/D4Q"M?"8-)1s2oqAKbEK\^AX'FcOG>!Nb']j(Ss9FWWKIAT.I^NI3g?]4hq9d+/i!H%K~> -endstream -endobj -453 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 452 0 R ->> -endobj -454 0 obj -<< /Length 1295 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4h/f>L&:aF]_:pt+M%1\cO7oR;,ZAoif-YM6dW@OU,@]@0Hij3!rq-F?U]lYYpYL(Yh;JZM/)A%sp8A>/(2oOgff2ITr,1rlE&k/g^P\_Y`.nrs3Gq(h&4EXDEqdp8j81hdUCG(_8Os3(8UjFacV\-M2XgrpXn$\@TGiq=*]G(Z&0U2_N;6V3N.jutKX=6\p9/_PpsqiBV\uM'BS_J)[$?5EU9$Y42Z"f0@\#P>=%*r`J%!N!;!oGqB0H_5[=icA3LS_?mGD'SIiU#pTO8XZm$N)oAJK**=##PE+r<\jUD2d'@I?h?j.G<;+Tk$5H?FPdi$n)_beBSL/\!,hgJO0a1^lq^@JROc65n+'XR6(mVa-f5HMW0rt-8rSORSd5934_[K"iInS7_;0/pP6[Jr(@&7rcX-hZB$g4(]SrRZoZU/QupT42"JHa$,EX9MKOAqTKu4.Y_"H^"Qtk:B>]'R9ioH#>M>E[4\3aL>/M!7QA$G8E3:-^DZ?HO+@im[E7s0..oTq+f#4.S"Zf8$$=;b^n&5X"#nuXiR%[@4'7*30Rh;pcgbP6@:Y'P(XaXOVscb#\%?3>h1P3@V/%X]t%*4C'_5L4GXSF3+_ACr4T;C!I/Z9Wf0$aN1EicOPXj>!b,V#>3onKHom>Ud3'to?rBr/RFbqg72%umhtmGp%Hs,9(e*s7W[Btr5s0ebB,Kpdb4%Nn-[q#;!>-.05mh7kJs`5WRJG2;)%(^3/poV.PC_nYlKcK`jn_`O9l;%;I_T4fr"5GWEsSn:-cVF`\0sb4k]uGX6Ln(_ETFEqoAp5p6P4lVNb4L^6*VJV-0c"r2*9OaBoGZr2FMS6n?fj-t.@.f9?D8AB$R3&?&kZK-Ni@5L!/iI$]$Tl5d[M>#2,3=eGH#@@?jfG40U)M*X@ap2OO^c_c-=`eG%3:&?mW?p7uPF["'S:T"=l!3tpL/6>7.GjE3g4RK(R=am!eRUHlUn\@)q24Z],aq&D0Qn7['(>].8df*r1SEo>sgM,:0`rN3N;Z^j!PpC]j,pq\\.L":L^f\1^&~> -endstream -endobj -455 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 454 0 R ->> -endobj -456 0 obj -<< /Length 965 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHJ?#S1G'RfGRn7*hsM8/$eSsZmA+cs,bnA5`W>IUZsOtFe1fWW>854#(OS#d7fM]L\rI!Y6E2`ZjFn'2)%!=V6+RKR"]5p4N=";!1-EeGT++MIqBVGHGgGliGHpp1/Je=p+LlQbtU?]"VXaSAlE5d>sZ..#o1VOt#p^0SrpB4&B&4TTK=TS-"2DGEC&4Dab@UGrr)P+$$G.9WTS1LQtp.d^+AZ^Y--)jW&Bk5I*MFZD@6ZVDL#>DF@TjPkBc[APZGXhK.MaZEM$/:VRO)smPY;'m]e(?eQ?T%r7[p*_tB$^n,^o=mn$_fZ_j*icY&igJ^YUk"n.!#`il=A>qFVm-nlKK`cUL5;98;dN6BUPA>Y@"!56ke#U$<=!(:i\9Y>j(#6tV(AFO3%UjZ@TBp5Yn"H@2i006^:qVgm6SEEH!Uk'R5FRZ*#Fm",o;aYeI^V*+rMM":Vlm>&D_DFe0'o?%p?:kILp0^"9i\/dFAW]&sfFo3aGo]1=Wsa[,CHMN9MGdUT#bC5dEM[D5k4f;1I\]Ej^eCcC[8[5dZ9QHq=GR,bGJIt;_deE;&_QqM;8nBJT./sI^]OWZ[#uLEuV_))YF(1R:!LE[N?N~> -endstream -endobj -457 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 456 0 R ->> -endobj -458 0 obj -<< /Length 1000 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU3a_oie&A@rkFL6s\&NMA&;3?f3M6C%f:cAZ,+&gW#8]90(6Bpk2$?B`iP8;g&pE8La!K$mq#$!SYW*]M.X[m#!=U);V&]dQ$c]7*k>8njIbr4hZ-LA'a0`Gh'9/f]N(p)Z!S&JkH3kp8C44+hND;fSEa1!inR']O7__:bn&(c#LQf!7>*sH:S=I9M(hja<;mIcKaGI3s#5&*#u5Jl\\,QbK!;hQNo,!]`/_o+*KeCMIUm.+,CNQdUNP<4>W)J;X-X@+Zrq8),HglIU7Q)ECS\l3V0U8[DgS"^L4Sn)o)RsdTW)%Rs\ba&"lBIna)1jb))e&2SG9s"3D(&29YP]bc(B1j]gLEId),,M;AOEd_R"'GH'J6b3QC6U2igm$03]3IDoMf8l0g..gE`BLn4S`Ll/]0klUOWS!?&DASJ.]2%i2-Fh9M,GTkpY'U/.2$/"s&4e5KqB&`NJ(dE=R=MT3+;m,*_ku%XF40cISGb=!kd2u1=$a%\[+2]E56ak2RY2Br6@c$EQcejR@.sD1:LV]cY6ht^3=0+g1$gIt*244fa_qie9U#,t=*K`An+3E$V_\!Fe4Otl18dNF$^V00n.PN+:^k\r8(K2o9'efirr]pC'F)BpH'/Pc-oi/FA7-`D&;1;aWRpnWtG")nh5@d92IK~> -endstream -endobj -459 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 458 0 R ->> -endobj -460 0 obj -<< /Length 1598 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm:H*KAf,t"ij3kIF^"2H-l-fCJ=oL$nJcVa(nFn%n`h]XWFKU5H)^^O!_J1V5dj1Lj%:Cq2cK^I%?3jT$LoSo9!K^/HeUZ2*Qr+D;jkrdG`fC\*i>G:2#hR8=(R7t7r>>Bn)`XW4HZE(AB>(f\]NYG)PfO@Yo!Jd=j0dMCU]W_nV^Lp!C_OR3TBp4EpH,"g%<[j/Q[_"/X"EGG8U:;pl1GpT(*Z;*)kh_!m]Q"CI9;pY7Jl\pfF:>WLZYj1l,UWYqdEBr-jWh0rWn2SgDd]BRr4F:?(QM9RU"NI(_\hM8hJ7r[:?hSIKAD>:%9)hP-LGrE.oarO-GR.AuTRl(%I&a/Tlq<2c:A"RC6&Z:$KY!>*&B]e+AJq'&E-,8<:QH2PSu(Og!tlqdS&[h`5GO&l,J8Z]e).1n*3/f8.V4Z(.M8k'#B_?KA^#I"IJ0Vf1K/C%562/Kf#oj9769WboI_0tseGq?1_@E+,k^Xd@Uq_kGV%Qc6t#cah-T$in^PJrWXoe:DY%4P?pGU,Ca]\c;T*doS_iNT8\D#kn0&`2d)R&gW4H_/5pAOdF2SGQ7ju?j9R'e\:";Y[sD-T-nJK%Q=i7[Va2_XqA^pei:41%k\Ngn54VOPs)he#-%rlT@0f6d#ec=%]EW*[1P&1VQQ>#l9\P*'hL+D9&(O_)O3nSKHohQnXPmS#I3U81O?JIL3d`KG[B!V6gQ-#m&'VXfi6Nj@2W%-SC+]4Th@j]#H"d"Clpr%T(ZtT0eJk9_tqh3h67=m_`PY/ZWPX,_J6qb)-:nU2([:?p?$e<[XYT[[p#]Z\(YZ`"=u+^q;ts=!US:g1gt$,5>$Z!S]/Tt?lZqFN?Q6@g";W2dt<&r)afE_Yjoh+jb(]DC43ZOa53s[=F^I*V=e=NC'q0;0i\^kBrM:NLBH`jfFlk=bgKUN9!?H6&X&(,89hK(4>0k=YH/_S/JW!#],7^Le20kmqCY7QlMq'DW/u8MhXL-n.IDTU-@>>0Yd6)-LV!-kq#34<]t>NM]T*'F4P^.QoS&H:H+=84k2CZu6`'^.@8O'<)qGd$NjCOg<#>A&PB`jE8D/HK?ZJIYB5E%pDP>E]'-kO>G^D.?1:LAs365!j.r$eYcA\g>[#APo&bL5?pTOG[h$INihDI\@[U"^Yf\?+2u8AEnbf/9/Lr/(o703"D\%`~> -endstream -endobj -461 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 460 0 R ->> -endobj -462 0 obj -<< /Length 2370 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatTJ?#SIUn3+P'fSbq:;>"YV*Vtj5m@#UYR`$4#/42_HF=]g,>tN>^YTH)mG7m]YPVa6T_E6TjmuDT^qt18D)IWlhN^E=e4Dc\@a2lFQ#Lkcq>T[Fq&IAdT-&H9e-7pQlm8FZXF7K+q.OniEU\-H#_SQ!8AZ7-"PT8,F@g9O5"gZg%:,Uc=!)&O&I_%OUJqWO7nZ5PRT)eO>b?iq-Y;KPr0[!K$1Y8%?7l%DlAF50d>LM.*^4]-cTJJ?Ps0%=D=nnt$n)p;S4MrRO>\A92tDLm0Uo`,;n8&OmW&*NY5*d=I*_=iRp.?Wt\5EBs)0-Sder_^l(ch!.VaXh+EjYsg$/j]V@pou!f&%JI=ZRC02#P2[f6.=moBCr%`Sn+1igcj&2T,ILAr'Q\##>==>#]fUUXpLpPe&)-8m5!\5:7^#I10D`;.XR`/ImYeZ(ls%JrGPO4A7/ZL++&,[\l1_g&kc9A(L/D)H^<-W2hMfp?2ef"E5c9>ZY.ZOqUX#/o(4#UuIHWc_5h1ajn=:VK'IKjK`u"tb4&J90Rl>L2fqgF0:N$rUH:_h/-GIS)7K=mqg]3`KXX,J)3$Z4@_[q^ldX'O+fn4*[[IC,/ENj?@KQ,D%!J8o2XID0m(tn$BGof^-NcBo%=\iY9fi1+mo&Z$m0$]9ki^qMWHC\-t0$]uA_BLLR9*cc]G$uu$hpfR[E'(r4WI?06Y"HtGGfRs32k#W^=NSOlp'=+u=+,tcR.T3QT2+S<50j3+o)@,&eaHT2bHoO0RQbV`N^HA>S[5==@^mciZ8/^C[]2>DQVm,QhuIEm(<1]6&[o7]1YKhk59nEb@@sNm/^'O[qLKY9XR`aOH"L`i.q)3tZ9Pn2O0qZE$(MWu9oJ+>)Z;u]m\hfabBW`$0b77?iA5;>M0WNF/nJ!rP_<`8HuXRr:M2R>#lNZ]0pQ\EQ9NDcl!6kb#>SU!El`[@/#=$^n)ThN<>+'eP?B[mbItFo,HEm#%[Iu`;(%m$8LBgZfg)==u\8<=O/s5@aeO<+)R=a;fD+e]!LT67jmGIPbJq-t8<4,(nlQ5F+0o(RM-$s`jFq2p&ih\+Dbb`K&3]e6Y%JZ'_7DMtXUif,_3$N:Ni$B=5_jPB7'#GDPSrUg6C]SDNtP?pV;G=Mt5l:\`!a9-OAY4&VK-Go#88\s[IE,.4uV#YLi(mb!Ku-NN5W,3K>\)@$A:p=o&dqBJS-#jm*JVdI_cXhWpIY3+>ppFDW0n`3:;OfA#1b!qVe:9:8k!75Y>Er~> -endstream -endobj -463 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 462 0 R ->> -endobj -464 0 obj -<< /Length 1733 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasa1gJ[&ioK?R?iIM+Y#g7G$:V/\B91ul)$%6MKN,b*#6XjUQ"ZF'lHR2n)NY<:RQsk*tF2'4IVh<1Yd(q>TS`sVA3m.PI>ks-qS4<')G!1LgB=`*^*"dqNS-puA;no8p7$,g-2*49HRq!5fg)F.i)7S)o;*,s);^9?P?2>]>#Or8gV%3H.NRimo8BE!c`kF&?tp7*D_/.UED^k[M;DF\s98e2\`k#Q,i,Ik'$'fHYH_9j'u\aNC%*3T_iT58u:4a2P4*7A3%WZSc`,>8rpLJc%2GHqSJ[BBCVJV_nK^\2b)=Wo-5p'c3r"QZfZ'_)ROabuhCtUYaZ=R+O$)\0h)2JLRYnM`h*]>J1o=e,*R:cDUsL4\%0V^.Le3c.i_lllO[M+V&7lV.?tih[KLSc91PWkWZF*F/_4\>PuJTn0&ZT-WjC-JC*6eBT#-;raRmG_K6)=/[_;;u0/l3h=Q>"Fp:9C%3qu`oU/e,a"5,[ZkpckHE\h4D=Ua^&+/]*;q82ZMN;TWk_+KXi0aoOtmiuT#253gR)$aK%(aIXfNfg0@G.89`LTNkK`\N6jk[/!XD^U@B_kRefF#)rUoZ=7aGW"6oR%YB"UMu`o?EH>4*^NWO#LT:rLWscOrDLaj?TqB)Iq:-a`db#fMI"?B"G_qKEVCrM^k.#k"KXrkhc+Y1+r!cW?,:mq2m[K[SliUJ7Mg@6uDP[(..!rJH76H(.D[g%:[J#t3r5ln6m9(Mnh[nL3ru8\R6Jl5!d8sjP2JrUI[dWL6EQcQaZB_3Adg*+uTTdPZq-c4sY:34PTW-5gj(s*E?-!6rN-RXUZtUTpTii=N(0"9Vo,8ODpHl3MY3G7l1TllILM)M">b+spq]D+qHZ'sJ].6qUH-)c:(C*!"2qH*LE._;:3oH54,fnO;kgY:i9AMoC[]c6i?C\3\Sh,mCQAf@;Z*KePP=9C-H4<'i8&k:0QmVY.q&Fnau;K]Ekl+OHa5kY!AYFj)=;>7H<3_B0knpV>?;C+Z^I0U`c]K!]Ibh32lXYd[M6@geHbQIFRf,GCGHa4cQ<'O%.KLGq4h]/eJQ-,e]!mNlg%B'4,Cik&/~> -endstream -endobj -465 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 464 0 R ->> -endobj -466 0 obj -<< /Length 1252 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0C95iQE&AJ$CkdF(10]GHaZop93K$C"t1l8Q*VHCntmAP0'KTt9cd/Uhe.$J//ZK2jQ!J@1[^3O\m%='ZLSR82o%T+(%kG'_5N,T?n*tAQdHBG*.`Ae]!"eSQ8hjam`4C$($bXsfpjccVao4$[E*eb;Gp?)90p`,7mmU@OH-'?$0U8he`<:IM[$;UD#,pk$7NQTRJic7/-0qOT:.UW5IJ2NN%7=c/hHuq0U(^!@"l46!f.,p3p?A!S-,M#+$(2Rh,6(`!5#9dkKST-tj*9uWM-*$7NZ`(/u2sLSr8n(1t,COcWH[0i8@GD3]?X[c[cY=b3/Yn'KEQ)dm/+64]b9mGR2=DA5KGfRXKAi6W3(a(l%d`3f'd92@KR4]-u:&K\4VC8aFHA[0\N71ZV\qo,g4:G0s)KlC@1jKX"s05]('m1.J7ZF(:))BT1bGNH!.WlSJX%0H;(@hRsmg*9G)0[I*Q9":S3a6:KJ.eDLS&''892$HWSs,YP+cZ;UU-K:22*l!lVd,4ld,H+q"TJLkdT[#Q0,a),,'*'8+ar^f/O/Vm_aOFaD\M!!PO2j-@`P%N[7IM0M3paTho#!B.Tm\JV6j([*dhaR\knH+e2+;M@qgt1C"2o[Z-s+[Z@*jJ'p_HK.XQ4jeOGoh@*9,;:ILlUq%dCBJW%OLm@eDW)8_)lEJ.PG(B%LJb*KG["m,lJ_"9[OISQXtZL/dQBd@hY7roS?=9mip3K:u$JfW*MXZlgF'fh7A'R8>=D28&n5jr.[C`%3QAD-"I3FM7gXMSoOEX>)`V:].tT&Lr_1U+Q+5%X;cC1n68\4L5[rq0h:>=:8%mGH00ji0^q5%JQ@M8]QUYD_Z-5admO=fd:X<0)VoSF*ekm'DmMVkooO/%CjfA+`a_Ep).fWW6OjS)kaM[*!\D'QWdqGj3+l;@16C#gp86ND9etU3A6i%lt?dOT~> -endstream -endobj -467 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 466 0 R ->> -endobj -468 0 obj -<< /Length 1441 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4h/f>L&:aF]_.1nbF@[N]+Eba>O\_*!'sJhcG=n$](1WitkbMrU#A`="@X[=.d39gVPkSXn?:;>MBn$D#(sa%R%AdK`kiA>48T^B>5oacBFiQXOMDl&PWL3\$#N)R88MG.ko*T2!LlRPpp^R@^V/SPgG5J)8X%cTp&Ko)C\9,PfIJ4uV9nS'N8j#,Mdm>(TnHea;X:%9RTu2lIf@:U8PF\.47EPI_4e!`#RuELPC,qAN+)J^hD2)+_fEX`MJ)cWL%Ags_2k]SDU_d-eR7Y4!IHXn=.'.DAT?O56Mf:kQk@K)M\$j!\DcH14QGL7ZWCM]iO.#qR/B&abJ_mo>rl__o9QA!B\)0?leV(f@#d<*1W"7?eRH$'C.do?Zl9Z3#&W-?h^pRq#`i7f"pdntHa>K6(J^j&)3cfgH=b5k;fU`Nb%M`rBp+/e'\,TrYP7E7u]G_lN_L"*)UFqHJ`u]K^@K;t7@kF2#F!-\-)n198ODdlp$U'\Xf^G1+6Fje&o_f_fZf4EX"",QV28$n_B(f]&_Rr^,LY2tl)6k;-7Y%W@GF?66Bc@=d\!8nA\)N#6##`-4H?Hh(DNE>,3<%%AHudR=^7qFGOh5#M(5QCDl-(j??%\5g>dYM*)h=1TBDB1F%MM+LaO&Rk2,(<-JocnVL\"PQYu#sUR!aJ1.EtIKeWBp4;SG:[P>#4UZ3V:&"crAM@g(FM0@C7S&SnKWMWF;@kr?ug'VbQ2Yg%"QF"D;BtPLG\OMq5M;nqo?%`o*`7^>+c/gZs%.hhS^nISncSr=m./36&OZIWJMuN=dAeh?GCVk^6tN8i3&EGHXI0D^`j"`47/9R4F<7,7kS((HP/?iKQP?&\V*n\=.CA%4c/VPO6F\^hY()OPd$8\gB+,N1$^MgU$b`7RQnHiSlr,".3U]@lKWDXlV\5:AX".L`6MuuJc7AYk&=kVbsdTjYge18h*PpVf,LHd8X4H@W]_gnJsmbTQVD\HcU?*:sf5Fn_7D03d:#EL'bk0Ale'9#J*d!*YI^1TFPuW\fY[_If\'5/s$~> -endstream -endobj -469 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 468 0 R ->> -endobj -470 0 obj -<< /Length 1537 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4?#R&-'Y_ns@!Aa&nmZ+C2XOt=qJ)S4=)48mAsju)E=u;e=rYoXhp5\_:L#&^N1>d,\^>Tg]13)_f`^-AB`[,t;T)WctrTPn_;34WcGmG4!fFJGHS5luT;LsL0i5a\W[:<7qoGL3]`f@#=(?LDh)4`/+<2!&MG^g:fr=5\)D7lK"/NPN3VElYu;E\LhM682^`WZ6=_eC1b%7EtbM/jKlb?Njq?lAd@]'G]PO,oEc:)E\1l4`(\[Kq3Sga,]9I?X$R=7a&."3RBO:f"tWt!746?):@=5fPVD(@'R2H0%Rr$,XG4$MiOR`pLn-YqM'su80s@$(E-1e0Cm!&J(G;U5-dm3fSHLN\Zet%WtB\^rScdi=auqXgA#3tK`&Op+V]<_Te('iOZ!&>`T59kIXV+jY;R6lT7gWDL]_X9TSa)!eQ-QqVtLd8Bb0o/MC@,K'pC_3?tO%kl:5!CV;Bn&k,Tsbq;H/8fBh=a3g;iOWJ`7eiKSHe3u9l\EXK5jQd003A#2bH/04[0_tHcf4NHtH4?'6aRV%(]:6C8pEX9'O3d@b(_5?sT3sDq[!VcdqQWM"fak/tn7T"YqV7nQVX1g&H?=Jkn>qXYl?ChZ3@tY/uT-ddA5eJ@F88QM6!4Vmkl=$KS(c+?PlNf3h+N)Fa^lj/DaPLu@8YB=J/D1cMD?inOI;-BghlYqLT(8hcAt@cAW\lC_a?!QBl%OOK)!D65e)2XFr?jl4i>o2B]_<:IcC)P14'E(V++isMC@`5p77S?i-U6T$u,,ra#Y\h_%7J%/d3lLYC&XBb[CLPJo?%Y%p-pNK\M=]eh'B%7ZHVEe.%C]4*sYe`n0\biU.#EU/RY[s=2>/>.qD*+fh`oW2#Rq;XYo`\T41hW70Ar7+`7cSmg^-'LDKP;=.D_N)C`DHB"PG]MN-'HR~> -endstream -endobj -471 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 470 0 R ->> -endobj -472 0 obj -<< /Length 1332 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK99\*g%)2U?kd]C31*T/E;KHS6S*>+E8\K:nBf[-cVUoR!8YP3nr;0Af68WQ&aX#o)!!+/B!r-0:R87/&NBQVQhj^es^@s=tT!*Xr_k^1N9G#8$I-:HL24NI[c9An1?[Mg!o09T,`k?$R`Mqs!I/-`Z<;%T&b#IgJ+*\Df/C0AY^X&c!mdBO^hu3N:[FGd0RVMQ&"f7gj"@c&02tD/lY/7(=m@F-3Q,B;S^-)6o%+I9+J-"+2PJT6stf]M()RK!=Xm2$0^LUM+FpglZ?@0%*uQZ'2"``@kh,r55+a_oa\fNp_oldC'(Q(;q>L;Q'h')S(G_)il*8?l':)q(Mj?+O$*%Q7B0)P-'epV4Y$\SH'P9D1'tO$[=6<,Gi[@1*6*C2BAqnGXLMAJiL,3jSM+AULdD14@[f>"AH+p]W`O:BE>0#Te(qm)(hWL7ggf9L,X-;9?..90?cK565`JJn?Ck/f1j7OmV[`"6hfk_i94N9sPklc-@Ff.,Mq+e,2?bKk-oXGi80Mi@iE,_1Z1DO&0@mjQ<.[gU.FLg?SeM7(Z1cQg<*o5\b)WghLCi?bNULk4a.]8T/-`q\\-(3!m4gg,%d,)DAW/,;<%IWhqr4\s\K=dFS9'?9!G!o7_"DXSYEH+$L#F=G)KA0"DU)a^7*;e%CD/.WM.+h-J5+qcFP#7o2sq)gW#'_5%@-OO:Y:ha,k=_OX!t2fY'D!D2VXOPBA).''KYSEITr[+Rr+''Q`2Xq.G7#fbiU?V3k,4Fto8j&OD?t8Yr?U$A+Ie[=*Kf2i(u4k`ML-P&1?V#LId4EVY~> -endstream -endobj -473 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 472 0 R ->> -endobj -474 0 obj -<< /Length 1007 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gb!#[gJ6NX&:NH>n09Fu'AjG7I4>l.<)i6kkY%nTPkDm#2?>11g97]$g":)1h..+rDg$0`b`$1^-97S+Ni%H@5l`MB#R<$`Tb*:d>-7t@;A.1YUVWW56j4js["b5M00D3`9>[g@g2Vu@3BfDk*=@L`EHLAV0DInU&lg9)gdq!QD1*.O.IfD/+qdE;Dp)`(Yoji0-jRQ1uo4Tk*3Zifa*3nZ-Nbq/b2?!QmXpHCQl-XA\!g'qWis)8N9c@;W^kgmnG6`k9hR5mUO*Nq?sUfY]8?i2T8k4H)rWpFU/0DD$dT,)h[3$75:jQ0;uL;aIA2LP4"$1mE%udOl/&,6AJETQ)!&[I4I4:$'q@N^b"/7t:0qU^tn#Lm0X8=V$YT&]AHc?70'MMi_H6l5UGh#i06*GP^TmDKQc$mn]!"-q&L`SEl?]AOjk-C/\.9Dp56HWU6*V1i$NA9ln"q>-i7Tc`c]GHPKajS>Xq/[hu,gTDrL%"0hK)!W0tu-4pZ>X0C::Y@#:(U(EI$12^O)aNWTW.jH]7'4r+0CO`A;GjO(!V$EL8_]m7f)L2=m2?rQtN"$d!YP,b!kCLS';P'?XUb6s/D67F@pr_iRQ/u#<+^YIW(&5o6R*25KWO5E\@q,kq=P0&FM3sbLt`(#2RWja&-ZtALR0`;*5;RJX~> -endstream -endobj -475 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 474 0 R ->> -endobj -476 0 obj -<< /Length 1111 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK966RV&AJ$CE-,\i)81:%Vl#YOdn-J1,J>q)%`,Gg>7Z->cVZY$mZmqe^I6D#nj#YGh6`b!Ml6icZ)PE(?gamn<+Di.2Q";3U&E+C`pa58(t)1,gqcHISFA)P3r^K#'%$OC*dECn?rm)9Y^En[r\rQjN_p#Tk/IeD_O57PXKVt"l/`oH#h;R!^12E;LHT5RIg1leLX($,Sk0Yjp\%N/N"i1aQDZ)fc27bZ9X*/"_;1Il^rf'j29(+^;@M6d0HjOp`s'(nl%1,Np!bLVbF=qF[=a`r^dS$PH'-1&p%+Dej;g"ma1"q`.[p8fH/B3KE36JZYhCNat8K_NJ"+eGeVGZRcheCRMTO_W,bP#Ubl[]=-VV[u7I6hVZ]1^)K>%kX[g0J2Tih,VMMI<5Z3g#Cp.5qhD$fb@\*kD2DRrgUIP\P!7W1n:d"-^>8"[rN`$7S'H0a4q'Zu"e[Pej.FVDW=dY6UM&aGA\(2bK -endstream -endobj -477 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 476 0 R ->> -endobj -478 0 obj -<< /Length 1456 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHL>Ar7S'Roe[d%^]=MC;?2mV)\7/40XnM7]+O-kqTF[E,'ea[uBu99Bp6`)+1Th3&Qpnm$Gm+6gtfm,C'JOQUr8U6p5OC5*^hr?DRCrF5-h/rH4=`q_H08@NC"pLhc5S-G?tc851]LHXPmrq>dFro8dQRIf*7r&MAmbasMLXsT#=2fpbRp=NG6S76Y']3G>*Pd68s$mZ4/6`*D7e5&$DUfaM4mV^cR)Zd31q2j,o)cX2tIaZ@jN[$.bS:FHQ:2b&DR3/!3*K\kF=Yp!\b@IqbTI7*R6rl>!)a.']QWt57.`GuQ94;T[6qYU9cVXDN_1jZ.F^HS1dV@80EA)Mp3cjceE/`!ijf7(mAFQt1J7(sQ9FhUr8-*)3"]Mp_01LB=s##!]^bGPGs[\P?cZe=ec9=jWpAR\eDdb7g+%sZT8O-QtZ']"]2*"Jn-*=%Z\4+,t*S;mYen\DgRX,+j7G[.026&>?F9,uJ[NQZ*g@r1h]XO/qpd0[Mc7u1X9Bsmd'Cc^Vj=AL9KW"7Kg,1t"FfP]K5ZqJ;Nk0bP&c7V7:-pJRd2gPRSA/h!_MOM+tH]E/eA2dBjH/9e15*j_G*C7$abhX9)T_q&;t5"L&;LLYjI2*-8aplrQHL]O1Q-&73t'J`;j!gNp4Nb:s\!fWfICa24=&XY5`UKgZ;::^M&1l4[[1a""(YO-tT:Y-MIbFpcee#?W;"HU9_5piNRhBEG&d+JpVtMF9maO?^#H0CW*W-&-E&g,I'"/gn\!5j+OABbmT[M'7;fcB2l#B.uI>/rN+)\X^a#.5DYQNO5EESp<:ofVJd]f`:nn6gtJOXaJ$1"l3lH;2WQkD7C4<'r6U:eM]=:0dKf3YBE+e4@+b^l`?p5CJ#+5B4S_%*qf!h_$_`.H+D@"""@iBKT$EB&*S7`+6+s0j,,f"uIZZQu&%=@XX8QKL+rF[:;SX>m2-as1GheUa4BshB9&M%P^Ed5DlFtMqNak(h9:hK_t`:)st]e.G,;b^BgpU\m[PMX$>MuN]hNie=L'MkrV_6W([~> -endstream -endobj -479 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 478 0 R ->> -endobj -480 0 obj -<< /Length 1242 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D>AqtE'RoMSa;^U*9^F_tGQMT3Tcp\Cirp!7>IT:JdQ-Pos#j-D`2BTH?H,rEno<"OcGdhrm=#l^hHXI?_(Kc!iH4!=ZN55Sq8!Q$"$%7;"Q@]FB$U.7:Uer"QT$kd=5U`^3j/Xp2EH+CFacBhcP":e?s3gKd2k^KRnH]>2l7<'1L:s0L=KBKVHuA.m_E_D0Ct(I\1l;UPK2ML!/Mnmn4+-X0a5rf'l#K"_oG#;nh#T-`Pus>;O7]hIgW./Kct]K'_tsI7UrW^nUqd9gZt@#gUjM[*8sX*r^'^E6A741#m;E[8.N*F'+=%"Y-h&`<-W=KCAkF;@$32Lmm^[,XX%k4m1i]X`:oWGM]o!khq%r@b^V=B12g[&j&B!\5W4UCaoHI;KooNkh-%6JAd"il2`Y$2Z?)Cn\Kt1U_AOO4/;Kd#cP4@,u#l+*lE/:`u13>C7`=TpmLM;Yk#^*2fk@-lL5'L^Ra*L(G/EZC4o1Mp_qpk:9pfMJPqaRd3!;[E17MhtuH7s##!iB_Q[#?V\'uOoWPu;K7QtcRc,nH8LYolHOFo=nnje;i)rQi./\U`Bn_i6.G^40HlpiihAW#G+Iua)T*e<)A(o]2[rBr%d_9+#)"u0VU8V,,;'n+9W*m0OGcShn3+<:"1lfUj3\EH]#Rs[LSFLE'G!9B4J/9[m243X[+0uN..Rm3BVB]-C:9ogjbMT,$Iom!>^P:PMZQNoi`f/0+@`Ac+HI*Ids5.H/?:8H>*Gk1!aL%"8U+1T#CAl56lQH;2lXm#3d5%gb2t~> -endstream -endobj -481 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 480 0 R ->> -endobj -482 0 obj -<< /Length 1303 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHLgMYb*&:O:Skg<_4Wd)pnIG2%W2N)[^8Xt4.Mh83J>E'gePjG2q^Q_-SA"'^b"M4pNORgV`):$GD9'>6Nq_-$3OQUr8GWtVe`;hoir'LsO"8OX,Z&:q]r9/MIrc*:5GBn7NEV7Z0On13p.])*9jEu0kInC]1$e%H#L`-idP"SgAf;^,1$XW+H"fnkX:PM(Wg4J-e?Y1TkE1ss:AhV4'!>%g\j"K,=Hk*eNjD'/DP>B"YaZ:,oP"d$_9AQu(G#WIMk/CMS#H[9R>ieCP-9::f\u5E_RVP,XRJQUg<_T_f??/nj3)2@ger$Ah?gJXAD^I[uRB$KQSbsCU!6"n)IZl\cP>RAHV;d%3X0Or2,/E]T1\\!/1[&qqi9_gTOd)EB1>0HQaq#h.d=M:GCL/\8-E!.50RR)l477rT@FFYC&<60oOcYGV:lY[lU8hHoFp>7iT`p_h-F=N?(Lsq=<=d(5qW;I$J3DT4I;o\]ZAqjI8dW$:C//ZHsPG\"NqS9SgkA,+B=Ir4;;q@OB9]DiHV8>f%G/3aI\SP"Upb^ZX:M?3D36u>;#U:P?qijeUdAFXp;n3djjX(59M4lERa$#cpLX_D?NbI+qQc>@NWnYB?hP$TBk&eE[(P(ED%02=!d0$!/8qLl7c`>&Vm7*]dnW%$tjm'Vs6J+Rn.7#)-X/#-1;c1-7,kd7%+7#GQ4^2ZO.Z$5+co4ZY@IUrXX`>%UpI<.Dm$%Xn^$t'+"-jiJ_c`"af@#$&!QjE:1rJjm5haDXF"c$=]Z]!C5<_`M@R\mL`tuJ]/Mb]"D8pftu%lF[+)F/O"f]&B/OGqp6S)P59//HL)fRCc?sDd3BjRoe^S5nqDnAo]CKFZnW^i&8>qN4O;K/bSX_Ta(E.[Mq#,b7>lRr08eR^_0iE;<2a^djH-*rcN&95"YM*!0\Uu!q#0YSNIGA6L&%9j]&XttWS:]b2lK'(!fch*SH1ub~> -endstream -endobj -483 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 482 0 R ->> -endobj -484 0 obj -<< /Length 1725 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatU4969,O%)2U?kgj8kdH^\oSsl)61nF$X-IMP8F?5@Ta(f-^92SITn!=Yo&1tqC3kbkBn,WYW&G/u-q",kUI*_JU@_M9$VhOSar9$.jcneTRE;e98[a*cC%AINo)5cf)kKZ:enH[\=4fte#o7So_bUEI>J,B3,mdBr;?[nY/Q\j#q2f7Sfak'D5jlD;HgCeQd`/Qk[11&',*Z&T[]VO#Po:2="8kP.Q-D/3:Jej:^Es5>9YhrcuE,1VfgC;apo-Kd-F1kn9gRj%Ea'c87O3UU2iM]^s>%0"7Lm)DdWI!bdL@V*q5+mi+eB95DkhP[?^iX$%Hd*uF):rq<4$p^'m:.T`euJLa&:6U1,MZ?#b[rqW*;,ki;`DWn.dDH^0H!C%2WYFmWGN8L`0HM+GX%TOMjZU!>1`:n?Q.6Ofo.6FZF\gZg[H)2,%6E.eq;52m/AO-R[.FA/_^1P.oYrR1Dk=uZCkW^HqrVi'YeDVqu)K'PdU6e0&V@]11tiRa6D[1Y%(PZ;:n7tA=L(br[lDLbUPR0#M4$BA#ZGkr/FHPXQ4/,28WU0N=FT@i3'!/Rpe@?=u>.!;u!YZ-\7`f+1,);*JMRlS27J2*9rP^%'KAe[gp3b]$*R87Bdd9F83`7-Z'@T*>&>tKbSQUtJr=k+p+oi(6mfAb>>ZXYAu^1^/Y?4](1ID;.5&n.)>-h\oLJ72__(.o2APeG2uVV[GJGg8gK109n'n7_M-h2p0Gij+G\Ke*)>;sR2&%Zq4V7gSi'/m>LHJ]T/GI5d#FN$]^?2#M%,Cbe@Sg(o:<9d_+Qk8>6\?Dg;W+OAgo5'8]5>%@3H\Ra>7eG8T=12#kXd`d]HTl45K&TsHFY'N(KDcp%kcsso1Rb44+jI@D"3B@F4%jZ`@>uf!tDbAF3"gFig=fP?jXm^]&,X4,g+U^'rT<\RuQOF9LC:sb[rTo"o>olS;A#U&<2toEfkV):WGGB?*6t"#KJq!!6q/?t1>gq>4uR_CTnTR(eP_94WCYLC>7oL8tLki'GDeXHI]7*s%lHOdD5JVDAi43[n+%#e-Eo;P?mEQThI%7kd0VV.Km/.:5URk^?PQP5+-ghDCD``p*DS1&^Jk?%X:0n8Rm7af@Bn>FoLIT(\YKNotTs8;ihmD_Qbc?,I'@nFTXlBElS*tAC%bfa.`B;n2n$#$/?k5~> -endstream -endobj -485 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 484 0 R ->> -endobj -486 0 obj -<< /Length 1451 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau`SgMZ%0&:O:SkV3)N>Q[7N9nj7rV8Bl;-1mNU0TgZ!5h;UGu5+hjc"-.P+.nS`b+Jq_Z;gc>rZX'BgFU%UqY[&Hc?q)<7C*1`^0F[_VQAq\Z2fD.@^!8=>4Oins$]j/k?KkpJ!a#ZZS0J'H+H1hHia_!iSEKQ_01$%('k>j&el9KD'jb7b,=8$3("4#m@cFtsQ@F5m!i9[Dm'TL]]9S;%[Gl=aqu]N&#HmW@3.0S+5J"]@G>gM[#@QbGgQe\[iq\RK+B^[ucoVk3BV2bThE-(W4VU\VVNqXV\W0.Nfn"AjKhNs45r/Vj]bRPA,\="BnDJC[**cL6J5pl;kO>bWLJ#Ecm/%>iff;\H^,+`K^0Pdc"3,._5FUS.SsQa_!3:oq%oe2lBq*eIEL7bN=8*Q=t0>u)hT(BiOlon>@1c6bidiS649oUJ0G^<:]fneXWRi78196PV[;t0jFpGOmq9.+hhd?+uP_`1)07k>ee/Bb\Sl6HfKnUUSEXu;=)V%KoI,%/bbQNlo#X_OVJo8V"rOnoP^.3lk]5D^4dj9Xj3@\B;s%6RA\M>.\l\!4GXU\ocl#h)_;+/6dQqir7t^8pfscm@G,LE`B+-3d``;Jqd2&\>"OB?o[7:P90uf`tbQoH*M,*AZQ.\g.G'jfd+&^@Ti[KJ>,6rUoTL4TT(3E6L-$uP_6]1n@cuDTm)"/8_nQG-JG4]$GhJ(&cgMWdn?!BeQm7[1i[9_Our3Tn>h)OJLa<4JS.0J@AN$g8/^h^.22C -endstream -endobj -487 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 486 0 R ->> -endobj -488 0 obj -<< /Length 1348 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHLhf%O5%"?N0iPu^Ihh*<8^oI_.b(nAQTVm]T+7DEg+!,;arqZGfG9-R-Mi61;=?kYR-u8#u%"Yntf@e!DQ,E>mOOrb8o"I9;g1\n]Q-7Q3SEi^nC=B+lZ`ORW*7nU;luU[YB-7Df]oNeH+/*L=oiu8LWmGl@ftO)H)MkDM(*_'jqCf`a,<`mLLY.K]Q\p@F:EW^?R@=c"KO%s7%lnoEqaYCmkj:C@>J27g]H]q1Y".TM.mk_JQ:d?i"^49JirN@^`4qdr*cpNN&r1?rnk_2)Z9/i"5,P:1cFsZ!CClo;JSV&*BrQ\iA_r*TESV&*2IHM#Bl'ru,;.A!6jde3c6H0(in7-^1q4'-f":lS_BO\H*VsuI9!D.V@BjO[)$VXKkV!4j0N4k`IS/eVBF5QYGE\LLX+/Q[>]P]pk``$e61j;!()LYIEhf>$BgAFbl$`&Oj]m1]SmsNNA(h3K#i/583im8g%\t(V"oJK1s29R\l]4Y9h/_6>b$mGPP?Yk?TOG%`:s%;dnNCas86Z2p$oueFU!.U(\=ik+rh#V!X0n0a!d%>IGK/tjQ49_O!M\g5k~> -endstream -endobj -489 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 488 0 R ->> -endobj -490 0 obj -<< /Length 1421 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D>B?Pt'Roe[i6e.d.M@PAqm:($Bfb"o-?8l[G<3#A%LiFl#WLLF?O6iJZ=;j#`\5d!SF7GgX5rTsm-,uVr&V#0CT?B`L%>>c*p+R-KWeZgnBE'D+)W-l5-5UGDpIW<"!rbbL@Rs:Qb%l:&.)K?$Co`P&VSMR"A=$5@iB\P#RSb"KGh_8.UU41;N1A3jq#%7@p2oopBBC$\gGs/_Z[m$VDbdt9qEE>^4jnR/`9bqWOV&r.DEBQLW!-UijLTC#iq]E0>H,'V%og3;J"j@p'cQp#Z2sYUuKoV6H=s-(Z:G*]8CEJ\hQ%[fCL(*n"9"h*c=1?ne7'(_QBs6h9eiiA]^F`o"fW?5P@A'b>:in!4G55J`Q.9[tDN2`N_!_kQ*4Xp>s"hjf;B:a(hR,p*J8VA/TQ[RZZuqL/B5M2p*uPN+m+9%Sj"+\T`Esl&*9NHCL7D;eZBOhVm7VFiL_md#:QQZqYQ*E53M$lmarWMS)hV/()c@I"TK=Dl_E4Q/FW-A0;C167?kl$o,&SO_RBD-OAA2p@/(9KB]oqX_Aeuc5mE=.h_\:+aBl`W[CT!an]H*#bF)CW0XdQdP7E#?pe[tka"t*Ys$FbI+%,0AI%$Mjlq_20C1]UEBMm#ae1QG2+Bb8UFCfsF(`)3KLmnL;(A,Vrm&,f5R-/<>h5=#;;1Y\:30'O)\i"69(fSP$X'O^BT'd>e#\pRm>5+Ubqecb?4Y-726Y\;;)f"+;\3.f22V$BOAVOnnh)\N1,W*aQR[D`-g$G;+qPTJs61Yr8F*gHQ5fI9/%9TBc6B'ds+(.X_0EBbcN7%.8_T0uHWolLCl\"kk"q8/.pg2_GIJseCkV6%-Ifn6i6eq~> -endstream -endobj -491 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 490 0 R ->> -endobj -492 0 obj -<< /Length 1332 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gatm;968iG&AII3n/-@c"onZfg/FNa;eON:QK@g:G<1fg=fc14+Xqcn?f*.9EgIJO8PR5A/@>fJ;@[=lF/I+mEumg+@IV;X0$;@f$'tnBoZ?phh*u&RaV6)F^HZf=FJb\GQF#/P22lpmn3]&1l1X9-H86@frpAl)kJCl._7SkG6g[-`i3`qiX:1I'WG-1&HmI,9J2hFtp2I_<8hjWfMD)80,n%Z-ipdPueg!/0Mk2h\D54DR'Fa=&XLah3GYKUAl`J^R3(?DB>5G`J!No[+5Kfdd4LRa4e'+hceW>>=UFD&+K0,c*?4\]JdN\]+iR\cW;O>28u57SQsh4=UD.\a_s\!k$-^MFN'(73C.'NJn+Q2@e=qo"UTa@SeM+^ZPp<=cK2ZBPjlg;u3@0PFJfg59X9pV]0VG=S"aEki3j/+0*5B7GG"XL2U+%BohnD,NqU\@U(M:BVo5/)oF6%="i&HH:%FAL1f1Q[bI`H3Ub>dA*:.7uE7rVg]DQ.5M1W@5WZ;Sn_>W$tDiB:%@,."_U)?FA?\`WN[\m'YKJXLqP%jf?6[i/*)uN%K+4']Z\1i2uBY1nC?(Br#S'upoQt;e0-?5PlYZaEtTcjKncL(&skb;Dl+cd$a0Ts[[iDUDS*eP&KF,0!I$]HQtV9^A_e)jm#rsB;?Y#q'f!+4Kf?=Z&n*Ado\'QnR/N)lp9/V(HB4NZ2Qf>PaY?G\nCKJjE_RaIdWtrmap6V'S5P24cpCWpn<3(*J_=^Vi*DrDMp6\o8*0qYK0sXnfie"7kAS+K2SKoX%`S!LpPY&:eoc/c;n.[Hg:hE?gde-!Kk=!(L+@&Cn-s6O#FS<23(Yu]g:)kkL/77YTS -endstream -endobj -493 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 492 0 R ->> -endobj -494 0 obj -<< /Length 1218 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gau0D968iG&AII3n5d)`TYuHn1oIkD9V"bQYq>]JG;>6_>"iVH+mCu^pB;W_Q4PHBP@T%AaaNW,ha0M6/Ui&a4mXEN>9s[7]3eslf72GjUja1iJg0Q`*kZuh2cnTI2n/6VBAS-plE++*\C^)T,%bPST0M,S9!(TmX&f"TM-Qajk]LRS#aETYSr-eIq'G'c=`\4Af!5q.^rh9X5*_*Flsg\8,p^m%W(h)":i&XPe@)*\Edt4.Z^)SRIiP&m?U;iqhM=.o43u&:fEGs&a#*\RB'5>1G?eqd_BW-+E@?4YfT1gbm@%!&cmrX/sfFQ]o_eGhrllDV%].>G,odqni6_f<)Lr;)_FG=2h]+[;d7]B/p2[ibpLt,\.bZQ2(EQ%[%;U:>iRmKJOkr9YB$+)-B<1LO=c_E];ke_Dnj,jXdj"hLLlq+bhFn/hl9kB!rI:+F")=`^GG@M%"q^EB")T8NP#<09<0r@!>-EpKjLJc9e7DNH4*OKGd4KbQ0]S9k@i>^h3pr^0AG&!01hK=nkWFkQKF7E\=Vc;c@C-Uhp96Ne\+NR#S!@P%Hg>1 -endstream -endobj -495 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 494 0 R ->> -endobj -496 0 obj -<< /Length 1108 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHK8Q4@t'Y`a3pf?Sm+j#n6p/DlrL7q6_oMR^jOXNjolsMosnF%l3N[5&nEEG948C)4(n,")soK1+Ve3OX2Va'H3BA>c_'L1Y$S-sb$!V2f\h"c)s?jW=oN$ml16g(r-^C[gZf;mdqSX6]U#Bf":Eu!SYfF,TcXM$/OZLO,J,(3cpBcb4ZeVbj<\MpsW!\XU3D8f3)NP/U-o^ORE]8OX2rX%r@`\F'g^R(tPbLU!\3IFIn5-hqQi5Ae5D=TikuM`1(':UOFhC@8VHXOq?g4c`)O%61RN=H$gTgKk:WTe_!M6g;nQKV=3_Zk:q.aq[0^+bY(r'hqNDdUWM1BQmLl(1^>[Q'@q5'QrZ#NI0%QrOH/H:m\mg%?fM8MlK7m'mJiH\s(Yi$&?L@#6Zmj->5mTM$)Z)-H/KL^^A^gNln9;^+h\u0H0Jq-I9Yo@DS@!(3dSZnoEY\"flaRj'RDIpYG(oFLSK!+$36C3u)9Mj<7Z8PjX)-7"Dd$X6>uiGY/r+D-R@bgYdHXhE<-R.Hh[-LN`8pi^_(fmnKEIGb?IY`HacER4da/JQC\;K4qfA)`,;_/HSP-_"/jVLo0\6`IbVVo,Y:Ei<\\o5@&V%LgM^h)F/jX0^!A?e*#r5,bf![7-`HTZ<,o=pE.@CU_744q3eDmVu#&BRd&AL;cnD2Rp4p!YTk;NSR&,!ARj/o$(8lk$"mtgR\/M=O5#Ca5-Q)0"1A2JXR\]+`7D7r7-=%i,uM8q;#??m>"_,"AjXuiA8bWDQh52W8Wr`g-jg#`"ba-oqhEY7p!+f9!P;eqi1[.)JeBj/a-F*$n8lFY4D2q>h[)&~> -endstream -endobj -497 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 496 0 R ->> -endobj -498 0 obj -<< /Length 1415 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GauHL968iG&AII3n.r''YlkC&d@BK&R6$O*.nf-'l?"E][*_^Gb_J=FYO@&r/1F,qijRkTYhI-Qh8QjrDc`.kh?=+g9ZpPW'?bWf&As)a@Lu`N4^sm%0igBrpRC:(2Tq8_nV=Aq%q^LeG.ilNO)0]O5BEFcYi*3#E+ES8A$bjQcca;*]DML$LYk9jNL=QRPFKJ!C(1NbgqKE\\5K&>e8h1`Vf2HolkjGb3]F9;V[]'c?$6441Rlo96FG$_b]B@Fkgqf?G"=PllYQ//O%Qg0%+B(1F0c$+!oT4_^cou[*A;\EI'7R,*?u)"Bh4M_5#l5*D[4k77JVbbj9[a.>K3C2l7X7EDf47`PRpThq?8GS2K%[E@'`@A'%4rd&9^p5NG\.S7Mh]rU:qX@&,6bpS43c)j:`DDY,`Q28N,U6"%fQ5fE`EImIjWjG;],dYk(?OR9@!@8`aNaoFd-/./QKI)\9rotpWJ;:g>#UolIjaLFj;;Il`Yc_=0(Im4=rY63OCD5$9n[)-^Q+#sZWO:tce!k$tu9NQr9i:GL[WM.o*jL/R0e=cKS17=8G,G$G5[k"7G!r.=L^.E"?6Y$ogMN$+=0.XK9)b"%K*ANbHQl0m;+7hL']1]3%Z4u`2cPlID-FROl"rgc[")*HZI9Ei>s"lR2B:5!,SI89Q\qsCN,##r4Hp.EE`WC:75/^H2JJ)PhQ"'j,GkG0X![$HJh,qJ14O4F`C3_QkA2"KhhW]*pO5N70u3JA>$4Z_s$\t3n#/bB!-'[&`]t>?Go1CKEQ,n=2k"SMBW),]UGT8(gnR1Y9k^X\]W[+/76DM]gV?85^0YudmoFd(9d"&HP;YOCbjmc6g)5uNU2#VW;<5Y%/\QL@-HVU5#rJ]CB$If-WE?Zk1!f8j>71.6"T]ha2kS`]1Lj1A$L9dP-2q*8cR%&I)hg`O(A:cIu28WTpFIN)6QM4:cDp>KspV;eHmRr!@RMHGgu,!g"Y$[a_DLCWD& -endstream -endobj -499 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 498 0 R ->> -endobj -500 0 obj -<< /Length 1175 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat%#968iG&AII3n7JTY^]Xu5d@Qee4]NktW@ar0,af-95o)p(Tn&4[q=b%YO8r][Q:DbXEqe;n(*B1[bLu8GNaN:TBXs_RdIRc9Z229BQC1Y5E<9Mh/U,U/l[@#-+rP=U7IQEa"t7'cfp5fUc%Qm7dn8%fc=^UQHbn=8V?0kbgp#@%4"<1:A`Y#8Y+7h23>,Q.-r.RXk3YH22l@=T.b/;"fVqQY7E`HYAn32-S"YbV?/Me(eW_;dnfN$h1&qOHDE7UN2`^+dB/g,U6@'ZQQ(ZNNp+ZBJF:;TW5%H&r-EtZ<@#'jKI+?LFeomb&\+euD%:ep"U4%'DRGuuis0Yh/kgSL9_thl%p%m"R_rpjUj5%b*5,l6:@_ESuYO?oZEH%RCN>!Ou)OrtJ[rs:DMd<`J[GX+sRE=`JEO$!Fj*[TL_.V3$EqHpJ6ba.SL5o@?gT2Y0,pQs*+S:ODW@-+-3`r_-G>L/4B&0%%Q9Q`R^^+?clE_Q0(JZA`j#''G:cKc#uDV^M/%TD;))'B5*Z;RBR`Dj-(0WlHQT(r%DA41.T4koC-up:C<^"Dgo,I79>o0JBiTPi="NPQD*16k$+?1,KHEm*!e(0u_@Va`lmgF7=+Iqn6UfWhc0-a`l@0O*5=hh7m:E]$;B/4Q?/8U'DsErq)Yd>@='[%h"dK>?>ZpaHhD"n;21S%?_gTlBdZZItX?#i'?(IWnP[tt)QZ+RoMX8^oUjIZdM;9,bNHPoZ5iIf67jm+.]P(.a,#(@SHgAYgj5&_da5pI`bn[3R]L"?)[#;3Pl-jOse!.:&usPC6=*FpYqd+ordGBsQR./Qe)(U%IiMY\F:Un,Q)WYUi6HXkJ^tA3qlfI%`nI*SDp*b8uZZ.mYD@09kNqg"qs0mk]ZD?E#L2&0*j%10baeSFV)I]D9Fl9U%2HAO6%s&^og]D~> -endstream -endobj -501 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 500 0 R ->> -endobj -502 0 obj -<< /Length 1662 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GatUtgMZ%0&;KZF'Y6tg<\'ct(UR4IT-WJ!:s7>$Ssp/2]4.o[93N!p=`L:f"3N)_pAcC<6GmBnO(V0gsiIt\G9Wl[J8]@@<]HWrL#aPifX%:V;>k6r?S+Uk:`!QXm_9M"9$7dnT[%PpF\VT[bfO#\#Dku.6[LnXUQm(dR#@EMlhfnXQ62"GT]eU/Z9.Cki5JZf[Q2q%uT`9V?]`gM5(SspdF2,M(Q,EWcfh?4R='A'SAHe\o>udJpE5)bPZAH^kA87Wc7/@L/A7rh[PqMDUDq=^oZ\sriA>+9/G/$Nng,Iga+&kQc_]hn_n<;/h@YCDF+m;a'HBHL27Q@,9+;=kiW'p7D)-*=89iU\_g%9m:#fE#]l_FGDPu.2'CRW7>?jG5SYEZo?#,0s]UrMMcgnLb#cNbJ6^49L[J?JMSbRS9S&8Znl:G9>a+/]B$mp;V/gt06*Kq/EZ/YQZEH67<6!`QBCQg6\>=*gXna'Dhd9fV<\`\Dnss/2CI.75S'\i=m4S'7E=/kJUT*s`>[&Et1mU2_h&(`X$X:uh+q7%2k"L\h0pbH0sb**eti7OXrI\m^mC30k0#/Z[8&/57+mm&j!=%(Cs"3P[H]W6F=oF9*3B"P7qhFA[Y6#J*cb/#:R+FG@:>^V+.Ap_3S_-,9!2c/\(,m*\[9&kY%?IQl2sM$l3g^=.e@@/[FDd6r>dJfEZ1TBU+Of9?jKAs$W^S^6RRX^7hS2P+&m[qeg[>$FB8<]T;[O-aD2l[$88em#sM*RqSi(`E'cV2QOjre/fa![^40*,N-h/ZL67j"2L2l_@^9:!#kq'qT9sJS\J^)=HKN`:\a.n3) -endstream -endobj -503 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 502 0 R -/Annots 504 0 R ->> -endobj -504 0 obj -[ -] -endobj -505 0 obj -<< /Length 1658 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gat=lgMYb8&;KZP'YI+i7cBr*5d(6r5gLh82+9f&.u?.&>?.$tm?.dm#Ygo#(F^qeoV'pkfm^]=YB$hiXXd5GXs"<>Mmg.nWBQIk:SHoA/0\YN#P.+@JLfpg5/87k6W\em_XYBlp[=h9bL,j8,t9(@S1=M)TO6iH'l$DYN"p]pY"3W!@Bs?mpt/L62mul/pCeA6_9"LB8$YN$'O/E%nF4l>C,$#"0*b"G?Z,$3oe=J[0;;\2V=&Xa>FZS0]U^c'59$RLUS$4t4ZdWp)&o&?@2?V$r`RBO_E.sZEOPSFR$p<+DWRn9:k?i'8j;>tAYrHG'8VVs_T[mVqk!BY-Q,*Ri@(hmi"[X!Zb$lr.>Pqe/P/[U/]%XEpE9JqlV!j5oXTGh;a=W](tk"JGhieB7^=sNHK\*)=SQUd=Xd(.C7&rWD=:IfJ2qm@ld4<]))4RhuOE:-SqLF,5!_d_hJ3HC"rd%Aqc;]o0JWD]3l>)Cc`HoXJ'bK`O5(l7'e*'a;V/bNAahhE47%bDY3O:GJ3^()E?G-FYH/)b6fa]6haZY3\4:/(dFHXiWq=jf/>gFGDRJ,(MDXL+_/>dBfiTuXt:>'G]k-kGT?Q/ncq<^G1]l[@Is,@2s3/fFNFc&@5+P/(q$'1HdgLSs9-]%QGg">>anZkP8gg7mU]R"N:7Ae^O@_.=gFF%rRmV.R*me>MMD%R9maD2r8^h@&.ZGqaRF9#7&i!d/Za6TSHbEV5q8l?GK)a0EUh3#ZDLks!RBM51_@L6kS>\tnrYXi?QK551-)X/buNi4^mP"8f0]qIlW1=F]t\bQQ485ZW?(/Q#Cl3p^0>7WT'T*=o4rS=BpL\T&^8&97@>`8kTKV+b`G'C^WICPnd335dd!@'Ham%uH/?sl/Gj+1iUYD-QF_aXmAi_upNc%5ir5jOD(~> -endstream -endobj -506 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 505 0 R -/Annots 507 0 R ->> -endobj -507 0 obj -[ -] -endobj -508 0 obj -<< /Length 1693 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gasb]9lK&M&;KZQ'gD$eXWr:OdWL*nd,#,>]bEoOaL&'=(:=cd-iN_7D)ie1,?)ZpZd:M(L+d3%Xh63"7@7Ab(q]T`Hh>^&52ajgXVtFD(\f^ql[-]s22Q!RXDL_MorgAWoqF-RNlbD'+hZ02Y5bCiCr8<#-NLf:DPsT,f46:u,pE++Im9&"EiG$MpE-E8oR!8N>FO81P8%A)"M-=ks'##/N%`^$c&pq)!q%S6Cn,&#KY60a6Z=]"I(N?OfZpp:I>FXDd#_s`*C%jq&5ZjT5G9&aGYS9K6V="N('pi&]47@n$"UiniC`,SLKrf6@c?,S3D/lOddYn%Q=U\\do2TX:2('_]!&+n7g.nC@WZ%R@c7WKA?-6;PM4'_1pNQF!Z86ta"3tsSqnA9@jWQaRV@+.Sd(?meRbX/D=sW+;Zb>FUuMi?5W@U(;2nM?"%6:in^lWs/Ip5<^paWGhf\%16$pWc9-g=XW@9@RhU6aMor\WS$XW(3P"rkF/u'[.!8ctlrbs^6(IjGQT4E>dh1p5V3U#b8D!4eq[/eJf$dIP_6e+"(-2d&pVjuUN%)4k[1QshbddRDO%N/pSN:\.g@ge:L2kg&T;kW`Es:G-TCC]9=3+WB]u-:_t2Z!L)(+6@ctPR6XA32PQ.A$$n]t:8tXqNJI=WjV(Jf=>4'P.^6-"\kEE&c:u5&#YYbl\Mii86$U4uP*IA(P>H1nViF=JfTo7Wk[I<\],U[fQ1JLkW,N]!`/6-8T(Ef;BRQ@K0aKnC(WLC^eCLg.^(&n?Vo1"ObB.2XY=jo=SP,3PM1_oEm+qo@n7'BSS"/XD\P7Ni?eD#a&A1jp$AIFT1BP2`Y\2t;jQadu`LZt#u7FGdKkOuoA>JbQ&m=]l]W+_#7\hqa$Na(eCFG(+jP-o9$6nc"J"T -endstream -endobj -509 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 508 0 R -/Annots 510 0 R ->> -endobj -510 0 obj -[ -] -endobj -511 0 obj -<< /Length 341 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -GasJN9hWDY&;KZL'm&.6NL=>JF^7hjRh-,C%uZp[`SHDg62gPT+.?5s8hZl`T4]L=C]_5Y;Ll[l6GWfk)1kC$Jg;taGfQXK#Y0,Ah6#WJ_G)42TLc\OpeG&HV4Hc*Np6;JI9FIue6R)pa!+P[YrU"BPT5*mLS_O+OhYq>n'%`#9::X(kTlg4#27\+XikHDV=[?:n4u,=V1pcS0nGq>6d.sIDVKDpg>NlK8XhYK1XCMZ&C"u7g579\4R$?jTN+nt,U)q6>$381(_Fg[,L-[g`Z>1>!P?2'6*kjgoq^&[p"Pct~> -endstream -endobj -512 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 511 0 R -/Annots 513 0 R ->> -endobj -513 0 obj -[ -] -endobj -516 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\62\0\56\0\62\0\40\0\122\0\145\0\146\0\145\0\162\0\145\0\156\0\143\0\145\0\40\0\115\0\141\0\156\0\165\0\141\0\154) - /Parent 514 0 R - /Next 518 0 R - /A 515 0 R ->> endobj -518 0 obj -<< - /Title (\376\377\0\124\0\141\0\142\0\154\0\145\0\40\0\157\0\146\0\40\0\103\0\157\0\156\0\164\0\145\0\156\0\164\0\163) - /Parent 514 0 R - /Prev 516 0 R - /Next 519 0 R - /A 517 0 R ->> endobj -519 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\61\0\56\0\240\0\111\0\156\0\164\0\162\0\157\0\144\0\165\0\143\0\164\0\151\0\157\0\156) - /Parent 514 0 R - /Prev 518 0 R - /Next 520 0 R - /A 15 0 R ->> endobj -520 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\62\0\56\0\240\0\124\0\150\0\145\0\40\0\154\0\141\0\156\0\147\0\165\0\141\0\147\0\145) - /Parent 514 0 R - /First 521 0 R - /Last 656 0 R - /Prev 519 0 R - /Next 683 0 R - /Count -128 - /A 17 0 R ->> endobj -521 0 obj -<< - /Title (\376\377\0\114\0\145\0\170\0\151\0\143\0\141\0\154\0\40\0\163\0\164\0\162\0\165\0\143\0\164\0\165\0\162\0\145) - /Parent 520 0 R - /First 522 0 R - /Last 527 0 R - /Next 528 0 R - /Count -6 - /A 19 0 R ->> endobj -522 0 obj -<< - /Title (\376\377\0\111\0\144\0\145\0\156\0\164\0\151\0\146\0\151\0\145\0\162\0\163) - /Parent 521 0 R - /Next 523 0 R - /A 21 0 R ->> endobj -523 0 obj -<< - /Title (\376\377\0\113\0\145\0\171\0\167\0\157\0\162\0\144\0\163) - /Parent 521 0 R - /Prev 522 0 R - /Next 524 0 R - /A 23 0 R ->> endobj -524 0 obj -<< - /Title (\376\377\0\117\0\160\0\145\0\162\0\141\0\164\0\157\0\162\0\163) - /Parent 521 0 R - /Prev 523 0 R - /Next 525 0 R - /A 25 0 R ->> endobj -525 0 obj -<< - /Title (\376\377\0\117\0\164\0\150\0\145\0\162\0\40\0\164\0\157\0\153\0\145\0\156\0\163) - /Parent 521 0 R - /Prev 524 0 R - /Next 526 0 R - /A 27 0 R ->> endobj -526 0 obj -<< - /Title (\376\377\0\114\0\151\0\164\0\145\0\162\0\141\0\154\0\163) - /Parent 521 0 R - /Prev 525 0 R - /Next 527 0 R - /A 29 0 R ->> endobj -527 0 obj -<< - /Title (\376\377\0\103\0\157\0\155\0\155\0\145\0\156\0\164\0\163) - /Parent 521 0 R - /Prev 526 0 R - /A 31 0 R ->> endobj -528 0 obj -<< - /Title (\376\377\0\126\0\141\0\154\0\165\0\145\0\163\0\40\0\141\0\156\0\144\0\40\0\104\0\141\0\164\0\141\0\40\0\164\0\171\0\160\0\145\0\163) - /Parent 520 0 R - /First 529 0 R - /Last 542 0 R - /Prev 521 0 R - /Next 543 0 R - /Count -14 - /A 33 0 R ->> endobj -529 0 obj -<< - /Title (\376\377\0\111\0\156\0\164\0\145\0\147\0\145\0\162) - /Parent 528 0 R - /Next 530 0 R - /A 35 0 R ->> endobj -530 0 obj -<< - /Title (\376\377\0\106\0\154\0\157\0\141\0\164) - /Parent 528 0 R - /Prev 529 0 R - /Next 531 0 R - /A 37 0 R ->> endobj -531 0 obj -<< - /Title (\376\377\0\123\0\164\0\162\0\151\0\156\0\147) - /Parent 528 0 R - /Prev 530 0 R - /Next 532 0 R - /A 39 0 R ->> endobj -532 0 obj -<< - /Title (\376\377\0\116\0\165\0\154\0\154) - /Parent 528 0 R - /Prev 531 0 R - /Next 533 0 R - /A 41 0 R ->> endobj -533 0 obj -<< - /Title (\376\377\0\102\0\157\0\157\0\154) - /Parent 528 0 R - /Prev 532 0 R - /Next 534 0 R - /A 43 0 R ->> endobj -534 0 obj -<< - /Title (\376\377\0\124\0\141\0\142\0\154\0\145) - /Parent 528 0 R - /Prev 533 0 R - /Next 535 0 R - /A 45 0 R ->> endobj -535 0 obj -<< - /Title (\376\377\0\101\0\162\0\162\0\141\0\171) - /Parent 528 0 R - /Prev 534 0 R - /Next 536 0 R - /A 47 0 R ->> endobj -536 0 obj -<< - /Title (\376\377\0\106\0\165\0\156\0\143\0\164\0\151\0\157\0\156) - /Parent 528 0 R - /Prev 535 0 R - /Next 537 0 R - /A 49 0 R ->> endobj -537 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163) - /Parent 528 0 R - /Prev 536 0 R - /Next 538 0 R - /A 51 0 R ->> endobj -538 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163\0\40\0\151\0\156\0\163\0\164\0\141\0\156\0\143\0\145) - /Parent 528 0 R - /Prev 537 0 R - /Next 539 0 R - /A 53 0 R ->> endobj -539 0 obj -<< - /Title (\376\377\0\107\0\145\0\156\0\145\0\162\0\141\0\164\0\157\0\162) - /Parent 528 0 R - /Prev 538 0 R - /Next 540 0 R - /A 55 0 R ->> endobj -540 0 obj -<< - /Title (\376\377\0\125\0\163\0\145\0\162\0\144\0\141\0\164\0\141) - /Parent 528 0 R - /Prev 539 0 R - /Next 541 0 R - /A 57 0 R ->> endobj -541 0 obj -<< - /Title (\376\377\0\124\0\150\0\162\0\145\0\141\0\144) - /Parent 528 0 R - /Prev 540 0 R - /Next 542 0 R - /A 59 0 R ->> endobj -542 0 obj -<< - /Title (\376\377\0\127\0\145\0\141\0\153\0\40\0\122\0\145\0\146\0\145\0\162\0\145\0\156\0\143\0\145\0\163) - /Parent 528 0 R - /Prev 541 0 R - /A 61 0 R ->> endobj -543 0 obj -<< - /Title (\376\377\0\105\0\170\0\145\0\143\0\165\0\164\0\151\0\157\0\156\0\40\0\103\0\157\0\156\0\164\0\145\0\170\0\164) - /Parent 520 0 R - /First 544 0 R - /Last 544 0 R - /Prev 528 0 R - /Next 545 0 R - /Count -1 - /A 63 0 R ->> endobj -544 0 obj -<< - /Title (\376\377\0\126\0\141\0\162\0\151\0\141\0\142\0\154\0\145\0\163) - /Parent 543 0 R - /A 65 0 R ->> endobj -545 0 obj -<< - /Title (\376\377\0\123\0\164\0\141\0\164\0\145\0\155\0\145\0\156\0\164\0\163) - /Parent 520 0 R - /First 546 0 R - /Last 574 0 R - /Prev 543 0 R - /Next 575 0 R - /Count -22 - /A 67 0 R ->> endobj -546 0 obj -<< - /Title (\376\377\0\102\0\154\0\157\0\143\0\153) - /Parent 545 0 R - /Next 547 0 R - /A 69 0 R ->> endobj -547 0 obj -<< - /Title (\376\377\0\103\0\157\0\156\0\164\0\162\0\157\0\154\0\40\0\106\0\154\0\157\0\167\0\40\0\123\0\164\0\141\0\164\0\145\0\155\0\145\0\156\0\164\0\163) - /Parent 545 0 R - /First 549 0 R - /Last 557 0 R - /Prev 546 0 R - /Next 558 0 R - /Count -5 - /A 71 0 R ->> endobj -549 0 obj -<< - /Title (\376\377\0\164\0\162\0\165\0\145\0\40\0\141\0\156\0\144\0\40\0\146\0\141\0\154\0\163\0\145) - /Parent 547 0 R - /Next 551 0 R - /A 548 0 R ->> endobj -551 0 obj -<< - /Title (\376\377\0\151\0\146\0\57\0\145\0\154\0\163\0\145) - /Parent 547 0 R - /Prev 549 0 R - /Next 553 0 R - /A 550 0 R ->> endobj -553 0 obj -<< - /Title (\376\377\0\167\0\150\0\151\0\154\0\145) - /Parent 547 0 R - /Prev 551 0 R - /Next 555 0 R - /A 552 0 R ->> endobj -555 0 obj -<< - /Title (\376\377\0\144\0\157\0\57\0\167\0\150\0\151\0\154\0\145) - /Parent 547 0 R - /Prev 553 0 R - /Next 557 0 R - /A 554 0 R ->> endobj -557 0 obj -<< - /Title (\376\377\0\163\0\167\0\151\0\164\0\143\0\150) - /Parent 547 0 R - /Prev 555 0 R - /A 556 0 R ->> endobj -558 0 obj -<< - /Title (\376\377\0\114\0\157\0\157\0\160\0\163) - /Parent 545 0 R - /First 560 0 R - /Last 562 0 R - /Prev 547 0 R - /Next 563 0 R - /Count -2 - /A 73 0 R ->> endobj -560 0 obj -<< - /Title (\376\377\0\146\0\157\0\162) - /Parent 558 0 R - /Next 562 0 R - /A 559 0 R ->> endobj -562 0 obj -<< - /Title (\376\377\0\146\0\157\0\162\0\145\0\141\0\143\0\150) - /Parent 558 0 R - /Prev 560 0 R - /A 561 0 R ->> endobj -563 0 obj -<< - /Title (\376\377\0\142\0\162\0\145\0\141\0\153) - /Parent 545 0 R - /Prev 558 0 R - /Next 564 0 R - /A 75 0 R ->> endobj -564 0 obj -<< - /Title (\376\377\0\143\0\157\0\156\0\164\0\151\0\156\0\165\0\145) - /Parent 545 0 R - /Prev 563 0 R - /Next 565 0 R - /A 77 0 R ->> endobj -565 0 obj -<< - /Title (\376\377\0\162\0\145\0\164\0\165\0\162\0\156) - /Parent 545 0 R - /Prev 564 0 R - /Next 566 0 R - /A 79 0 R ->> endobj -566 0 obj -<< - /Title (\376\377\0\171\0\151\0\145\0\154\0\144) - /Parent 545 0 R - /Prev 565 0 R - /Next 567 0 R - /A 81 0 R ->> endobj -567 0 obj -<< - /Title (\376\377\0\114\0\157\0\143\0\141\0\154\0\40\0\166\0\141\0\162\0\151\0\141\0\142\0\154\0\145\0\163\0\40\0\144\0\145\0\143\0\154\0\141\0\162\0\141\0\164\0\151\0\157\0\156) - /Parent 545 0 R - /Prev 566 0 R - /Next 568 0 R - /A 83 0 R ->> endobj -568 0 obj -<< - /Title (\376\377\0\106\0\165\0\156\0\143\0\164\0\151\0\157\0\156\0\40\0\144\0\145\0\143\0\154\0\141\0\162\0\141\0\164\0\151\0\157\0\156) - /Parent 545 0 R - /Prev 567 0 R - /Next 569 0 R - /A 85 0 R ->> endobj -569 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163\0\40\0\144\0\145\0\143\0\154\0\141\0\162\0\141\0\164\0\151\0\157\0\156) - /Parent 545 0 R - /Prev 568 0 R - /Next 570 0 R - /A 87 0 R ->> endobj -570 0 obj -<< - /Title (\376\377\0\164\0\162\0\171\0\57\0\143\0\141\0\164\0\143\0\150) - /Parent 545 0 R - /Prev 569 0 R - /Next 571 0 R - /A 89 0 R ->> endobj -571 0 obj -<< - /Title (\376\377\0\164\0\150\0\162\0\157\0\167) - /Parent 545 0 R - /Prev 570 0 R - /Next 572 0 R - /A 91 0 R ->> endobj -572 0 obj -<< - /Title (\376\377\0\143\0\157\0\156\0\163\0\164) - /Parent 545 0 R - /Prev 571 0 R - /Next 573 0 R - /A 93 0 R ->> endobj -573 0 obj -<< - /Title (\376\377\0\145\0\156\0\165\0\155) - /Parent 545 0 R - /Prev 572 0 R - /Next 574 0 R - /A 95 0 R ->> endobj -574 0 obj -<< - /Title (\376\377\0\145\0\170\0\160\0\162\0\145\0\163\0\163\0\151\0\157\0\156\0\40\0\163\0\164\0\141\0\164\0\145\0\155\0\145\0\156\0\164) - /Parent 545 0 R - /Prev 573 0 R - /A 97 0 R ->> endobj -575 0 obj -<< - /Title (\376\377\0\105\0\170\0\160\0\162\0\145\0\163\0\163\0\151\0\157\0\156\0\163) - /Parent 520 0 R - /First 576 0 R - /Last 601 0 R - /Prev 545 0 R - /Next 602 0 R - /Count -16 - /A 99 0 R ->> endobj -576 0 obj -<< - /Title (\376\377\0\101\0\163\0\163\0\151\0\147\0\156\0\155\0\145\0\156\0\164\0\50\0\75\0\51\0\40\0\46\0\40\0\156\0\145\0\167\0\40\0\163\0\154\0\157\0\164\0\50\0\74\0\55\0\51) - /Parent 575 0 R - /Next 577 0 R - /A 101 0 R ->> endobj -577 0 obj -<< - /Title (\376\377\0\117\0\160\0\145\0\162\0\141\0\164\0\157\0\162\0\163) - /Parent 575 0 R - /First 579 0 R - /Last 597 0 R - /Prev 576 0 R - /Next 598 0 R - /Count -10 - /A 103 0 R ->> endobj -579 0 obj -<< - /Title (\376\377\0\77\0\72\0\40\0\117\0\160\0\145\0\162\0\141\0\164\0\157\0\162) - /Parent 577 0 R - /Next 581 0 R - /A 578 0 R ->> endobj -581 0 obj -<< - /Title (\376\377\0\101\0\162\0\151\0\164\0\150\0\155\0\145\0\164\0\151\0\143) - /Parent 577 0 R - /Prev 579 0 R - /Next 583 0 R - /A 580 0 R ->> endobj -583 0 obj -<< - /Title (\376\377\0\122\0\145\0\154\0\141\0\164\0\151\0\157\0\156\0\141\0\154) - /Parent 577 0 R - /Prev 581 0 R - /Next 585 0 R - /A 582 0 R ->> endobj -585 0 obj -<< - /Title (\376\377\0\114\0\157\0\147\0\151\0\143\0\141\0\154) - /Parent 577 0 R - /Prev 583 0 R - /Next 587 0 R - /A 584 0 R ->> endobj -587 0 obj -<< - /Title (\376\377\0\151\0\156\0\40\0\157\0\160\0\145\0\162\0\141\0\164\0\157\0\162) - /Parent 577 0 R - /Prev 585 0 R - /Next 589 0 R - /A 586 0 R ->> endobj -589 0 obj -<< - /Title (\376\377\0\151\0\156\0\163\0\164\0\141\0\156\0\143\0\145\0\157\0\146\0\40\0\157\0\160\0\145\0\162\0\141\0\164\0\157\0\162) - /Parent 577 0 R - /Prev 587 0 R - /Next 591 0 R - /A 588 0 R ->> endobj -591 0 obj -<< - /Title (\376\377\0\164\0\171\0\160\0\145\0\157\0\146\0\40\0\157\0\160\0\145\0\162\0\141\0\164\0\157\0\162) - /Parent 577 0 R - /Prev 589 0 R - /Next 593 0 R - /A 590 0 R ->> endobj -593 0 obj -<< - /Title (\376\377\0\143\0\157\0\155\0\155\0\141\0\40\0\157\0\160\0\145\0\162\0\141\0\164\0\157\0\162) - /Parent 577 0 R - /Prev 591 0 R - /Next 595 0 R - /A 592 0 R ->> endobj -595 0 obj -<< - /Title (\376\377\0\102\0\151\0\164\0\167\0\151\0\163\0\145\0\40\0\117\0\160\0\145\0\162\0\141\0\164\0\157\0\162\0\163) - /Parent 577 0 R - /Prev 593 0 R - /Next 597 0 R - /A 594 0 R ->> endobj -597 0 obj -<< - /Title (\376\377\0\117\0\160\0\145\0\162\0\141\0\164\0\157\0\162\0\163\0\40\0\160\0\162\0\145\0\143\0\145\0\144\0\145\0\156\0\143\0\145) - /Parent 577 0 R - /Prev 595 0 R - /A 596 0 R ->> endobj -598 0 obj -<< - /Title (\376\377\0\124\0\141\0\142\0\154\0\145\0\40\0\143\0\157\0\156\0\163\0\164\0\162\0\165\0\143\0\164\0\157\0\162) - /Parent 575 0 R - /Prev 577 0 R - /Next 599 0 R - /A 105 0 R ->> endobj -599 0 obj -<< - /Title (\376\377\0\144\0\145\0\154\0\145\0\147\0\141\0\164\0\145) - /Parent 575 0 R - /Prev 598 0 R - /Next 600 0 R - /A 107 0 R ->> endobj -600 0 obj -<< - /Title (\376\377\0\143\0\154\0\157\0\156\0\145) - /Parent 575 0 R - /Prev 599 0 R - /Next 601 0 R - /A 109 0 R ->> endobj -601 0 obj -<< - /Title (\376\377\0\101\0\162\0\162\0\141\0\171\0\40\0\143\0\157\0\156\0\163\0\164\0\162\0\165\0\143\0\164\0\157\0\162) - /Parent 575 0 R - /Prev 600 0 R - /A 111 0 R ->> endobj -602 0 obj -<< - /Title (\376\377\0\124\0\141\0\142\0\154\0\145\0\163) - /Parent 520 0 R - /First 603 0 R - /Last 605 0 R - /Prev 575 0 R - /Next 606 0 R - /Count -3 - /A 113 0 R ->> endobj -603 0 obj -<< - /Title (\376\377\0\103\0\157\0\156\0\163\0\164\0\162\0\165\0\143\0\164\0\151\0\157\0\156) - /Parent 602 0 R - /Next 604 0 R - /A 115 0 R ->> endobj -604 0 obj -<< - /Title (\376\377\0\123\0\154\0\157\0\164\0\40\0\143\0\162\0\145\0\141\0\164\0\151\0\157\0\156) - /Parent 602 0 R - /Prev 603 0 R - /Next 605 0 R - /A 117 0 R ->> endobj -605 0 obj -<< - /Title (\376\377\0\123\0\154\0\157\0\164\0\40\0\144\0\145\0\154\0\145\0\164\0\151\0\157\0\156) - /Parent 602 0 R - /Prev 604 0 R - /A 119 0 R ->> endobj -606 0 obj -<< - /Title (\376\377\0\101\0\162\0\162\0\141\0\171\0\163) - /Parent 520 0 R - /Prev 602 0 R - /Next 607 0 R - /A 124 0 R ->> endobj -607 0 obj -<< - /Title (\376\377\0\106\0\165\0\156\0\143\0\164\0\151\0\157\0\156\0\163) - /Parent 520 0 R - /First 608 0 R - /Last 616 0 R - /Prev 606 0 R - /Next 617 0 R - /Count -7 - /A 126 0 R ->> endobj -608 0 obj -<< - /Title (\376\377\0\106\0\165\0\156\0\143\0\164\0\151\0\157\0\156\0\40\0\144\0\145\0\143\0\154\0\141\0\162\0\141\0\164\0\151\0\157\0\156) - /Parent 607 0 R - /First 610 0 R - /Last 612 0 R - /Next 613 0 R - /Count -2 - /A 128 0 R ->> endobj -610 0 obj -<< - /Title (\376\377\0\104\0\145\0\146\0\141\0\165\0\154\0\164\0\40\0\120\0\141\0\162\0\141\0\155\0\141\0\164\0\145\0\162\0\163) - /Parent 608 0 R - /Next 612 0 R - /A 609 0 R ->> endobj -612 0 obj -<< - /Title (\376\377\0\106\0\165\0\156\0\143\0\164\0\151\0\157\0\156\0\40\0\167\0\151\0\164\0\150\0\40\0\166\0\141\0\162\0\151\0\141\0\142\0\154\0\145\0\40\0\156\0\165\0\155\0\142\0\145\0\162\0\40\0\157\0\146\0\40\0\160\0\141\0\162\0\141\0\155\0\141\0\164\0\145\0\162\0\163) - /Parent 608 0 R - /Prev 610 0 R - /A 611 0 R ->> endobj -613 0 obj -<< - /Title (\376\377\0\106\0\165\0\156\0\143\0\164\0\151\0\157\0\156\0\40\0\143\0\141\0\154\0\154\0\163) - /Parent 607 0 R - /Prev 608 0 R - /Next 614 0 R - /A 130 0 R ->> endobj -614 0 obj -<< - /Title (\376\377\0\102\0\151\0\156\0\144\0\151\0\156\0\147\0\40\0\141\0\156\0\40\0\145\0\156\0\166\0\151\0\162\0\157\0\156\0\155\0\145\0\156\0\164\0\40\0\164\0\157\0\40\0\141\0\40\0\146\0\165\0\156\0\143\0\164\0\151\0\157\0\156) - /Parent 607 0 R - /Prev 613 0 R - /Next 615 0 R - /A 132 0 R ->> endobj -615 0 obj -<< - /Title (\376\377\0\106\0\162\0\145\0\145\0\40\0\166\0\141\0\162\0\151\0\141\0\142\0\154\0\145\0\163) - /Parent 607 0 R - /Prev 614 0 R - /Next 616 0 R - /A 134 0 R ->> endobj -616 0 obj -<< - /Title (\376\377\0\124\0\141\0\151\0\154\0\40\0\162\0\145\0\143\0\165\0\162\0\163\0\151\0\157\0\156) - /Parent 607 0 R - /Prev 615 0 R - /A 136 0 R ->> endobj -617 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163\0\145\0\163) - /Parent 520 0 R - /First 618 0 R - /Last 625 0 R - /Prev 607 0 R - /Next 626 0 R - /Count -6 - /A 138 0 R ->> endobj -618 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163\0\40\0\144\0\145\0\143\0\154\0\141\0\162\0\141\0\164\0\151\0\157\0\156) - /Parent 617 0 R - /First 620 0 R - /Last 622 0 R - /Next 623 0 R - /Count -2 - /A 140 0 R ->> endobj -620 0 obj -<< - /Title (\376\377\0\123\0\164\0\141\0\164\0\151\0\143\0\40\0\166\0\141\0\162\0\151\0\141\0\142\0\154\0\145\0\163) - /Parent 618 0 R - /Next 622 0 R - /A 619 0 R ->> endobj -622 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163\0\40\0\141\0\164\0\164\0\162\0\151\0\142\0\165\0\164\0\145\0\163) - /Parent 618 0 R - /Prev 620 0 R - /A 621 0 R ->> endobj -623 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163\0\40\0\151\0\156\0\163\0\164\0\141\0\156\0\143\0\145\0\163) - /Parent 617 0 R - /Prev 618 0 R - /Next 624 0 R - /A 142 0 R ->> endobj -624 0 obj -<< - /Title (\376\377\0\111\0\156\0\150\0\145\0\162\0\151\0\164\0\141\0\156\0\143\0\145) - /Parent 617 0 R - /Prev 623 0 R - /Next 625 0 R - /A 144 0 R ->> endobj -625 0 obj -<< - /Title (\376\377\0\115\0\145\0\164\0\141\0\155\0\145\0\164\0\150\0\157\0\144\0\163) - /Parent 617 0 R - /Prev 624 0 R - /A 146 0 R ->> endobj -626 0 obj -<< - /Title (\376\377\0\107\0\145\0\156\0\145\0\162\0\141\0\164\0\157\0\162\0\163) - /Parent 520 0 R - /Prev 617 0 R - /Next 627 0 R - /A 148 0 R ->> endobj -627 0 obj -<< - /Title (\376\377\0\103\0\157\0\156\0\163\0\164\0\141\0\156\0\164\0\163\0\40\0\46\0\40\0\105\0\156\0\165\0\155\0\145\0\162\0\141\0\164\0\151\0\157\0\156\0\163) - /Parent 520 0 R - /First 628 0 R - /Last 630 0 R - /Prev 626 0 R - /Next 631 0 R - /Count -3 - /A 150 0 R ->> endobj -628 0 obj -<< - /Title (\376\377\0\103\0\157\0\156\0\163\0\164\0\141\0\156\0\164\0\163) - /Parent 627 0 R - /Next 629 0 R - /A 152 0 R ->> endobj -629 0 obj -<< - /Title (\376\377\0\105\0\156\0\165\0\155\0\145\0\162\0\141\0\164\0\151\0\157\0\156\0\163) - /Parent 627 0 R - /Prev 628 0 R - /Next 630 0 R - /A 154 0 R ->> endobj -630 0 obj -<< - /Title (\376\377\0\111\0\155\0\160\0\154\0\145\0\155\0\145\0\156\0\164\0\141\0\164\0\151\0\157\0\156\0\40\0\156\0\157\0\164\0\145\0\163) - /Parent 627 0 R - /Prev 629 0 R - /A 156 0 R ->> endobj -631 0 obj -<< - /Title (\376\377\0\124\0\150\0\162\0\145\0\141\0\144\0\163) - /Parent 520 0 R - /First 632 0 R - /Last 632 0 R - /Prev 627 0 R - /Next 633 0 R - /Count -1 - /A 158 0 R ->> endobj -632 0 obj -<< - /Title (\376\377\0\125\0\163\0\151\0\156\0\147\0\40\0\164\0\150\0\162\0\145\0\141\0\144\0\163) - /Parent 631 0 R - /A 160 0 R ->> endobj -633 0 obj -<< - /Title (\376\377\0\127\0\145\0\141\0\153\0\40\0\122\0\145\0\146\0\145\0\162\0\145\0\156\0\143\0\145\0\163) - /Parent 520 0 R - /First 635 0 R - /Last 635 0 R - /Prev 631 0 R - /Next 636 0 R - /Count -1 - /A 162 0 R ->> endobj -635 0 obj -<< - /Title (\376\377\0\110\0\141\0\156\0\144\0\154\0\151\0\156\0\147\0\40\0\167\0\145\0\141\0\153\0\40\0\162\0\145\0\146\0\145\0\162\0\145\0\156\0\143\0\145\0\163\0\40\0\145\0\170\0\160\0\154\0\151\0\143\0\151\0\164\0\154\0\171) - /Parent 633 0 R - /A 634 0 R ->> endobj -636 0 obj -<< - /Title (\376\377\0\104\0\145\0\154\0\145\0\147\0\141\0\164\0\151\0\157\0\156) - /Parent 520 0 R - /Prev 633 0 R - /Next 637 0 R - /A 164 0 R ->> endobj -637 0 obj -<< - /Title (\376\377\0\115\0\145\0\164\0\141\0\155\0\145\0\164\0\150\0\157\0\144\0\163) - /Parent 520 0 R - /First 638 0 R - /Last 655 0 R - /Prev 636 0 R - /Next 656 0 R - /Count -18 - /A 166 0 R ->> endobj -638 0 obj -<< - /Title (\376\377\0\137\0\163\0\145\0\164) - /Parent 637 0 R - /Next 639 0 R - /A 168 0 R ->> endobj -639 0 obj -<< - /Title (\376\377\0\137\0\147\0\145\0\164) - /Parent 637 0 R - /Prev 638 0 R - /Next 640 0 R - /A 170 0 R ->> endobj -640 0 obj -<< - /Title (\376\377\0\137\0\156\0\145\0\167\0\163\0\154\0\157\0\164) - /Parent 637 0 R - /Prev 639 0 R - /Next 641 0 R - /A 172 0 R ->> endobj -641 0 obj -<< - /Title (\376\377\0\137\0\144\0\145\0\154\0\163\0\154\0\157\0\164) - /Parent 637 0 R - /Prev 640 0 R - /Next 642 0 R - /A 174 0 R ->> endobj -642 0 obj -<< - /Title (\376\377\0\137\0\141\0\144\0\144) - /Parent 637 0 R - /Prev 641 0 R - /Next 643 0 R - /A 176 0 R ->> endobj -643 0 obj -<< - /Title (\376\377\0\137\0\163\0\165\0\142) - /Parent 637 0 R - /Prev 642 0 R - /Next 644 0 R - /A 178 0 R ->> endobj -644 0 obj -<< - /Title (\376\377\0\137\0\155\0\165\0\154) - /Parent 637 0 R - /Prev 643 0 R - /Next 645 0 R - /A 180 0 R ->> endobj -645 0 obj -<< - /Title (\376\377\0\137\0\144\0\151\0\166) - /Parent 637 0 R - /Prev 644 0 R - /Next 646 0 R - /A 182 0 R ->> endobj -646 0 obj -<< - /Title (\376\377\0\137\0\155\0\157\0\144\0\165\0\154\0\157) - /Parent 637 0 R - /Prev 645 0 R - /Next 647 0 R - /A 184 0 R ->> endobj -647 0 obj -<< - /Title (\376\377\0\137\0\165\0\156\0\155) - /Parent 637 0 R - /Prev 646 0 R - /Next 648 0 R - /A 186 0 R ->> endobj -648 0 obj -<< - /Title (\376\377\0\137\0\164\0\171\0\160\0\145\0\157\0\146) - /Parent 637 0 R - /Prev 647 0 R - /Next 649 0 R - /A 188 0 R ->> endobj -649 0 obj -<< - /Title (\376\377\0\137\0\143\0\155\0\160) - /Parent 637 0 R - /Prev 648 0 R - /Next 650 0 R - /A 190 0 R ->> endobj -650 0 obj -<< - /Title (\376\377\0\137\0\143\0\141\0\154\0\154) - /Parent 637 0 R - /Prev 649 0 R - /Next 651 0 R - /A 192 0 R ->> endobj -651 0 obj -<< - /Title (\376\377\0\137\0\143\0\154\0\157\0\156\0\145\0\144) - /Parent 637 0 R - /Prev 650 0 R - /Next 652 0 R - /A 194 0 R ->> endobj -652 0 obj -<< - /Title (\376\377\0\137\0\156\0\145\0\170\0\164\0\151) - /Parent 637 0 R - /Prev 651 0 R - /Next 653 0 R - /A 196 0 R ->> endobj -653 0 obj -<< - /Title (\376\377\0\137\0\164\0\157\0\163\0\164\0\162\0\151\0\156\0\147) - /Parent 637 0 R - /Prev 652 0 R - /Next 654 0 R - /A 198 0 R ->> endobj -654 0 obj -<< - /Title (\376\377\0\137\0\151\0\156\0\150\0\145\0\162\0\151\0\164\0\145\0\144) - /Parent 637 0 R - /Prev 653 0 R - /Next 655 0 R - /A 200 0 R ->> endobj -655 0 obj -<< - /Title (\376\377\0\137\0\156\0\145\0\167\0\155\0\145\0\155\0\142\0\145\0\162) - /Parent 637 0 R - /Prev 654 0 R - /A 202 0 R ->> endobj -656 0 obj -<< - /Title (\376\377\0\102\0\165\0\151\0\154\0\164\0\55\0\151\0\156\0\40\0\146\0\165\0\156\0\143\0\164\0\151\0\157\0\156\0\163) - /Parent 520 0 R - /First 657 0 R - /Last 658 0 R - /Prev 637 0 R - /Count -14 - /A 204 0 R ->> endobj -657 0 obj -<< - /Title (\376\377\0\107\0\154\0\157\0\142\0\141\0\154\0\40\0\163\0\171\0\155\0\142\0\157\0\154\0\163) - /Parent 656 0 R - /Next 658 0 R - /A 206 0 R ->> endobj -658 0 obj -<< - /Title (\376\377\0\104\0\145\0\146\0\141\0\165\0\154\0\164\0\40\0\144\0\145\0\154\0\145\0\147\0\141\0\164\0\145\0\163) - /Parent 656 0 R - /First 660 0 R - /Last 682 0 R - /Prev 657 0 R - /Count -12 - /A 208 0 R ->> endobj -660 0 obj -<< - /Title (\376\377\0\111\0\156\0\164\0\145\0\147\0\145\0\162) - /Parent 658 0 R - /Next 662 0 R - /A 659 0 R ->> endobj -662 0 obj -<< - /Title (\376\377\0\106\0\154\0\157\0\141\0\164) - /Parent 658 0 R - /Prev 660 0 R - /Next 664 0 R - /A 661 0 R ->> endobj -664 0 obj -<< - /Title (\376\377\0\102\0\157\0\157\0\154) - /Parent 658 0 R - /Prev 662 0 R - /Next 666 0 R - /A 663 0 R ->> endobj -666 0 obj -<< - /Title (\376\377\0\123\0\164\0\162\0\151\0\156\0\147) - /Parent 658 0 R - /Prev 664 0 R - /Next 668 0 R - /A 665 0 R ->> endobj -668 0 obj -<< - /Title (\376\377\0\124\0\141\0\142\0\154\0\145) - /Parent 658 0 R - /Prev 666 0 R - /Next 670 0 R - /A 667 0 R ->> endobj -670 0 obj -<< - /Title (\376\377\0\101\0\162\0\162\0\141\0\171) - /Parent 658 0 R - /Prev 668 0 R - /Next 672 0 R - /A 669 0 R ->> endobj -672 0 obj -<< - /Title (\376\377\0\106\0\165\0\156\0\143\0\164\0\151\0\157\0\156) - /Parent 658 0 R - /Prev 670 0 R - /Next 674 0 R - /A 671 0 R ->> endobj -674 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163) - /Parent 658 0 R - /Prev 672 0 R - /Next 676 0 R - /A 673 0 R ->> endobj -676 0 obj -<< - /Title (\376\377\0\103\0\154\0\141\0\163\0\163\0\40\0\111\0\156\0\163\0\164\0\141\0\156\0\143\0\145) - /Parent 658 0 R - /Prev 674 0 R - /Next 678 0 R - /A 675 0 R ->> endobj -678 0 obj -<< - /Title (\376\377\0\107\0\145\0\156\0\145\0\162\0\141\0\164\0\157\0\162) - /Parent 658 0 R - /Prev 676 0 R - /Next 680 0 R - /A 677 0 R ->> endobj -680 0 obj -<< - /Title (\376\377\0\124\0\150\0\162\0\145\0\141\0\144) - /Parent 658 0 R - /Prev 678 0 R - /Next 682 0 R - /A 679 0 R ->> endobj -682 0 obj -<< - /Title (\376\377\0\127\0\145\0\141\0\153\0\40\0\122\0\145\0\146\0\145\0\162\0\145\0\156\0\143\0\145) - /Parent 658 0 R - /Prev 680 0 R - /A 681 0 R ->> endobj -683 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\63\0\56\0\240\0\105\0\155\0\142\0\145\0\144\0\144\0\151\0\156\0\147\0\40\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154) - /Parent 514 0 R - /First 684 0 R - /Last 701 0 R - /Prev 520 0 R - /Next 702 0 R - /Count -18 - /A 210 0 R ->> endobj -684 0 obj -<< - /Title (\376\377\0\115\0\145\0\155\0\157\0\162\0\171\0\40\0\155\0\141\0\156\0\141\0\147\0\145\0\155\0\145\0\156\0\164) - /Parent 683 0 R - /Next 685 0 R - /A 212 0 R ->> endobj -685 0 obj -<< - /Title (\376\377\0\125\0\156\0\151\0\143\0\157\0\144\0\145) - /Parent 683 0 R - /Prev 684 0 R - /Next 686 0 R - /A 214 0 R ->> endobj -686 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\157\0\156\0\40\0\66\0\64\0\40\0\142\0\151\0\164\0\163\0\40\0\141\0\162\0\143\0\150\0\151\0\164\0\145\0\143\0\164\0\165\0\162\0\145\0\163) - /Parent 683 0 R - /Prev 685 0 R - /Next 687 0 R - /A 216 0 R ->> endobj -687 0 obj -<< - /Title (\376\377\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\167\0\151\0\164\0\150\0\40\0\144\0\157\0\165\0\142\0\154\0\145\0\40\0\160\0\162\0\145\0\143\0\151\0\163\0\151\0\157\0\156\0\40\0\146\0\154\0\157\0\141\0\164\0\163) - /Parent 683 0 R - /Prev 686 0 R - /Next 688 0 R - /A 218 0 R ->> endobj -688 0 obj -<< - /Title (\376\377\0\105\0\162\0\162\0\157\0\162\0\40\0\143\0\157\0\156\0\166\0\145\0\156\0\164\0\151\0\157\0\156\0\163) - /Parent 683 0 R - /Prev 687 0 R - /Next 689 0 R - /A 220 0 R ->> endobj -689 0 obj -<< - /Title (\376\377\0\111\0\156\0\151\0\164\0\151\0\141\0\154\0\151\0\172\0\151\0\156\0\147\0\40\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154) - /Parent 683 0 R - /Prev 688 0 R - /Next 690 0 R - /A 222 0 R ->> endobj -690 0 obj -<< - /Title (\376\377\0\124\0\150\0\145\0\40\0\123\0\164\0\141\0\143\0\153) - /Parent 683 0 R - /First 691 0 R - /Last 692 0 R - /Prev 689 0 R - /Next 693 0 R - /Count -2 - /A 224 0 R ->> endobj -691 0 obj -<< - /Title (\376\377\0\123\0\164\0\141\0\143\0\153\0\40\0\151\0\156\0\144\0\145\0\170\0\145\0\163) - /Parent 690 0 R - /Next 692 0 R - /A 226 0 R ->> endobj -692 0 obj -<< - /Title (\376\377\0\123\0\164\0\141\0\143\0\153\0\40\0\155\0\141\0\156\0\151\0\160\0\165\0\154\0\141\0\164\0\151\0\157\0\156) - /Parent 690 0 R - /Prev 691 0 R - /A 228 0 R ->> endobj -693 0 obj -<< - /Title (\376\377\0\122\0\165\0\156\0\164\0\151\0\155\0\145\0\40\0\145\0\162\0\162\0\157\0\162\0\40\0\150\0\141\0\156\0\144\0\154\0\151\0\156\0\147) - /Parent 683 0 R - /Prev 690 0 R - /Next 694 0 R - /A 230 0 R ->> endobj -694 0 obj -<< - /Title (\376\377\0\103\0\157\0\155\0\160\0\151\0\154\0\151\0\156\0\147\0\40\0\141\0\40\0\163\0\143\0\162\0\151\0\160\0\164) - /Parent 683 0 R - /Prev 693 0 R - /Next 695 0 R - /A 232 0 R ->> endobj -695 0 obj -<< - /Title (\376\377\0\103\0\141\0\154\0\154\0\151\0\156\0\147\0\40\0\141\0\40\0\146\0\165\0\156\0\143\0\164\0\151\0\157\0\156) - /Parent 683 0 R - /Prev 694 0 R - /Next 696 0 R - /A 234 0 R ->> endobj -696 0 obj -<< - /Title (\376\377\0\103\0\162\0\145\0\141\0\164\0\145\0\40\0\141\0\40\0\103\0\40\0\146\0\165\0\156\0\143\0\164\0\151\0\157\0\156) - /Parent 683 0 R - /Prev 695 0 R - /Next 697 0 R - /A 236 0 R ->> endobj -697 0 obj -<< - /Title (\376\377\0\124\0\141\0\142\0\154\0\145\0\163\0\40\0\141\0\156\0\144\0\40\0\141\0\162\0\162\0\141\0\171\0\163\0\40\0\155\0\141\0\156\0\151\0\160\0\165\0\154\0\141\0\164\0\151\0\157\0\156) - /Parent 683 0 R - /Prev 696 0 R - /Next 698 0 R - /A 238 0 R ->> endobj -698 0 obj -<< - /Title (\376\377\0\125\0\163\0\145\0\162\0\144\0\141\0\164\0\141\0\40\0\141\0\156\0\144\0\40\0\125\0\163\0\145\0\162\0\120\0\157\0\151\0\156\0\164\0\145\0\162\0\163) - /Parent 683 0 R - /Prev 697 0 R - /Next 699 0 R - /A 243 0 R ->> endobj -699 0 obj -<< - /Title (\376\377\0\124\0\150\0\145\0\40\0\162\0\145\0\147\0\151\0\163\0\164\0\162\0\171\0\40\0\164\0\141\0\142\0\154\0\145) - /Parent 683 0 R - /Prev 698 0 R - /Next 700 0 R - /A 245 0 R ->> endobj -700 0 obj -<< - /Title (\376\377\0\115\0\141\0\156\0\164\0\141\0\151\0\156\0\151\0\156\0\147\0\40\0\163\0\164\0\162\0\157\0\156\0\147\0\40\0\162\0\145\0\146\0\145\0\162\0\145\0\156\0\143\0\145\0\163\0\40\0\164\0\157\0\40\0\123\0\161\0\165\0\151\0\162\0\162\0\145\0\154\0\40\0\166\0\141\0\154\0\165\0\145\0\163\0\40\0\146\0\162\0\157\0\155\0\40\0\164\0\150\0\145\0\40\0\103\0\40\0\101\0\120\0\111) - /Parent 683 0 R - /Prev 699 0 R - /Next 701 0 R - /A 247 0 R ->> endobj -701 0 obj -<< - /Title (\376\377\0\104\0\145\0\142\0\165\0\147\0\40\0\111\0\156\0\164\0\145\0\162\0\146\0\141\0\143\0\145) - /Parent 683 0 R - /Prev 700 0 R - /A 249 0 R ->> endobj -702 0 obj -<< - /Title (\376\377\0\103\0\150\0\141\0\160\0\164\0\145\0\162\0\240\0\64\0\56\0\240\0\101\0\120\0\111\0\40\0\122\0\145\0\146\0\145\0\162\0\145\0\156\0\143\0\145) - /Parent 514 0 R - /First 703 0 R - /Last 711 0 R - /Prev 683 0 R - /Next 712 0 R - /Count -9 - /A 251 0 R ->> endobj -703 0 obj -<< - /Title (\376\377\0\126\0\151\0\162\0\164\0\165\0\141\0\154\0\40\0\115\0\141\0\143\0\150\0\151\0\156\0\145) - /Parent 702 0 R - /Next 704 0 R - /A 253 0 R ->> endobj -704 0 obj -<< - /Title (\376\377\0\103\0\157\0\155\0\160\0\151\0\154\0\145\0\162) - /Parent 702 0 R - /Prev 703 0 R - /Next 705 0 R - /A 255 0 R ->> endobj -705 0 obj -<< - /Title (\376\377\0\123\0\164\0\141\0\143\0\153\0\40\0\117\0\160\0\145\0\162\0\141\0\164\0\151\0\157\0\156\0\163) - /Parent 702 0 R - /Prev 704 0 R - /Next 706 0 R - /A 257 0 R ->> endobj -706 0 obj -<< - /Title (\376\377\0\117\0\142\0\152\0\145\0\143\0\164\0\40\0\143\0\162\0\145\0\141\0\164\0\151\0\157\0\156\0\40\0\141\0\156\0\144\0\40\0\150\0\141\0\156\0\144\0\154\0\151\0\156\0\147) - /Parent 702 0 R - /Prev 705 0 R - /Next 707 0 R - /A 259 0 R ->> endobj -707 0 obj -<< - /Title (\376\377\0\103\0\141\0\154\0\154\0\163) - /Parent 702 0 R - /Prev 706 0 R - /Next 708 0 R - /A 261 0 R ->> endobj -708 0 obj -<< - /Title (\376\377\0\117\0\142\0\152\0\145\0\143\0\164\0\163\0\40\0\155\0\141\0\156\0\151\0\160\0\165\0\154\0\141\0\164\0\151\0\157\0\156) - /Parent 702 0 R - /Prev 707 0 R - /Next 709 0 R - /A 263 0 R ->> endobj -709 0 obj -<< - /Title (\376\377\0\102\0\171\0\164\0\145\0\143\0\157\0\144\0\145\0\40\0\163\0\145\0\162\0\151\0\141\0\154\0\151\0\172\0\141\0\164\0\151\0\157\0\156) - /Parent 702 0 R - /Prev 708 0 R - /Next 710 0 R - /A 265 0 R ->> endobj -710 0 obj -<< - /Title (\376\377\0\122\0\141\0\167\0\40\0\157\0\142\0\152\0\145\0\143\0\164\0\40\0\150\0\141\0\156\0\144\0\154\0\151\0\156\0\147) - /Parent 702 0 R - /Prev 709 0 R - /Next 711 0 R - /A 267 0 R ->> endobj -711 0 obj -<< - /Title (\376\377\0\104\0\145\0\142\0\165\0\147\0\40\0\151\0\156\0\164\0\145\0\162\0\146\0\141\0\143\0\145) - /Parent 702 0 R - /Prev 710 0 R - /A 269 0 R ->> endobj -712 0 obj -<< - /Title (\376\377\0\111\0\156\0\144\0\145\0\170) - /Parent 514 0 R - /Prev 702 0 R - /A 271 0 R ->> endobj -713 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F11 -/BaseFont /Courier-Bold -/Encoding /WinAnsiEncoding >> -endobj -714 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F1 -/BaseFont /Helvetica -/Encoding /WinAnsiEncoding >> -endobj -715 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F10 -/BaseFont /Courier-Oblique -/Encoding /WinAnsiEncoding >> -endobj -716 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F5 -/BaseFont /Times-Roman -/Encoding /WinAnsiEncoding >> -endobj -717 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F3 -/BaseFont /Helvetica-Bold -/Encoding /WinAnsiEncoding >> -endobj -718 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F9 -/BaseFont /Courier -/Encoding /WinAnsiEncoding >> -endobj -719 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F6 -/BaseFont /Times-Italic -/Encoding /WinAnsiEncoding >> -endobj -720 0 obj -<< /Type /Font -/Subtype /Type1 -/Name /F7 -/BaseFont /Times-Bold -/Encoding /WinAnsiEncoding >> -endobj -1 0 obj -<< /Type /Pages -/Count 105 -/Kids [6 0 R 8 0 R 10 0 R 12 0 R 121 0 R 240 0 R 273 0 R 275 0 R 277 0 R 279 0 R 281 0 R 283 0 R 298 0 R 300 0 R 302 0 R 304 0 R 306 0 R 310 0 R 316 0 R 321 0 R 323 0 R 325 0 R 330 0 R 338 0 R 343 0 R 345 0 R 347 0 R 349 0 R 351 0 R 353 0 R 357 0 R 361 0 R 363 0 R 367 0 R 369 0 R 371 0 R 373 0 R 375 0 R 377 0 R 379 0 R 381 0 R 383 0 R 385 0 R 387 0 R 389 0 R 391 0 R 393 0 R 395 0 R 397 0 R 399 0 R 401 0 R 403 0 R 405 0 R 407 0 R 409 0 R 411 0 R 413 0 R 415 0 R 417 0 R 419 0 R 421 0 R 423 0 R 425 0 R 427 0 R 429 0 R 431 0 R 433 0 R 435 0 R 437 0 R 439 0 R 441 0 R 443 0 R 445 0 R 447 0 R 449 0 R 451 0 R 453 0 R 455 0 R 457 0 R 459 0 R 461 0 R 463 0 R 465 0 R 467 0 R 469 0 R 471 0 R 473 0 R 475 0 R 477 0 R 479 0 R 481 0 R 483 0 R 485 0 R 487 0 R 489 0 R 491 0 R 493 0 R 495 0 R 497 0 R 499 0 R 501 0 R 503 0 R 506 0 R 509 0 R 512 0 R ] >> -endobj -2 0 obj -<< /Type /Catalog -/Pages 1 0 R - /Outlines 514 0 R - /PageMode /UseOutlines - >> -endobj -3 0 obj -<< -/Font << /F1 714 0 R /F11 713 0 R /F10 715 0 R /F5 716 0 R /F3 717 0 R /F9 718 0 R /F6 719 0 R /F7 720 0 R >> -/ProcSet [ /PDF /ImageC /Text ] >> -endobj -15 0 obj -<< -/S /GoTo -/D [273 0 R /XYZ 115.0 725.0 null] ->> -endobj -17 0 obj -<< -/S /GoTo -/D [275 0 R /XYZ 115.0 725.0 null] ->> -endobj -19 0 obj -<< -/S /GoTo -/D [275 0 R /XYZ 115.0 666.009 null] ->> -endobj -21 0 obj -<< -/S /GoTo -/D [275 0 R /XYZ 115.0 632.684 null] ->> -endobj -23 0 obj -<< -/S /GoTo -/D [275 0 R /XYZ 115.0 519.385 null] ->> -endobj -25 0 obj -<< -/S /GoTo -/D [275 0 R /XYZ 115.0 322.946 null] ->> -endobj -27 0 obj -<< -/S /GoTo -/D [275 0 R /XYZ 115.0 192.507 null] ->> -endobj -29 0 obj -<< -/S /GoTo -/D [277 0 R /XYZ 115.0 725.0 null] ->> -endobj -31 0 obj -<< -/S /GoTo -/D [277 0 R /XYZ 115.0 414.541 null] ->> -endobj -33 0 obj -<< -/S /GoTo -/D [277 0 R /XYZ 115.0 119.922 null] ->> -endobj -35 0 obj -<< -/S /GoTo -/D [279 0 R /XYZ 115.0 682.0 null] ->> -endobj -37 0 obj -<< -/S /GoTo -/D [279 0 R /XYZ 115.0 552.401 null] ->> -endobj -39 0 obj -<< -/S /GoTo -/D [279 0 R /XYZ 115.0 442.522 null] ->> -endobj -41 0 obj -<< -/S /GoTo -/D [279 0 R /XYZ 115.0 137.763 null] ->> -endobj -43 0 obj -<< -/S /GoTo -/D [281 0 R /XYZ 115.0 654.42 null] ->> -endobj -45 0 obj -<< -/S /GoTo -/D [281 0 R /XYZ 115.0 543.401 null] ->> -endobj -47 0 obj -<< -/S /GoTo -/D [281 0 R /XYZ 115.0 394.082 null] ->> -endobj -49 0 obj -<< -/S /GoTo -/D [281 0 R /XYZ 115.0 274.343 null] ->> -endobj -51 0 obj -<< -/S /GoTo -/D [281 0 R /XYZ 115.0 212.904 null] ->> -endobj -53 0 obj -<< -/S /GoTo -/D [281 0 R /XYZ 115.0 140.465 null] ->> -endobj -55 0 obj -<< -/S /GoTo -/D [283 0 R /XYZ 115.0 714.0 null] ->> -endobj -57 0 obj -<< -/S /GoTo -/D [283 0 R /XYZ 115.0 652.561 null] ->> -endobj -59 0 obj -<< -/S /GoTo -/D [283 0 R /XYZ 115.0 591.122 null] ->> -endobj -61 0 obj -<< -/S /GoTo -/D [283 0 R /XYZ 115.0 540.683 null] ->> -endobj -63 0 obj -<< -/S /GoTo -/D [283 0 R /XYZ 115.0 479.244 null] ->> -endobj -65 0 obj -<< -/S /GoTo -/D [283 0 R /XYZ 115.0 358.919 null] ->> -endobj -67 0 obj -<< -/S /GoTo -/D [300 0 R /XYZ 115.0 705.0 null] ->> -endobj -69 0 obj -<< -/S /GoTo -/D [300 0 R /XYZ 115.0 555.815 null] ->> -endobj -71 0 obj -<< -/S /GoTo -/D [300 0 R /XYZ 115.0 475.516 null] ->> -endobj -73 0 obj -<< -/S /GoTo -/D [302 0 R /XYZ 115.0 148.088 null] ->> -endobj -75 0 obj -<< -/S /GoTo -/D [304 0 R /XYZ 115.0 298.444 null] ->> -endobj -77 0 obj -<< -/S /GoTo -/D [304 0 R /XYZ 115.0 207.145 null] ->> -endobj -79 0 obj -<< -/S /GoTo -/D [304 0 R /XYZ 115.0 115.846 null] ->> -endobj -81 0 obj -<< -/S /GoTo -/D [306 0 R /XYZ 115.0 652.14 null] ->> -endobj -83 0 obj -<< -/S /GoTo -/D [306 0 R /XYZ 115.0 571.841 null] ->> -endobj -85 0 obj -<< -/S /GoTo -/D [306 0 R /XYZ 115.0 380.522 null] ->> -endobj -87 0 obj -<< -/S /GoTo -/D [306 0 R /XYZ 115.0 270.643 null] ->> -endobj -89 0 obj -<< -/S /GoTo -/D [306 0 R /XYZ 115.0 141.044 null] ->> -endobj -91 0 obj -<< -/S /GoTo -/D [310 0 R /XYZ 115.0 682.0 null] ->> -endobj -93 0 obj -<< -/S /GoTo -/D [310 0 R /XYZ 115.0 601.701 null] ->> -endobj -95 0 obj -<< -/S /GoTo -/D [310 0 R /XYZ 115.0 511.542 null] ->> -endobj -97 0 obj -<< -/S /GoTo -/D [310 0 R /XYZ 115.0 381.943 null] ->> -endobj -99 0 obj -<< -/S /GoTo -/D [310 0 R /XYZ 115.0 290.644 null] ->> -endobj -101 0 obj -<< -/S /GoTo -/D [310 0 R /XYZ 115.0 257.319 null] ->> -endobj -103 0 obj -<< -/S /GoTo -/D [316 0 R /XYZ 115.0 663.14 null] ->> -endobj -105 0 obj -<< -/S /GoTo -/D [323 0 R /XYZ 115.0 245.758 null] ->> -endobj -107 0 obj -<< -/S /GoTo -/D [325 0 R /XYZ 115.0 242.64 null] ->> -endobj -109 0 obj -<< -/S /GoTo -/D [325 0 R /XYZ 115.0 151.341 null] ->> -endobj -111 0 obj -<< -/S /GoTo -/D [330 0 R /XYZ 115.0 629.0 null] ->> -endobj -113 0 obj -<< -/S /GoTo -/D [330 0 R /XYZ 115.0 428.541 null] ->> -endobj -115 0 obj -<< -/S /GoTo -/D [330 0 R /XYZ 115.0 341.216 null] ->> -endobj -117 0 obj -<< -/S /GoTo -/D [330 0 R /XYZ 115.0 290.777 null] ->> -endobj -119 0 obj -<< -/S /GoTo -/D [338 0 R /XYZ 115.0 583.84 null] ->> -endobj -124 0 obj -<< -/S /GoTo -/D [338 0 R /XYZ 115.0 383.801 null] ->> -endobj -126 0 obj -<< -/S /GoTo -/D [338 0 R /XYZ 115.0 217.176 null] ->> -endobj -128 0 obj -<< -/S /GoTo -/D [338 0 R /XYZ 115.0 140.851 null] ->> -endobj -130 0 obj -<< -/S /GoTo -/D [345 0 R /XYZ 115.0 380.624 null] ->> -endobj -132 0 obj -<< -/S /GoTo -/D [347 0 R /XYZ 115.0 725.0 null] ->> -endobj -134 0 obj -<< -/S /GoTo -/D [347 0 R /XYZ 115.0 582.427 null] ->> -endobj -136 0 obj -<< -/S /GoTo -/D [347 0 R /XYZ 115.0 370.388 null] ->> -endobj -138 0 obj -<< -/S /GoTo -/D [347 0 R /XYZ 115.0 158.489 null] ->> -endobj -140 0 obj -<< -/S /GoTo -/D [349 0 R /XYZ 115.0 725.0 null] ->> -endobj -142 0 obj -<< -/S /GoTo -/D [353 0 R /XYZ 115.0 311.78 null] ->> -endobj -144 0 obj -<< -/S /GoTo -/D [357 0 R /XYZ 115.0 352.5 null] ->> -endobj -146 0 obj -<< -/S /GoTo -/D [363 0 R /XYZ 115.0 557.1 null] ->> -endobj -148 0 obj -<< -/S /GoTo -/D [363 0 R /XYZ 115.0 132.021 null] ->> -endobj -150 0 obj -<< -/S /GoTo -/D [367 0 R /XYZ 115.0 307.36 null] ->> -endobj -152 0 obj -<< -/S /GoTo -/D [367 0 R /XYZ 115.0 242.035 null] ->> -endobj -154 0 obj -<< -/S /GoTo -/D [369 0 R /XYZ 115.0 572.98 null] ->> -endobj -156 0 obj -<< -/S /GoTo -/D [369 0 R /XYZ 115.0 107.761 null] ->> -endobj -158 0 obj -<< -/S /GoTo -/D [371 0 R /XYZ 115.0 445.68 null] ->> -endobj -160 0 obj -<< -/S /GoTo -/D [371 0 R /XYZ 115.0 325.355 null] ->> -endobj -162 0 obj -<< -/S /GoTo -/D [375 0 R /XYZ 115.0 685.28 null] ->> -endobj -164 0 obj -<< -/S /GoTo -/D [377 0 R /XYZ 115.0 613.56 null] ->> -endobj -166 0 obj -<< -/S /GoTo -/D [377 0 R /XYZ 115.0 276.755 null] ->> -endobj -168 0 obj -<< -/S /GoTo -/D [379 0 R /XYZ 115.0 328.76 null] ->> -endobj -170 0 obj -<< -/S /GoTo -/D [379 0 R /XYZ 115.0 248.461 null] ->> -endobj -172 0 obj -<< -/S /GoTo -/D [379 0 R /XYZ 115.0 168.162 null] ->> -endobj -174 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 693.0 null] ->> -endobj -176 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 591.701 null] ->> -endobj -178 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 511.402 null] ->> -endobj -180 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 460.963 null] ->> -endobj -182 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 410.524 null] ->> -endobj -184 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 360.085 null] ->> -endobj -186 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 309.646 null] ->> -endobj -188 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 229.347 null] ->> -endobj -190 0 obj -<< -/S /GoTo -/D [381 0 R /XYZ 115.0 149.048 null] ->> -endobj -192 0 obj -<< -/S /GoTo -/D [383 0 R /XYZ 115.0 608.64 null] ->> -endobj -194 0 obj -<< -/S /GoTo -/D [383 0 R /XYZ 115.0 528.341 null] ->> -endobj -196 0 obj -<< -/S /GoTo -/D [383 0 R /XYZ 115.0 448.042 null] ->> -endobj -198 0 obj -<< -/S /GoTo -/D [383 0 R /XYZ 115.0 335.743 null] ->> -endobj -200 0 obj -<< -/S /GoTo -/D [383 0 R /XYZ 115.0 223.444 null] ->> -endobj -202 0 obj -<< -/S /GoTo -/D [383 0 R /XYZ 115.0 111.145 null] ->> -endobj -204 0 obj -<< -/S /GoTo -/D [385 0 R /XYZ 115.0 653.14 null] ->> -endobj -206 0 obj -<< -/S /GoTo -/D [385 0 R /XYZ 115.0 598.815 null] ->> -endobj -208 0 obj -<< -/S /GoTo -/D [389 0 R /XYZ 115.0 725.0 null] ->> -endobj -210 0 obj -<< -/S /GoTo -/D [403 0 R /XYZ 115.0 725.0 null] ->> -endobj -212 0 obj -<< -/S /GoTo -/D [403 0 R /XYZ 115.0 601.009 null] ->> -endobj -214 0 obj -<< -/S /GoTo -/D [403 0 R /XYZ 115.0 343.684 null] ->> -endobj -216 0 obj -<< -/S /GoTo -/D [403 0 R /XYZ 115.0 278.359 null] ->> -endobj -218 0 obj -<< -/S /GoTo -/D [403 0 R /XYZ 115.0 213.034 null] ->> -endobj -220 0 obj -<< -/S /GoTo -/D [403 0 R /XYZ 115.0 136.709 null] ->> -endobj -222 0 obj -<< -/S /GoTo -/D [405 0 R /XYZ 115.0 633.56 null] ->> -endobj -224 0 obj -<< -/S /GoTo -/D [405 0 R /XYZ 115.0 418.775 null] ->> -endobj -226 0 obj -<< -/S /GoTo -/D [405 0 R /XYZ 115.0 331.45 null] ->> -endobj -228 0 obj -<< -/S /GoTo -/D [407 0 R /XYZ 115.0 662.75 null] ->> -endobj -230 0 obj -<< -/S /GoTo -/D [409 0 R /XYZ 115.0 483.82 null] ->> -endobj -232 0 obj -<< -/S /GoTo -/D [409 0 R /XYZ 115.0 323.635 null] ->> -endobj -234 0 obj -<< -/S /GoTo -/D [411 0 R /XYZ 115.0 313.78 null] ->> -endobj -236 0 obj -<< -/S /GoTo -/D [413 0 R /XYZ 115.0 663.14 null] ->> -endobj -238 0 obj -<< -/S /GoTo -/D [415 0 R /XYZ 115.0 161.14 null] ->> -endobj -243 0 obj -<< -/S /GoTo -/D [419 0 R /XYZ 115.0 565.68 null] ->> -endobj -245 0 obj -<< -/S /GoTo -/D [419 0 R /XYZ 115.0 219.335 null] ->> -endobj -247 0 obj -<< -/S /GoTo -/D [421 0 R /XYZ 115.0 725.0 null] ->> -endobj -249 0 obj -<< -/S /GoTo -/D [421 0 R /XYZ 115.0 486.03 null] ->> -endobj -251 0 obj -<< -/S /GoTo -/D [425 0 R /XYZ 115.0 725.0 null] ->> -endobj -253 0 obj -<< -/S /GoTo -/D [425 0 R /XYZ 115.0 687.009 null] ->> -endobj -255 0 obj -<< -/S /GoTo -/D [435 0 R /XYZ 115.0 578.0 null] ->> -endobj -257 0 obj -<< -/S /GoTo -/D [439 0 R /XYZ 115.0 524.14 null] ->> -endobj -259 0 obj -<< -/S /GoTo -/D [443 0 R /XYZ 115.0 422.28 null] ->> -endobj -261 0 obj -<< -/S /GoTo -/D [469 0 R /XYZ 115.0 653.0 null] ->> -endobj -263 0 obj -<< -/S /GoTo -/D [473 0 R /XYZ 115.0 559.14 null] ->> -endobj -265 0 obj -<< -/S /GoTo -/D [491 0 R /XYZ 115.0 219.42 null] ->> -endobj -267 0 obj -<< -/S /GoTo -/D [493 0 R /XYZ 115.0 326.28 null] ->> -endobj -269 0 obj -<< -/S /GoTo -/D [499 0 R /XYZ 115.0 359.28 null] ->> -endobj -271 0 obj -<< -/S /GoTo -/D [503 0 R /XYZ 67.0 725.0 null] ->> -endobj -286 0 obj -<< -/S /GoTo -/D [363 0 R /XYZ 115.0 98.696 null] ->> -endobj -289 0 obj -<< -/S /GoTo -/D [419 0 R /XYZ 115.0 532.355 null] ->> -endobj -291 0 obj -<< -/S /GoTo -/D [375 0 R /XYZ 115.0 651.955 null] ->> -endobj -293 0 obj -<< -/S /GoTo -/D [338 0 R /XYZ 115.0 183.851 null] ->> -endobj -296 0 obj -<< -/S /GoTo -/D [283 0 R /XYZ 115.0 329.48 null] ->> -endobj -313 0 obj -<< -/S /GoTo -/D [367 0 R /XYZ 115.0 274.035 null] ->> -endobj -319 0 obj -<< -/S /GoTo -/D [330 0 R /XYZ 115.0 395.216 null] ->> -endobj -328 0 obj -<< -/S /GoTo -/D [377 0 R /XYZ 115.0 580.235 null] ->> -endobj -334 0 obj -<< -/S /GoTo -/D [377 0 R /XYZ 115.0 243.43 null] ->> -endobj -336 0 obj -<< -/S /GoTo -/D [323 0 R /XYZ 115.0 216.319 null] ->> -endobj -341 0 obj -<< -/S /GoTo -/D [385 0 R /XYZ 115.0 619.815 null] ->> -endobj -514 0 obj -<< - /First 516 0 R - /Last 712 0 R ->> endobj -515 0 obj -<< -/S /GoTo -/D [10 0 R /XYZ 115.0 725.0 null] ->> -endobj -517 0 obj -<< -/S /GoTo -/D [12 0 R /XYZ 115.0 715.0 null] ->> -endobj -548 0 obj -<< -/S /GoTo -/D [300 0 R /XYZ 115.0 414.077 null] ->> -endobj -550 0 obj -<< -/S /GoTo -/D [300 0 R /XYZ 115.0 355.881 null] ->> -endobj -552 0 obj -<< -/S /GoTo -/D [300 0 R /XYZ 115.0 140.505 null] ->> -endobj -554 0 obj -<< -/S /GoTo -/D [302 0 R /XYZ 115.0 545.96 null] ->> -endobj -556 0 obj -<< -/S /GoTo -/D [302 0 R /XYZ 115.0 349.164 null] ->> -endobj -559 0 obj -<< -/S /GoTo -/D [302 0 R /XYZ 115.0 118.649 null] ->> -endobj -561 0 obj -<< -/S /GoTo -/D [304 0 R /XYZ 115.0 516.1 null] ->> -endobj -578 0 obj -<< -/S /GoTo -/D [316 0 R /XYZ 115.0 633.701 null] ->> -endobj -580 0 obj -<< -/S /GoTo -/D [316 0 R /XYZ 115.0 556.645 null] ->> -endobj -582 0 obj -<< -/S /GoTo -/D [316 0 R /XYZ 115.0 315.709 null] ->> -endobj -584 0 obj -<< -/S /GoTo -/D [316 0 R /XYZ 115.0 206.653 null] ->> -endobj -586 0 obj -<< -/S /GoTo -/D [321 0 R /XYZ 115.0 661.0 null] ->> -endobj -588 0 obj -<< -/S /GoTo -/D [321 0 R /XYZ 115.0 444.484 null] ->> -endobj -590 0 obj -<< -/S /GoTo -/D [321 0 R /XYZ 115.0 356.428 null] ->> -endobj -592 0 obj -<< -/S /GoTo -/D [321 0 R /XYZ 115.0 210.072 null] ->> -endobj -594 0 obj -<< -/S /GoTo -/D [323 0 R /XYZ 115.0 645.84 null] ->> -endobj -596 0 obj -<< -/S /GoTo -/D [323 0 R /XYZ 115.0 506.204 null] ->> -endobj -609 0 obj -<< -/S /GoTo -/D [343 0 R /XYZ 115.0 207.32 null] ->> -endobj -611 0 obj -<< -/S /GoTo -/D [345 0 R /XYZ 115.0 642.28 null] ->> -endobj -619 0 obj -<< -/S /GoTo -/D [351 0 R /XYZ 115.0 395.64 null] ->> -endobj -621 0 obj -<< -/S /GoTo -/D [351 0 R /XYZ 115.0 181.71 null] ->> -endobj -634 0 obj -<< -/S /GoTo -/D [375 0 R /XYZ 115.0 239.055 null] ->> -endobj -659 0 obj -<< -/S /GoTo -/D [389 0 R /XYZ 115.0 673.561 null] ->> -endobj -661 0 obj -<< -/S /GoTo -/D [389 0 R /XYZ 115.0 437.365 null] ->> -endobj -663 0 obj -<< -/S /GoTo -/D [389 0 R /XYZ 115.0 201.169 null] ->> -endobj -665 0 obj -<< -/S /GoTo -/D [391 0 R /XYZ 115.0 641.0 null] ->> -endobj -667 0 obj -<< -/S /GoTo -/D [391 0 R /XYZ 115.0 192.804 null] ->> -endobj -669 0 obj -<< -/S /GoTo -/D [393 0 R /XYZ 115.0 440.0 null] ->> -endobj -671 0 obj -<< -/S /GoTo -/D [395 0 R /XYZ 115.0 266.12 null] ->> -endobj -673 0 obj -<< -/S /GoTo -/D [397 0 R /XYZ 115.0 471.0 null] ->> -endobj -675 0 obj -<< -/S /GoTo -/D [397 0 R /XYZ 115.0 148.804 null] ->> -endobj -677 0 obj -<< -/S /GoTo -/D [399 0 R /XYZ 115.0 588.0 null] ->> -endobj -679 0 obj -<< -/S /GoTo -/D [399 0 R /XYZ 115.0 435.804 null] ->> -endobj -681 0 obj -<< -/S /GoTo -/D [399 0 R /XYZ 115.0 188.608 null] ->> -endobj -xref -0 721 -0000000000 65535 f -0000224367 00000 n -0000225255 00000 n -0000225348 00000 n -0000000015 00000 n -0000000071 00000 n -0000000404 00000 n -0000000510 00000 n -0000001702 00000 n -0000001808 00000 n -0000001969 00000 n -0000002076 00000 n -0000003976 00000 n -0000004099 00000 n -0000004500 00000 n -0000225514 00000 n -0000004636 00000 n -0000225580 00000 n -0000004772 00000 n -0000225646 00000 n -0000004908 00000 n -0000225714 00000 n -0000005043 00000 n -0000225782 00000 n -0000005178 00000 n -0000225850 00000 n -0000005314 00000 n -0000225918 00000 n -0000005450 00000 n -0000225986 00000 n -0000005586 00000 n -0000226052 00000 n -0000005722 00000 n -0000226120 00000 n -0000005857 00000 n -0000226188 00000 n -0000005993 00000 n -0000226254 00000 n -0000006129 00000 n -0000226322 00000 n -0000006265 00000 n -0000226390 00000 n -0000006401 00000 n -0000226458 00000 n -0000006537 00000 n -0000226525 00000 n -0000006673 00000 n -0000226593 00000 n -0000006809 00000 n -0000226661 00000 n -0000006945 00000 n -0000226729 00000 n -0000007081 00000 n -0000226797 00000 n -0000007217 00000 n -0000226865 00000 n -0000007353 00000 n -0000226931 00000 n -0000007489 00000 n -0000226999 00000 n -0000007625 00000 n -0000227067 00000 n -0000007761 00000 n -0000227135 00000 n -0000007897 00000 n -0000227203 00000 n -0000008033 00000 n -0000227271 00000 n -0000008169 00000 n -0000227337 00000 n -0000008305 00000 n -0000227405 00000 n -0000008441 00000 n -0000227473 00000 n -0000008576 00000 n -0000227541 00000 n -0000008712 00000 n -0000227609 00000 n -0000008848 00000 n -0000227677 00000 n -0000008984 00000 n -0000227745 00000 n -0000009119 00000 n -0000227812 00000 n -0000009254 00000 n -0000227880 00000 n -0000009390 00000 n -0000227948 00000 n -0000009525 00000 n -0000228016 00000 n -0000009661 00000 n -0000228084 00000 n -0000009797 00000 n -0000228150 00000 n -0000009933 00000 n -0000228218 00000 n -0000010069 00000 n -0000228286 00000 n -0000010204 00000 n -0000228354 00000 n -0000010340 00000 n -0000228422 00000 n -0000010477 00000 n -0000228491 00000 n -0000010615 00000 n -0000228559 00000 n -0000010753 00000 n -0000228628 00000 n -0000010891 00000 n -0000228696 00000 n -0000011029 00000 n -0000228765 00000 n -0000011167 00000 n -0000228832 00000 n -0000011305 00000 n -0000228901 00000 n -0000011442 00000 n -0000228970 00000 n -0000011578 00000 n -0000229039 00000 n -0000011714 00000 n -0000013834 00000 n -0000013960 00000 n -0000014445 00000 n -0000229107 00000 n -0000014579 00000 n -0000229176 00000 n -0000014713 00000 n -0000229245 00000 n -0000014847 00000 n -0000229314 00000 n -0000014981 00000 n -0000229383 00000 n -0000015115 00000 n -0000229450 00000 n -0000015249 00000 n -0000229519 00000 n -0000015383 00000 n -0000229588 00000 n -0000015516 00000 n -0000229657 00000 n -0000015649 00000 n -0000229724 00000 n -0000015783 00000 n -0000229792 00000 n -0000015917 00000 n -0000229859 00000 n -0000016051 00000 n -0000229926 00000 n -0000016185 00000 n -0000229995 00000 n -0000016319 00000 n -0000230063 00000 n -0000016453 00000 n -0000230132 00000 n -0000016587 00000 n -0000230200 00000 n -0000016721 00000 n -0000230269 00000 n -0000016855 00000 n -0000230337 00000 n -0000016989 00000 n -0000230406 00000 n -0000017123 00000 n -0000230474 00000 n -0000017257 00000 n -0000230542 00000 n -0000017391 00000 n -0000230611 00000 n -0000017525 00000 n -0000230679 00000 n -0000017659 00000 n -0000230748 00000 n -0000017793 00000 n -0000230817 00000 n -0000017927 00000 n -0000230884 00000 n -0000018061 00000 n -0000230953 00000 n -0000018195 00000 n -0000231022 00000 n -0000018329 00000 n -0000231091 00000 n -0000018463 00000 n -0000231160 00000 n -0000018597 00000 n -0000231229 00000 n -0000018731 00000 n -0000231298 00000 n -0000018865 00000 n -0000231367 00000 n -0000018999 00000 n -0000231436 00000 n -0000019133 00000 n -0000231504 00000 n -0000019267 00000 n -0000231573 00000 n -0000019400 00000 n -0000231642 00000 n -0000019534 00000 n -0000231711 00000 n -0000019668 00000 n -0000231780 00000 n -0000019802 00000 n -0000231849 00000 n -0000019936 00000 n -0000231917 00000 n -0000020070 00000 n -0000231986 00000 n -0000020203 00000 n -0000232053 00000 n -0000020337 00000 n -0000232120 00000 n -0000020471 00000 n -0000232189 00000 n -0000020605 00000 n -0000232258 00000 n -0000020739 00000 n -0000232327 00000 n -0000020872 00000 n -0000232396 00000 n -0000021006 00000 n -0000232465 00000 n -0000021140 00000 n -0000232533 00000 n -0000021274 00000 n -0000232602 00000 n -0000021408 00000 n -0000232670 00000 n -0000021541 00000 n -0000232738 00000 n -0000021675 00000 n -0000232806 00000 n -0000021809 00000 n -0000232875 00000 n -0000021943 00000 n -0000232943 00000 n -0000022076 00000 n -0000233011 00000 n -0000022208 00000 n -0000023136 00000 n -0000023262 00000 n -0000023403 00000 n -0000233079 00000 n -0000023537 00000 n -0000233147 00000 n -0000023671 00000 n -0000233216 00000 n -0000023805 00000 n -0000233283 00000 n -0000023939 00000 n -0000233351 00000 n -0000024073 00000 n -0000233418 00000 n -0000024207 00000 n -0000233487 00000 n -0000024341 00000 n -0000233554 00000 n -0000024474 00000 n -0000233622 00000 n -0000024608 00000 n -0000233690 00000 n -0000024742 00000 n -0000233757 00000 n -0000024876 00000 n -0000233825 00000 n -0000025010 00000 n -0000233893 00000 n -0000025144 00000 n -0000233961 00000 n -0000025278 00000 n -0000234029 00000 n -0000025412 00000 n -0000026231 00000 n -0000026341 00000 n -0000027993 00000 n -0000028103 00000 n -0000029773 00000 n -0000029883 00000 n -0000031808 00000 n -0000031918 00000 n -0000033598 00000 n -0000033708 00000 n -0000035797 00000 n -0000035923 00000 n -0000036000 00000 n -0000234095 00000 n -0000036139 00000 n -0000036277 00000 n -0000234163 00000 n -0000036416 00000 n -0000234232 00000 n -0000036555 00000 n -0000234301 00000 n -0000036694 00000 n -0000036832 00000 n -0000234370 00000 n -0000036973 00000 n -0000038260 00000 n -0000038370 00000 n -0000040146 00000 n -0000040256 00000 n -0000041771 00000 n -0000041881 00000 n -0000043346 00000 n -0000043456 00000 n -0000044883 00000 n -0000045009 00000 n -0000045038 00000 n -0000045176 00000 n -0000046510 00000 n -0000046636 00000 n -0000046673 00000 n -0000234438 00000 n -0000046812 00000 n -0000046951 00000 n -0000048740 00000 n -0000048866 00000 n -0000048895 00000 n -0000234507 00000 n -0000049034 00000 n -0000050524 00000 n -0000050634 00000 n -0000052310 00000 n -0000052420 00000 n -0000053535 00000 n -0000053661 00000 n -0000053690 00000 n -0000234576 00000 n -0000053829 00000 n -0000055701 00000 n -0000055827 00000 n -0000055872 00000 n -0000056007 00000 n -0000234645 00000 n -0000056142 00000 n -0000234713 00000 n -0000056280 00000 n -0000057789 00000 n -0000057915 00000 n -0000057944 00000 n -0000234782 00000 n -0000058082 00000 n -0000059070 00000 n -0000059180 00000 n -0000061111 00000 n -0000061221 00000 n -0000063733 00000 n -0000063843 00000 n -0000065224 00000 n -0000065334 00000 n -0000067360 00000 n -0000067470 00000 n -0000069856 00000 n -0000069982 00000 n -0000070011 00000 n -0000070150 00000 n -0000072046 00000 n -0000072172 00000 n -0000072201 00000 n -0000072337 00000 n -0000073808 00000 n -0000073918 00000 n -0000075734 00000 n -0000075860 00000 n -0000075889 00000 n -0000076030 00000 n -0000078190 00000 n -0000078300 00000 n -0000079802 00000 n -0000079912 00000 n -0000083044 00000 n -0000083154 00000 n -0000084378 00000 n -0000084488 00000 n -0000086625 00000 n -0000086735 00000 n -0000088825 00000 n -0000088935 00000 n -0000090080 00000 n -0000090190 00000 n -0000091245 00000 n -0000091355 00000 n -0000092755 00000 n -0000092865 00000 n -0000094327 00000 n -0000094437 00000 n -0000095963 00000 n -0000096073 00000 n -0000097129 00000 n -0000097239 00000 n -0000098584 00000 n -0000098694 00000 n -0000099960 00000 n -0000100070 00000 n -0000101861 00000 n -0000101971 00000 n -0000103702 00000 n -0000103812 00000 n -0000105072 00000 n -0000105182 00000 n -0000105568 00000 n -0000105678 00000 n -0000108493 00000 n -0000108603 00000 n -0000110787 00000 n -0000110897 00000 n -0000112476 00000 n -0000112586 00000 n -0000114870 00000 n -0000114980 00000 n -0000116732 00000 n -0000116842 00000 n -0000118927 00000 n -0000119037 00000 n -0000120547 00000 n -0000120657 00000 n -0000121757 00000 n -0000121867 00000 n -0000124448 00000 n -0000124558 00000 n -0000126820 00000 n -0000126930 00000 n -0000127781 00000 n -0000127891 00000 n -0000129048 00000 n -0000129158 00000 n -0000130810 00000 n -0000130920 00000 n -0000131978 00000 n -0000132088 00000 n -0000133524 00000 n -0000133634 00000 n -0000135115 00000 n -0000135225 00000 n -0000137140 00000 n -0000137250 00000 n -0000139051 00000 n -0000139161 00000 n -0000140391 00000 n -0000140501 00000 n -0000141546 00000 n -0000141656 00000 n -0000143188 00000 n -0000143298 00000 n -0000144604 00000 n -0000144714 00000 n -0000146111 00000 n -0000146221 00000 n -0000147667 00000 n -0000147777 00000 n -0000148919 00000 n -0000149029 00000 n -0000150328 00000 n -0000150438 00000 n -0000151827 00000 n -0000151937 00000 n -0000152995 00000 n -0000153105 00000 n -0000154199 00000 n -0000154309 00000 n -0000156001 00000 n -0000156111 00000 n -0000158575 00000 n -0000158685 00000 n -0000160512 00000 n -0000160622 00000 n -0000161968 00000 n -0000162078 00000 n -0000163613 00000 n -0000163723 00000 n -0000165354 00000 n -0000165464 00000 n -0000166890 00000 n -0000167000 00000 n -0000168101 00000 n -0000168211 00000 n -0000169416 00000 n -0000169526 00000 n -0000171076 00000 n -0000171186 00000 n -0000172522 00000 n -0000172632 00000 n -0000174029 00000 n -0000174139 00000 n -0000175958 00000 n -0000176068 00000 n -0000177613 00000 n -0000177723 00000 n -0000179165 00000 n -0000179275 00000 n -0000180790 00000 n -0000180900 00000 n -0000182326 00000 n -0000182436 00000 n -0000183748 00000 n -0000183858 00000 n -0000185060 00000 n -0000185170 00000 n -0000186679 00000 n -0000186789 00000 n -0000188058 00000 n -0000188168 00000 n -0000189924 00000 n -0000190050 00000 n -0000190071 00000 n -0000191823 00000 n -0000191949 00000 n -0000191970 00000 n -0000193757 00000 n -0000193883 00000 n -0000193904 00000 n -0000194338 00000 n -0000194464 00000 n -0000234851 00000 n -0000234905 00000 n -0000194485 00000 n -0000234971 00000 n -0000194739 00000 n -0000194940 00000 n -0000195176 00000 n -0000195455 00000 n -0000195683 00000 n -0000195834 00000 n -0000195982 00000 n -0000196136 00000 n -0000196307 00000 n -0000196455 00000 n -0000196588 00000 n -0000196854 00000 n -0000196981 00000 n -0000197111 00000 n -0000197247 00000 n -0000197371 00000 n -0000197495 00000 n -0000197625 00000 n -0000197755 00000 n -0000197903 00000 n -0000198033 00000 n -0000198216 00000 n -0000198370 00000 n -0000198518 00000 n -0000198654 00000 n -0000198828 00000 n -0000199071 00000 n -0000199195 00000 n -0000199398 00000 n -0000199513 00000 n -0000235037 00000 n -0000199791 00000 n -0000235106 00000 n -0000199959 00000 n -0000235175 00000 n -0000200101 00000 n -0000235244 00000 n -0000200232 00000 n -0000235312 00000 n -0000200380 00000 n -0000200502 00000 n -0000235381 00000 n -0000200674 00000 n -0000235450 00000 n -0000200778 00000 n -0000200906 00000 n -0000201036 00000 n -0000201184 00000 n -0000201320 00000 n -0000201450 00000 n -0000201710 00000 n -0000201929 00000 n -0000202130 00000 n -0000202283 00000 n -0000202413 00000 n -0000202543 00000 n -0000202667 00000 n -0000202871 00000 n -0000203080 00000 n -0000203323 00000 n -0000235517 00000 n -0000203521 00000 n -0000235586 00000 n -0000203670 00000 n -0000235655 00000 n -0000203831 00000 n -0000235724 00000 n -0000203992 00000 n -0000235793 00000 n -0000204135 00000 n -0000235860 00000 n -0000204301 00000 n -0000235929 00000 n -0000204515 00000 n -0000235998 00000 n -0000204705 00000 n -0000236067 00000 n -0000204889 00000 n -0000236135 00000 n -0000205091 00000 n -0000205296 00000 n -0000205498 00000 n -0000205647 00000 n -0000205778 00000 n -0000205965 00000 n -0000206144 00000 n -0000206302 00000 n -0000206480 00000 n -0000206643 00000 n -0000206780 00000 n -0000206977 00000 n -0000236204 00000 n -0000207224 00000 n -0000236272 00000 n -0000207417 00000 n -0000207756 00000 n -0000207940 00000 n -0000208252 00000 n -0000208436 00000 n -0000208605 00000 n -0000208790 00000 n -0000236340 00000 n -0000209019 00000 n -0000236408 00000 n -0000209200 00000 n -0000209381 00000 n -0000209571 00000 n -0000209738 00000 n -0000209890 00000 n -0000210051 00000 n -0000210335 00000 n -0000210475 00000 n -0000210648 00000 n -0000210853 00000 n -0000211038 00000 n -0000211186 00000 n -0000236476 00000 n -0000211418 00000 n -0000211696 00000 n -0000211857 00000 n -0000212067 00000 n -0000212177 00000 n -0000212302 00000 n -0000212451 00000 n -0000212600 00000 n -0000212725 00000 n -0000212850 00000 n -0000212975 00000 n -0000213100 00000 n -0000213243 00000 n -0000213368 00000 n -0000213511 00000 n -0000213636 00000 n -0000213767 00000 n -0000213910 00000 n -0000214047 00000 n -0000214202 00000 n -0000214363 00000 n -0000214509 00000 n -0000214744 00000 n -0000214913 00000 n -0000236545 00000 n -0000215143 00000 n -0000236614 00000 n -0000215271 00000 n -0000236683 00000 n -0000215402 00000 n -0000236752 00000 n -0000215527 00000 n -0000236819 00000 n -0000215664 00000 n -0000236888 00000 n -0000215795 00000 n -0000236955 00000 n -0000215926 00000 n -0000237023 00000 n -0000216075 00000 n -0000237090 00000 n -0000216206 00000 n -0000237159 00000 n -0000216390 00000 n -0000237226 00000 n -0000216545 00000 n -0000237295 00000 n -0000216682 00000 n -0000216851 00000 n -0000217166 00000 n -0000217353 00000 n -0000217496 00000 n -0000217789 00000 n -0000218108 00000 n -0000218310 00000 n -0000218536 00000 n -0000218732 00000 n -0000218895 00000 n -0000219088 00000 n -0000219319 00000 n -0000219526 00000 n -0000219733 00000 n -0000219945 00000 n -0000220223 00000 n -0000220472 00000 n -0000220679 00000 n -0000221143 00000 n -0000221318 00000 n -0000221602 00000 n -0000221777 00000 n -0000221926 00000 n -0000222122 00000 n -0000222388 00000 n -0000222519 00000 n -0000222739 00000 n -0000222971 00000 n -0000223184 00000 n -0000223359 00000 n -0000223475 00000 n -0000223588 00000 n -0000223697 00000 n -0000223813 00000 n -0000223924 00000 n -0000224038 00000 n -0000224145 00000 n -0000224257 00000 n -trailer -<< -/Size 721 -/Root 2 0 R -/Info 4 0 R ->> -startxref -237364 -%%EOF diff --git a/src/3rdparty/squirrel/etc/minimal.c b/src/3rdparty/squirrel/etc/minimal.c deleted file mode 100644 index fc59859f87..0000000000 --- a/src/3rdparty/squirrel/etc/minimal.c +++ /dev/null @@ -1,63 +0,0 @@ -#include -#include - -#include -#include -#include - -#ifdef _MSC_VER -#pragma comment (lib ,"squirrel.lib") -#pragma comment (lib ,"sqstdlib.lib") -#endif - -#ifdef SQUNICODE -#define scvprintf vwprintf -#else -#define scvprintf vprintf -#endif - -void printfunc(HSQUIRRELVM v, const SQChar *s, ...) -{ -va_list arglist; -va_start(arglist, s); -scvprintf(s, arglist); -va_end(arglist); -} - -void call_foo(HSQUIRRELVM v, int n,float f,const SQChar *s) -{ - SQInteger top = sq_gettop(v); //saves the stack size before the call - sq_pushroottable(v); //pushes the global table - sq_pushstring(v,_SC("foo"),-1); - if(SQ_SUCCEEDED(sq_get(v,-2))) { //gets the field 'foo' from the global table - sq_pushroottable(v); //push the 'this' (in this case is the global table) - sq_pushinteger(v,n); - sq_pushfloat(v,f); - sq_pushstring(v,s,-1); - sq_call(v,4,SQFalse,SQTrue); //calls the function - } - sq_settop(v,top); //restores the original stack size -} - -int main(int argc, char* argv[]) -{ - HSQUIRRELVM v; - v = sq_open(1024); // creates a VM with initial stack size 1024 - - //sq_pushroottable(v); //push the root table were to register the lib function - //sqstd_register_iolib(v); - sqstd_seterrorhandlers(v); //registers the default error handlers - - sq_setprintfunc(v, printfunc); //sets the print function - - sq_pushroottable(v); //push the root table(were the globals of the script will be stored) - if(SQ_SUCCEEDED(sqstd_dofile(v, _SC("test.nut"), SQFalse, SQTrue))) // also prints syntax errors if any - { - call_foo(v,1,2.5,_SC("teststring")); - } - - sq_pop(v,1); //pops the root table - sq_close(v); - - return 0; -} diff --git a/src/3rdparty/squirrel/etc/test.nut b/src/3rdparty/squirrel/etc/test.nut deleted file mode 100644 index 125df32cd8..0000000000 --- a/src/3rdparty/squirrel/etc/test.nut +++ /dev/null @@ -1,4 +0,0 @@ -function foo(i, f, s) -{ - print("Called foo(), i="+i+", f="+f+", s='"+s+"'\n"); -} diff --git a/src/3rdparty/squirrel/include/sqstdaux.h b/src/3rdparty/squirrel/include/sqstdaux.h index c16b04373b..ded3c12e8a 100644 --- a/src/3rdparty/squirrel/include/sqstdaux.h +++ b/src/3rdparty/squirrel/include/sqstdaux.h @@ -2,15 +2,7 @@ #ifndef _SQSTD_AUXLIB_H_ #define _SQSTD_AUXLIB_H_ -#ifdef __cplusplus -extern "C" { -#endif - -SQUIRREL_API void sqstd_seterrorhandlers(HSQUIRRELVM v); -SQUIRREL_API void sqstd_printcallstack(HSQUIRRELVM v); - -#ifdef __cplusplus -} /*extern "C"*/ -#endif +void sqstd_seterrorhandlers(HSQUIRRELVM v); +void sqstd_printcallstack(HSQUIRRELVM v); #endif /* _SQSTD_AUXLIB_H_ */ diff --git a/src/3rdparty/squirrel/include/sqstdblob.h b/src/3rdparty/squirrel/include/sqstdblob.h deleted file mode 100644 index 1d9a4cdc38..0000000000 --- a/src/3rdparty/squirrel/include/sqstdblob.h +++ /dev/null @@ -1,20 +0,0 @@ -/* see copyright notice in squirrel.h */ -#ifndef _SQSTDBLOB_H_ -#define _SQSTDBLOB_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -SQUIRREL_API SQUserPointer sqstd_createblob(HSQUIRRELVM v, SQInteger size); -SQUIRREL_API SQRESULT sqstd_getblob(HSQUIRRELVM v,SQInteger idx,SQUserPointer *ptr); -SQUIRREL_API SQInteger sqstd_getblobsize(HSQUIRRELVM v,SQInteger idx); - -SQUIRREL_API SQRESULT sqstd_register_bloblib(HSQUIRRELVM v); - -#ifdef __cplusplus -} /*extern "C"*/ -#endif - -#endif /*_SQSTDBLOB_H_*/ - diff --git a/src/3rdparty/squirrel/include/sqstdio.h b/src/3rdparty/squirrel/include/sqstdio.h deleted file mode 100644 index 5eaec31c6d..0000000000 --- a/src/3rdparty/squirrel/include/sqstdio.h +++ /dev/null @@ -1,54 +0,0 @@ -/* see copyright notice in squirrel.h */ -#ifndef _SQSTDIO_H_ -#define _SQSTDIO_H_ - -#ifdef __cplusplus - -#define SQSTD_STREAM_TYPE_TAG 0x80000000 - -struct SQStream { - virtual ~SQStream() {} - virtual SQInteger Read(void *buffer, SQInteger size) = 0; - virtual SQInteger Write(void *buffer, SQInteger size) = 0; - virtual SQInteger Flush() = 0; - virtual SQInteger Tell() = 0; - virtual SQInteger Len() = 0; - virtual SQInteger Seek(SQInteger offset, SQInteger origin) = 0; - virtual bool IsValid() = 0; - virtual bool EOS() = 0; -}; - -extern "C" { -#endif - -#define SQ_SEEK_CUR 0 -#define SQ_SEEK_END 1 -#define SQ_SEEK_SET 2 - -typedef void* SQFILE; - -SQUIRREL_API SQFILE sqstd_fopen(const SQChar *,const SQChar *); -SQUIRREL_API SQInteger sqstd_fread(SQUserPointer, SQInteger, SQInteger, SQFILE); -SQUIRREL_API SQInteger sqstd_fwrite(const SQUserPointer, SQInteger, SQInteger, SQFILE); -SQUIRREL_API SQInteger sqstd_fseek(SQFILE , SQInteger , SQInteger); -SQUIRREL_API SQInteger sqstd_ftell(SQFILE); -SQUIRREL_API SQInteger sqstd_fflush(SQFILE); -SQUIRREL_API SQInteger sqstd_fclose(SQFILE); -SQUIRREL_API SQInteger sqstd_feof(SQFILE); - -SQUIRREL_API SQRESULT sqstd_createfile(HSQUIRRELVM v, SQFILE file,SQBool own); -SQUIRREL_API SQRESULT sqstd_getfile(HSQUIRRELVM v, SQInteger idx, SQFILE *file); - -//compiler helpers -SQUIRREL_API SQRESULT sqstd_loadfile(HSQUIRRELVM v,const SQChar *filename,SQBool printerror); -SQUIRREL_API SQRESULT sqstd_dofile(HSQUIRRELVM v,const SQChar *filename,SQBool retval,SQBool printerror); -SQUIRREL_API SQRESULT sqstd_writeclosuretofile(HSQUIRRELVM v,const SQChar *filename); - -SQUIRREL_API SQRESULT sqstd_register_iolib(HSQUIRRELVM v); - -#ifdef __cplusplus -} /*extern "C"*/ -#endif - -#endif /*_SQSTDIO_H_*/ - diff --git a/src/3rdparty/squirrel/include/sqstdmath.h b/src/3rdparty/squirrel/include/sqstdmath.h index 65de6fd72d..269a7e40d8 100644 --- a/src/3rdparty/squirrel/include/sqstdmath.h +++ b/src/3rdparty/squirrel/include/sqstdmath.h @@ -2,14 +2,6 @@ #ifndef _SQSTD_MATH_H_ #define _SQSTD_MATH_H_ -#ifdef __cplusplus -extern "C" { -#endif - -SQUIRREL_API SQRESULT sqstd_register_mathlib(HSQUIRRELVM v); - -#ifdef __cplusplus -} /*extern "C"*/ -#endif +SQRESULT sqstd_register_mathlib(HSQUIRRELVM v); #endif /*_SQSTD_MATH_H_*/ diff --git a/src/3rdparty/squirrel/include/sqstdstring.h b/src/3rdparty/squirrel/include/sqstdstring.h index 3c3bce826f..856c33f791 100644 --- a/src/3rdparty/squirrel/include/sqstdstring.h +++ b/src/3rdparty/squirrel/include/sqstdstring.h @@ -2,10 +2,6 @@ #ifndef _SQSTD_STRING_H_ #define _SQSTD_STRING_H_ -#ifdef __cplusplus -extern "C" { -#endif - typedef unsigned int SQRexBool; typedef struct SQRex SQRex; @@ -14,20 +10,16 @@ typedef struct { SQInteger len; } SQRexMatch; -SQUIRREL_API SQRex *sqstd_rex_compile(const SQChar *pattern,const SQChar **error); -SQUIRREL_API void sqstd_rex_free(SQRex *exp); -SQUIRREL_API SQBool sqstd_rex_match(SQRex* exp,const SQChar* text); -SQUIRREL_API SQBool sqstd_rex_search(SQRex* exp,const SQChar* text, const SQChar** out_begin, const SQChar** out_end); -SQUIRREL_API SQBool sqstd_rex_searchrange(SQRex* exp,const SQChar* text_begin,const SQChar* text_end,const SQChar** out_begin, const SQChar** out_end); -SQUIRREL_API SQInteger sqstd_rex_getsubexpcount(SQRex* exp); -SQUIRREL_API SQBool sqstd_rex_getsubexp(SQRex* exp, SQInteger n, SQRexMatch *subexp); +SQRex *sqstd_rex_compile(const SQChar *pattern,const SQChar **error); +void sqstd_rex_free(SQRex *exp); +SQBool sqstd_rex_match(SQRex* exp,const SQChar* text); +SQBool sqstd_rex_search(SQRex* exp,const SQChar* text, const SQChar** out_begin, const SQChar** out_end); +SQBool sqstd_rex_searchrange(SQRex* exp,const SQChar* text_begin,const SQChar* text_end,const SQChar** out_begin, const SQChar** out_end); +SQInteger sqstd_rex_getsubexpcount(SQRex* exp); +SQBool sqstd_rex_getsubexp(SQRex* exp, SQInteger n, SQRexMatch *subexp); -SQUIRREL_API SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen,SQChar **output); +SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen,SQChar **output); -SQUIRREL_API SQRESULT sqstd_register_stringlib(HSQUIRRELVM v); - -#ifdef __cplusplus -} /*extern "C"*/ -#endif +SQRESULT sqstd_register_stringlib(HSQUIRRELVM v); #endif /*_SQSTD_STRING_H_*/ diff --git a/src/3rdparty/squirrel/include/sqstdsystem.h b/src/3rdparty/squirrel/include/sqstdsystem.h deleted file mode 100644 index b155a91f8b..0000000000 --- a/src/3rdparty/squirrel/include/sqstdsystem.h +++ /dev/null @@ -1,15 +0,0 @@ -/* see copyright notice in squirrel.h */ -#ifndef _SQSTD_SYSTEMLIB_H_ -#define _SQSTD_SYSTEMLIB_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -SQUIRREL_API SQInteger sqstd_register_systemlib(HSQUIRRELVM v); - -#ifdef __cplusplus -} /*extern "C"*/ -#endif - -#endif /* _SQSTD_SYSTEMLIB_H_ */ diff --git a/src/3rdparty/squirrel/include/squirrel.h b/src/3rdparty/squirrel/include/squirrel.h index 6da1f744de..87e0ac0d69 100644 --- a/src/3rdparty/squirrel/include/squirrel.h +++ b/src/3rdparty/squirrel/include/squirrel.h @@ -1,57 +1,36 @@ /* -Copyright (c) 2003-2011 Alberto Demichelis - -This software is provided 'as-is', without any -express or implied warranty. In no event will the -authors be held liable for any damages arising from -the use of this software. - -Permission is granted to anyone to use this software -for any purpose, including commercial applications, -and to alter it and redistribute it freely, subject -to the following restrictions: - - 1. The origin of this software must not be - misrepresented; you must not claim that - you wrote the original software. If you - use this software in a product, an - acknowledgment in the product - documentation would be appreciated but is - not required. - - 2. Altered source versions must be plainly - marked as such, and must not be - misrepresented as being the original - software. - - 3. This notice may not be removed or - altered from any source distribution. - -*/ + * Copyright (c) 2003-2011 Alberto Demichelis + * + * This software is provided 'as-is', without any + * express or implied warranty. In no event will the + * authors be held liable for any damages arising from + * the use of this software. + * + * Permission is granted to anyone to use this software + * for any purpose, including commercial applications, + * and to alter it and redistribute it freely, subject + * to the following restrictions: + * + * 1. The origin of this software must not be + * misrepresented; you must not claim that + * you wrote the original software. If you + * use this software in a product, an + * acknowledgment in the product + * documentation would be appreciated but is + * not required. + * + * 2. Altered source versions must be plainly + * marked as such, and must not be + * misrepresented as being the original + * software. + * + * 3. This notice may not be removed or + * altered from any source distribution. + */ #ifndef _SQUIRREL_H_ #define _SQUIRREL_H_ -#ifdef __cplusplus -extern "C" { -#endif - -#if defined(_MSC_VER) -# define inline __forceinline -#endif /* _MSC_VER */ - -#if defined(_MSC_VER) && _MSC_VER >= 1400 // MSVC 2005 safety checks -# pragma warning(disable: 4996) // '_wfopen' was declared deprecated -# define _CRT_SECURE_NO_DEPRECATE // all deprecated 'unsafe string functions -# define _CRT_NON_CONFORMING_SWPRINTFS // another deprecated stuff -#endif /* _MSC_VER >= 1400 */ - -#ifndef SQUIRREL_API -#define SQUIRREL_API extern -#endif - -#if defined(__GNUC__) - #define __int64 long long -#endif +#include "../../../string_type.h" typedef __int64 SQInteger; typedef unsigned __int64 SQUnsignedInteger; @@ -89,84 +68,12 @@ struct SQClass; struct SQInstance; struct SQDelegable; -#ifdef _UNICODE -#define SQUNICODE -#endif - -#ifdef SQUNICODE -#if (defined(_MSC_VER) && _MSC_VER >= 1400) // 1400 = VS8 - -#ifndef _WCHAR_T_DEFINED //this is if the compiler considers wchar_t as native type -typedef unsigned short wchar_t; -#endif -#endif - -typedef wchar_t SQChar; -#define _SC(a) L##a -#define scstrcmp wcscmp -#define scsprintf swprintf -#define scsnprintf _snwprintf -#define scstrlen wcslen -#define scstrtod wcstod -#define scstrtol wcstol -#define scatoi _wtoi -#define scstrtoul wcstoul -#define scvsprintf vswprintf -#define scstrstr wcsstr -#define scisspace iswspace -#define scisdigit iswdigit -#define scisxdigit iswxdigit -#define scisalpha iswalpha -#define sciscntrl iswcntrl -#define scisalnum iswalnum -#define scprintf wprintf -#define scfprintf fwprintf -#define scvprintf vwprintf -#define scvfprintf vfwprintf -#define scvsnprintf _vsnwprintf -#define scstrdup _wcsdup -#define scstrrchr wcsrchr -#define scstrcat wcscat -#define MAX_CHAR 0xFFFF -#else typedef char SQChar; -#define _SC(a) a -#define scstrcmp strcmp -#define scsprintf sprintf -#define scsnprintf snprintf -#define scstrlen strlen -#define scstrtod strtod -#define scstrtol strtol -#define scatoi atoi -#define scstrtoul strtoul -#define scvsprintf vsprintf -#define scstrstr strstr -#define scisspace isspace -#define scisdigit isdigit -#define scisxdigit isxdigit -#define sciscntrl iscntrl -#define scisalpha isalpha -#define scisalnum isalnum -#define scprintf printf -#define scfprintf fprintf -#define scvprintf vprintf -#define scvfprintf vfprintf -#define scvsnprintf vsnprintf -#define scstrdup strdup -#define scstrrchr strrchr -#define scstrcat strcat #define MAX_CHAR 0xFFFF -#endif -#if defined(_MSC_VER) || defined(__MINGW32__) - #define SQ_PRINTF64 _SC("%I64d") -#else - #define SQ_PRINTF64 _SC("%lld") -#endif - -#define SQUIRREL_VERSION _SC("Squirrel 2.2.5 stable - With custom OpenTTD modifications") -#define SQUIRREL_COPYRIGHT _SC("Copyright (C) 2003-2010 Alberto Demichelis") -#define SQUIRREL_AUTHOR _SC("Alberto Demichelis") +#define SQUIRREL_VERSION "Squirrel 2.2.5 stable - With custom OpenTTD modifications" +#define SQUIRREL_COPYRIGHT "Copyright (C) 2003-2010 Alberto Demichelis" +#define SQUIRREL_AUTHOR "Alberto Demichelis" #define SQUIRREL_VERSION_NUMBER 225 #define SQ_VMSTATE_IDLE 0 @@ -272,7 +179,7 @@ typedef void (*SQPRINTFUNCTION)(HSQUIRRELVM,const SQChar * ,...); typedef SQInteger (*SQWRITEFUNC)(SQUserPointer,SQUserPointer,SQInteger); typedef SQInteger (*SQREADFUNC)(SQUserPointer,SQUserPointer,SQInteger); -typedef SQInteger (*SQLEXREADFUNC)(SQUserPointer); +typedef WChar (*SQLEXREADFUNC)(SQUserPointer); typedef struct tagSQRegFunction{ const SQChar *name; @@ -289,147 +196,147 @@ typedef struct tagSQFunctionInfo { /*vm*/ -SQUIRREL_API bool sq_can_suspend(HSQUIRRELVM v); -SQUIRREL_API HSQUIRRELVM sq_open(SQInteger initialstacksize); -SQUIRREL_API HSQUIRRELVM sq_newthread(HSQUIRRELVM friendvm, SQInteger initialstacksize); -SQUIRREL_API void sq_seterrorhandler(HSQUIRRELVM v); -SQUIRREL_API void sq_close(HSQUIRRELVM v); -SQUIRREL_API void sq_setforeignptr(HSQUIRRELVM v,SQUserPointer p); -SQUIRREL_API SQUserPointer sq_getforeignptr(HSQUIRRELVM v); -SQUIRREL_API void sq_setprintfunc(HSQUIRRELVM v, SQPRINTFUNCTION printfunc); -SQUIRREL_API SQPRINTFUNCTION sq_getprintfunc(HSQUIRRELVM v); -SQUIRREL_API SQRESULT sq_suspendvm(HSQUIRRELVM v); -SQUIRREL_API bool sq_resumecatch(HSQUIRRELVM v, int suspend = -1); -SQUIRREL_API bool sq_resumeerror(HSQUIRRELVM v); -SQUIRREL_API SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool resumedret,SQBool retval,SQBool raiseerror,SQBool throwerror); -SQUIRREL_API SQInteger sq_getvmstate(HSQUIRRELVM v); -SQUIRREL_API void sq_decreaseops(HSQUIRRELVM v, int amount); +bool sq_can_suspend(HSQUIRRELVM v); +HSQUIRRELVM sq_open(SQInteger initialstacksize); +HSQUIRRELVM sq_newthread(HSQUIRRELVM friendvm, SQInteger initialstacksize); +void sq_seterrorhandler(HSQUIRRELVM v); +void sq_close(HSQUIRRELVM v); +void sq_setforeignptr(HSQUIRRELVM v,SQUserPointer p); +SQUserPointer sq_getforeignptr(HSQUIRRELVM v); +void sq_setprintfunc(HSQUIRRELVM v, SQPRINTFUNCTION printfunc); +SQPRINTFUNCTION sq_getprintfunc(HSQUIRRELVM v); +SQRESULT sq_suspendvm(HSQUIRRELVM v); +bool sq_resumecatch(HSQUIRRELVM v, int suspend = -1); +bool sq_resumeerror(HSQUIRRELVM v); +SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool resumedret,SQBool retval,SQBool raiseerror,SQBool throwerror); +SQInteger sq_getvmstate(HSQUIRRELVM v); +void sq_decreaseops(HSQUIRRELVM v, int amount); /*compiler*/ -SQUIRREL_API SQRESULT sq_compile(HSQUIRRELVM v,SQLEXREADFUNC read,SQUserPointer p,const SQChar *sourcename,SQBool raiseerror); -SQUIRREL_API SQRESULT sq_compilebuffer(HSQUIRRELVM v,const SQChar *s,SQInteger size,const SQChar *sourcename,SQBool raiseerror); -SQUIRREL_API void sq_enabledebuginfo(HSQUIRRELVM v, SQBool enable); -SQUIRREL_API void sq_notifyallexceptions(HSQUIRRELVM v, SQBool enable); -SQUIRREL_API void sq_setcompilererrorhandler(HSQUIRRELVM v,SQCOMPILERERROR f); +SQRESULT sq_compile(HSQUIRRELVM v,SQLEXREADFUNC read,SQUserPointer p,const SQChar *sourcename,SQBool raiseerror); +SQRESULT sq_compilebuffer(HSQUIRRELVM v,const SQChar *s,SQInteger size,const SQChar *sourcename,SQBool raiseerror); +void sq_enabledebuginfo(HSQUIRRELVM v, SQBool enable); +void sq_notifyallexceptions(HSQUIRRELVM v, SQBool enable); +void sq_setcompilererrorhandler(HSQUIRRELVM v,SQCOMPILERERROR f); /*stack operations*/ -SQUIRREL_API void sq_push(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API void sq_pop(HSQUIRRELVM v,SQInteger nelemstopop); -SQUIRREL_API void sq_poptop(HSQUIRRELVM v); -SQUIRREL_API void sq_remove(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQInteger sq_gettop(HSQUIRRELVM v); -SQUIRREL_API void sq_settop(HSQUIRRELVM v,SQInteger newtop); -SQUIRREL_API void sq_reservestack(HSQUIRRELVM v,SQInteger nsize); -SQUIRREL_API SQInteger sq_cmp(HSQUIRRELVM v); -SQUIRREL_API void sq_move(HSQUIRRELVM dest,HSQUIRRELVM src,SQInteger idx); +void sq_push(HSQUIRRELVM v,SQInteger idx); +void sq_pop(HSQUIRRELVM v,SQInteger nelemstopop); +void sq_poptop(HSQUIRRELVM v); +void sq_remove(HSQUIRRELVM v,SQInteger idx); +SQInteger sq_gettop(HSQUIRRELVM v); +void sq_settop(HSQUIRRELVM v,SQInteger newtop); +void sq_reservestack(HSQUIRRELVM v,SQInteger nsize); +SQInteger sq_cmp(HSQUIRRELVM v); +void sq_move(HSQUIRRELVM dest,HSQUIRRELVM src,SQInteger idx); /*object creation handling*/ -SQUIRREL_API SQUserPointer sq_newuserdata(HSQUIRRELVM v,SQUnsignedInteger size); -SQUIRREL_API void sq_newtable(HSQUIRRELVM v); -SQUIRREL_API void sq_newarray(HSQUIRRELVM v,SQInteger size); -SQUIRREL_API void sq_newclosure(HSQUIRRELVM v,SQFUNCTION func,SQUnsignedInteger nfreevars); -SQUIRREL_API SQRESULT sq_setparamscheck(HSQUIRRELVM v,SQInteger nparamscheck,const SQChar *typemask); -SQUIRREL_API SQRESULT sq_bindenv(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API void sq_pushstring(HSQUIRRELVM v,const SQChar *s,SQInteger len); -SQUIRREL_API void sq_pushfloat(HSQUIRRELVM v,SQFloat f); -SQUIRREL_API void sq_pushinteger(HSQUIRRELVM v,SQInteger n); -SQUIRREL_API void sq_pushbool(HSQUIRRELVM v,SQBool b); -SQUIRREL_API void sq_pushuserpointer(HSQUIRRELVM v,SQUserPointer p); -SQUIRREL_API void sq_pushnull(HSQUIRRELVM v); -SQUIRREL_API SQObjectType sq_gettype(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQInteger sq_getsize(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_getbase(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQBool sq_instanceof(HSQUIRRELVM v); -SQUIRREL_API void sq_tostring(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API void sq_tobool(HSQUIRRELVM v, SQInteger idx, SQBool *b); -SQUIRREL_API SQRESULT sq_getstring(HSQUIRRELVM v,SQInteger idx,const SQChar **c); -SQUIRREL_API SQRESULT sq_getinteger(HSQUIRRELVM v,SQInteger idx,SQInteger *i); -SQUIRREL_API SQRESULT sq_getfloat(HSQUIRRELVM v,SQInteger idx,SQFloat *f); -SQUIRREL_API SQRESULT sq_getbool(HSQUIRRELVM v,SQInteger idx,SQBool *b); -SQUIRREL_API SQRESULT sq_getthread(HSQUIRRELVM v,SQInteger idx,HSQUIRRELVM *thread); -SQUIRREL_API SQRESULT sq_getuserpointer(HSQUIRRELVM v,SQInteger idx,SQUserPointer *p); -SQUIRREL_API SQRESULT sq_getuserdata(HSQUIRRELVM v,SQInteger idx,SQUserPointer *p,SQUserPointer *typetag); -SQUIRREL_API SQRESULT sq_settypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer typetag); -SQUIRREL_API SQRESULT sq_gettypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer *typetag); -SQUIRREL_API void sq_setreleasehook(HSQUIRRELVM v,SQInteger idx,SQRELEASEHOOK hook); -SQUIRREL_API SQChar *sq_getscratchpad(HSQUIRRELVM v,SQInteger minsize); -SQUIRREL_API SQRESULT sq_getfunctioninfo(HSQUIRRELVM v,SQInteger idx,SQFunctionInfo *fi); -SQUIRREL_API SQRESULT sq_getclosureinfo(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger *nparams,SQUnsignedInteger *nfreevars); -SQUIRREL_API SQRESULT sq_setnativeclosurename(HSQUIRRELVM v,SQInteger idx,const SQChar *name); -SQUIRREL_API SQRESULT sq_setinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer p); -SQUIRREL_API SQRESULT sq_getinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer *p,SQUserPointer typetag); -SQUIRREL_API SQRESULT sq_setclassudsize(HSQUIRRELVM v, SQInteger idx, SQInteger udsize); -SQUIRREL_API SQRESULT sq_newclass(HSQUIRRELVM v,SQBool hasbase); -SQUIRREL_API SQRESULT sq_createinstance(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_setattributes(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_getattributes(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_getclass(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API void sq_weakref(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_getdefaultdelegate(HSQUIRRELVM v,SQObjectType t); +SQUserPointer sq_newuserdata(HSQUIRRELVM v,SQUnsignedInteger size); +void sq_newtable(HSQUIRRELVM v); +void sq_newarray(HSQUIRRELVM v,SQInteger size); +void sq_newclosure(HSQUIRRELVM v,SQFUNCTION func,SQUnsignedInteger nfreevars); +SQRESULT sq_setparamscheck(HSQUIRRELVM v,SQInteger nparamscheck,const SQChar *typemask); +SQRESULT sq_bindenv(HSQUIRRELVM v,SQInteger idx); +void sq_pushstring(HSQUIRRELVM v,const SQChar *s,SQInteger len); +void sq_pushfloat(HSQUIRRELVM v,SQFloat f); +void sq_pushinteger(HSQUIRRELVM v,SQInteger n); +void sq_pushbool(HSQUIRRELVM v,SQBool b); +void sq_pushuserpointer(HSQUIRRELVM v,SQUserPointer p); +void sq_pushnull(HSQUIRRELVM v); +SQObjectType sq_gettype(HSQUIRRELVM v,SQInteger idx); +SQInteger sq_getsize(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_getbase(HSQUIRRELVM v,SQInteger idx); +SQBool sq_instanceof(HSQUIRRELVM v); +void sq_tostring(HSQUIRRELVM v,SQInteger idx); +void sq_tobool(HSQUIRRELVM v, SQInteger idx, SQBool *b); +SQRESULT sq_getstring(HSQUIRRELVM v,SQInteger idx,const SQChar **c); +SQRESULT sq_getinteger(HSQUIRRELVM v,SQInteger idx,SQInteger *i); +SQRESULT sq_getfloat(HSQUIRRELVM v,SQInteger idx,SQFloat *f); +SQRESULT sq_getbool(HSQUIRRELVM v,SQInteger idx,SQBool *b); +SQRESULT sq_getthread(HSQUIRRELVM v,SQInteger idx,HSQUIRRELVM *thread); +SQRESULT sq_getuserpointer(HSQUIRRELVM v,SQInteger idx,SQUserPointer *p); +SQRESULT sq_getuserdata(HSQUIRRELVM v,SQInteger idx,SQUserPointer *p,SQUserPointer *typetag); +SQRESULT sq_settypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer typetag); +SQRESULT sq_gettypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer *typetag); +void sq_setreleasehook(HSQUIRRELVM v,SQInteger idx,SQRELEASEHOOK hook); +SQChar *sq_getscratchpad(HSQUIRRELVM v,SQInteger minsize); +SQRESULT sq_getfunctioninfo(HSQUIRRELVM v,SQInteger idx,SQFunctionInfo *fi); +SQRESULT sq_getclosureinfo(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger *nparams,SQUnsignedInteger *nfreevars); +SQRESULT sq_setnativeclosurename(HSQUIRRELVM v,SQInteger idx,const SQChar *name); +SQRESULT sq_setinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer p); +SQRESULT sq_getinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer *p,SQUserPointer typetag); +SQRESULT sq_setclassudsize(HSQUIRRELVM v, SQInteger idx, SQInteger udsize); +SQRESULT sq_newclass(HSQUIRRELVM v,SQBool hasbase); +SQRESULT sq_createinstance(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_setattributes(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_getattributes(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_getclass(HSQUIRRELVM v,SQInteger idx); +void sq_weakref(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_getdefaultdelegate(HSQUIRRELVM v,SQObjectType t); /*object manipulation*/ -SQUIRREL_API void sq_pushroottable(HSQUIRRELVM v); -SQUIRREL_API void sq_pushregistrytable(HSQUIRRELVM v); -SQUIRREL_API void sq_pushconsttable(HSQUIRRELVM v); -SQUIRREL_API SQRESULT sq_setroottable(HSQUIRRELVM v); -SQUIRREL_API SQRESULT sq_setconsttable(HSQUIRRELVM v); -SQUIRREL_API SQRESULT sq_newslot(HSQUIRRELVM v, SQInteger idx, SQBool bstatic); -SQUIRREL_API SQRESULT sq_deleteslot(HSQUIRRELVM v,SQInteger idx,SQBool pushval); -SQUIRREL_API SQRESULT sq_set(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_get(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_rawget(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_rawset(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_rawdeleteslot(HSQUIRRELVM v,SQInteger idx,SQBool pushval); -SQUIRREL_API SQRESULT sq_arrayappend(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_arraypop(HSQUIRRELVM v,SQInteger idx,SQBool pushval); -SQUIRREL_API SQRESULT sq_arrayresize(HSQUIRRELVM v,SQInteger idx,SQInteger newsize); -SQUIRREL_API SQRESULT sq_arrayreverse(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_arrayremove(HSQUIRRELVM v,SQInteger idx,SQInteger itemidx); -SQUIRREL_API SQRESULT sq_arrayinsert(HSQUIRRELVM v,SQInteger idx,SQInteger destpos); -SQUIRREL_API SQRESULT sq_setdelegate(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_getdelegate(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_clone(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_setfreevariable(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger nval); -SQUIRREL_API SQRESULT sq_next(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_getweakrefval(HSQUIRRELVM v,SQInteger idx); -SQUIRREL_API SQRESULT sq_clear(HSQUIRRELVM v,SQInteger idx); +void sq_pushroottable(HSQUIRRELVM v); +void sq_pushregistrytable(HSQUIRRELVM v); +void sq_pushconsttable(HSQUIRRELVM v); +SQRESULT sq_setroottable(HSQUIRRELVM v); +SQRESULT sq_setconsttable(HSQUIRRELVM v); +SQRESULT sq_newslot(HSQUIRRELVM v, SQInteger idx, SQBool bstatic); +SQRESULT sq_deleteslot(HSQUIRRELVM v,SQInteger idx,SQBool pushval); +SQRESULT sq_set(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_get(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_rawget(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_rawset(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_rawdeleteslot(HSQUIRRELVM v,SQInteger idx,SQBool pushval); +SQRESULT sq_arrayappend(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_arraypop(HSQUIRRELVM v,SQInteger idx,SQBool pushval); +SQRESULT sq_arrayresize(HSQUIRRELVM v,SQInteger idx,SQInteger newsize); +SQRESULT sq_arrayreverse(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_arrayremove(HSQUIRRELVM v,SQInteger idx,SQInteger itemidx); +SQRESULT sq_arrayinsert(HSQUIRRELVM v,SQInteger idx,SQInteger destpos); +SQRESULT sq_setdelegate(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_getdelegate(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_clone(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_setfreevariable(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger nval); +SQRESULT sq_next(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_getweakrefval(HSQUIRRELVM v,SQInteger idx); +SQRESULT sq_clear(HSQUIRRELVM v,SQInteger idx); /*calls*/ -SQUIRREL_API SQRESULT sq_call(HSQUIRRELVM v,SQInteger params,SQBool retval,SQBool raiseerror, int suspend = -1); -SQUIRREL_API SQRESULT sq_resume(HSQUIRRELVM v,SQBool retval,SQBool raiseerror); -SQUIRREL_API const SQChar *sq_getlocal(HSQUIRRELVM v,SQUnsignedInteger level,SQUnsignedInteger idx); -SQUIRREL_API const SQChar *sq_getfreevariable(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger nval); -SQUIRREL_API SQRESULT sq_throwerror(HSQUIRRELVM v,const SQChar *err); -SQUIRREL_API void sq_reseterror(HSQUIRRELVM v); -SQUIRREL_API void sq_getlasterror(HSQUIRRELVM v); +SQRESULT sq_call(HSQUIRRELVM v,SQInteger params,SQBool retval,SQBool raiseerror, int suspend = -1); +SQRESULT sq_resume(HSQUIRRELVM v,SQBool retval,SQBool raiseerror); +const SQChar *sq_getlocal(HSQUIRRELVM v,SQUnsignedInteger level,SQUnsignedInteger idx); +const SQChar *sq_getfreevariable(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger nval); +SQRESULT sq_throwerror(HSQUIRRELVM v,const SQChar *err); +void sq_reseterror(HSQUIRRELVM v); +void sq_getlasterror(HSQUIRRELVM v); /*raw object handling*/ -SQUIRREL_API SQRESULT sq_getstackobj(HSQUIRRELVM v,SQInteger idx,HSQOBJECT *po); -SQUIRREL_API void sq_pushobject(HSQUIRRELVM v,HSQOBJECT obj); -SQUIRREL_API void sq_addref(HSQUIRRELVM v,HSQOBJECT *po); -SQUIRREL_API SQBool sq_release(HSQUIRRELVM v,HSQOBJECT *po); -SQUIRREL_API void sq_resetobject(HSQOBJECT *po); -SQUIRREL_API const SQChar *sq_objtostring(HSQOBJECT *o); -SQUIRREL_API SQBool sq_objtobool(HSQOBJECT *o); -SQUIRREL_API SQInteger sq_objtointeger(HSQOBJECT *o); -SQUIRREL_API SQFloat sq_objtofloat(HSQOBJECT *o); -SQUIRREL_API SQRESULT sq_getobjtypetag(HSQOBJECT *o,SQUserPointer * typetag); +SQRESULT sq_getstackobj(HSQUIRRELVM v,SQInteger idx,HSQOBJECT *po); +void sq_pushobject(HSQUIRRELVM v,HSQOBJECT obj); +void sq_addref(HSQUIRRELVM v,HSQOBJECT *po); +SQBool sq_release(HSQUIRRELVM v,HSQOBJECT *po); +void sq_resetobject(HSQOBJECT *po); +const SQChar *sq_objtostring(HSQOBJECT *o); +SQBool sq_objtobool(HSQOBJECT *o); +SQInteger sq_objtointeger(HSQOBJECT *o); +SQFloat sq_objtofloat(HSQOBJECT *o); +SQRESULT sq_getobjtypetag(HSQOBJECT *o,SQUserPointer * typetag); /*GC*/ -SQUIRREL_API SQInteger sq_collectgarbage(HSQUIRRELVM v); +SQInteger sq_collectgarbage(HSQUIRRELVM v); /*serialization*/ -SQUIRREL_API SQRESULT sq_writeclosure(HSQUIRRELVM vm,SQWRITEFUNC writef,SQUserPointer up); -SQUIRREL_API SQRESULT sq_readclosure(HSQUIRRELVM vm,SQREADFUNC readf,SQUserPointer up); +SQRESULT sq_writeclosure(HSQUIRRELVM vm,SQWRITEFUNC writef,SQUserPointer up); +SQRESULT sq_readclosure(HSQUIRRELVM vm,SQREADFUNC readf,SQUserPointer up); /*mem allocation*/ -SQUIRREL_API void *sq_malloc(SQUnsignedInteger size); -SQUIRREL_API void *sq_realloc(void* p,SQUnsignedInteger oldsize,SQUnsignedInteger newsize); -SQUIRREL_API void sq_free(void *p,SQUnsignedInteger size); +void *sq_malloc(SQUnsignedInteger size); +void *sq_realloc(void* p,SQUnsignedInteger oldsize,SQUnsignedInteger newsize); +void sq_free(void *p,SQUnsignedInteger size); /*debug*/ -SQUIRREL_API SQRESULT sq_stackinfos(HSQUIRRELVM v,SQInteger level,SQStackInfos *si); -SQUIRREL_API void sq_setdebughook(HSQUIRRELVM v); +SQRESULT sq_stackinfos(HSQUIRRELVM v,SQInteger level,SQStackInfos *si); +void sq_setdebughook(HSQUIRRELVM v); /*UTILITY MACRO*/ #define sq_isnumeric(o) ((o)._type&SQOBJECT_NUMERIC) @@ -461,8 +368,4 @@ SQUIRREL_API void sq_setdebughook(HSQUIRRELVM v); #define SQ_FAILED(res) (res<0) #define SQ_SUCCEEDED(res) (res>=0) -#ifdef __cplusplus -} /*extern "C"*/ -#endif - #endif /*_SQUIRREL_H_*/ diff --git a/src/3rdparty/squirrel/samples/ackermann.nut b/src/3rdparty/squirrel/samples/ackermann.nut deleted file mode 100644 index 9fdaff06b4..0000000000 --- a/src/3rdparty/squirrel/samples/ackermann.nut +++ /dev/null @@ -1,23 +0,0 @@ -/* -* -* Original Javascript version by David Hedbor(http://www.bagley.org/~doug/shootout/) -* -*/ - -function Ack(M, N) { - if (M == 0) return( N + 1 ); - if (N == 0) return( Ack(M - 1, 1) ); - return( Ack(M - 1, Ack(M, (N - 1))) ); -} - -local n; - -if(ARGS.len()!=0) { - n = ARGS[0].tointeger(); - if(n < 1) n = 1; -} else { - n = 1; -} -print("n="+n+"\n"); -print("Ack(3,"+ n+ "):"+ Ack(3, n)); - diff --git a/src/3rdparty/squirrel/samples/array.nut b/src/3rdparty/squirrel/samples/array.nut deleted file mode 100644 index 58f160b12d..0000000000 --- a/src/3rdparty/squirrel/samples/array.nut +++ /dev/null @@ -1,28 +0,0 @@ -/* -* -* Original Javascript version by David Hedbor(http://www.bagley.org/~doug/shootout/) -* -*/ -local n, i, k; - -if(ARGS.len()!=0) { - n = ARGS[0].tointeger(); - if(n < 1) n = 1; -} else { - n = 1; -} - -local x = []; x.resize(n); -local y = []; y.resize(n); - -for (i = 0; i < n; i+=1) { - x[i] = i + 1; - y[i] = 0; -} - -for (k = 0 ; k < n; k+=1) { - for (i = n-1; i >= 0; i-=1) { - y[i] = y[i]+ x[i]; - } -} -print(y[0].tostring()+" "+y[n-1]); diff --git a/src/3rdparty/squirrel/samples/class.nut b/src/3rdparty/squirrel/samples/class.nut deleted file mode 100644 index babe54f0b3..0000000000 --- a/src/3rdparty/squirrel/samples/class.nut +++ /dev/null @@ -1,49 +0,0 @@ -////////////////////////////////////////////////////////////////////////////////// -////////////////////////////////////////////////////////////////////////////////// -class BaseVector { - constructor(...) - { - if(vargc >= 3) { - x = vargv[0]; - y = vargv[1]; - z = vargv[2]; - } - } - - - x = 0; - y = 0; - z = 0; -} - -class Vector3 extends BaseVector { - function _add(other) - { - if(other instanceof this.getclass()) - return ::Vector3(x+other.x,y+other.y,z+other.z); - else - throw "wrong parameter"; - } - function Print() - { - ::print(x+","+y+","+z+"\n"); - } -} - -local v0 = Vector3(1,2,3) -local v1 = Vector3(11,12,13) -local v2 = v0 + v1; -v2.Print(); - -FakeNamespace <- { - Utils = {} -} - -class FakeNamespace.Utils.SuperClass { - constructor() - { - ::print("FakeNamespace.Utils.SuperClass") - } -} - -local testy = FakeNamespace.Utils.SuperClass(); diff --git a/src/3rdparty/squirrel/samples/classattributes.nut b/src/3rdparty/squirrel/samples/classattributes.nut deleted file mode 100644 index 01232002c2..0000000000 --- a/src/3rdparty/squirrel/samples/classattributes.nut +++ /dev/null @@ -1,35 +0,0 @@ -class Foo { - //constructor - constructor(a) - { - testy = ["stuff",1,2,3]; - } - //attributes of PrintTesty - - function PrintTesty() - { - foreach(i,val in testy) - { - ::print("idx = "+i+" = "+val+" \n"); - } - } - //attributes of testy - - testy = null; - -} - -foreach(member,val in Foo) -{ - ::print(member+"\n"); - local attr; - if((attr = Foo.getattributes(member)) != null) { - foreach(i,v in attr) - { - ::print("\t"+i+" = "+(typeof v)+"\n"); - } - } - else { - ::print("\t\n") - } -} diff --git a/src/3rdparty/squirrel/samples/coroutines.nut b/src/3rdparty/squirrel/samples/coroutines.nut deleted file mode 100644 index c7e4583c19..0000000000 --- a/src/3rdparty/squirrel/samples/coroutines.nut +++ /dev/null @@ -1,25 +0,0 @@ -function coroutine_test(a,b) -{ - ::print(a+" "+b+"\n"); - local ret = ::suspend("suspend 1"); - ::print("the coroutine says "+ret+"\n"); - ret = ::suspend("suspend 2"); - ::print("the coroutine says "+ret+"\n"); - ret = ::suspend("suspend 3"); - ::print("the coroutine says "+ret+"\n"); - return "I'm done" -} - -local coro = ::newthread(coroutine_test); - -local susparam = coro.call("test","coroutine"); //starts the coroutine - -local i = 1; -do -{ - ::print("suspend passed ["+susparam+"]\n") - susparam = coro.wakeup("ciao "+i); - ++i; -}while(coro.getstatus()=="suspended") - -::print("return passed ["+susparam+"]\n") diff --git a/src/3rdparty/squirrel/samples/delegation.nut b/src/3rdparty/squirrel/samples/delegation.nut deleted file mode 100644 index e9e86ca9a5..0000000000 --- a/src/3rdparty/squirrel/samples/delegation.nut +++ /dev/null @@ -1,52 +0,0 @@ - -PEntity <- { - name="noname" - pos={x=0,y=0,z=0} - type="entity" - //methamethod - _typeof=function() - { - return type; - } -} - -function PEntity::PrintPos() -{ - ::print("x="+pos.x+" y="+pos.y+" z="+pos.z+"\n"); -} - -function PEntity::new(name,pos) -{ - local newentity=clone ::PEntity; - if(name) - newentity.name=name; - if(pos) - newentity.pos=pos; - return newentity; -} - -PPlayer <- { - model="warrior.mdl" - weapon="fist" - health=100 - armor=0 - //overrides the parent type - type="player" -} - -function PPlayer::new(name,pos) -{ - local newplayer=delegate ::PEntity.new(name,pos) : clone ::PPlayer; - return newplayer; -} - -local player=PPlayer.new("godzilla",{x=10,y=20,z=30}); - -::print("PLAYER NAME"+player.name+"\n"); -::print("ENTITY TYPE"+typeof player+"\n"); - -player.PrintPos(); - -player.pos.x=123; - -player.PrintPos(); diff --git a/src/3rdparty/squirrel/samples/fibonacci.nut b/src/3rdparty/squirrel/samples/fibonacci.nut deleted file mode 100644 index 1db79423e5..0000000000 --- a/src/3rdparty/squirrel/samples/fibonacci.nut +++ /dev/null @@ -1,15 +0,0 @@ -/* -* -* Original Javascript version by David Hedbor(http://www.bagley.org/~doug/shootout/) -* -*/ - -function fib(n) -{ - if (n < 2) return 1 - return fib(n-2) + fib(n-1) -} - -local n = ARGS.len()!=0?ARGS[0].tointeger():1 - -print(fib(n)+"\n") diff --git a/src/3rdparty/squirrel/samples/flow.nut b/src/3rdparty/squirrel/samples/flow.nut deleted file mode 100644 index 1cd7cfcf4b..0000000000 --- a/src/3rdparty/squirrel/samples/flow.nut +++ /dev/null @@ -1,33 +0,0 @@ -function min(x,y) - return xy?x:y; - -if(min(100,200)>max(50,20)) - print("I'm useless statement just to show up the if/else\n"); -else - print("squirrel!!\n"); - -print("\n") - -function typy(obj) -{ - switch(typeof obj) - { - case "integer": - case "float": - return "is a number"; - case "table": - case "array": - return "is a container"; - default: - return "is other stuff" - } -} - -local a=1,b={},c=function(a,b){return a+b;} - -print("a "+typy(a)+"\n"); -print("b "+typy(b)+"\n"); -print("c "+typy(c)+"\n"); diff --git a/src/3rdparty/squirrel/samples/generators.nut b/src/3rdparty/squirrel/samples/generators.nut deleted file mode 100644 index 9853e09640..0000000000 --- a/src/3rdparty/squirrel/samples/generators.nut +++ /dev/null @@ -1,42 +0,0 @@ -/* -*Random number function from The Great Computer Language shootout -*converted to a generator func -*/ - -function gen_random(max) { - local last=42 - local IM = 139968; - local IA = 3877; - local IC = 29573; - for(;;){ //loops forever - yield (max * (last = (last * IA + IC) % IM) / IM); - } -} - -local randtor=gen_random(100); - -print("RAND NUMBERS \n") - -for(local i=0;i<10;i+=1) - print(">"+resume randtor+"\n"); - -print("FIBONACCI \n") -function fiboz(n) -{ - local prev=0; - local curr=1; - yield 1; - - for(local i=0;i"+val+"\n"); -} diff --git a/src/3rdparty/squirrel/samples/hello.nut b/src/3rdparty/squirrel/samples/hello.nut deleted file mode 100644 index 1dc45ac136..0000000000 --- a/src/3rdparty/squirrel/samples/hello.nut +++ /dev/null @@ -1 +0,0 @@ -print("Hello World!") \ No newline at end of file diff --git a/src/3rdparty/squirrel/samples/list.nut b/src/3rdparty/squirrel/samples/list.nut deleted file mode 100644 index 8ab1ab517b..0000000000 --- a/src/3rdparty/squirrel/samples/list.nut +++ /dev/null @@ -1,39 +0,0 @@ -/*translation of the list test from The Great Computer Language Shootout -*/ - -function compare_arr(a1,a2) -{ - foreach(i,val in a1) - if(val!=a2[i])return null; - return 1; -} - -function test() -{ - local size=10000 - local l1=[]; l1.resize(size); - for(local i=0;i0) - l3.append(l2.pop()); - while(l3.len()>0) - l2.append(l3.pop()); - l1.reverse(); - - if(compare_arr(l1,l2)) - return l1.len(); - return null; -} - -local n = ARGS.len()!=0?ARGS[0].tointeger():1 -for(local i=0;i\n"); -else - print("\n"); diff --git a/src/3rdparty/squirrel/samples/methcall.nut b/src/3rdparty/squirrel/samples/methcall.nut deleted file mode 100644 index 131d262288..0000000000 --- a/src/3rdparty/squirrel/samples/methcall.nut +++ /dev/null @@ -1,61 +0,0 @@ -/*translation of the methcall test from The Great Computer Language Shootout -*/ - -Toggle <- { - bool=null -} - -function Toggle::value() { - return bool; -} - -function Toggle::activate() { - bool = !bool; - return this; -} - -function Toggle::new(startstate) { - local newo=clone this; - newo.bool = startstate; - return newo; -} - -NthToggle <- { - count_max=null - count=0 -} - -function NthToggle::new(start_state,max_counter) -{ - local newo=delegate ::Toggle.new(start_state) : clone this; - newo.count_max <- max_counter - return newo; -} - -function NthToggle::activate () -{ - count+=1 - if (count >= count_max) { - bool = !bool; - count = 0; - } - return this; -} - - -local n = ARGS.len()!=0?ARGS[0].tointeger():1 - -local val = 1; -local toggle = Toggle.new(val); -for (local i=0; i -#include -#include -#include - -#if defined(_MSC_VER) && defined(_DEBUG) -#include -#include -#endif -#include -#include -#include -#include -#include -#include -#include - -#ifdef SQUNICODE -#define scfprintf fwprintf -#define scfopen _wfopen -#define scvprintf vwprintf -#else -#define scfprintf fprintf -#define scfopen fopen -#define scvprintf vprintf -#endif - - -void PrintVersionInfos(); - -#if defined(_MSC_VER) && defined(_DEBUG) -int MemAllocHook( int allocType, void *userData, size_t size, int blockType, - long requestNumber, const unsigned char *filename, int lineNumber) -{ -// if(requestNumber==585)_asm int 3; - return 1; -} -#endif - - -SQInteger quit(HSQUIRRELVM v) -{ - int *done; - sq_getuserpointer(v,-1,(SQUserPointer*)&done); - *done=1; - return 0; -} - -void printfunc(HSQUIRRELVM v,const SQChar *s,...) -{ - va_list vl; - va_start(vl, s); - scvprintf( s, vl); - va_end(vl); -} - -void PrintVersionInfos() -{ - scfprintf(stdout,_SC("%s %s (%d bits)\n"),SQUIRREL_VERSION,SQUIRREL_COPYRIGHT,sizeof(SQInteger)*8); - if(sizeof(SQFloat) != sizeof(float)) { - scfprintf(stdout,_SC("[%d bits floats]\n"),sizeof(SQFloat)*8); - } -} - -void PrintUsage() -{ - scfprintf(stderr,_SC("usage: sq .\n") - _SC("Available options are:\n") - _SC(" -c compiles the file to bytecode(default output 'out.cnut')\n") - _SC(" -o specifies output file for the -c option\n") - _SC(" -c compiles only\n") - _SC(" -d generates debug infos\n") - _SC(" -v displays version infos\n") - _SC(" -h prints help\n")); -} - -#define _INTERACTIVE 0 -#define _DONE 2 -//<> this func is a mess -int getargs(HSQUIRRELVM v,int argc, char* argv[]) -{ - int i; - int compiles_only = 0; - static SQChar temp[500]; - const SQChar *ret=NULL; - char * output = NULL; - int lineinfo=0; - if(argc>1) - { - int arg=1,exitloop=0; - while(arg < argc && !exitloop) - { - - if(argv[arg][0]=='-') - { - switch(argv[arg][1]) - { - case 'd': //DEBUG(debug infos) - sq_enabledebuginfo(v,1); - break; - case 'c': - compiles_only = 1; - break; - case 'o': - if(arg < argc) { - arg++; - output = argv[arg]; - } - break; - case 'v': - PrintVersionInfos(); - return _DONE; - - case 'h': - PrintVersionInfos(); - PrintUsage(); - return _DONE; - default: - PrintVersionInfos(); - scprintf(_SC("unknown prameter '-%c'\n"),argv[arg][1]); - PrintUsage(); - return _DONE; - } - }else break; - arg++; - } - - // src file - - if(arg")); - for(;;) { - int c; - if(done)return; - c = getchar(); - if (c == _SC('\n')) { - if (i>0 && buffer[i-1] == _SC('\\')) - { - buffer[i-1] = _SC('\n'); - } - else if(blocks==0)break; - buffer[i++] = _SC('\n'); - } - else if (c==_SC('}')) {blocks--; buffer[i++] = (SQChar)c;} - else if(c==_SC('{') && !string){ - blocks++; - buffer[i++] = (SQChar)c; - } - else if(c==_SC('"') || c==_SC('\'')){ - string=!string; - buffer[i++] = (SQChar)c; - } - else if (i >= MAXINPUT-1) { - scfprintf(stderr, _SC("sq : input line too long\n")); - break; - } - else{ - buffer[i++] = (SQChar)c; - } - } - buffer[i] = _SC('\0'); - - if(buffer[0]==_SC('=')){ - scsprintf(sq_getscratchpad(v,MAXINPUT),_SC("return (%s)"),&buffer[1]); - memcpy(buffer,sq_getscratchpad(v,-1),(scstrlen(sq_getscratchpad(v,-1))+1)*sizeof(SQChar)); - retval=1; - } - i=scstrlen(buffer); - if(i>0){ - SQInteger oldtop=sq_gettop(v); - if(SQ_SUCCEEDED(sq_compilebuffer(v,buffer,i,_SC("interactive console"),SQTrue))){ - sq_pushroottable(v); - if(SQ_SUCCEEDED(sq_call(v,1,retval,SQTrue)) && retval){ - scprintf(_SC("\n")); - sq_pushroottable(v); - sq_pushstring(v,_SC("print"),-1); - sq_get(v,-2); - sq_pushroottable(v); - sq_push(v,-4); - sq_call(v,2,SQFalse,SQTrue); - retval=0; - scprintf(_SC("\n")); - } - } - - sq_settop(v,oldtop); - } - } -} - -int main(int argc, char* argv[]) -{ - HSQUIRRELVM v; - - const SQChar *filename=NULL; -#if defined(_MSC_VER) && defined(_DEBUG) - _CrtSetAllocHook(MemAllocHook); -#endif - - v=sq_open(1024); - sq_setprintfunc(v,printfunc); - - sq_pushroottable(v); - - sqstd_register_bloblib(v); - sqstd_register_iolib(v); - sqstd_register_systemlib(v); - sqstd_register_mathlib(v); - sqstd_register_stringlib(v); - - //aux library - //sets error handlers - sqstd_seterrorhandlers(v); - - //gets arguments - switch(getargs(v,argc,argv)) - { - case _INTERACTIVE: - Interactive(v); - break; - case _DONE: - default: - break; - } - - sq_close(v); - -#if defined(_MSC_VER) && defined(_DEBUG) - _getch(); - _CrtMemDumpAllObjectsSince( NULL ); -#endif - return 0; -} - diff --git a/src/3rdparty/squirrel/sq/sq.dsp b/src/3rdparty/squirrel/sq/sq.dsp deleted file mode 100644 index 77887d0644..0000000000 --- a/src/3rdparty/squirrel/sq/sq.dsp +++ /dev/null @@ -1,101 +0,0 @@ -# Microsoft Developer Studio Project File - Name="sq" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=sq - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "sq.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "sq.mak" CFG="sq - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "sq - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "sq - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_LocalPath ".." -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "sq - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /W3 /GX /O2 /I "..\include" /I "..\sqstdlib" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x410 /d "NDEBUG" -# ADD RSC /l 0x410 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 squirrel.lib sqstdlib.lib /nologo /subsystem:console /machine:I386 /out:"../bin/sq.exe" /libpath:"../lib" - -!ELSEIF "$(CFG)" == "sq - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c -# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\include" /I "..\sqstdlib" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c -# ADD BASE RSC /l 0x410 /d "_DEBUG" -# ADD RSC /l 0x410 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 squirrel.lib sqstdlib.lib /nologo /subsystem:console /debug /machine:I386 /out:"../bin/sq.exe" /pdbtype:sept /libpath:"../lib" - -!ENDIF - -# Begin Target - -# Name "sq - Win32 Release" -# Name "sq - Win32 Debug" -# Begin Group "Source Files" - -# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" -# Begin Source File - -SOURCE=.\sq.c -# End Source File -# End Group -# Begin Group "Header Files" - -# PROP Default_Filter "h;hpp;hxx;hm;inl" -# End Group -# Begin Group "Resource Files" - -# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" -# End Group -# End Target -# End Project diff --git a/src/3rdparty/squirrel/sqstdlib/Makefile b/src/3rdparty/squirrel/sqstdlib/Makefile deleted file mode 100644 index d2c33c54a0..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -SQUIRREL= .. - - -OUT= $(SQUIRREL)/lib/libsqstdlib.a -INCZ= -I$(SQUIRREL)/include -I. -Iinclude - -SRCS= \ - sqstdblob.cpp \ - sqstdio.cpp \ - sqstdstream.cpp \ - sqstdmath.cpp \ - sqstdsystem.cpp \ - sqstdstring.cpp \ - sqstdaux.cpp \ - sqstdrex.cpp - - -sq32: - gcc -O2 -fno-rtti -Wall -c $(SRCS) $(INCZ) - ar rc $(OUT) *.o - -sqprof: - gcc -O2 -pg -fno-rtti -pie -gstabs -g3 -Wall -c $(SRCS) $(INCZ) - ar rc $(OUT) *.o - -sq64: - gcc -O2 -D_SQ64 -fno-rtti -Wall -c $(SRCS) $(INCZ) - ar rc $(OUT) *.o - -clean: - rm -f $(OUT) $(SRCS:%.cpp=%.o) diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp index 78b8a9c603..67b299bcec 100644 --- a/src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp +++ b/src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp @@ -1,8 +1,11 @@ /* see copyright notice in squirrel.h */ + +#include "../../../stdafx.h" + #include #include -#include -#include + +#include "../../../safeguards.h" void sqstd_printcallstack(HSQUIRRELVM v) { @@ -16,30 +19,30 @@ void sqstd_printcallstack(HSQUIRRELVM v) SQInteger level=1; //1 is to skip this function that is level 0 const SQChar *name=0; SQInteger seq=0; - pf(v,_SC("\nCALLSTACK\n")); + pf(v,"\nCALLSTACK\n"); while(SQ_SUCCEEDED(sq_stackinfos(v,level,&si))) { - const SQChar *fn=_SC("unknown"); - const SQChar *src=_SC("unknown"); + const SQChar *fn="unknown"; + const SQChar *src="unknown"; if(si.funcname)fn=si.funcname; if(si.source) { /* We don't want to bother users with absolute paths to all AI files. * Since the path only reaches NoAI code in a formatted string we have * to strip it here. Let's hope nobody installs openttd in a subdirectory * of a directory named /ai/. */ - src = scstrstr(si.source, _SC("\\ai\\")); - if (!src) src = scstrstr(si.source, _SC("/ai/")); + src = strstr(si.source, "\\ai\\"); + if (!src) src = strstr(si.source, "/ai/"); if (src) { src += 4; } else { src = si.source; } } - pf(v,_SC("*FUNCTION [%s()] %s line [%d]\n"),fn,src,si.line); + pf(v,"*FUNCTION [%s()] %s line [%d]\n",fn,src,si.line); level++; } level=0; - pf(v,_SC("\nLOCALS\n")); + pf(v,"\nLOCALS\n"); for(level=0;level<10;level++){ seq=0; @@ -49,56 +52,56 @@ void sqstd_printcallstack(HSQUIRRELVM v) switch(sq_gettype(v,-1)) { case OT_NULL: - pf(v,_SC("[%s] NULL\n"),name); + pf(v,"[%s] NULL\n",name); break; case OT_INTEGER: sq_getinteger(v,-1,&i); - pf(v,_SC("[%s] %d\n"),name,i); + pf(v,"[%s] %d\n",name,i); break; case OT_FLOAT: sq_getfloat(v,-1,&f); - pf(v,_SC("[%s] %.14g\n"),name,f); + pf(v,"[%s] %.14g\n",name,f); break; case OT_USERPOINTER: - pf(v,_SC("[%s] USERPOINTER\n"),name); + pf(v,"[%s] USERPOINTER\n",name); break; case OT_STRING: sq_getstring(v,-1,&s); - pf(v,_SC("[%s] \"%s\"\n"),name,s); + pf(v,"[%s] \"%s\"\n",name,s); break; case OT_TABLE: - pf(v,_SC("[%s] TABLE\n"),name); + pf(v,"[%s] TABLE\n",name); break; case OT_ARRAY: - pf(v,_SC("[%s] ARRAY\n"),name); + pf(v,"[%s] ARRAY\n",name); break; case OT_CLOSURE: - pf(v,_SC("[%s] CLOSURE\n"),name); + pf(v,"[%s] CLOSURE\n",name); break; case OT_NATIVECLOSURE: - pf(v,_SC("[%s] NATIVECLOSURE\n"),name); + pf(v,"[%s] NATIVECLOSURE\n",name); break; case OT_GENERATOR: - pf(v,_SC("[%s] GENERATOR\n"),name); + pf(v,"[%s] GENERATOR\n",name); break; case OT_USERDATA: - pf(v,_SC("[%s] USERDATA\n"),name); + pf(v,"[%s] USERDATA\n",name); break; case OT_THREAD: - pf(v,_SC("[%s] THREAD\n"),name); + pf(v,"[%s] THREAD\n",name); break; case OT_CLASS: - pf(v,_SC("[%s] CLASS\n"),name); + pf(v,"[%s] CLASS\n",name); break; case OT_INSTANCE: - pf(v,_SC("[%s] INSTANCE\n"),name); + pf(v,"[%s] INSTANCE\n",name); break; case OT_WEAKREF: - pf(v,_SC("[%s] WEAKREF\n"),name); + pf(v,"[%s] WEAKREF\n",name); break; case OT_BOOL:{ sq_getbool(v,-1,&b); - pf(v,_SC("[%s] %s\n"),name,b?_SC("true"):_SC("false")); + pf(v,"[%s] %s\n",name,b?"true":"false"); } break; default: assert(0); break; @@ -116,10 +119,10 @@ static SQInteger _sqstd_aux_printerror(HSQUIRRELVM v) const SQChar *sErr = 0; if(sq_gettop(v)>=1) { if(SQ_SUCCEEDED(sq_getstring(v,2,&sErr))) { - pf(v,_SC("\nAN ERROR HAS OCCURED [%s]\n"),sErr); + pf(v,"\nAN ERROR HAS OCCURED [%s]\n",sErr); } else{ - pf(v,_SC("\nAN ERROR HAS OCCURED [unknown]\n")); + pf(v,"\nAN ERROR HAS OCCURED [unknown]\n"); } sqstd_printcallstack(v); } @@ -131,7 +134,7 @@ void _sqstd_compiler_error(HSQUIRRELVM v,const SQChar *sErr,const SQChar *sSourc { SQPRINTFUNCTION pf = sq_getprintfunc(v); if(pf) { - pf(v,_SC("%s line = (%d) column = (%d) : error %s\n"),sSource,line,column,sErr); + pf(v,"%s line = (%d) column = (%d) : error %s\n",sSource,line,column,sErr); } } diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdblob.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdblob.cpp deleted file mode 100644 index 23842ba6fd..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/sqstdblob.cpp +++ /dev/null @@ -1,251 +0,0 @@ -/* see copyright notice in squirrel.h */ -#include -#include -#include -#include -#include -#include "sqstdstream.h" -#include "sqstdblobimpl.h" - -#define SQSTD_BLOB_TYPE_TAG (SQSTD_STREAM_TYPE_TAG | 0x00000002) - -//Blob - - -#define SETUP_BLOB(v) \ - SQBlob *self = NULL; \ - { if(SQ_FAILED(sq_getinstanceup(v,1,(SQUserPointer*)&self,(SQUserPointer)SQSTD_BLOB_TYPE_TAG))) \ - return SQ_ERROR; } - - -static SQInteger _blob_resize(HSQUIRRELVM v) -{ - SETUP_BLOB(v); - SQInteger size; - sq_getinteger(v,2,&size); - if(!self->Resize(size)) - return sq_throwerror(v,_SC("resize failed")); - return 0; -} - -static void __swap_dword(unsigned int *n) -{ - *n=(unsigned int)(((*n&0xFF000000)>>24) | - ((*n&0x00FF0000)>>8) | - ((*n&0x0000FF00)<<8) | - ((*n&0x000000FF)<<24)); -} - -static void __swap_word(unsigned short *n) -{ - *n=(unsigned short)((*n>>8)&0x00FF)| ((*n<<8)&0xFF00); -} - -static SQInteger _blob_swap4(HSQUIRRELVM v) -{ - SETUP_BLOB(v); - SQInteger num=(self->Len()-(self->Len()%4))>>2; - unsigned int *t=(unsigned int *)self->GetBuf(); - for(SQInteger i = 0; i < num; i++) { - __swap_dword(&t[i]); - } - return 0; -} - -static SQInteger _blob_swap2(HSQUIRRELVM v) -{ - SETUP_BLOB(v); - SQInteger num=(self->Len()-(self->Len()%2))>>1; - unsigned short *t = (unsigned short *)self->GetBuf(); - for(SQInteger i = 0; i < num; i++) { - __swap_word(&t[i]); - } - return 0; -} - -static SQInteger _blob__set(HSQUIRRELVM v) -{ - SETUP_BLOB(v); - SQInteger idx,val; - sq_getinteger(v,2,&idx); - sq_getinteger(v,3,&val); - if(idx < 0 || idx >= self->Len()) - return sq_throwerror(v,_SC("index out of range")); - ((unsigned char *)self->GetBuf())[idx] = (unsigned char) val; - sq_push(v,3); - return 1; -} - -static SQInteger _blob__get(HSQUIRRELVM v) -{ - SETUP_BLOB(v); - SQInteger idx; - sq_getinteger(v,2,&idx); - if(idx < 0 || idx >= self->Len()) - return sq_throwerror(v,_SC("index out of range")); - sq_pushinteger(v,((unsigned char *)self->GetBuf())[idx]); - return 1; -} - -static SQInteger _blob__nexti(HSQUIRRELVM v) -{ - SETUP_BLOB(v); - if(sq_gettype(v,2) == OT_NULL) { - sq_pushinteger(v, 0); - return 1; - } - SQInteger idx; - if(SQ_SUCCEEDED(sq_getinteger(v, 2, &idx))) { - if(idx+1 < self->Len()) { - sq_pushinteger(v, idx+1); - return 1; - } - sq_pushnull(v); - return 1; - } - return sq_throwerror(v,_SC("internal error (_nexti) wrong argument type")); -} - -static SQInteger _blob__typeof(HSQUIRRELVM v) -{ - sq_pushstring(v,_SC("blob"),-1); - return 1; -} - -static SQInteger _blob_releasehook(SQUserPointer p, SQInteger size) -{ - SQBlob *self = (SQBlob*)p; - delete self; - return 1; -} - -static SQInteger _blob_constructor(HSQUIRRELVM v) -{ - SQInteger nparam = sq_gettop(v); - SQInteger size = 0; - if(nparam == 2) { - sq_getinteger(v, 2, &size); - } - if(size < 0) return sq_throwerror(v, _SC("cannot create blob with negative size")); - SQBlob *b = new SQBlob(size); - if(SQ_FAILED(sq_setinstanceup(v,1,b))) { - delete b; - return sq_throwerror(v, _SC("cannot create blob with negative size")); - } - sq_setreleasehook(v,1,_blob_releasehook); - return 0; -} - -#define _DECL_BLOB_FUNC(name,nparams,typecheck) {_SC(#name),_blob_##name,nparams,typecheck} -static SQRegFunction _blob_methods[] = { - _DECL_BLOB_FUNC(constructor,-1,_SC("xn")), - _DECL_BLOB_FUNC(resize,2,_SC("xn")), - _DECL_BLOB_FUNC(swap2,1,_SC("x")), - _DECL_BLOB_FUNC(swap4,1,_SC("x")), - _DECL_BLOB_FUNC(_set,3,_SC("xnn")), - _DECL_BLOB_FUNC(_get,2,_SC("xn")), - _DECL_BLOB_FUNC(_typeof,1,_SC("x")), - _DECL_BLOB_FUNC(_nexti,2,_SC("x")), - {0,0,0,0} -}; - - - -//GLOBAL FUNCTIONS - -static SQInteger _g_blob_casti2f(HSQUIRRELVM v) -{ - SQInteger i; - sq_getinteger(v,2,&i); - sq_pushfloat(v,*((SQFloat *)&i)); - return 1; -} - -static SQInteger _g_blob_castf2i(HSQUIRRELVM v) -{ - SQFloat f; - sq_getfloat(v,2,&f); - sq_pushinteger(v,*((SQInteger *)&f)); - return 1; -} - -static SQInteger _g_blob_swap2(HSQUIRRELVM v) -{ - SQInteger i; - sq_getinteger(v,2,&i); - short s=(short)i; - sq_pushinteger(v,(s<<8)|((s>>8)&0x00FF)); - return 1; -} - -static SQInteger _g_blob_swap4(HSQUIRRELVM v) -{ - SQInteger i; - sq_getinteger(v,2,&i); - unsigned int t4 = (unsigned int)i; - __swap_dword(&t4); - sq_pushinteger(v,(SQInteger)t4); - return 1; -} - -static SQInteger _g_blob_swapfloat(HSQUIRRELVM v) -{ - SQFloat f; - sq_getfloat(v,2,&f); - __swap_dword((unsigned int *)&f); - sq_pushfloat(v,f); - return 1; -} - -#define _DECL_GLOBALBLOB_FUNC(name,nparams,typecheck) {_SC(#name),_g_blob_##name,nparams,typecheck} -static SQRegFunction bloblib_funcs[]={ - _DECL_GLOBALBLOB_FUNC(casti2f,2,_SC(".n")), - _DECL_GLOBALBLOB_FUNC(castf2i,2,_SC(".n")), - _DECL_GLOBALBLOB_FUNC(swap2,2,_SC(".n")), - _DECL_GLOBALBLOB_FUNC(swap4,2,_SC(".n")), - _DECL_GLOBALBLOB_FUNC(swapfloat,2,_SC(".n")), - {0,0,0,0} -}; - -SQRESULT sqstd_getblob(HSQUIRRELVM v,SQInteger idx,SQUserPointer *ptr) -{ - SQBlob *blob; - if(SQ_FAILED(sq_getinstanceup(v,idx,(SQUserPointer *)&blob,(SQUserPointer)SQSTD_BLOB_TYPE_TAG))) - return -1; - *ptr = blob->GetBuf(); - return SQ_OK; -} - -SQInteger sqstd_getblobsize(HSQUIRRELVM v,SQInteger idx) -{ - SQBlob *blob; - if(SQ_FAILED(sq_getinstanceup(v,idx,(SQUserPointer *)&blob,(SQUserPointer)SQSTD_BLOB_TYPE_TAG))) - return -1; - return blob->Len(); -} - -SQUserPointer sqstd_createblob(HSQUIRRELVM v, SQInteger size) -{ - SQInteger top = sq_gettop(v); - sq_pushregistrytable(v); - sq_pushstring(v,_SC("std_blob"),-1); - if(SQ_SUCCEEDED(sq_get(v,-2))) { - sq_remove(v,-2); //removes the registry - sq_push(v,1); // push the this - sq_pushinteger(v,size); //size - SQBlob *blob = NULL; - if(SQ_SUCCEEDED(sq_call(v,2,SQTrue,SQFalse)) - && SQ_SUCCEEDED(sq_getinstanceup(v,-1,(SQUserPointer *)&blob,(SQUserPointer)SQSTD_BLOB_TYPE_TAG))) { - sq_remove(v,-2); - return blob->GetBuf(); - } - } - sq_settop(v,top); - return NULL; -} - -SQRESULT sqstd_register_bloblib(HSQUIRRELVM v) -{ - return declare_stream(v,_SC("blob"),(SQUserPointer)SQSTD_BLOB_TYPE_TAG,_SC("std_blob"),_blob_methods,bloblib_funcs); -} - diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdblobimpl.h b/src/3rdparty/squirrel/sqstdlib/sqstdblobimpl.h deleted file mode 100644 index 9f22c0ae2d..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/sqstdblobimpl.h +++ /dev/null @@ -1,108 +0,0 @@ -/* see copyright notice in squirrel.h */ -#ifndef _SQSTD_BLOBIMPL_H_ -#define _SQSTD_BLOBIMPL_H_ - -struct SQBlob : public SQStream -{ - SQBlob(SQInteger size) { - _size = size; - _allocated = size; - _buf = (unsigned char *)sq_malloc(size); - memset(_buf, 0, _size); - _ptr = 0; - _owns = true; - } - virtual ~SQBlob() { - sq_free(_buf, _allocated); - } - SQInteger Write(void *buffer, SQInteger size) { - if(!CanAdvance(size)) { - GrowBufOf(_ptr + size - _size); - } - memcpy(&_buf[_ptr], buffer, size); - _ptr += size; - return size; - } - SQInteger Read(void *buffer,SQInteger size) { - SQInteger n = size; - if(!CanAdvance(size)) { - if((_size - _ptr) > 0) - n = _size - _ptr; - else return 0; - } - memcpy(buffer, &_buf[_ptr], n); - _ptr += n; - return n; - } - bool Resize(SQInteger n) { - if(!_owns) return false; - if(n != _allocated) { - unsigned char *newbuf = (unsigned char *)sq_malloc(n); - memset(newbuf,0,n); - if(_size > n) - memcpy(newbuf,_buf,n); - else - memcpy(newbuf,_buf,_size); - sq_free(_buf,_allocated); - _buf=newbuf; - _allocated = n; - if(_size > _allocated) - _size = _allocated; - if(_ptr > _allocated) - _ptr = _allocated; - } - return true; - } - bool GrowBufOf(SQInteger n) - { - bool ret = true; - if(_size + n > _allocated) { - if(_size + n > _size * 2) - ret = Resize(_size + n); - else - ret = Resize(_size * 2); - } - _size = _size + n; - return ret; - } - bool CanAdvance(SQInteger n) { - if(_ptr+n>_size)return false; - return true; - } - SQInteger Seek(SQInteger offset, SQInteger origin) { - switch(origin) { - case SQ_SEEK_SET: - if(offset > _size || offset < 0) return -1; - _ptr = offset; - break; - case SQ_SEEK_CUR: - if(_ptr + offset > _size || _ptr + offset < 0) return -1; - _ptr += offset; - break; - case SQ_SEEK_END: - if(_size + offset > _size || _size + offset < 0) return -1; - _ptr = _size + offset; - break; - default: return -1; - } - return 0; - } - bool IsValid() { - return _buf?true:false; - } - bool EOS() { - return _ptr == _size; - } - SQInteger Flush() { return 0; } - SQInteger Tell() { return _ptr; } - SQInteger Len() { return _size; } - SQUserPointer GetBuf(){ return _buf; } -private: - SQInteger _size; - SQInteger _allocated; - SQInteger _ptr; - unsigned char *_buf; - bool _owns; -}; - -#endif //_SQSTD_BLOBIMPL_H_ diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdio.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdio.cpp deleted file mode 100644 index 217205e5c9..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/sqstdio.cpp +++ /dev/null @@ -1,410 +0,0 @@ -/* see copyright notice in squirrel.h */ -#include -#include -#include -#include -#include "sqstdstream.h" - -#define SQSTD_FILE_TYPE_TAG (SQSTD_STREAM_TYPE_TAG | 0x00000001) -//basic API -SQFILE sqstd_fopen(const SQChar *filename ,const SQChar *mode) -{ -#ifndef SQUNICODE - return (SQFILE)fopen(filename,mode); -#else - return (SQFILE)_wfopen(filename,mode); -#endif -} - -SQInteger sqstd_fread(void* buffer, SQInteger size, SQInteger count, SQFILE file) -{ - return (SQInteger)fread(buffer,size,count,(FILE *)file); -} - -SQInteger sqstd_fwrite(const SQUserPointer buffer, SQInteger size, SQInteger count, SQFILE file) -{ - return (SQInteger)fwrite(buffer,size,count,(FILE *)file); -} - -SQInteger sqstd_fseek(SQFILE file, SQInteger offset, SQInteger origin) -{ - SQInteger realorigin; - switch(origin) { - case SQ_SEEK_CUR: realorigin = SEEK_CUR; break; - case SQ_SEEK_END: realorigin = SEEK_END; break; - case SQ_SEEK_SET: realorigin = SEEK_SET; break; - default: return -1; //failed - } - return fseek((FILE *)file,(long)offset,(int)realorigin); -} - -SQInteger sqstd_ftell(SQFILE file) -{ - return ftell((FILE *)file); -} - -SQInteger sqstd_fflush(SQFILE file) -{ - return fflush((FILE *)file); -} - -SQInteger sqstd_fclose(SQFILE file) -{ - return fclose((FILE *)file); -} - -SQInteger sqstd_feof(SQFILE file) -{ - return feof((FILE *)file); -} - -//File -struct SQFile : public SQStream { - SQFile() { _handle = NULL; _owns = false;} - SQFile(SQFILE file, bool owns) { _handle = file; _owns = owns;} - virtual ~SQFile() { Close(); } - bool Open(const SQChar *filename ,const SQChar *mode) { - Close(); - if( (_handle = sqstd_fopen(filename,mode)) ) { - _owns = true; - return true; - } - return false; - } - void Close() { - if(_handle && _owns) { - sqstd_fclose(_handle); - _handle = NULL; - _owns = false; - } - } - SQInteger Read(void *buffer,SQInteger size) { - return sqstd_fread(buffer,1,size,_handle); - } - SQInteger Write(void *buffer,SQInteger size) { - return sqstd_fwrite(buffer,1,size,_handle); - } - SQInteger Flush() { - return sqstd_fflush(_handle); - } - SQInteger Tell() { - return sqstd_ftell(_handle); - } - SQInteger Len() { - SQInteger prevpos=Tell(); - Seek(0,SQ_SEEK_END); - SQInteger size=Tell(); - Seek(prevpos,SQ_SEEK_SET); - return size; - } - SQInteger Seek(SQInteger offset, SQInteger origin) { - return sqstd_fseek(_handle,offset,origin); - } - bool IsValid() { return _handle?true:false; } - bool EOS() { return Tell()==Len()?true:false;} - SQFILE GetHandle() {return _handle;} -private: - SQFILE _handle; - bool _owns; -}; - -static SQInteger _file__typeof(HSQUIRRELVM v) -{ - sq_pushstring(v,_SC("file"),-1); - return 1; -} - -static SQInteger _file_releasehook(SQUserPointer p, SQInteger size) -{ - SQFile *self = (SQFile*)p; - delete self; - return 1; -} - -static SQInteger _file_constructor(HSQUIRRELVM v) -{ - const SQChar *filename,*mode; - bool owns = true; - SQFile *f; - SQFILE newf; - if(sq_gettype(v,2) == OT_STRING && sq_gettype(v,3) == OT_STRING) { - sq_getstring(v, 2, &filename); - sq_getstring(v, 3, &mode); - newf = sqstd_fopen(filename, mode); - if(!newf) return sq_throwerror(v, _SC("cannot open file")); - } else if(sq_gettype(v,2) == OT_USERPOINTER) { - owns = !(sq_gettype(v,3) == OT_NULL); - sq_getuserpointer(v,2,&newf); - } else { - return sq_throwerror(v,_SC("wrong parameter")); - } - f = new SQFile(newf,owns); - if(SQ_FAILED(sq_setinstanceup(v,1,f))) { - delete f; - return sq_throwerror(v, _SC("cannot create blob with negative size")); - } - sq_setreleasehook(v,1,_file_releasehook); - return 0; -} - -//bindings -#define _DECL_FILE_FUNC(name,nparams,typecheck) {_SC(#name),_file_##name,nparams,typecheck} -static SQRegFunction _file_methods[] = { - _DECL_FILE_FUNC(constructor,3,_SC("x")), - _DECL_FILE_FUNC(_typeof,1,_SC("x")), - {0,0,0,0}, -}; - - - -SQRESULT sqstd_createfile(HSQUIRRELVM v, SQFILE file,SQBool own) -{ - SQInteger top = sq_gettop(v); - sq_pushregistrytable(v); - sq_pushstring(v,_SC("std_file"),-1); - if(SQ_SUCCEEDED(sq_get(v,-2))) { - sq_remove(v,-2); //removes the registry - sq_pushroottable(v); // push the this - sq_pushuserpointer(v,file); //file - if(own){ - sq_pushinteger(v,1); //true - } - else{ - sq_pushnull(v); //false - } - if(SQ_SUCCEEDED( sq_call(v,3,SQTrue,SQFalse) )) { - sq_remove(v,-2); - return SQ_OK; - } - } - sq_settop(v,top); - return SQ_OK; -} - -SQRESULT sqstd_getfile(HSQUIRRELVM v, SQInteger idx, SQFILE *file) -{ - SQFile *fileobj = NULL; - if(SQ_SUCCEEDED(sq_getinstanceup(v,idx,(SQUserPointer*)&fileobj,(SQUserPointer)SQSTD_FILE_TYPE_TAG))) { - *file = fileobj->GetHandle(); - return SQ_OK; - } - return sq_throwerror(v,_SC("not a file")); -} - - - -static SQInteger _io_file_lexfeed_ASCII(SQUserPointer file) -{ - SQInteger ret; - char c; - if( ( ret=sqstd_fread(&c,sizeof(c),1,(FILE *)file )>0) ) - return c; - return 0; -} - -static SQInteger _io_file_lexfeed_UTF8(SQUserPointer file) -{ -#define READ() \ - if(sqstd_fread(&inchar,sizeof(inchar),1,(FILE *)file) != 1) \ - return 0; - - static const SQInteger utf8_lengths[16] = - { - 1,1,1,1,1,1,1,1, /* 0000 to 0111 : 1 byte (plain ASCII) */ - 0,0,0,0, /* 1000 to 1011 : not valid */ - 2,2, /* 1100, 1101 : 2 bytes */ - 3, /* 1110 : 3 bytes */ - 4 /* 1111 :4 bytes */ - }; - static unsigned char byte_masks[5] = {0,0,0x1f,0x0f,0x07}; - unsigned char inchar; - SQInteger c = 0; - READ(); - c = inchar; - // - if(c >= 0x80) { - SQInteger tmp; - SQInteger codelen = utf8_lengths[c>>4]; - if(codelen == 0) - return 0; - //"invalid UTF-8 stream"; - tmp = c&byte_masks[codelen]; - for(SQInteger n = 0; n < codelen-1; n++) { - tmp<<=6; - READ(); - tmp |= inchar & 0x3F; - } - c = tmp; - } - return c; -} - -static SQInteger _io_file_lexfeed_UCS2_LE(SQUserPointer file) -{ - SQInteger ret; - wchar_t c; - if( ( ret=sqstd_fread(&c,sizeof(c),1,(FILE *)file )>0) ) - return (SQChar)c; - return 0; -} - -static SQInteger _io_file_lexfeed_UCS2_BE(SQUserPointer file) -{ - SQInteger ret; - unsigned short c; - if( ( ret=sqstd_fread(&c,sizeof(c),1,(FILE *)file )>0) ) { - c = ((c>>8)&0x00FF)| ((c<<8)&0xFF00); - return (SQChar)c; - } - return 0; -} - -SQInteger file_read(SQUserPointer file,SQUserPointer buf,SQInteger size) -{ - SQInteger ret; - if( ( ret = sqstd_fread(buf,1,size,(SQFILE)file ))!=0 )return ret; - return -1; -} - -SQInteger file_write(SQUserPointer file,SQUserPointer p,SQInteger size) -{ - return sqstd_fwrite(p,1,size,(SQFILE)file); -} - -SQRESULT sqstd_loadfile(HSQUIRRELVM v,const SQChar *filename,SQBool printerror) -{ - SQFILE file = sqstd_fopen(filename,_SC("rb")); - SQInteger ret; - unsigned short us; - unsigned char uc; - SQLEXREADFUNC func = _io_file_lexfeed_ASCII; - if(file){ - ret = sqstd_fread(&us,1,2,file); - if(ret != 2) { - //probably an empty file - us = 0; - } - if(us == SQ_BYTECODE_STREAM_TAG) { //BYTECODE - sqstd_fseek(file,0,SQ_SEEK_SET); - if(SQ_SUCCEEDED(sq_readclosure(v,file_read,file))) { - sqstd_fclose(file); - return SQ_OK; - } - } - else { //SCRIPT - switch(us) - { - //gotta swap the next 2 lines on BIG endian machines - case 0xFFFE: func = _io_file_lexfeed_UCS2_BE; break;//UTF-16 little endian; - case 0xFEFF: func = _io_file_lexfeed_UCS2_LE; break;//UTF-16 big endian; - case 0xBBEF: - if(sqstd_fread(&uc,1,sizeof(uc),file) == 0) { - sqstd_fclose(file); - return sq_throwerror(v,_SC("io error")); - } - if(uc != 0xBF) { - sqstd_fclose(file); - return sq_throwerror(v,_SC("Unrecognozed ecoding")); - } - func = _io_file_lexfeed_UTF8; - break;//UTF-8 ; - default: sqstd_fseek(file,0,SQ_SEEK_SET); break; // ascii - } - - if(SQ_SUCCEEDED(sq_compile(v,func,file,filename,printerror))){ - sqstd_fclose(file); - return SQ_OK; - } - } - sqstd_fclose(file); - return SQ_ERROR; - } - return sq_throwerror(v,_SC("cannot open the file")); -} - -SQRESULT sqstd_dofile(HSQUIRRELVM v,const SQChar *filename,SQBool retval,SQBool printerror) -{ - if(SQ_SUCCEEDED(sqstd_loadfile(v,filename,printerror))) { - sq_push(v,-2); - if(SQ_SUCCEEDED(sq_call(v,1,retval,SQTrue))) { - sq_remove(v,retval?-2:-1); //removes the closure - return 1; - } - sq_pop(v,1); //removes the closure - } - return SQ_ERROR; -} - -SQRESULT sqstd_writeclosuretofile(HSQUIRRELVM v,const SQChar *filename) -{ - SQFILE file = sqstd_fopen(filename,_SC("wb+")); - if(!file) return sq_throwerror(v,_SC("cannot open the file")); - if(SQ_SUCCEEDED(sq_writeclosure(v,file_write,file))) { - sqstd_fclose(file); - return SQ_OK; - } - sqstd_fclose(file); - return SQ_ERROR; //forward the error -} - -SQInteger _g_io_loadfile(HSQUIRRELVM v) -{ - const SQChar *filename; - SQBool printerror = SQFalse; - sq_getstring(v,2,&filename); - if(sq_gettop(v) >= 3) { - sq_getbool(v,3,&printerror); - } - if(SQ_SUCCEEDED(sqstd_loadfile(v,filename,printerror))) - return 1; - return SQ_ERROR; //propagates the error -} - -SQInteger _g_io_writeclosuretofile(HSQUIRRELVM v) -{ - const SQChar *filename; - sq_getstring(v,2,&filename); - if(SQ_SUCCEEDED(sqstd_writeclosuretofile(v,filename))) - return 1; - return SQ_ERROR; //propagates the error -} - -SQInteger _g_io_dofile(HSQUIRRELVM v) -{ - const SQChar *filename; - SQBool printerror = SQFalse; - sq_getstring(v,2,&filename); - if(sq_gettop(v) >= 3) { - sq_getbool(v,3,&printerror); - } - sq_push(v,1); //repush the this - if(SQ_SUCCEEDED(sqstd_dofile(v,filename,SQTrue,printerror))) - return 1; - return SQ_ERROR; //propagates the error -} - -#define _DECL_GLOBALIO_FUNC(name,nparams,typecheck) {_SC(#name),_g_io_##name,nparams,typecheck} -static SQRegFunction iolib_funcs[]={ - _DECL_GLOBALIO_FUNC(loadfile,-2,_SC(".sb")), - _DECL_GLOBALIO_FUNC(dofile,-2,_SC(".sb")), - _DECL_GLOBALIO_FUNC(writeclosuretofile,3,_SC(".sc")), - {0,0,0,0} -}; - -SQRESULT sqstd_register_iolib(HSQUIRRELVM v) -{ - SQInteger top = sq_gettop(v); - //create delegate - declare_stream(v,_SC("file"),(SQUserPointer)SQSTD_FILE_TYPE_TAG,_SC("std_file"),_file_methods,iolib_funcs); - sq_pushstring(v,_SC("stdout"),-1); - sqstd_createfile(v,stdout,SQFalse); - sq_createslot(v,-3); - sq_pushstring(v,_SC("stdin"),-1); - sqstd_createfile(v,stdin,SQFalse); - sq_createslot(v,-3); - sq_pushstring(v,_SC("stderr"),-1); - sqstd_createfile(v,stderr,SQFalse); - sq_createslot(v,-3); - sq_settop(v,top); - return SQ_OK; -} diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdlib.dsp b/src/3rdparty/squirrel/sqstdlib/sqstdlib.dsp deleted file mode 100644 index ad0bcece30..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/sqstdlib.dsp +++ /dev/null @@ -1,131 +0,0 @@ -# Microsoft Developer Studio Project File - Name="sqstdlib" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=sqstdlib - Win32 Release -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "sqstdlib.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "sqstdlib.mak" CFG="sqstdlib - Win32 Release" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "sqstdlib - Win32 Release" (based on "Win32 (x86) Static Library") -!MESSAGE "sqstdlib - Win32 Debug" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_LocalPath ".." -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "sqstdlib - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /W3 /GX /O2 /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD BASE RSC /l 0x410 /d "NDEBUG" -# ADD RSC /l 0x410 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\lib\sqstdlib.lib" - -!ELSEIF "$(CFG)" == "sqstdlib - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c -# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c -# ADD BASE RSC /l 0x410 /d "_DEBUG" -# ADD RSC /l 0x410 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\lib\sqstdlib.lib" - -!ENDIF - -# Begin Target - -# Name "sqstdlib - Win32 Release" -# Name "sqstdlib - Win32 Debug" -# Begin Group "Source Files" - -# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" -# Begin Source File - -SOURCE=.\sqstdblob.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqstdio.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqstdmath.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqstdrex.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqstdstream.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqstdstring.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqstdaux.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqstdsystem.cpp -# End Source File -# End Group -# Begin Group "Header Files" - -# PROP Default_Filter "h;hpp;hxx;hm;inl" -# Begin Source File - -SOURCE=.\sqstdblobimpl.h -# End Source File -# Begin Source File - -SOURCE=.\sqstdstream.h -# End Source File -# End Group -# End Target -# End Project diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdmath.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdmath.cpp index 132f341f22..0ff0090209 100644 --- a/src/3rdparty/squirrel/sqstdlib/sqstdmath.cpp +++ b/src/3rdparty/squirrel/sqstdlib/sqstdmath.cpp @@ -1,9 +1,13 @@ /* see copyright notice in squirrel.h */ + +#include "../../../stdafx.h" + #include #include -#include #include +#include "../../../safeguards.h" + #define SINGLE_ARG_FUNC(_funcname, num_ops) static SQInteger math_##_funcname(HSQUIRRELVM v){ \ SQFloat f; \ sq_decreaseops(v,num_ops); \ @@ -26,7 +30,7 @@ static SQInteger math_srand(HSQUIRRELVM v) { SQInteger i; if(SQ_FAILED(sq_getinteger(v,2,&i))) - return sq_throwerror(v,_SC("invalid param")); + return sq_throwerror(v,"invalid param"); srand((unsigned int)i); return 0; } @@ -62,28 +66,28 @@ SINGLE_ARG_FUNC(floor, 1) SINGLE_ARG_FUNC(ceil, 1) SINGLE_ARG_FUNC(exp, 100) -#define _DECL_FUNC(name,nparams,tycheck) {_SC(#name),math_##name,nparams,tycheck} +#define _DECL_FUNC(name,nparams,tycheck) {#name,math_##name,nparams,tycheck} static SQRegFunction mathlib_funcs[] = { - _DECL_FUNC(sqrt,2,_SC(".n")), - _DECL_FUNC(sin,2,_SC(".n")), - _DECL_FUNC(cos,2,_SC(".n")), - _DECL_FUNC(asin,2,_SC(".n")), - _DECL_FUNC(acos,2,_SC(".n")), - _DECL_FUNC(log,2,_SC(".n")), - _DECL_FUNC(log10,2,_SC(".n")), - _DECL_FUNC(tan,2,_SC(".n")), - _DECL_FUNC(atan,2,_SC(".n")), - _DECL_FUNC(atan2,3,_SC(".nn")), - _DECL_FUNC(pow,3,_SC(".nn")), - _DECL_FUNC(floor,2,_SC(".n")), - _DECL_FUNC(ceil,2,_SC(".n")), - _DECL_FUNC(exp,2,_SC(".n")), + _DECL_FUNC(sqrt,2,".n"), + _DECL_FUNC(sin,2,".n"), + _DECL_FUNC(cos,2,".n"), + _DECL_FUNC(asin,2,".n"), + _DECL_FUNC(acos,2,".n"), + _DECL_FUNC(log,2,".n"), + _DECL_FUNC(log10,2,".n"), + _DECL_FUNC(tan,2,".n"), + _DECL_FUNC(atan,2,".n"), + _DECL_FUNC(atan2,3,".nn"), + _DECL_FUNC(pow,3,".nn"), + _DECL_FUNC(floor,2,".n"), + _DECL_FUNC(ceil,2,".n"), + _DECL_FUNC(exp,2,".n"), #ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS - _DECL_FUNC(srand,2,_SC(".n")), + _DECL_FUNC(srand,2,".n"), _DECL_FUNC(rand,1,NULL), #endif /* EXPORT_DEFAULT_SQUIRREL_FUNCTIONS */ - _DECL_FUNC(fabs,2,_SC(".n")), - _DECL_FUNC(abs,2,_SC(".n")), + _DECL_FUNC(fabs,2,".n"), + _DECL_FUNC(abs,2,".n"), {0,0,0,0}, }; @@ -103,11 +107,11 @@ SQRESULT sqstd_register_mathlib(HSQUIRRELVM v) i++; } #ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS - sq_pushstring(v,_SC("RAND_MAX"),-1); + sq_pushstring(v,"RAND_MAX",-1); sq_pushinteger(v,RAND_MAX); sq_createslot(v,-3); #endif /* EXPORT_DEFAULT_SQUIRREL_FUNCTIONS */ - sq_pushstring(v,_SC("PI"),-1); + sq_pushstring(v,"PI",-1); sq_pushfloat(v,(SQFloat)M_PI); sq_createslot(v,-3); return SQ_OK; diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdrex.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdrex.cpp index 90d980e104..2bc3684a5e 100644 --- a/src/3rdparty/squirrel/sqstdlib/sqstdrex.cpp +++ b/src/3rdparty/squirrel/sqstdlib/sqstdrex.cpp @@ -1,7 +1,5 @@ /* see copyright notice in squirrel.h */ #include -#include -#include #include #include "sqstdstring.h" @@ -12,14 +10,13 @@ #endif #ifdef _DEBUG -#include static const SQChar *g_nnames[] = { - _SC("NONE"),_SC("OP_GREEDY"), _SC("OP_OR"), - _SC("OP_EXPR"),_SC("OP_NOCAPEXPR"),_SC("OP_DOT"), _SC("OP_CLASS"), - _SC("OP_CCLASS"),_SC("OP_NCLASS"),_SC("OP_RANGE"),_SC("OP_CHAR"), - _SC("OP_EOL"),_SC("OP_BOL"),_SC("OP_WB") + "NONE","OP_GREEDY", "OP_OR", + "OP_EXPR","OP_NOCAPEXPR","OP_DOT", "OP_CLASS", + "OP_CCLASS","OP_NCLASS","OP_RANGE","OP_CHAR", + "OP_EOL","OP_BOL","OP_WB" }; #endif @@ -99,7 +96,7 @@ static void sqstd_rex_error(SQRex *exp,const SQChar *error) static void sqstd_rex_expect(SQRex *exp, SQChar n){ if((*exp->_p) != n) - sqstd_rex_error(exp, _SC("expected paren")); + sqstd_rex_error(exp, "expected paren"); exp->_p++; } @@ -115,7 +112,7 @@ static SQChar sqstd_rex_escapechar(SQRex *exp) case 'f': exp->_p++; return '\f'; default: return (*exp->_p++); } - } else if(!scisprint(*exp->_p)) sqstd_rex_error(exp,_SC("letter expected")); + } else if(!scisprint(*exp->_p)) sqstd_rex_error(exp,"letter expected"); return (*exp->_p++); } @@ -159,7 +156,7 @@ static SQInteger sqstd_rex_charnode(SQRex *exp,SQBool isclass) } else if(!scisprint(*exp->_p)) { - sqstd_rex_error(exp,_SC("letter expected")); + sqstd_rex_error(exp,"letter expected"); } t = *exp->_p; exp->_p++; return sqstd_rex_newnode(exp,t); @@ -173,15 +170,15 @@ static SQInteger sqstd_rex_class(SQRex *exp) exp->_p++; }else ret = sqstd_rex_newnode(exp,OP_CLASS); - if(*exp->_p == ']') sqstd_rex_error(exp,_SC("empty class")); + if(*exp->_p == ']') sqstd_rex_error(exp,"empty class"); chain = ret; while(*exp->_p != ']' && exp->_p != exp->_eol) { if(*exp->_p == '-' && first != -1){ SQInteger r; - if(*exp->_p++ == ']') sqstd_rex_error(exp,_SC("unfinished range")); + if(*exp->_p++ == ']') sqstd_rex_error(exp,"unfinished range"); r = sqstd_rex_newnode(exp,OP_RANGE); - if(exp->_nodes[first].type>*exp->_p) sqstd_rex_error(exp,_SC("invalid range")); - if(exp->_nodes[first].type == OP_CCLASS) sqstd_rex_error(exp,_SC("cannot use character classes in ranges")); + if(exp->_nodes[first].type>*exp->_p) sqstd_rex_error(exp,"invalid range"); + if(exp->_nodes[first].type == OP_CCLASS) sqstd_rex_error(exp,"cannot use character classes in ranges"); exp->_nodes[r].left = exp->_nodes[first].type; SQInteger t = sqstd_rex_escapechar(exp); exp->_nodes[r].right = t; @@ -220,7 +217,7 @@ static SQInteger sqstd_rex_parsenumber(SQRex *exp) exp->_p++; while(isdigit(*exp->_p)) { ret = ret*10+(*exp->_p++-'0'); - if(positions==1000000000) sqstd_rex_error(exp,_SC("overflow in numeric constant")); + if(positions==1000000000) sqstd_rex_error(exp,"overflow in numeric constant"); positions *= 10; }; return ret; @@ -238,7 +235,7 @@ static SQInteger sqstd_rex_element(SQRex *exp) if(*exp->_p =='?') { exp->_p++; - sqstd_rex_expect(exp,_SC(':')); + sqstd_rex_expect(exp,':'); expr = sqstd_rex_newnode(exp,OP_NOCAPEXPR); } else @@ -246,13 +243,13 @@ static SQInteger sqstd_rex_element(SQRex *exp) SQInteger newn = sqstd_rex_list(exp); exp->_nodes[expr].left = newn; ret = expr; - sqstd_rex_expect(exp,_SC(')')); + sqstd_rex_expect(exp,')'); } break; case '[': exp->_p++; ret = sqstd_rex_class(exp); - sqstd_rex_expect(exp,_SC(']')); + sqstd_rex_expect(exp,']'); break; case SQREX_SYMBOL_END_OF_STRING: exp->_p++; ret = sqstd_rex_newnode(exp,OP_EOL);break; case SQREX_SYMBOL_ANY_CHAR: exp->_p++; ret = sqstd_rex_newnode(exp,OP_DOT);break; @@ -271,7 +268,7 @@ static SQInteger sqstd_rex_element(SQRex *exp) case SQREX_SYMBOL_GREEDY_ZERO_OR_ONE: p0 = 0; p1 = 1; exp->_p++; isgreedy = SQTrue; break; case '{': exp->_p++; - if(!isdigit(*exp->_p)) sqstd_rex_error(exp,_SC("number expected")); + if(!isdigit(*exp->_p)) sqstd_rex_error(exp,"number expected"); p0 = (unsigned short)sqstd_rex_parsenumber(exp); /*******************************/ switch(*exp->_p) { @@ -284,10 +281,10 @@ static SQInteger sqstd_rex_element(SQRex *exp) if(isdigit(*exp->_p)){ p1 = (unsigned short)sqstd_rex_parsenumber(exp); } - sqstd_rex_expect(exp,_SC('}')); + sqstd_rex_expect(exp,'}'); break; default: - sqstd_rex_error(exp,_SC(", or } expected")); + sqstd_rex_error(exp,", or } expected"); } /*******************************/ isgreedy = SQTrue; @@ -526,7 +523,7 @@ SQRex *sqstd_rex_compile(const SQChar *pattern,const SQChar **error) SQRex *exp = (SQRex *)sq_malloc(sizeof(SQRex)); exp->_eol = exp->_bol = NULL; exp->_p = pattern; - exp->_nallocated = (SQInteger)scstrlen(pattern) * sizeof(SQChar); + exp->_nallocated = (SQInteger)strlen(pattern) * sizeof(SQChar); exp->_nodes = (SQRexNode *)sq_malloc(exp->_nallocated * sizeof(SQRexNode)); exp->_nsize = 0; exp->_matches = 0; @@ -537,23 +534,23 @@ SQRex *sqstd_rex_compile(const SQChar *pattern,const SQChar **error) SQInteger res = sqstd_rex_list(exp); exp->_nodes[exp->_first].left = res; if(*exp->_p!='\0') - sqstd_rex_error(exp,_SC("unexpected character")); + sqstd_rex_error(exp,"unexpected character"); #ifdef _DEBUG { SQInteger nsize,i; SQRexNode *t; nsize = exp->_nsize; t = &exp->_nodes[0]; - scprintf(_SC("\n")); + printf("\n"); /* XXX -- The (int) casts are needed to silent warnings on 64bit systems (SQInteger is 64bit, %d assumes 32bit, (int) is 32bit) */ for(i = 0;i < nsize; i++) { if(exp->_nodes[i].type>MAX_CHAR) - scprintf(_SC("[%02d] %10s "),(int)i,g_nnames[exp->_nodes[i].type-MAX_CHAR]); + printf("[%02d] %10s ",(int)i,g_nnames[exp->_nodes[i].type-MAX_CHAR]); else - scprintf(_SC("[%02d] %10c "),(int)i,exp->_nodes[i].type); - scprintf(_SC("left %02d right %02d next %02d\n"),(int)exp->_nodes[i].left,(int)exp->_nodes[i].right,(int)exp->_nodes[i].next); + printf("[%02d] %10c ",(int)i,exp->_nodes[i].type); + printf("left %02d right %02d next %02d\n",(int)exp->_nodes[i].left,(int)exp->_nodes[i].right,(int)exp->_nodes[i].next); } - scprintf(_SC("\n")); + printf("\n"); } #endif exp->_matches = (SQRexMatch *) sq_malloc(exp->_nsubexpr * sizeof(SQRexMatch)); @@ -579,7 +576,7 @@ SQBool sqstd_rex_match(SQRex* exp,const SQChar* text) { const SQChar* res = NULL; exp->_bol = text; - exp->_eol = text + scstrlen(text); + exp->_eol = text + strlen(text); exp->_currsubexp = 0; res = sqstd_rex_matchnode(exp,exp->_nodes,text,NULL); if(res == NULL || res != exp->_eol) @@ -618,7 +615,7 @@ SQBool sqstd_rex_searchrange(SQRex* exp,const SQChar* text_begin,const SQChar* t SQBool sqstd_rex_search(SQRex* exp,const SQChar* text, const SQChar** out_begin, const SQChar** out_end) { - return sqstd_rex_searchrange(exp,text,text + scstrlen(text),out_begin,out_end); + return sqstd_rex_searchrange(exp,text,text + strlen(text),out_begin,out_end); } SQInteger sqstd_rex_getsubexpcount(SQRex* exp) diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdstream.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdstream.cpp deleted file mode 100644 index 147fc66ca7..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/sqstdstream.cpp +++ /dev/null @@ -1,330 +0,0 @@ -/* see copyright notice in squirrel.h */ -#include -#include -#include -#include -#include -#include -#include -#include "sqstdstream.h" -#include "sqstdblobimpl.h" - -#define SETUP_STREAM(v) \ - SQStream *self = NULL; \ - if(SQ_FAILED(sq_getinstanceup(v,1,(SQUserPointer*)&self,(SQUserPointer)SQSTD_STREAM_TYPE_TAG))) \ - return sq_throwerror(v,_SC("invalid type tag")); \ - if(!self->IsValid()) \ - return sq_throwerror(v,_SC("the stream is invalid")); - -SQInteger _stream_readblob(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - SQUserPointer data,blobp; - SQInteger size,res; - sq_getinteger(v,2,&size); - if(size > self->Len()) { - size = self->Len(); - } - data = sq_getscratchpad(v,size); - res = self->Read(data,size); - if(res <= 0) - return sq_throwerror(v,_SC("no data left to read")); - blobp = sqstd_createblob(v,res); - memcpy(blobp,data,res); - return 1; -} - -#define SAFE_READN(ptr,len) { \ - if(self->Read(ptr,len) != len) return sq_throwerror(v,_SC("io error")); \ - } -SQInteger _stream_readn(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - SQInteger format; - sq_getinteger(v, 2, &format); - switch(format) { - case 'l': { - SQInteger i; - SAFE_READN(&i, sizeof(i)); - sq_pushinteger(v, i); - } - break; - case 'i': { - SQInt32 i; - SAFE_READN(&i, sizeof(i)); - sq_pushinteger(v, i); - } - break; - case 's': { - short s; - SAFE_READN(&s, sizeof(short)); - sq_pushinteger(v, s); - } - break; - case 'w': { - unsigned short w; - SAFE_READN(&w, sizeof(unsigned short)); - sq_pushinteger(v, w); - } - break; - case 'c': { - char c; - SAFE_READN(&c, sizeof(char)); - sq_pushinteger(v, c); - } - break; - case 'b': { - unsigned char c; - SAFE_READN(&c, sizeof(unsigned char)); - sq_pushinteger(v, c); - } - break; - case 'f': { - float f; - SAFE_READN(&f, sizeof(float)); - sq_pushfloat(v, f); - } - break; - case 'd': { - double d; - SAFE_READN(&d, sizeof(double)); - sq_pushfloat(v, (SQFloat)d); - } - break; - default: - return sq_throwerror(v, _SC("invalid format")); - } - return 1; -} - -SQInteger _stream_writeblob(HSQUIRRELVM v) -{ - SQUserPointer data; - SQInteger size; - SETUP_STREAM(v); - if(SQ_FAILED(sqstd_getblob(v,2,&data))) - return sq_throwerror(v,_SC("invalid parameter")); - size = sqstd_getblobsize(v,2); - if(self->Write(data,size) != size) - return sq_throwerror(v,_SC("io error")); - sq_pushinteger(v,size); - return 1; -} - -SQInteger _stream_writen(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - SQInteger format, ti; - SQFloat tf; - sq_getinteger(v, 3, &format); - switch(format) { - case 'l': { - SQInteger i; - sq_getinteger(v, 2, &ti); - i = ti; - self->Write(&i, sizeof(SQInteger)); - } - break; - case 'i': { - SQInt32 i; - sq_getinteger(v, 2, &ti); - i = (SQInt32)ti; - self->Write(&i, sizeof(SQInt32)); - } - break; - case 's': { - short s; - sq_getinteger(v, 2, &ti); - s = (short)ti; - self->Write(&s, sizeof(short)); - } - break; - case 'w': { - unsigned short w; - sq_getinteger(v, 2, &ti); - w = (unsigned short)ti; - self->Write(&w, sizeof(unsigned short)); - } - break; - case 'c': { - char c; - sq_getinteger(v, 2, &ti); - c = (char)ti; - self->Write(&c, sizeof(char)); - } - break; - case 'b': { - unsigned char b; - sq_getinteger(v, 2, &ti); - b = (unsigned char)ti; - self->Write(&b, sizeof(unsigned char)); - } - break; - case 'f': { - float f; - sq_getfloat(v, 2, &tf); - f = (float)tf; - self->Write(&f, sizeof(float)); - } - break; - case 'd': { - double d; - sq_getfloat(v, 2, &tf); - d = tf; - self->Write(&d, sizeof(double)); - } - break; - default: - return sq_throwerror(v, _SC("invalid format")); - } - return 0; -} - -SQInteger _stream_seek(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - SQInteger offset, origin = SQ_SEEK_SET; - sq_getinteger(v, 2, &offset); - if(sq_gettop(v) > 2) { - SQInteger t; - sq_getinteger(v, 3, &t); - switch(t) { - case 'b': origin = SQ_SEEK_SET; break; - case 'c': origin = SQ_SEEK_CUR; break; - case 'e': origin = SQ_SEEK_END; break; - default: return sq_throwerror(v,_SC("invalid origin")); - } - } - sq_pushinteger(v, self->Seek(offset, origin)); - return 1; -} - -SQInteger _stream_tell(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - sq_pushinteger(v, self->Tell()); - return 1; -} - -SQInteger _stream_len(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - sq_pushinteger(v, self->Len()); - return 1; -} - -SQInteger _stream_flush(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - if(!self->Flush()) - sq_pushinteger(v, 1); - else - sq_pushnull(v); - return 1; -} - -SQInteger _stream_eos(HSQUIRRELVM v) -{ - SETUP_STREAM(v); - if(self->EOS()) - sq_pushinteger(v, 1); - else - sq_pushnull(v); - return 1; -} - -static SQRegFunction _stream_methods[] = { - _DECL_STREAM_FUNC(readblob,2,_SC("xn")), - _DECL_STREAM_FUNC(readn,2,_SC("xn")), - _DECL_STREAM_FUNC(writeblob,-2,_SC("xx")), - _DECL_STREAM_FUNC(writen,3,_SC("xnn")), - _DECL_STREAM_FUNC(seek,-2,_SC("xnn")), - _DECL_STREAM_FUNC(tell,1,_SC("x")), - _DECL_STREAM_FUNC(len,1,_SC("x")), - _DECL_STREAM_FUNC(eos,1,_SC("x")), - _DECL_STREAM_FUNC(flush,1,_SC("x")), - {0,0,0,0} -}; - -void init_streamclass(HSQUIRRELVM v) -{ - sq_pushregistrytable(v); - sq_pushstring(v,_SC("std_stream"),-1); - if(SQ_FAILED(sq_get(v,-2))) { - sq_pushstring(v,_SC("std_stream"),-1); - sq_newclass(v,SQFalse); - sq_settypetag(v,-1,(SQUserPointer)SQSTD_STREAM_TYPE_TAG); - SQInteger i = 0; - while(_stream_methods[i].name != 0) { - SQRegFunction &f = _stream_methods[i]; - sq_pushstring(v,f.name,-1); - sq_newclosure(v,f.f,0); - sq_setparamscheck(v,f.nparamscheck,f.typemask); - sq_createslot(v,-3); - i++; - } - sq_createslot(v,-3); - sq_pushroottable(v); - sq_pushstring(v,_SC("stream"),-1); - sq_pushstring(v,_SC("std_stream"),-1); - sq_get(v,-4); - sq_createslot(v,-3); - sq_pop(v,1); - } - else { - sq_pop(v,1); //result - } - sq_pop(v,1); -} - -SQRESULT declare_stream(HSQUIRRELVM v,const SQChar* name,SQUserPointer typetag,const SQChar* reg_name,SQRegFunction *methods,SQRegFunction *globals) -{ - if(sq_gettype(v,-1) != OT_TABLE) - return sq_throwerror(v,_SC("table expected")); - SQInteger top = sq_gettop(v); - //create delegate - init_streamclass(v); - sq_pushregistrytable(v); - sq_pushstring(v,reg_name,-1); - sq_pushstring(v,_SC("std_stream"),-1); - if(SQ_SUCCEEDED(sq_get(v,-3))) { - sq_newclass(v,SQTrue); - sq_settypetag(v,-1,typetag); - SQInteger i = 0; - while(methods[i].name != 0) { - SQRegFunction &f = methods[i]; - sq_pushstring(v,f.name,-1); - sq_newclosure(v,f.f,0); - sq_setparamscheck(v,f.nparamscheck,f.typemask); - sq_setnativeclosurename(v,-1,f.name); - sq_createslot(v,-3); - i++; - } - sq_createslot(v,-3); - sq_pop(v,1); - - i = 0; - while(globals[i].name!=0) - { - SQRegFunction &f = globals[i]; - sq_pushstring(v,f.name,-1); - sq_newclosure(v,f.f,0); - sq_setparamscheck(v,f.nparamscheck,f.typemask); - sq_setnativeclosurename(v,-1,f.name); - sq_createslot(v,-3); - i++; - } - //register the class in the target table - sq_pushstring(v,name,-1); - sq_pushregistrytable(v); - sq_pushstring(v,reg_name,-1); - sq_get(v,-2); - sq_remove(v,-2); - sq_createslot(v,-3); - - sq_settop(v,top); - return SQ_OK; - } - sq_settop(v,top); - return SQ_ERROR; -} diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdstream.h b/src/3rdparty/squirrel/sqstdlib/sqstdstream.h deleted file mode 100644 index 4dcc000545..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/sqstdstream.h +++ /dev/null @@ -1,18 +0,0 @@ -/* see copyright notice in squirrel.h */ -#ifndef _SQSTD_STREAM_H_ -#define _SQSTD_STREAM_H_ - -SQInteger _stream_readblob(HSQUIRRELVM v); -SQInteger _stream_readline(HSQUIRRELVM v); -SQInteger _stream_readn(HSQUIRRELVM v); -SQInteger _stream_writeblob(HSQUIRRELVM v); -SQInteger _stream_writen(HSQUIRRELVM v); -SQInteger _stream_seek(HSQUIRRELVM v); -SQInteger _stream_tell(HSQUIRRELVM v); -SQInteger _stream_len(HSQUIRRELVM v); -SQInteger _stream_eos(HSQUIRRELVM v); -SQInteger _stream_flush(HSQUIRRELVM v); - -#define _DECL_STREAM_FUNC(name,nparams,typecheck) {_SC(#name),_stream_##name,nparams,typecheck} -SQRESULT declare_stream(HSQUIRRELVM v,const SQChar* name,SQUserPointer typetag,const SQChar* reg_name,SQRegFunction *methods,SQRegFunction *globals); -#endif /*_SQSTD_STREAM_H_*/ diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdstring.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdstring.cpp index 681029aa70..8639b6456a 100644 --- a/src/3rdparty/squirrel/sqstdlib/sqstdstring.cpp +++ b/src/3rdparty/squirrel/sqstdlib/sqstdstring.cpp @@ -1,22 +1,11 @@ /* see copyright notice in squirrel.h */ #include #include -#include -#include -#include -#include -#include #include -#ifdef SQUNICODE -#define scstrchr wcschr -#define scatoi _wtoi -#define scstrtok wcstok -#else #define scstrchr strchr #define scatoi atoi #define scstrtok strtok -#endif #define MAX_FORMAT_LEN 20 #define MAX_WFORMAT_LEN 3 #define ADDITIONAL_FORMAT_SPACE (100*sizeof(SQChar)) @@ -27,17 +16,17 @@ static SQInteger validate_format(HSQUIRRELVM v, SQChar *fmt, const SQChar *src, SQInteger wc = 0; SQInteger start = n; fmt[0] = '%'; - while (scstrchr(_SC("-+ #0"), src[n])) n++; - while (scisdigit(src[n])) { + while (scstrchr("-+ #0", src[n])) n++; + while (isdigit(src[n])) { swidth[wc] = src[n]; n++; wc++; if(wc>=MAX_WFORMAT_LEN) - return sq_throwerror(v,_SC("width format too long")); + return sq_throwerror(v,"width format too long"); } swidth[wc] = '\0'; if(wc > 0) { - width = scatoi(swidth); + width = atoi(swidth); } else width = 0; @@ -45,20 +34,20 @@ static SQInteger validate_format(HSQUIRRELVM v, SQChar *fmt, const SQChar *src, n++; wc = 0; - while (scisdigit(src[n])) { + while (isdigit(src[n])) { swidth[wc] = src[n]; n++; wc++; if(wc>=MAX_WFORMAT_LEN) - return sq_throwerror(v,_SC("precision format too long")); + return sq_throwerror(v,"precision format too long"); } swidth[wc] = '\0'; if(wc > 0) { - width += scatoi(swidth); + width += atoi(swidth); } } if (n-start > MAX_FORMAT_LEN ) - return sq_throwerror(v,_SC("format too long")); + return sq_throwerror(v,"format too long"); memcpy(&fmt[1],&src[start],((n-start)+1)*sizeof(SQChar)); fmt[(n-start)+2] = '\0'; return n; @@ -75,7 +64,7 @@ static void _append_string(SQInteger &i, SQChar *dest, SQInteger allocated, cons { va_list va; va_start(va, fmt); - i += scvsnprintf(&dest[i],allocated-i,fmt,va); + i += vsnprintf(&dest[i],allocated-i,fmt,va); va_end(va); } @@ -102,7 +91,7 @@ SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen else { n++; if( nparam > sq_gettop(v) ) - return sq_throwerror(v,_SC("not enough paramters for the given format string")); + return sq_throwerror(v,"not enough paramters for the given format string"); n = validate_format(v,fmt,format,n,w); if(n < 0) return -1; SQInteger addlen = 0; @@ -113,24 +102,24 @@ SQRESULT sqstd_format(HSQUIRRELVM v,SQInteger nformatstringidx,SQInteger *outlen switch(format[n]) { case 's': if(SQ_FAILED(sq_getstring(v,nparam,&ts))) - return sq_throwerror(v,_SC("string expected for the specified format")); + return sq_throwerror(v,"string expected for the specified format"); addlen = (sq_getsize(v,nparam)*sizeof(SQChar))+((w+1)*sizeof(SQChar)); valtype = 's'; break; case 'i': case 'd': case 'c':case 'o': case 'u': case 'x': case 'X': if(SQ_FAILED(sq_getinteger(v,nparam,&ti))) - return sq_throwerror(v,_SC("integer expected for the specified format")); + return sq_throwerror(v,"integer expected for the specified format"); addlen = (ADDITIONAL_FORMAT_SPACE)+((w+1)*sizeof(SQChar)); valtype = 'i'; break; case 'f': case 'g': case 'G': case 'e': case 'E': if(SQ_FAILED(sq_getfloat(v,nparam,&tf))) - return sq_throwerror(v,_SC("float expected for the specified format")); + return sq_throwerror(v,"float expected for the specified format"); addlen = (ADDITIONAL_FORMAT_SPACE)+((w+1)*sizeof(SQChar)); valtype = 'f'; break; default: - return sq_throwerror(v,_SC("invalid format")); + return sq_throwerror(v,"invalid format"); } n++; allocated += addlen + sizeof(SQChar); @@ -162,7 +151,7 @@ static SQInteger _string_format(HSQUIRRELVM v) static void __strip_l(const SQChar *str,const SQChar **start) { const SQChar *t = str; - while(((*t) != '\0') && scisspace(*t)){ t++; } + while(((*t) != '\0') && isspace(*t)){ t++; } *start = t; } @@ -173,7 +162,7 @@ static void __strip_r(const SQChar *str,SQInteger len,const SQChar **end) return; } const SQChar *t = &str[len-1]; - while(t != str && scisspace(*t)) { t--; } + while(t != str && isspace(*t)) { t--; } *end = t+1; } @@ -213,7 +202,7 @@ static SQInteger _string_split(HSQUIRRELVM v) SQChar *stemp,*tok; sq_getstring(v,2,&str); sq_getstring(v,3,&seps); - if(sq_getsize(v,3) == 0) return sq_throwerror(v,_SC("empty separators string")); + if(sq_getsize(v,3) == 0) return sq_throwerror(v,"empty separators string"); SQInteger memsize = (sq_getsize(v,2)+1)*sizeof(SQChar); stemp = sq_getscratchpad(v,memsize); memcpy(stemp,str,memsize); @@ -255,10 +244,10 @@ static SQInteger _regexp_match(HSQUIRRELVM v) static void _addrexmatch(HSQUIRRELVM v,const SQChar *str,const SQChar *begin,const SQChar *end) { sq_newtable(v); - sq_pushstring(v,_SC("begin"),-1); + sq_pushstring(v,"begin",-1); sq_pushinteger(v,begin - str); sq_rawset(v,-3); - sq_pushstring(v,_SC("end"),-1); + sq_pushstring(v,"end",-1); sq_pushinteger(v,end - str); sq_rawset(v,-3); } @@ -321,35 +310,35 @@ static SQInteger _regexp_constructor(HSQUIRRELVM v) static SQInteger _regexp__typeof(HSQUIRRELVM v) { - sq_pushstring(v,_SC("regexp"),-1); + sq_pushstring(v,"regexp",-1); return 1; } -#define _DECL_REX_FUNC(name,nparams,pmask) {_SC(#name),_regexp_##name,nparams,pmask} +#define _DECL_REX_FUNC(name,nparams,pmask) {#name,_regexp_##name,nparams,pmask} static SQRegFunction rexobj_funcs[]={ - _DECL_REX_FUNC(constructor,2,_SC(".s")), - _DECL_REX_FUNC(search,-2,_SC("xsn")), - _DECL_REX_FUNC(match,2,_SC("xs")), - _DECL_REX_FUNC(capture,-2,_SC("xsn")), - _DECL_REX_FUNC(subexpcount,1,_SC("x")), - _DECL_REX_FUNC(_typeof,1,_SC("x")), + _DECL_REX_FUNC(constructor,2,".s"), + _DECL_REX_FUNC(search,-2,"xsn"), + _DECL_REX_FUNC(match,2,"xs"), + _DECL_REX_FUNC(capture,-2,"xsn"), + _DECL_REX_FUNC(subexpcount,1,"x"), + _DECL_REX_FUNC(_typeof,1,"x"), {0,0,0,0} }; -#define _DECL_FUNC(name,nparams,pmask) {_SC(#name),_string_##name,nparams,pmask} +#define _DECL_FUNC(name,nparams,pmask) {#name,_string_##name,nparams,pmask} static SQRegFunction stringlib_funcs[]={ - _DECL_FUNC(format,-2,_SC(".s")), - _DECL_FUNC(strip,2,_SC(".s")), - _DECL_FUNC(lstrip,2,_SC(".s")), - _DECL_FUNC(rstrip,2,_SC(".s")), - _DECL_FUNC(split,3,_SC(".ss")), + _DECL_FUNC(format,-2,".s"), + _DECL_FUNC(strip,2,".s"), + _DECL_FUNC(lstrip,2,".s"), + _DECL_FUNC(rstrip,2,".s"), + _DECL_FUNC(split,3,".ss"), {0,0,0,0} }; SQInteger sqstd_register_stringlib(HSQUIRRELVM v) { - sq_pushstring(v,_SC("regexp"),-1); + sq_pushstring(v,"regexp",-1); sq_newclass(v,SQFalse); SQInteger i = 0; while(rexobj_funcs[i].name != 0) { diff --git a/src/3rdparty/squirrel/sqstdlib/sqstdsystem.cpp b/src/3rdparty/squirrel/sqstdlib/sqstdsystem.cpp deleted file mode 100644 index e1fcdfbd99..0000000000 --- a/src/3rdparty/squirrel/sqstdlib/sqstdsystem.cpp +++ /dev/null @@ -1,147 +0,0 @@ -/* see copyright notice in squirrel.h */ -#include -#include -#include -#include -#include - -#ifdef SQUNICODE -#include -#define scgetenv _wgetenv -#define scsystem _wsystem -#define scasctime _wasctime -#define scremove _wremove -#define screname _wrename -#else -#define scgetenv getenv -#define scsystem system -#define scasctime asctime -#define scremove remove -#define screname rename -#endif - -static SQInteger _system_getenv(HSQUIRRELVM v) -{ - const SQChar *s; - if(SQ_SUCCEEDED(sq_getstring(v,2,&s))){ - sq_pushstring(v,scgetenv(s),-1); - return 1; - } - return 0; -} - - -static SQInteger _system_system(HSQUIRRELVM v) -{ - const SQChar *s; - if(SQ_SUCCEEDED(sq_getstring(v,2,&s))){ - sq_pushinteger(v,scsystem(s)); - return 1; - } - return sq_throwerror(v,_SC("wrong param")); -} - - -static SQInteger _system_clock(HSQUIRRELVM v) -{ - sq_pushfloat(v,((SQFloat)clock())/(SQFloat)CLOCKS_PER_SEC); - return 1; -} - -static SQInteger _system_time(HSQUIRRELVM v) -{ - time_t t; - time(&t); - sq_pushinteger(v,*((SQInteger *)&t)); - return 1; -} - -static SQInteger _system_remove(HSQUIRRELVM v) -{ - const SQChar *s; - sq_getstring(v,2,&s); - if(scremove(s)==-1) - return sq_throwerror(v,_SC("remove() failed")); - return 0; -} - -static SQInteger _system_rename(HSQUIRRELVM v) -{ - const SQChar *oldn,*newn; - sq_getstring(v,2,&oldn); - sq_getstring(v,3,&newn); - if(screname(oldn,newn)==-1) - return sq_throwerror(v,_SC("rename() failed")); - return 0; -} - -static void _set_integer_slot(HSQUIRRELVM v,const SQChar *name,SQInteger val) -{ - sq_pushstring(v,name,-1); - sq_pushinteger(v,val); - sq_rawset(v,-3); -} - -static SQInteger _system_date(HSQUIRRELVM v) -{ - time_t t; - SQInteger it; - SQInteger format = 'l'; - if(sq_gettop(v) > 1) { - sq_getinteger(v,2,&it); - t = it; - if(sq_gettop(v) > 2) { - sq_getinteger(v,3,(SQInteger*)&format); - } - } - else { - time(&t); - } - tm *date; - if(format == 'u') - date = gmtime(&t); - else - date = localtime(&t); - if(!date) - return sq_throwerror(v,_SC("crt api failure")); - sq_newtable(v); - _set_integer_slot(v, _SC("sec"), date->tm_sec); - _set_integer_slot(v, _SC("min"), date->tm_min); - _set_integer_slot(v, _SC("hour"), date->tm_hour); - _set_integer_slot(v, _SC("day"), date->tm_mday); - _set_integer_slot(v, _SC("month"), date->tm_mon); - _set_integer_slot(v, _SC("year"), date->tm_year+1900); - _set_integer_slot(v, _SC("wday"), date->tm_wday); - _set_integer_slot(v, _SC("yday"), date->tm_yday); - return 1; -} - - - -#define _DECL_FUNC(name,nparams,pmask) {_SC(#name),_system_##name,nparams,pmask} -static SQRegFunction systemlib_funcs[]={ - _DECL_FUNC(getenv,2,_SC(".s")), - _DECL_FUNC(system,2,_SC(".s")), - _DECL_FUNC(clock,1,NULL), - _DECL_FUNC(time,1,NULL), - _DECL_FUNC(date,-1,_SC(".nn")), - _DECL_FUNC(remove,2,_SC(".s")), - _DECL_FUNC(rename,3,_SC(".ss")), - {0,0,0,0} -}; - - -SQInteger sqstd_register_systemlib(HSQUIRRELVM v) -{ - SQInteger i=0; - while(systemlib_funcs[i].name!=0) - { - sq_pushstring(v,systemlib_funcs[i].name,-1); - sq_newclosure(v,systemlib_funcs[i].f,0); - sq_setparamscheck(v,systemlib_funcs[i].nparamscheck,systemlib_funcs[i].typemask); - sq_setnativeclosurename(v,-1,systemlib_funcs[i].name); - sq_createslot(v,-3); - i++; - } - return 1; -} diff --git a/src/3rdparty/squirrel/squirrel.dsw b/src/3rdparty/squirrel/squirrel.dsw deleted file mode 100644 index 721509106c..0000000000 --- a/src/3rdparty/squirrel/squirrel.dsw +++ /dev/null @@ -1,77 +0,0 @@ -Microsoft Developer Studio Workspace File, Format Version 6.00 -# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! - -############################################################################### - -Project: "sq"=.\sq\sq.dsp - Package Owner=<4> - -Package=<5> -{{{ - begin source code control - . - end source code control -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name sqlibs - End Project Dependency - Begin Project Dependency - Project_Dep_Name squirrel - End Project Dependency - Begin Project Dependency - Project_Dep_Name sqstdlib - End Project Dependency -}}} - -############################################################################### - -Project: "sqstdlib"=.\sqstdlib\sqstdlib.dsp - Package Owner=<4> - -Package=<5> -{{{ - begin source code control - "$/squirrel", HAAAAAAA - . - end source code control -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "squirrel"=.\squirrel\squirrel.dsp - Package Owner=<4> - -Package=<5> -{{{ - begin source code control - "$/squirrel", HAAAAAAA - . - end source code control -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Global: - -Package=<5> -{{{ - begin source code control - "$/squirrel", HAAAAAAA - . - end source code control -}}} - -Package=<3> -{{{ -}}} - -############################################################################### - diff --git a/src/3rdparty/squirrel/squirrel/Makefile b/src/3rdparty/squirrel/squirrel/Makefile deleted file mode 100644 index e48eaffa0f..0000000000 --- a/src/3rdparty/squirrel/squirrel/Makefile +++ /dev/null @@ -1,52 +0,0 @@ -SQUIRREL= .. - - -OUT= $(SQUIRREL)/lib/libsquirrel.a -INCZ= -I$(SQUIRREL)/include -I. -Iinclude -DEFS= -LIB= - -OBJS= \ - sqapi.o \ - sqbaselib.o \ - sqcompiler.o \ - sqdebug.o \ - sqlexer.o \ - sqobject.o \ - sqparser.o \ - sqstate.o \ - sqtable.o \ - sqvm.o \ - sqmem.o \ - sqclass.o - -SRCS= \ - sqapi.cpp \ - sqbaselib.cpp \ - sqfuncstate.cpp \ - sqdebug.cpp \ - sqlexer.cpp \ - sqobject.cpp \ - sqcompiler.cpp \ - sqstate.cpp \ - sqtable.cpp \ - sqmem.cpp \ - sqvm.cpp \ - sqclass.cpp - - - -sq32: - gcc -O2 -fno-rtti -Wall -c $(SRCS) $(INCZ) $(DEFS) - ar rc $(OUT) *.o - -sqprof: - gcc -O2 -pg -fno-rtti -pie -gstabs -g3 -Wall -c $(SRCS) $(INCZ) $(DEFS) - ar rc $(OUT) *.o - -sq64: - gcc -O2 -D_SQ64 -fno-rtti -Wall -c $(SRCS) $(INCZ) $(DEFS) - ar rc $(OUT) *.o - -clean: - rm -f $(OUT) $(SRCS:%.cpp=%.o) diff --git a/src/3rdparty/squirrel/squirrel/sqapi.cpp b/src/3rdparty/squirrel/squirrel/sqapi.cpp index 3447e57626..f02fee29f6 100644 --- a/src/3rdparty/squirrel/squirrel/sqapi.cpp +++ b/src/3rdparty/squirrel/squirrel/sqapi.cpp @@ -1,6 +1,9 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include #include "sqpcheader.h" #include "sqvm.h" @@ -14,12 +17,16 @@ #include "sqfuncstate.h" #include "sqclass.h" +#include "../../../string_func.h" + +#include "../../../safeguards.h" + bool sq_aux_gettypedarg(HSQUIRRELVM v,SQInteger idx,SQObjectType type,SQObjectPtr **o) { *o = &stack_get(v,idx); if(type(**o) != type){ SQObjectPtr oval = v->PrintObjVal(**o); - v->Raise_Error(_SC("wrong argument type, expected '%s' got '%.50s'"),IdType2Name(type),_stringval(oval)); + v->Raise_Error("wrong argument type, expected '%s' got '%.50s'",IdType2Name(type),_stringval(oval)); return false; } return true; @@ -29,7 +36,7 @@ bool sq_aux_gettypedarg(HSQUIRRELVM v,SQInteger idx,SQObjectType type,SQObjectPt #define sq_aux_paramscheck(v,count) \ { \ - if(sq_gettop(v) < count){ v->Raise_Error(_SC("not enough params in the stack")); return SQ_ERROR; }\ + if(sq_gettop(v) < count){ v->Raise_Error("not enough params in the stack"); return SQ_ERROR; }\ } SQInteger sq_aux_throwobject(HSQUIRRELVM v,SQObjectPtr &e) @@ -40,8 +47,9 @@ SQInteger sq_aux_throwobject(HSQUIRRELVM v,SQObjectPtr &e) SQInteger sq_aux_invalidtype(HSQUIRRELVM v,SQObjectType type) { - scsprintf(_ss(v)->GetScratchPad(100), _SC("unexpected type %s"), IdType2Name(type)); - return sq_throwerror(v, _ss(v)->GetScratchPad(-1)); + char buf[100]; + seprintf(buf, lastof(buf), "unexpected type %s", IdType2Name(type)); + return sq_throwerror(v, buf); } HSQUIRRELVM sq_open(SQInteger initialstacksize) @@ -49,7 +57,6 @@ HSQUIRRELVM sq_open(SQInteger initialstacksize) SQSharedState *ss; SQVM *v; sq_new(ss, SQSharedState); - ss->Init(); v = (SQVM *)SQ_MALLOC(sizeof(SQVM)); new (v) SQVM(ss); ss->_root_vm = v; @@ -253,7 +260,7 @@ SQRESULT sq_newclass(HSQUIRRELVM v,SQBool hasbase) if(hasbase) { SQObjectPtr &base = stack_get(v,-1); if(type(base) != OT_CLASS) - return sq_throwerror(v,_SC("invalid base type")); + return sq_throwerror(v,"invalid base type"); baseclass = _class(base); } SQClass *newclass = SQClass::Create(_ss(v), baseclass); @@ -267,7 +274,7 @@ SQBool sq_instanceof(HSQUIRRELVM v) SQObjectPtr &inst = stack_get(v,-1); SQObjectPtr &cl = stack_get(v,-2); if(type(inst) != OT_INSTANCE || type(cl) != OT_CLASS) - return sq_throwerror(v,_SC("invalid param type")); + return sq_throwerror(v,"invalid param type"); return _instance(inst)->InstanceOf(_class(cl))?SQTrue:SQFalse; } @@ -291,7 +298,7 @@ SQRESULT sq_arraypop(HSQUIRRELVM v,SQInteger idx,SQBool pushval) _array(*arr)->Pop(); return SQ_OK; } - return sq_throwerror(v, _SC("empty array")); + return sq_throwerror(v, "empty array"); } SQRESULT sq_arrayresize(HSQUIRRELVM v,SQInteger idx,SQInteger newsize) @@ -303,7 +310,7 @@ SQRESULT sq_arrayresize(HSQUIRRELVM v,SQInteger idx,SQInteger newsize) _array(*arr)->Resize(newsize); return SQ_OK; } - return sq_throwerror(v,_SC("negative size")); + return sq_throwerror(v,"negative size"); } @@ -332,7 +339,7 @@ SQRESULT sq_arrayremove(HSQUIRRELVM v,SQInteger idx,SQInteger itemidx) sq_aux_paramscheck(v, 1); SQObjectPtr *arr; _GETSAFE_OBJ(v, idx, OT_ARRAY,arr); - return _array(*arr)->Remove(itemidx) ? SQ_OK : sq_throwerror(v,_SC("index out of range")); + return _array(*arr)->Remove(itemidx) ? SQ_OK : sq_throwerror(v,"index out of range"); } SQRESULT sq_arrayinsert(HSQUIRRELVM v,SQInteger idx,SQInteger destpos) @@ -340,7 +347,7 @@ SQRESULT sq_arrayinsert(HSQUIRRELVM v,SQInteger idx,SQInteger destpos) sq_aux_paramscheck(v, 1); SQObjectPtr *arr; _GETSAFE_OBJ(v, idx, OT_ARRAY,arr); - SQRESULT ret = _array(*arr)->Insert(destpos, v->GetUp(-1)) ? SQ_OK : sq_throwerror(v,_SC("index out of range")); + SQRESULT ret = _array(*arr)->Insert(destpos, v->GetUp(-1)) ? SQ_OK : sq_throwerror(v,"index out of range"); v->Pop(); return ret; } @@ -349,7 +356,6 @@ SQRESULT sq_arrayinsert(HSQUIRRELVM v,SQInteger idx,SQInteger destpos) void sq_newclosure(HSQUIRRELVM v,SQFUNCTION func,SQUnsignedInteger nfreevars) { SQNativeClosure *nc = SQNativeClosure::Create(_ss(v), func); - nc->_nparamscheck = 0; for(SQUnsignedInteger i = 0; i < nfreevars; i++) { nc->_outervalues.push_back(v->Top()); v->Pop(); @@ -367,7 +373,7 @@ SQRESULT sq_getclosureinfo(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger *nparam *nfreevars = (SQUnsignedInteger)c->_outervalues.size(); return SQ_OK; } - return sq_throwerror(v,_SC("the object is not a closure")); + return sq_throwerror(v,"the object is not a closure"); } SQRESULT sq_setnativeclosurename(HSQUIRRELVM v,SQInteger idx,const SQChar *name) @@ -378,20 +384,20 @@ SQRESULT sq_setnativeclosurename(HSQUIRRELVM v,SQInteger idx,const SQChar *name) nc->_name = SQString::Create(_ss(v),name); return SQ_OK; } - return sq_throwerror(v,_SC("the object is not a nativeclosure")); + return sq_throwerror(v,"the object is not a nativeclosure"); } SQRESULT sq_setparamscheck(HSQUIRRELVM v,SQInteger nparamscheck,const SQChar *typemask) { SQObject o = stack_get(v, -1); if(!sq_isnativeclosure(o)) - return sq_throwerror(v, _SC("native closure expected")); + return sq_throwerror(v, "native closure expected"); SQNativeClosure *nc = _nativeclosure(o); nc->_nparamscheck = nparamscheck; if(typemask) { SQIntVec res; if(!CompileTypemask(res, typemask)) - return sq_throwerror(v, _SC("invalid typemask")); + return sq_throwerror(v, "invalid typemask"); nc->_typecheck.copy(res); } else { @@ -408,12 +414,12 @@ SQRESULT sq_bindenv(HSQUIRRELVM v,SQInteger idx) SQObjectPtr &o = stack_get(v,idx); if(!sq_isnativeclosure(o) && !sq_isclosure(o)) - return sq_throwerror(v,_SC("the target is not a closure")); + return sq_throwerror(v,"the target is not a closure"); SQObjectPtr &env = stack_get(v,-1); if(!sq_istable(env) && !sq_isclass(env) && !sq_isinstance(env)) - return sq_throwerror(v,_SC("invalid environment")); + return sq_throwerror(v,"invalid environment"); SQObjectPtr w = _refcounted(env)->GetWeakRef(type(env)); SQObjectPtr ret; if(sq_isclosure(o)) { @@ -438,7 +444,7 @@ SQRESULT sq_clear(HSQUIRRELVM v,SQInteger idx) case OT_TABLE: _table(o)->Clear(); break; case OT_ARRAY: _array(o)->Resize(0); break; default: - return sq_throwerror(v, _SC("clear only works on table and array")); + return sq_throwerror(v, "clear only works on table and array"); break; } @@ -468,7 +474,7 @@ SQRESULT sq_setroottable(HSQUIRRELVM v) v->Pop(); return SQ_OK; } - return sq_throwerror(v, _SC("ivalid type")); + return sq_throwerror(v, "ivalid type"); } SQRESULT sq_setconsttable(HSQUIRRELVM v) @@ -479,7 +485,7 @@ SQRESULT sq_setconsttable(HSQUIRRELVM v) v->Pop(); return SQ_OK; } - return sq_throwerror(v, _SC("ivalid type, expected table")); + return sq_throwerror(v, "ivalid type, expected table"); } void sq_setforeignptr(HSQUIRRELVM v,SQUserPointer p) @@ -605,7 +611,7 @@ SQRESULT sq_settypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer typetag) switch(type(o)) { case OT_USERDATA: _userdata(o)->_typetag = typetag; break; case OT_CLASS: _class(o)->_typetag = typetag; break; - default: return sq_throwerror(v,_SC("invalid object type")); + default: return sq_throwerror(v,"invalid object type"); } return SQ_OK; } @@ -625,7 +631,7 @@ SQRESULT sq_gettypetag(HSQUIRRELVM v,SQInteger idx,SQUserPointer *typetag) { SQObjectPtr &o = stack_get(v,idx); if(SQ_FAILED(sq_getobjtypetag(&o,typetag))) - return sq_throwerror(v,_SC("invalid object type")); + return sq_throwerror(v,"invalid object type"); return SQ_OK; } @@ -640,7 +646,7 @@ SQRESULT sq_getuserpointer(HSQUIRRELVM v, SQInteger idx, SQUserPointer *p) SQRESULT sq_setinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer p) { SQObjectPtr &o = stack_get(v,idx); - if(type(o) != OT_INSTANCE) return sq_throwerror(v,_SC("the object is not a class instance")); + if(type(o) != OT_INSTANCE) return sq_throwerror(v,"the object is not a class instance"); _instance(o)->_userpointer = p; return SQ_OK; } @@ -648,8 +654,8 @@ SQRESULT sq_setinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer p) SQRESULT sq_setclassudsize(HSQUIRRELVM v, SQInteger idx, SQInteger udsize) { SQObjectPtr &o = stack_get(v,idx); - if(type(o) != OT_CLASS) return sq_throwerror(v,_SC("the object is not a class")); - if(_class(o)->_locked) return sq_throwerror(v,_SC("the class is locked")); + if(type(o) != OT_CLASS) return sq_throwerror(v,"the object is not a class"); + if(_class(o)->_locked) return sq_throwerror(v,"the class is locked"); _class(o)->_udsize = udsize; return SQ_OK; } @@ -658,7 +664,7 @@ SQRESULT sq_setclassudsize(HSQUIRRELVM v, SQInteger idx, SQInteger udsize) SQRESULT sq_getinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer *p,SQUserPointer typetag) { SQObjectPtr &o = stack_get(v,idx); - if(type(o) != OT_INSTANCE) return sq_throwerror(v,_SC("the object is not a class instance")); + if(type(o) != OT_INSTANCE) return sq_throwerror(v,"the object is not a class instance"); (*p) = _instance(o)->_userpointer; if(typetag != 0) { SQClass *cl = _instance(o)->_class; @@ -667,7 +673,7 @@ SQRESULT sq_getinstanceup(HSQUIRRELVM v, SQInteger idx, SQUserPointer *p,SQUserP return SQ_OK; cl = cl->_base; }while(cl != NULL); - return sq_throwerror(v,_SC("invalid type tag")); + return sq_throwerror(v,"invalid type tag"); } return SQ_OK; } @@ -717,7 +723,7 @@ SQRESULT sq_newslot(HSQUIRRELVM v, SQInteger idx, SQBool bstatic) SQObjectPtr &self = stack_get(v, idx); if(type(self) == OT_TABLE || type(self) == OT_CLASS) { SQObjectPtr &key = v->GetUp(-2); - if(type(key) == OT_NULL) return sq_throwerror(v, _SC("null is not a valid key")); + if(type(key) == OT_NULL) return sq_throwerror(v, "null is not a valid key"); v->NewSlot(self, key, v->GetUp(-1),bstatic?true:false); v->Pop(2); } @@ -730,7 +736,7 @@ SQRESULT sq_deleteslot(HSQUIRRELVM v,SQInteger idx,SQBool pushval) SQObjectPtr *self; _GETSAFE_OBJ(v, idx, OT_TABLE,self); SQObjectPtr &key = v->GetUp(-1); - if(type(key) == OT_NULL) return sq_throwerror(v, _SC("null is not a valid key")); + if(type(key) == OT_NULL) return sq_throwerror(v, "null is not a valid key"); SQObjectPtr res; if(!v->DeleteSlot(*self, key, res)){ return SQ_ERROR; @@ -753,7 +759,7 @@ SQRESULT sq_set(HSQUIRRELVM v,SQInteger idx) SQRESULT sq_rawset(HSQUIRRELVM v,SQInteger idx) { SQObjectPtr &self = stack_get(v, idx); - if(type(v->GetUp(-2)) == OT_NULL) return sq_throwerror(v, _SC("null key")); + if(type(v->GetUp(-2)) == OT_NULL) return sq_throwerror(v, "null key"); switch(type(self)) { case OT_TABLE: _table(self)->NewSlot(v->GetUp(-2), v->GetUp(-1)); @@ -779,7 +785,7 @@ SQRESULT sq_rawset(HSQUIRRELVM v,SQInteger idx) break; default: v->Pop(2); - return sq_throwerror(v, _SC("rawset works only on array/table/class and instance")); + return sq_throwerror(v, "rawset works only on array/table/class and instance"); } v->Raise_IdxError(v->GetUp(-2));return SQ_ERROR; } @@ -792,7 +798,7 @@ SQRESULT sq_setdelegate(HSQUIRRELVM v,SQInteger idx) switch(type) { case OT_TABLE: if(type(mt) == OT_TABLE) { - if(!_table(self)->SetDelegate(_table(mt))) return sq_throwerror(v, _SC("delagate cycle")); v->Pop();} + if(!_table(self)->SetDelegate(_table(mt))) return sq_throwerror(v, "delagate cycle"); v->Pop();} else if(type(mt)==OT_NULL) { _table(self)->SetDelegate(NULL); v->Pop(); } else return sq_aux_invalidtype(v,type); @@ -841,7 +847,7 @@ SQRESULT sq_getdelegate(HSQUIRRELVM v,SQInteger idx) } v->Push(SQObjectPtr(_delegable(self)->_delegate)); break; - default: return sq_throwerror(v,_SC("wrong type")); break; + default: return sq_throwerror(v,"wrong type"); break; } return SQ_OK; @@ -853,7 +859,7 @@ SQRESULT sq_get(HSQUIRRELVM v,SQInteger idx) if(v->Get(self,v->GetUp(-1),v->GetUp(-1),false,false)) return SQ_OK; v->Pop(1); - return sq_throwerror(v,_SC("the index doesn't exist")); + return sq_throwerror(v,"the index doesn't exist"); } SQRESULT sq_rawget(HSQUIRRELVM v,SQInteger idx) @@ -878,10 +884,10 @@ SQRESULT sq_rawget(HSQUIRRELVM v,SQInteger idx) break; default: v->Pop(1); - return sq_throwerror(v,_SC("rawget works only on array/table/instance and class")); + return sq_throwerror(v,"rawget works only on array/table/instance and class"); } v->Pop(1); - return sq_throwerror(v,_SC("the index doesn't exist")); + return sq_throwerror(v,"the index doesn't exist"); } SQRESULT sq_getstackobj(HSQUIRRELVM v,SQInteger idx,HSQOBJECT *po) @@ -959,7 +965,7 @@ SQRESULT sq_resume(HSQUIRRELVM v,SQBool retval,SQBool raiseerror) v->Pop(); return SQ_OK; } - return sq_throwerror(v,_SC("only generators can be resumed")); + return sq_throwerror(v,"only generators can be resumed"); } SQRESULT sq_call(HSQUIRRELVM v,SQInteger params,SQBool retval,SQBool raiseerror, int suspend) @@ -981,9 +987,6 @@ SQRESULT sq_call(HSQUIRRELVM v,SQInteger params,SQBool retval,SQBool raiseerror, v->Pop(params); return SQ_ERROR; } - if(!v->_suspended) - v->Pop(params); - return sq_throwerror(v,_SC("call failed")); } SQRESULT sq_suspendvm(HSQUIRRELVM v) @@ -995,7 +998,7 @@ SQRESULT sq_wakeupvm(HSQUIRRELVM v,SQBool wakeupret,SQBool retval,SQBool raiseer { SQObjectPtr ret; if(!v->_suspended) - return sq_throwerror(v,_SC("cannot resume a vm that is not running any code")); + return sq_throwerror(v,"cannot resume a vm that is not running any code"); if(wakeupret) { v->GetAt(v->_stackbase+v->_suspended_target)=v->GetUp(-1); //retval v->Pop(); @@ -1051,7 +1054,7 @@ SQRESULT sq_writeclosure(HSQUIRRELVM v,SQWRITEFUNC w,SQUserPointer up) _GETSAFE_OBJ(v, -1, OT_CLOSURE,o); unsigned short tag = SQ_BYTECODE_STREAM_TAG; if(w(up,&tag,2) != 2) - return sq_throwerror(v,_SC("io error")); + return sq_throwerror(v,"io error"); if(!_closure(*o)->Save(v,up,w)) return SQ_ERROR; return SQ_OK; @@ -1063,9 +1066,9 @@ SQRESULT sq_readclosure(HSQUIRRELVM v,SQREADFUNC r,SQUserPointer up) unsigned short tag; if(r(up,&tag,2) != 2) - return sq_throwerror(v,_SC("io error")); + return sq_throwerror(v,"io error"); if(tag != SQ_BYTECODE_STREAM_TAG) - return sq_throwerror(v,_SC("invalid stream")); + return sq_throwerror(v,"invalid stream"); if(!SQClosure::Load(v,up,r,closure)) return SQ_ERROR; v->Push(closure); @@ -1110,13 +1113,13 @@ SQRESULT sq_setfreevariable(HSQUIRRELVM v,SQInteger idx,SQUnsignedInteger nval) if(_closure(self)->_outervalues.size()>nval){ _closure(self)->_outervalues[nval]=stack_get(v,-1); } - else return sq_throwerror(v,_SC("invalid free var index")); + else return sq_throwerror(v,"invalid free var index"); break; case OT_NATIVECLOSURE: if(_nativeclosure(self)->_outervalues.size()>nval){ _nativeclosure(self)->_outervalues[nval]=stack_get(v,-1); } - else return sq_throwerror(v,_SC("invalid free var index")); + else return sq_throwerror(v,"invalid free var index"); break; default: return sq_aux_invalidtype(v,type(self)); @@ -1144,7 +1147,7 @@ SQRESULT sq_setattributes(HSQUIRRELVM v,SQInteger idx) v->Push(attrs); return SQ_OK; } - return sq_throwerror(v,_SC("wrong index")); + return sq_throwerror(v,"wrong index"); } SQRESULT sq_getattributes(HSQUIRRELVM v,SQInteger idx) @@ -1164,7 +1167,7 @@ SQRESULT sq_getattributes(HSQUIRRELVM v,SQInteger idx) v->Push(attrs); return SQ_OK; } - return sq_throwerror(v,_SC("wrong index")); + return sq_throwerror(v,"wrong index"); } SQRESULT sq_getbase(HSQUIRRELVM v,SQInteger idx) @@ -1208,7 +1211,7 @@ SQRESULT sq_getweakrefval(HSQUIRRELVM v,SQInteger idx) { SQObjectPtr &o = stack_get(v,idx); if(type(o) != OT_WEAKREF) { - return sq_throwerror(v,_SC("the object must be a weakref")); + return sq_throwerror(v,"the object must be a weakref"); } v->Push(_weakref(o)->_obj); return SQ_OK; @@ -1228,7 +1231,7 @@ SQRESULT sq_getdefaultdelegate(HSQUIRRELVM v,SQObjectType t) case OT_CLASS: v->Push(ss->_class_default_delegate); break; case OT_INSTANCE: v->Push(ss->_instance_default_delegate); break; case OT_WEAKREF: v->Push(ss->_weakref_default_delegate); break; - default: return sq_throwerror(v,_SC("the type doesn't have a default delegate")); + default: return sq_throwerror(v,"the type doesn't have a default delegate"); } return SQ_OK; } @@ -1237,7 +1240,7 @@ SQRESULT sq_next(HSQUIRRELVM v,SQInteger idx) { SQObjectPtr o=stack_get(v,idx),&refpos = stack_get(v,-1),realkey,val; if(type(o) == OT_GENERATOR) { - return sq_throwerror(v,_SC("cannot iterate a generator")); + return sq_throwerror(v,"cannot iterate a generator"); } int faketojump; if(!v->FOREACH_OP(o,realkey,val,refpos,0,666,faketojump)) @@ -1256,12 +1259,30 @@ struct BufState{ SQInteger size; }; -SQInteger buf_lexfeed(SQUserPointer file) +WChar buf_lexfeed(SQUserPointer file) { - BufState *buf=(BufState*)file; - if(buf->size<(buf->ptr+1)) - return 0; - return buf->buf[buf->ptr++]; + /* Convert an UTF-8 character into a WChar */ + BufState *buf = (BufState *)file; + const char *p = &buf->buf[buf->ptr]; + + if (buf->size < buf->ptr + 1) return 0; + + /* Read the first character, and get the length based on UTF-8 specs. If invalid, bail out. */ + uint len = Utf8EncodedCharLen(*p); + if (len == 0) { + buf->ptr++; + return -1; + } + + /* Read the remaining bits. */ + if (buf->size < buf->ptr + len) return 0; + buf->ptr += len; + + /* Convert the character, and when definitely invalid, bail out as well. */ + WChar c; + if (Utf8Decode(&c, p) != len) return -1; + + return c; } SQRESULT sq_compilebuffer(HSQUIRRELVM v,const SQChar *s,SQInteger size,const SQChar *sourcename,SQBool raiseerror) { diff --git a/src/3rdparty/squirrel/squirrel/sqbaselib.cpp b/src/3rdparty/squirrel/squirrel/sqbaselib.cpp index 66a81edb4b..86a1b11858 100644 --- a/src/3rdparty/squirrel/squirrel/sqbaselib.cpp +++ b/src/3rdparty/squirrel/squirrel/sqbaselib.cpp @@ -1,8 +1,13 @@ /* - see copyright notice in squirrel.h -*/ -/* Needs to be first due to a squirrel header defining type() and type() - * being used in some versions of the headers included by algorithm. */ + * see copyright notice in squirrel.h + */ +/* + * Needs to be first due to a squirrel header defining type() and type() + * being used in some versions of the headers included by algorithm. + */ + +#include "../../../stdafx.h" + #include #include "sqpcheader.h" #include "sqvm.h" @@ -12,21 +17,22 @@ #include "sqfuncproto.h" #include "sqclosure.h" #include "sqclass.h" -#include #include #include +#include "../../../safeguards.h" + bool str2num(const SQChar *s,SQObjectPtr &res) { SQChar *end; - if(scstrstr(s,_SC("."))){ - SQFloat r = SQFloat(scstrtod(s,&end)); + if(strstr(s,".")){ + SQFloat r = SQFloat(strtod(s,&end)); if(s == end) return false; res = r; return true; } else{ - SQInteger r = SQInteger(scstrtol(s,&end,10)); + SQInteger r = SQInteger(strtol(s,&end,10)); if(s == end) return false; res = r; return true; @@ -104,21 +110,21 @@ static SQInteger base_getstackinfos(HSQUIRRELVM v) sq_getinteger(v, -1, &level); if (SQ_SUCCEEDED(sq_stackinfos(v, level, &si))) { - const SQChar *fn = _SC("unknown"); - const SQChar *src = _SC("unknown"); + const SQChar *fn = "unknown"; + const SQChar *src = "unknown"; if(si.funcname)fn = si.funcname; if(si.source)src = si.source; sq_newtable(v); - sq_pushstring(v, _SC("func"), -1); + sq_pushstring(v, "func", -1); sq_pushstring(v, fn, -1); sq_createslot(v, -3); - sq_pushstring(v, _SC("src"), -1); + sq_pushstring(v, "src", -1); sq_pushstring(v, src, -1); sq_createslot(v, -3); - sq_pushstring(v, _SC("line"), -1); + sq_pushstring(v, "line", -1); sq_pushinteger(v, si.line); sq_createslot(v, -3); - sq_pushstring(v, _SC("locals"), -1); + sq_pushstring(v, "locals", -1); sq_newtable(v); seq=0; while ((name = sq_getlocal(v, level, seq))) { @@ -139,7 +145,7 @@ static SQInteger base_getstackinfos(HSQUIRRELVM v) static SQInteger base_assert(HSQUIRRELVM v) { if(v->IsFalse(stack_get(v,2))){ - return sq_throwerror(v,_SC("assertion failed")); + return sq_throwerror(v,"assertion failed"); } return 0; } @@ -171,7 +177,7 @@ static SQInteger base_print(HSQUIRRELVM v) const SQChar *str; sq_tostring(v,2); sq_getstring(v,-1,&str); - if(_ss(v)->_printfunc) _ss(v)->_printfunc(v,_SC("%s"),str); + if(_ss(v)->_printfunc) _ss(v)->_printfunc(v,"%s",str); return 0; } @@ -179,7 +185,7 @@ static SQInteger base_print(HSQUIRRELVM v) static SQInteger base_compilestring(HSQUIRRELVM v) { SQInteger nargs=sq_gettop(v); - const SQChar *src=NULL,*name=_SC("unnamedbuffer"); + const SQChar *src=NULL,*name="unnamedbuffer"; SQInteger size; sq_getstring(v,2,&src); size=sq_getsize(v,2); @@ -213,7 +219,7 @@ static SQInteger base_array(HSQUIRRELVM v) SQInteger nInitialSize = tointeger(stack_get(v,2)); SQInteger ret = 1; if (nInitialSize < 0) { - v->Raise_Error(_SC("can't create/resize array with/to size %d"), nInitialSize); + v->Raise_Error("can't create/resize array with/to size %d", nInitialSize); nInitialSize = 0; ret = -1; } @@ -238,28 +244,28 @@ static SQInteger base_type(HSQUIRRELVM v) static SQRegFunction base_funcs[]={ //generic #ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS - {_SC("seterrorhandler"),base_seterrorhandler,2, NULL}, - {_SC("setdebughook"),base_setdebughook,2, NULL}, - {_SC("enabledebuginfo"),base_enabledebuginfo,2, NULL}, - {_SC("getstackinfos"),base_getstackinfos,2, _SC(".n")}, - {_SC("getroottable"),base_getroottable,1, NULL}, - {_SC("setroottable"),base_setroottable,2, NULL}, - {_SC("getconsttable"),base_getconsttable,1, NULL}, - {_SC("setconsttable"),base_setconsttable,2, NULL}, + {"seterrorhandler",base_seterrorhandler,2, NULL}, + {"setdebughook",base_setdebughook,2, NULL}, + {"enabledebuginfo",base_enabledebuginfo,2, NULL}, + {"getstackinfos",base_getstackinfos,2, ".n"}, + {"getroottable",base_getroottable,1, NULL}, + {"setroottable",base_setroottable,2, NULL}, + {"getconsttable",base_getconsttable,1, NULL}, + {"setconsttable",base_setconsttable,2, NULL}, #endif - {_SC("assert"),base_assert,2, NULL}, - {_SC("print"),base_print,2, NULL}, + {"assert",base_assert,2, NULL}, + {"print",base_print,2, NULL}, #ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS - {_SC("compilestring"),base_compilestring,-2, _SC(".ss")}, - {_SC("newthread"),base_newthread,2, _SC(".c")}, - {_SC("suspend"),base_suspend,-1, NULL}, + {"compilestring",base_compilestring,-2, ".ss"}, + {"newthread",base_newthread,2, ".c"}, + {"suspend",base_suspend,-1, NULL}, #endif - {_SC("array"),base_array,-2, _SC(".n")}, - {_SC("type"),base_type,2, NULL}, + {"array",base_array,-2, ".n"}, + {"type",base_type,2, NULL}, #ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS - {_SC("dummy"),base_dummy,0,NULL}, + {"dummy",base_dummy,0,NULL}, #ifndef NO_GARBAGE_COLLECTOR - {_SC("collectgarbage"),base_collectgarbage,1, _SC("t")}, + {"collectgarbage",base_collectgarbage,1, "t"}, #endif #endif {0,0,0,0} @@ -277,16 +283,16 @@ void sq_base_register(HSQUIRRELVM v) sq_createslot(v,-3); i++; } - sq_pushstring(v,_SC("_version_"),-1); + sq_pushstring(v,"_version_",-1); sq_pushstring(v,SQUIRREL_VERSION,-1); sq_createslot(v,-3); - sq_pushstring(v,_SC("_charsize_"),-1); + sq_pushstring(v,"_charsize_",-1); sq_pushinteger(v,sizeof(SQChar)); sq_createslot(v,-3); - sq_pushstring(v,_SC("_intsize_"),-1); + sq_pushstring(v,"_intsize_",-1); sq_pushinteger(v,sizeof(SQInteger)); sq_createslot(v,-3); - sq_pushstring(v,_SC("_floatsize_"),-1); + sq_pushstring(v,"_floatsize_",-1); sq_pushinteger(v,sizeof(SQFloat)); sq_createslot(v,-3); sq_pop(v,1); @@ -308,7 +314,7 @@ static SQInteger default_delegate_tofloat(HSQUIRRELVM v) v->Push(SQObjectPtr(tofloat(res))); break; }} - return sq_throwerror(v, _SC("cannot convert the string")); + return sq_throwerror(v, "cannot convert the string"); break; case OT_INTEGER:case OT_FLOAT: v->Push(SQObjectPtr(tofloat(o))); @@ -333,7 +339,7 @@ static SQInteger default_delegate_tointeger(HSQUIRRELVM v) v->Push(SQObjectPtr(tointeger(res))); break; }} - return sq_throwerror(v, _SC("cannot convert the string")); + return sq_throwerror(v, "cannot convert the string"); break; case OT_INTEGER:case OT_FLOAT: v->Push(SQObjectPtr(tointeger(o))); @@ -409,14 +415,14 @@ static SQInteger table_rawget(HSQUIRRELVM v) SQRegFunction SQSharedState::_table_default_delegate_funcz[]={ - {_SC("len"),default_delegate_len,1, _SC("t")}, - {_SC("rawget"),table_rawget,2, _SC("t")}, - {_SC("rawset"),table_rawset,3, _SC("t")}, - {_SC("rawdelete"),table_rawdelete,2, _SC("t")}, - {_SC("rawin"),container_rawexists,2, _SC("t")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, - {_SC("clear"),obj_clear,1, _SC(".")}, + {"len",default_delegate_len,1, "t"}, + {"rawget",table_rawget,2, "t"}, + {"rawset",table_rawset,3, "t"}, + {"rawdelete",table_rawdelete,2, "t"}, + {"rawin",container_rawexists,2, "t"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, + {"clear",obj_clear,1, "."}, {0,0,0,0} }; @@ -450,7 +456,7 @@ static SQInteger array_top(HSQUIRRELVM v) v->Push(_array(o)->Top()); return 1; } - else return sq_throwerror(v,_SC("top() on a empty array")); + else return sq_throwerror(v,"top() on a empty array"); } static SQInteger array_insert(HSQUIRRELVM v) @@ -459,7 +465,7 @@ static SQInteger array_insert(HSQUIRRELVM v) SQObject &idx=stack_get(v,2); SQObject &val=stack_get(v,3); if(!_array(o)->Insert(tointeger(idx),val)) - return sq_throwerror(v,_SC("index out of range")); + return sq_throwerror(v,"index out of range"); return 0; } @@ -467,14 +473,14 @@ static SQInteger array_remove(HSQUIRRELVM v) { SQObject &o = stack_get(v, 1); SQObject &idx = stack_get(v, 2); - if(!sq_isnumeric(idx)) return sq_throwerror(v, _SC("wrong type")); + if(!sq_isnumeric(idx)) return sq_throwerror(v, "wrong type"); SQObjectPtr val; if(_array(o)->Get(tointeger(idx), val)) { _array(o)->Remove(tointeger(idx)); v->Push(val); return 1; } - return sq_throwerror(v, _SC("idx out of range")); + return sq_throwerror(v, "idx out of range"); } static SQInteger array_resize(HSQUIRRELVM v) @@ -488,7 +494,7 @@ static SQInteger array_resize(HSQUIRRELVM v) _array(o)->Resize(tointeger(nsize),fill); return 0; } - return sq_throwerror(v, _SC("size must be a number")); + return sq_throwerror(v, "size must be a number"); } @@ -505,11 +511,11 @@ bool _sort_compare(HSQUIRRELVM v,SQObjectPtr &a,SQObjectPtr &b,SQInteger func,SQ v->Push(b); if(SQ_FAILED(sq_call(v, 3, SQTrue, SQFalse))) { if(!sq_isstring( v->_lasterror)) - v->Raise_Error(_SC("compare func failed")); + v->Raise_Error("compare func failed"); return false; } if(SQ_FAILED(sq_getinteger(v, -1, &ret))) { - v->Raise_Error(_SC("numeric value expected as return value of the compare function")); + v->Raise_Error("numeric value expected as return value of the compare function"); return false; } sq_settop(v, top); @@ -545,7 +551,7 @@ bool _hsort_sift_down(HSQUIRRELVM v,SQArray *arr, SQInteger root, SQInteger bott return false; if (ret < 0) { if (root == maxChild) { - v->Raise_Error(_SC("inconsistent compare function")); + v->Raise_Error("inconsistent compare function"); return false; // We'd be swapping ourselve. The compare function is incorrect } _Swap(arr->_values[root],arr->_values[maxChild]); @@ -596,8 +602,8 @@ static SQInteger array_slice(HSQUIRRELVM v) SQInteger alen = _array(o)->Size(); if(sidx < 0)sidx = alen + sidx; if(eidx < 0)eidx = alen + eidx; - if(eidx < sidx)return sq_throwerror(v,_SC("wrong indexes")); - if(eidx > alen)return sq_throwerror(v,_SC("slice out of range")); + if(eidx < sidx)return sq_throwerror(v,"wrong indexes"); + if(eidx > alen)return sq_throwerror(v,"slice out of range"); SQArray *arr=SQArray::Create(_ss(v),eidx-sidx); SQObjectPtr t; SQInteger count=0; @@ -611,21 +617,21 @@ static SQInteger array_slice(HSQUIRRELVM v) } SQRegFunction SQSharedState::_array_default_delegate_funcz[]={ - {_SC("len"),default_delegate_len,1, _SC("a")}, - {_SC("append"),array_append,2, _SC("a")}, - {_SC("extend"),array_extend,2, _SC("aa")}, - {_SC("push"),array_append,2, _SC("a")}, - {_SC("pop"),array_pop,1, _SC("a")}, - {_SC("top"),array_top,1, _SC("a")}, - {_SC("insert"),array_insert,3, _SC("an")}, - {_SC("remove"),array_remove,2, _SC("an")}, - {_SC("resize"),array_resize,-2, _SC("an")}, - {_SC("reverse"),array_reverse,1, _SC("a")}, - {_SC("sort"),array_sort,-1, _SC("ac")}, - {_SC("slice"),array_slice,-1, _SC("ann")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, - {_SC("clear"),obj_clear,1, _SC(".")}, + {"len",default_delegate_len,1, "a"}, + {"append",array_append,2, "a"}, + {"extend",array_extend,2, "aa"}, + {"push",array_append,2, "a"}, + {"pop",array_pop,1, "a"}, + {"top",array_top,1, "a"}, + {"insert",array_insert,3, "an"}, + {"remove",array_remove,2, "an"}, + {"resize",array_resize,-2, "an"}, + {"reverse",array_reverse,1, "a"}, + {"sort",array_sort,-1, "ac"}, + {"slice",array_slice,-1, "ann"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, + {"clear",obj_clear,1, "."}, {0,0,0,0} }; @@ -638,8 +644,8 @@ static SQInteger string_slice(HSQUIRRELVM v) SQInteger slen = _string(o)->_len; if(sidx < 0)sidx = slen + sidx; if(eidx < 0)eidx = slen + eidx; - if(eidx < sidx) return sq_throwerror(v,_SC("wrong indexes")); - if(eidx > slen) return sq_throwerror(v,_SC("slice out of range")); + if(eidx < sidx) return sq_throwerror(v,"wrong indexes"); + if(eidx > slen) return sq_throwerror(v,"slice out of range"); v->Push(SQString::Create(_ss(v),&_stringval(o)[sidx],eidx-sidx)); return 1; } @@ -651,7 +657,7 @@ static SQInteger string_find(HSQUIRRELVM v) if(((top=sq_gettop(v))>1) && SQ_SUCCEEDED(sq_getstring(v,1,&str)) && SQ_SUCCEEDED(sq_getstring(v,2,&substr))){ if(top>2)sq_getinteger(v,3,&start_idx); if((sq_getsize(v,1)>start_idx) && (start_idx>=0)){ - ret=scstrstr(&str[start_idx],substr); + ret=strstr(&str[start_idx],substr); if(ret){ sq_pushinteger(v,(SQInteger)(ret-str)); return 1; @@ -659,7 +665,7 @@ static SQInteger string_find(HSQUIRRELVM v) } return 0; } - return sq_throwerror(v,_SC("invalid param")); + return sq_throwerror(v,"invalid param"); } #define STRING_TOFUNCZ(func) static SQInteger string_##func(HSQUIRRELVM v) \ @@ -667,7 +673,7 @@ static SQInteger string_find(HSQUIRRELVM v) SQObject str=stack_get(v,1); \ SQInteger len=_string(str)->_len; \ const SQChar *sThis=_stringval(str); \ - SQChar *sNew=(_ss(v)->GetScratchPad(rsl(len))); \ + SQChar *sNew=(_ss(v)->GetScratchPad(len)); \ for(SQInteger i=0;iPush(SQString::Create(_ss(v),sNew,len)); \ return 1; \ @@ -678,25 +684,25 @@ STRING_TOFUNCZ(tolower) STRING_TOFUNCZ(toupper) SQRegFunction SQSharedState::_string_default_delegate_funcz[]={ - {_SC("len"),default_delegate_len,1, _SC("s")}, - {_SC("tointeger"),default_delegate_tointeger,1, _SC("s")}, - {_SC("tofloat"),default_delegate_tofloat,1, _SC("s")}, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, - {_SC("slice"),string_slice,-1, _SC(" s n n")}, - {_SC("find"),string_find,-2, _SC("s s n ")}, - {_SC("tolower"),string_tolower,1, _SC("s")}, - {_SC("toupper"),string_toupper,1, _SC("s")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, + {"len",default_delegate_len,1, "s"}, + {"tointeger",default_delegate_tointeger,1, "s"}, + {"tofloat",default_delegate_tofloat,1, "s"}, + {"tostring",default_delegate_tostring,1, "."}, + {"slice",string_slice,-1, " s n n"}, + {"find",string_find,-2, "s s n "}, + {"tolower",string_tolower,1, "s"}, + {"toupper",string_toupper,1, "s"}, + {"weakref",obj_delegate_weakref,1, NULL }, {0,0,0,0} }; //INTEGER DEFAULT DELEGATE////////////////////////// SQRegFunction SQSharedState::_number_default_delegate_funcz[]={ - {_SC("tointeger"),default_delegate_tointeger,1, _SC("n|b")}, - {_SC("tofloat"),default_delegate_tofloat,1, _SC("n|b")}, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, - {_SC("tochar"),number_delegate_tochar,1, _SC("n|b")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, + {"tointeger",default_delegate_tointeger,1, "n|b"}, + {"tofloat",default_delegate_tofloat,1, "n|b"}, + {"tostring",default_delegate_tostring,1, "."}, + {"tochar",number_delegate_tochar,1, "n|b"}, + {"weakref",obj_delegate_weakref,1, NULL }, {0,0,0,0} }; @@ -748,19 +754,19 @@ static SQInteger closure_getinfos(HSQUIRRELVM v) { _array(params)->Set((SQInteger)n,f->_parameters[n]); } if(f->_varparams) { - _array(params)->Set(nparams-1,SQString::Create(_ss(v),_SC("..."),-1)); + _array(params)->Set(nparams-1,SQString::Create(_ss(v),"...",-1)); } - res->NewSlot(SQString::Create(_ss(v),_SC("native"),-1),false); - res->NewSlot(SQString::Create(_ss(v),_SC("name"),-1),f->_name); - res->NewSlot(SQString::Create(_ss(v),_SC("src"),-1),f->_sourcename); - res->NewSlot(SQString::Create(_ss(v),_SC("parameters"),-1),params); - res->NewSlot(SQString::Create(_ss(v),_SC("varargs"),-1),f->_varparams); + res->NewSlot(SQString::Create(_ss(v),"native",-1),false); + res->NewSlot(SQString::Create(_ss(v),"name",-1),f->_name); + res->NewSlot(SQString::Create(_ss(v),"src",-1),f->_sourcename); + res->NewSlot(SQString::Create(_ss(v),"parameters",-1),params); + res->NewSlot(SQString::Create(_ss(v),"varargs",-1),f->_varparams); } else { //OT_NATIVECLOSURE SQNativeClosure *nc = _nativeclosure(o); - res->NewSlot(SQString::Create(_ss(v),_SC("native"),-1),true); - res->NewSlot(SQString::Create(_ss(v),_SC("name"),-1),nc->_name); - res->NewSlot(SQString::Create(_ss(v),_SC("paramscheck"),-1),nc->_nparamscheck); + res->NewSlot(SQString::Create(_ss(v),"native",-1),true); + res->NewSlot(SQString::Create(_ss(v),"name",-1),nc->_name); + res->NewSlot(SQString::Create(_ss(v),"paramscheck",-1),nc->_nparamscheck); SQObjectPtr typecheck; if(nc->_typecheck.size() > 0) { typecheck = @@ -769,7 +775,7 @@ static SQInteger closure_getinfos(HSQUIRRELVM v) { _array(typecheck)->Set((SQInteger)n,nc->_typecheck[n]); } } - res->NewSlot(SQString::Create(_ss(v),_SC("typecheck"),-1),typecheck); + res->NewSlot(SQString::Create(_ss(v),"typecheck",-1),typecheck); } v->Push(res); return 1; @@ -777,14 +783,14 @@ static SQInteger closure_getinfos(HSQUIRRELVM v) { SQRegFunction SQSharedState::_closure_default_delegate_funcz[]={ - {_SC("call"),closure_call,-1, _SC("c")}, - {_SC("pcall"),closure_pcall,-1, _SC("c")}, - {_SC("acall"),closure_acall,2, _SC("ca")}, - {_SC("pacall"),closure_pacall,2, _SC("ca")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, - {_SC("bindenv"),closure_bindenv,2, _SC("c x|y|t")}, - {_SC("getinfos"),closure_getinfos,1, _SC("c")}, + {"call",closure_call,-1, "c"}, + {"pcall",closure_pcall,-1, "c"}, + {"acall",closure_acall,2, "ca"}, + {"pacall",closure_pacall,2, "ca"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, + {"bindenv",closure_bindenv,2, "c x|y|t"}, + {"getinfos",closure_getinfos,1, "c"}, {0,0,0,0} }; @@ -793,17 +799,17 @@ static SQInteger generator_getstatus(HSQUIRRELVM v) { SQObject &o=stack_get(v,1); switch(_generator(o)->_state){ - case SQGenerator::eSuspended:v->Push(SQString::Create(_ss(v),_SC("suspended")));break; - case SQGenerator::eRunning:v->Push(SQString::Create(_ss(v),_SC("running")));break; - case SQGenerator::eDead:v->Push(SQString::Create(_ss(v),_SC("dead")));break; + case SQGenerator::eSuspended:v->Push(SQString::Create(_ss(v),"suspended"));break; + case SQGenerator::eRunning:v->Push(SQString::Create(_ss(v),"running"));break; + case SQGenerator::eDead:v->Push(SQString::Create(_ss(v),"dead"));break; } return 1; } SQRegFunction SQSharedState::_generator_default_delegate_funcz[]={ - {_SC("getstatus"),generator_getstatus,1, _SC("g")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, + {"getstatus",generator_getstatus,1, "g"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, {0,0,0,0} }; @@ -826,7 +832,7 @@ static SQInteger thread_call(HSQUIRRELVM v) v->_lasterror = _thread(o)->_lasterror; return SQ_ERROR; } - return sq_throwerror(v,_SC("wrong parameter")); + return sq_throwerror(v,"wrong parameter"); } static SQInteger thread_wakeup(HSQUIRRELVM v) @@ -838,10 +844,10 @@ static SQInteger thread_wakeup(HSQUIRRELVM v) if(state != SQ_VMSTATE_SUSPENDED) { switch(state) { case SQ_VMSTATE_IDLE: - return sq_throwerror(v,_SC("cannot wakeup a idle thread")); + return sq_throwerror(v,"cannot wakeup a idle thread"); break; case SQ_VMSTATE_RUNNING: - return sq_throwerror(v,_SC("cannot wakeup a running thread")); + return sq_throwerror(v,"cannot wakeup a running thread"); break; } } @@ -862,7 +868,7 @@ static SQInteger thread_wakeup(HSQUIRRELVM v) v->_lasterror = thread->_lasterror; return SQ_ERROR; } - return sq_throwerror(v,_SC("wrong parameter")); + return sq_throwerror(v,"wrong parameter"); } static SQInteger thread_getstatus(HSQUIRRELVM v) @@ -870,26 +876,26 @@ static SQInteger thread_getstatus(HSQUIRRELVM v) SQObjectPtr &o = stack_get(v,1); switch(sq_getvmstate(_thread(o))) { case SQ_VMSTATE_IDLE: - sq_pushstring(v,_SC("idle"),-1); + sq_pushstring(v,"idle",-1); break; case SQ_VMSTATE_RUNNING: - sq_pushstring(v,_SC("running"),-1); + sq_pushstring(v,"running",-1); break; case SQ_VMSTATE_SUSPENDED: - sq_pushstring(v,_SC("suspended"),-1); + sq_pushstring(v,"suspended",-1); break; default: - return sq_throwerror(v,_SC("internal VM error")); + return sq_throwerror(v,"internal VM error"); } return 1; } SQRegFunction SQSharedState::_thread_default_delegate_funcz[] = { - {_SC("call"), thread_call, -1, _SC("v")}, - {_SC("wakeup"), thread_wakeup, -1, _SC("v")}, - {_SC("getstatus"), thread_getstatus, 1, _SC("v")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, + {"call", thread_call, -1, "v"}, + {"wakeup", thread_wakeup, -1, "v"}, + {"getstatus", thread_getstatus, 1, "v"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, {0,0,0,0}, }; @@ -915,12 +921,12 @@ static SQInteger class_instance(HSQUIRRELVM v) } SQRegFunction SQSharedState::_class_default_delegate_funcz[] = { - {_SC("getattributes"), class_getattributes, 2, _SC("y.")}, - {_SC("setattributes"), class_setattributes, 3, _SC("y..")}, - {_SC("rawin"),container_rawexists,2, _SC("y")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, - {_SC("instance"),class_instance,1, _SC("y")}, + {"getattributes", class_getattributes, 2, "y."}, + {"setattributes", class_setattributes, 3, "y.."}, + {"rawin",container_rawexists,2, "y"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, + {"instance",class_instance,1, "y"}, {0,0,0,0} }; @@ -932,10 +938,10 @@ static SQInteger instance_getclass(HSQUIRRELVM v) } SQRegFunction SQSharedState::_instance_default_delegate_funcz[] = { - {_SC("getclass"), instance_getclass, 1, _SC("x")}, - {_SC("rawin"),container_rawexists,2, _SC("x")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, + {"getclass", instance_getclass, 1, "x"}, + {"rawin",container_rawexists,2, "x"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, {0,0,0,0} }; @@ -947,9 +953,9 @@ static SQInteger weakref_ref(HSQUIRRELVM v) } SQRegFunction SQSharedState::_weakref_default_delegate_funcz[] = { - {_SC("ref"),weakref_ref,1, _SC("r")}, - {_SC("weakref"),obj_delegate_weakref,1, NULL }, - {_SC("tostring"),default_delegate_tostring,1, _SC(".")}, + {"ref",weakref_ref,1, "r"}, + {"weakref",obj_delegate_weakref,1, NULL }, + {"tostring",default_delegate_tostring,1, "."}, {0,0,0,0} }; diff --git a/src/3rdparty/squirrel/squirrel/sqclass.cpp b/src/3rdparty/squirrel/squirrel/sqclass.cpp index 73c8848b5b..aa1bca0443 100644 --- a/src/3rdparty/squirrel/squirrel/sqclass.cpp +++ b/src/3rdparty/squirrel/squirrel/sqclass.cpp @@ -1,12 +1,17 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include "sqpcheader.h" #include "sqvm.h" #include "sqtable.h" #include "sqclass.h" #include "sqclosure.h" +#include "../../../safeguards.h" + SQClass::SQClass(SQSharedState *ss,SQClass *base) { _base = base; diff --git a/src/3rdparty/squirrel/squirrel/sqclosure.h b/src/3rdparty/squirrel/squirrel/sqclosure.h index f872f2b8d3..a42dcd575a 100644 --- a/src/3rdparty/squirrel/squirrel/sqclosure.h +++ b/src/3rdparty/squirrel/squirrel/sqclosure.h @@ -80,7 +80,7 @@ public: struct SQNativeClosure : public CHAINABLE_OBJ { private: - SQNativeClosure(SQSharedState *ss,SQFUNCTION func){_function=func;INIT_CHAIN();ADD_TO_CHAIN(&_ss(this)->_gc_chain,this); } + SQNativeClosure(SQSharedState *ss,SQFUNCTION func) : _nparamscheck(0) {_function=func;INIT_CHAIN();ADD_TO_CHAIN(&_ss(this)->_gc_chain,this); } public: static SQNativeClosure *Create(SQSharedState *ss,SQFUNCTION func) { diff --git a/src/3rdparty/squirrel/squirrel/sqcompiler.cpp b/src/3rdparty/squirrel/squirrel/sqcompiler.cpp index b9eace1c63..ace9d201e9 100644 --- a/src/3rdparty/squirrel/squirrel/sqcompiler.cpp +++ b/src/3rdparty/squirrel/squirrel/sqcompiler.cpp @@ -1,6 +1,9 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include #include "sqpcheader.h" #include @@ -13,6 +16,10 @@ #include "sqvm.h" #include "sqtable.h" +#include "../../../string_func.h" + +#include "../../../safeguards.h" + #define DEREF_NO_DEREF -1 #define DEREF_FIELD -2 @@ -50,23 +57,22 @@ typedef sqvector ExpStateVec; class SQCompiler { public: - SQCompiler(SQVM *v, SQLEXREADFUNC rg, SQUserPointer up, const SQChar* sourcename, bool raiseerror, bool lineinfo) + SQCompiler(SQVM *v, SQLEXREADFUNC rg, SQUserPointer up, const SQChar* sourcename, bool raiseerror, bool lineinfo) : _token(0), _fs(NULL), _lex(_ss(v), rg, up, ThrowError, this), _debugline(0), _debugop(0) { _vm=v; - _lex.Init(_ss(v), rg, up,ThrowError,this); _sourcename = SQString::Create(_ss(v), sourcename); _lineinfo = lineinfo;_raiseerror = raiseerror; } - static void ThrowError(void *ud, const SQChar *s) { + NORETURN static void ThrowError(void *ud, const SQChar *s) { SQCompiler *c = (SQCompiler *)ud; c->Error(s); } - void Error(const SQChar *s, ...) + NORETURN void Error(const SQChar *s, ...) { static SQChar temp[256]; va_list vl; va_start(vl, s); - scvsprintf(temp, s, vl); + vseprintf(temp, lastof(temp), s, vl); va_end(vl); throw temp; } @@ -75,7 +81,7 @@ public: bool IsDerefToken(SQInteger tok) { switch(tok){ - case _SC('='): case _SC('('): case TK_NEWSLOT: + case '=': case '(': case TK_NEWSLOT: case TK_MODEQ: case TK_MULEQ: case TK_DIVEQ: case TK_MINUSEQ: case TK_PLUSEQ: case TK_PLUSPLUS: case TK_MINUSMINUS: return true; } return false; @@ -91,7 +97,7 @@ public: if(_token != tok) { if(_token == TK_CONSTRUCTOR && tok == TK_IDENTIFIER) { - //ret = SQString::Create(_ss(_vm),_SC("constructor")); + //ret = SQString::Create(_ss(_vm),"constructor"); //do nothing } else { @@ -100,23 +106,23 @@ public: switch(tok) { case TK_IDENTIFIER: - etypename = _SC("IDENTIFIER"); + etypename = "IDENTIFIER"; break; case TK_STRING_LITERAL: - etypename = _SC("STRING_LITERAL"); + etypename = "STRING_LITERAL"; break; case TK_INTEGER: - etypename = _SC("INTEGER"); + etypename = "INTEGER"; break; case TK_FLOAT: - etypename = _SC("FLOAT"); + etypename = "FLOAT"; break; default: etypename = _lex.Tok2Str(tok); } - Error(_SC("expected '%s'"), etypename); + Error("expected '%s'", etypename); } - Error(_SC("expected '%c'"), tok); + Error("expected '%c'", tok); } } SQObjectPtr ret; @@ -138,12 +144,12 @@ public: Lex(); return ret; } - bool IsEndOfStatement() { return ((_lex._prevtoken == _SC('\n')) || (_token == SQUIRREL_EOB) || (_token == _SC('}')) || (_token == _SC(';'))); } + bool IsEndOfStatement() { return ((_lex._prevtoken == '\n') || (_token == SQUIRREL_EOB) || (_token == '}') || (_token == ';')); } void OptionalSemicolon() { - if(_token == _SC(';')) { Lex(); return; } + if(_token == ';') { Lex(); return; } if(!IsEndOfStatement()) { - Error(_SC("end of statement expected (; or lf)")); + Error("end of statement expected (; or lf)"); } } void MoveIfCurrentTargetIsLocal() { @@ -159,16 +165,16 @@ public: _debugop = 0; SQFuncState funcstate(_ss(_vm), NULL,ThrowError,this); - funcstate._name = SQString::Create(_ss(_vm), _SC("main")); + funcstate._name = SQString::Create(_ss(_vm), "main"); _fs = &funcstate; - _fs->AddParameter(_fs->CreateString(_SC("this"))); + _fs->AddParameter(_fs->CreateString("this")); _fs->_sourcename = _sourcename; SQInteger stacksize = _fs->GetStackSize(); try { Lex(); while(_token > 0){ Statement(); - if(_lex._prevtoken != _SC('}')) OptionalSemicolon(); + if(_lex._prevtoken != '}') OptionalSemicolon(); } CleanStack(stacksize); _fs->AddLineInfos(_lex._currentline, _lineinfo, true); @@ -182,7 +188,7 @@ public: } catch (SQChar *compilererror) { if(_raiseerror && _ss(_vm)->_compilererrorhandler) { - _ss(_vm)->_compilererrorhandler(_vm, compilererror, type(_sourcename) == OT_STRING?_stringval(_sourcename):_SC("unknown"), + _ss(_vm)->_compilererrorhandler(_vm, compilererror, type(_sourcename) == OT_STRING?_stringval(_sourcename):"unknown", _lex._currentline, _lex._currentcolumn); } _vm->_lasterror = SQString::Create(_ss(_vm), compilererror, -1); @@ -191,16 +197,16 @@ public: } void Statements() { - while(_token != _SC('}') && _token != TK_DEFAULT && _token != TK_CASE) { + while(_token != '}' && _token != TK_DEFAULT && _token != TK_CASE) { Statement(); - if(_lex._prevtoken != _SC('}') && _lex._prevtoken != _SC(';')) OptionalSemicolon(); + if(_lex._prevtoken != '}' && _lex._prevtoken != ';') OptionalSemicolon(); } } void Statement() { _fs->AddLineInfos(_lex._currentline, _lineinfo); switch(_token){ - case _SC(';'): Lex(); break; + case ';': Lex(); break; case TK_IF: IfStatement(); break; case TK_WHILE: WhileStatement(); break; case TK_DO: DoWhileStatement(); break; @@ -236,7 +242,7 @@ public: } break;} case TK_BREAK: - if(_fs->_breaktargets.size() <= 0)Error(_SC("'break' has to be in a loop block")); + if(_fs->_breaktargets.size() <= 0)Error("'break' has to be in a loop block"); if(_fs->_breaktargets.top() > 0){ _fs->AddInstruction(_OP_POPTRAP, _fs->_breaktargets.top(), 0); } @@ -246,7 +252,7 @@ public: Lex(); break; case TK_CONTINUE: - if(_fs->_continuetargets.size() <= 0)Error(_SC("'continue' has to be in a loop block")); + if(_fs->_continuetargets.size() <= 0)Error("'continue' has to be in a loop block"); if(_fs->_continuetargets.top() > 0) { _fs->AddInstruction(_OP_POPTRAP, _fs->_continuetargets.top(), 0); } @@ -264,11 +270,11 @@ public: case TK_ENUM: EnumStatement(); break; - case _SC('{'):{ + case '{':{ SQInteger stacksize = _fs->GetStackSize(); Lex(); Statements(); - Expect(_SC('}')); + Expect('}'); _fs->AddInstruction(_OP_SCOPE_END, stacksize, _fs->GetStackSize()); _fs->SetStackSize(stacksize); } @@ -348,7 +354,7 @@ public: _exst._funcarg = funcarg; LogicalOrExp(); switch(_token) { - case _SC('='): + case '=': case TK_NEWSLOT: case TK_MINUSEQ: case TK_PLUSEQ: @@ -359,19 +365,19 @@ public: SQInteger op = _token; SQInteger ds = _exst._deref; bool freevar = _exst._freevar; - if(ds == DEREF_NO_DEREF) Error(_SC("can't assign expression")); + if(ds == DEREF_NO_DEREF) Error("can't assign expression"); Lex(); Expression(); switch(op){ case TK_NEWSLOT: - if(freevar) Error(_SC("free variables cannot be modified")); + if(freevar) Error("free variables cannot be modified"); if(ds == DEREF_FIELD) EmitDerefOp(_OP_NEWSLOT); else //if _derefstate != DEREF_NO_DEREF && DEREF_FIELD so is the index of a local - Error(_SC("can't 'create' a local slot")); + Error("can't 'create' a local slot"); break; - case _SC('='): //ASSIGN - if(freevar) Error(_SC("free variables cannot be modified")); + case '=': //ASSIGN + if(freevar) Error("free variables cannot be modified"); if(ds == DEREF_FIELD) EmitDerefOp(_OP_SET); else {//if _derefstate != DEREF_NO_DEREF && DEREF_FIELD so is the index of a local @@ -390,7 +396,7 @@ public: } } break; - case _SC('?'): { + case '?': { Lex(); _fs->AddInstruction(_OP_JZ, _fs->PopTarget()); SQInteger jzpos = _fs->GetCurrentPos(); @@ -400,7 +406,7 @@ public: if(trg != first_exp) _fs->AddInstruction(_OP_MOVE, trg, first_exp); SQInteger endfirstexp = _fs->GetCurrentPos(); _fs->AddInstruction(_OP_JMP, 0, 0); - Expect(_SC(':')); + Expect(':'); SQInteger jmppos = _fs->GetCurrentPos(); Expression(); SQInteger second_exp = _fs->PopTarget(); @@ -422,7 +428,7 @@ public: void LogicalOrExp() { LogicalAndExp(); - for(;;) if(_token == TK_OR) { + if(_token == TK_OR) { SQInteger first_exp = _fs->PopTarget(); SQInteger trg = _fs->PushTarget(); _fs->AddInstruction(_OP_OR, trg, 0, first_exp, 0); @@ -434,8 +440,7 @@ public: if(trg != second_exp) _fs->AddInstruction(_OP_MOVE, trg, second_exp); _fs->SnoozeOpt(); _fs->SetIntructionParam(jpos, 1, (_fs->GetCurrentPos() - jpos)); - break; - }else return; + } } void LogicalAndExp() { @@ -464,21 +469,21 @@ public: void BitwiseOrExp() { BitwiseXorExp(); - for(;;) if(_token == _SC('|')) + for(;;) if(_token == '|') {BIN_EXP(_OP_BITW, &SQCompiler::BitwiseXorExp,BW_OR); }else return; } void BitwiseXorExp() { BitwiseAndExp(); - for(;;) if(_token == _SC('^')) + for(;;) if(_token == '^') {BIN_EXP(_OP_BITW, &SQCompiler::BitwiseAndExp,BW_XOR); }else return; } void BitwiseAndExp() { CompExp(); - for(;;) if(_token == _SC('&')) + for(;;) if(_token == '&') {BIN_EXP(_OP_BITW, &SQCompiler::CompExp,BW_AND); }else return; } @@ -487,8 +492,8 @@ public: ShiftExp(); for(;;) switch(_token) { case TK_EQ: BIN_EXP(_OP_EQ, &SQCompiler::ShiftExp); break; - case _SC('>'): BIN_EXP(_OP_CMP, &SQCompiler::ShiftExp,CMP_G); break; - case _SC('<'): BIN_EXP(_OP_CMP, &SQCompiler::ShiftExp,CMP_L); break; + case '>': BIN_EXP(_OP_CMP, &SQCompiler::ShiftExp,CMP_G); break; + case '<': BIN_EXP(_OP_CMP, &SQCompiler::ShiftExp,CMP_L); break; case TK_GE: BIN_EXP(_OP_CMP, &SQCompiler::ShiftExp,CMP_GE); break; case TK_LE: BIN_EXP(_OP_CMP, &SQCompiler::ShiftExp,CMP_LE); break; case TK_NE: BIN_EXP(_OP_NE, &SQCompiler::ShiftExp); break; @@ -509,7 +514,7 @@ public: { MultExp(); for(;;) switch(_token) { - case _SC('+'): case _SC('-'): + case '+': case '-': BIN_EXP(_OP_ARITH, &SQCompiler::MultExp,_token); break; default: return; } @@ -519,7 +524,7 @@ public: { PrefixedExpr(); for(;;) switch(_token) { - case _SC('*'): case _SC('/'): case _SC('%'): + case '*': case '/': case '%': BIN_EXP(_OP_ARITH, &SQCompiler::PrefixedExpr,_token); break; default: return; } @@ -531,13 +536,13 @@ public: for(;;) { switch(_token) { - case _SC('.'): { + case '.': { pos = -1; Lex(); if(_token == TK_PARENT) { Lex(); if(!NeedGet()) - Error(_SC("parent cannot be set")); + Error("parent cannot be set"); SQInteger src = _fs->PopTarget(); _fs->AddInstruction(_OP_GETPARENT, _fs->PushTarget(), src); } @@ -549,9 +554,9 @@ public: _exst._freevar = false; } break; - case _SC('['): - if(_lex._prevtoken == _SC('\n')) Error(_SC("cannot brake deref/or comma needed after [exp]=exp slot declaration")); - Lex(); Expression(); Expect(_SC(']')); + case '[': + if(_lex._prevtoken == '\n') Error("cannot brake deref/or comma needed after [exp]=exp slot declaration"); + Lex(); Expression(); Expect(']'); pos = -1; if(NeedGet()) Emit2ArgsOP(_OP_GET); _exst._deref = DEREF_FIELD; @@ -571,7 +576,7 @@ public: } return; break; - case _SC('('): + case '(': { if(_exst._deref != DEREF_NO_DEREF) { if(pos<0) { @@ -609,9 +614,9 @@ public: break; case TK_VARGC: Lex(); _fs->AddInstruction(_OP_VARGC, _fs->PushTarget()); break; case TK_VARGV: { Lex(); - Expect(_SC('[')); + Expect('['); Expression(); - Expect(_SC(']')); + Expect(']'); SQInteger src = _fs->PopTarget(); _fs->AddInstruction(_OP_GETVARGV, _fs->PushTarget(), src); } @@ -624,8 +629,8 @@ public: SQObject constant; switch(_token) { case TK_IDENTIFIER: id = _fs->CreateString(_lex._svalue); break; - case TK_THIS: id = _fs->CreateString(_SC("this")); break; - case TK_CONSTRUCTOR: id = _fs->CreateString(_SC("constructor")); break; + case TK_THIS: id = _fs->CreateString("this"); break; + case TK_CONSTRUCTOR: id = _fs->CreateString("constructor"); break; } SQInteger pos = -1; Lex(); @@ -643,7 +648,7 @@ public: Expect('.'); constid = Expect(TK_IDENTIFIER); if(!_table(constant)->Get(constid,constval)) { constval.Null(); - Error(_SC("invalid constant [%s.%s]"), _stringval(id),_stringval(constid)); + Error("invalid constant [%s.%s]", _stringval(id),_stringval(constid)); } } else { @@ -683,7 +688,7 @@ public: case TK_DOUBLE_COLON: // "::" _fs->AddInstruction(_OP_LOADROOTTABLE, _fs->PushTarget()); _exst._deref = DEREF_FIELD; - _token = _SC('.'); //hack + _token = '.'; //hack return -1; break; case TK_NULL: @@ -713,13 +718,13 @@ public: _fs->AddInstruction(_OP_LOADBOOL, _fs->PushTarget(),_token == TK_TRUE?1:0); Lex(); break; - case _SC('['): { + case '[': { _fs->AddInstruction(_OP_NEWARRAY, _fs->PushTarget()); SQInteger apos = _fs->GetCurrentPos(),key = 0; Lex(); - while(_token != _SC(']')) { + while(_token != ']') { Expression(); - if(_token == _SC(',')) Lex(); + if(_token == ',') Lex(); SQInteger val = _fs->PopTarget(); SQInteger array = _fs->TopTarget(); _fs->AddInstruction(_OP_APPENDARRAY, array, val); @@ -729,16 +734,16 @@ public: Lex(); } break; - case _SC('{'):{ + case '{':{ _fs->AddInstruction(_OP_NEWTABLE, _fs->PushTarget()); - Lex();ParseTableOrClass(_SC(',')); + Lex();ParseTableOrClass(','); } break; case TK_FUNCTION: FunctionExp(_token);break; case TK_CLASS: Lex(); ClassExp();break; - case _SC('-'): UnaryOP(_OP_NEG); break; - case _SC('!'): UnaryOP(_OP_NOT); break; - case _SC('~'): UnaryOP(_OP_BWNOT); break; + case '-': UnaryOP(_OP_NEG); break; + case '!': UnaryOP(_OP_NOT); break; + case '~': UnaryOP(_OP_BWNOT); break; case TK_TYPEOF : UnaryOP(_OP_TYPEOF); break; case TK_RESUME : UnaryOP(_OP_RESUME); break; case TK_CLONE : UnaryOP(_OP_CLONE); break; @@ -746,9 +751,9 @@ public: case TK_PLUSPLUS :PrefixIncDec(_token); break; case TK_DELETE : DeleteExpr(); break; case TK_DELEGATE : DelegateExpr(); break; - case _SC('('): Lex(); CommaExpr(); Expect(_SC(')')); + case '(': Lex(); CommaExpr(); Expect(')'); break; - default: Error(_SC("expression expected")); + default: Error("expression expected"); } return -1; } @@ -761,23 +766,23 @@ public: bool NeedGet() { switch(_token) { - case _SC('='): case _SC('('): case TK_NEWSLOT: case TK_PLUSPLUS: case TK_MINUSMINUS: + case '=': case '(': case TK_NEWSLOT: case TK_PLUSPLUS: case TK_MINUSMINUS: case TK_PLUSEQ: case TK_MINUSEQ: case TK_MULEQ: case TK_DIVEQ: case TK_MODEQ: return false; } - return (!_exst._class_or_delete) || (_exst._class_or_delete && (_token == _SC('.') || _token == _SC('['))); + return (!_exst._class_or_delete) || (_exst._class_or_delete && (_token == '.' || _token == '[')); } void FunctionCallArgs() { SQInteger nargs = 1;//this - while(_token != _SC(')')) { + while(_token != ')') { Expression(true); MoveIfCurrentTargetIsLocal(); nargs++; - if(_token == _SC(',')){ + if(_token == ','){ Lex(); - if(_token == ')') Error(_SC("expression expected, found ')'")); + if(_token == ')') Error("expression expected, found ')'"); } } Lex(); @@ -810,20 +815,20 @@ public: case TK_CONSTRUCTOR:{ SQInteger tk = _token; Lex(); - SQObject id = tk == TK_FUNCTION ? Expect(TK_IDENTIFIER) : _fs->CreateString(_SC("constructor")); - Expect(_SC('(')); + SQObject id = tk == TK_FUNCTION ? Expect(TK_IDENTIFIER) : _fs->CreateString("constructor"); + Expect('('); _fs->AddInstruction(_OP_LOAD, _fs->PushTarget(), _fs->GetConstant(id)); CreateFunction(id); _fs->AddInstruction(_OP_CLOSURE, _fs->PushTarget(), _fs->_functions.size() - 1, 0); } break; - case _SC('['): - Lex(); CommaExpr(); Expect(_SC(']')); - Expect(_SC('=')); Expression(); + case '[': + Lex(); CommaExpr(); Expect(']'); + Expect('='); Expression(); break; default : _fs->AddInstruction(_OP_LOAD, _fs->PushTarget(), _fs->GetConstant(Expect(TK_IDENTIFIER))); - Expect(_SC('=')); Expression(); + Expect('='); Expression(); } if(_token == separator) Lex();//optional comma/semicolon @@ -837,7 +842,7 @@ public: _fs->AddInstruction(_OP_NEWSLOTA, flags, table, key, val); //_fs->PopTarget(); } - if(separator == _SC(',')) //hack recognizes a table from the separator + if(separator == ',') //hack recognizes a table from the separator _fs->SetIntructionParam(tpos, 1, nkeys); Lex(); } @@ -846,7 +851,7 @@ public: SQObject varname; do { Lex(); varname = Expect(TK_IDENTIFIER); - if(_token == _SC('=')) { + if(_token == '=') { Lex(); Expression(); SQInteger src = _fs->PopTarget(); SQInteger dest = _fs->PushTarget(); @@ -858,20 +863,20 @@ public: _fs->PopTarget(); _fs->PushLocalVariable(varname); - } while(_token == _SC(',')); + } while(_token == ','); } void IfStatement() { SQInteger jmppos; bool haselse = false; - Lex(); Expect(_SC('(')); CommaExpr(); Expect(_SC(')')); + Lex(); Expect('('); CommaExpr(); Expect(')'); _fs->AddInstruction(_OP_JZ, _fs->PopTarget()); SQInteger jnepos = _fs->GetCurrentPos(); SQInteger stacksize = _fs->GetStackSize(); Statement(); // - if(_token != _SC('}') && _token != TK_ELSE) OptionalSemicolon(); + if(_token != '}' && _token != TK_ELSE) OptionalSemicolon(); CleanStack(stacksize); SQInteger endifblock = _fs->GetCurrentPos(); @@ -892,7 +897,7 @@ public: SQInteger jzpos, jmppos; SQInteger stacksize = _fs->GetStackSize(); jmppos = _fs->GetCurrentPos(); - Lex(); Expect(_SC('(')); CommaExpr(); Expect(_SC(')')); + Lex(); Expect('('); CommaExpr(); Expect(')'); BEGIN_BREAKBLE_BLOCK(); _fs->AddInstruction(_OP_JZ, _fs->PopTarget()); @@ -920,7 +925,7 @@ public: _fs->AddLineInfos(_lex._currentline, _lineinfo, true); Expect(TK_WHILE); SQInteger continuetrg = _fs->GetCurrentPos(); - Expect(_SC('(')); CommaExpr(); Expect(_SC(')')); + Expect('('); CommaExpr(); Expect(')'); _fs->AddInstruction(_OP_JNZ, _fs->PopTarget(), jzpos - _fs->GetCurrentPos() - 1); END_BREAKBLE_BLOCK(continuetrg); } @@ -928,25 +933,25 @@ public: { Lex(); SQInteger stacksize = _fs->GetStackSize(); - Expect(_SC('(')); + Expect('('); if(_token == TK_LOCAL) LocalDeclStatement(); - else if(_token != _SC(';')){ + else if(_token != ';'){ CommaExpr(); _fs->PopTarget(); } - Expect(_SC(';')); + Expect(';'); _fs->SnoozeOpt(); SQInteger jmppos = _fs->GetCurrentPos(); SQInteger jzpos = -1; - if(_token != _SC(';')) { CommaExpr(); _fs->AddInstruction(_OP_JZ, _fs->PopTarget()); jzpos = _fs->GetCurrentPos(); } - Expect(_SC(';')); + if(_token != ';') { CommaExpr(); _fs->AddInstruction(_OP_JZ, _fs->PopTarget()); jzpos = _fs->GetCurrentPos(); } + Expect(';'); _fs->SnoozeOpt(); SQInteger expstart = _fs->GetCurrentPos() + 1; - if(_token != _SC(')')) { + if(_token != ')') { CommaExpr(); _fs->PopTarget(); } - Expect(_SC(')')); + Expect(')'); _fs->SnoozeOpt(); SQInteger expend = _fs->GetCurrentPos(); SQInteger expsize = (expend - expstart) + 1; @@ -973,20 +978,20 @@ public: void ForEachStatement() { SQObject idxname, valname; - Lex(); Expect(_SC('(')); valname = Expect(TK_IDENTIFIER); - if(_token == _SC(',')) { + Lex(); Expect('('); valname = Expect(TK_IDENTIFIER); + if(_token == ',') { idxname = valname; Lex(); valname = Expect(TK_IDENTIFIER); } else{ - idxname = _fs->CreateString(_SC("@INDEX@")); + idxname = _fs->CreateString("@INDEX@"); } Expect(TK_IN); //save the stack size SQInteger stacksize = _fs->GetStackSize(); //put the table in the stack(evaluate the table expression) - Expression(); Expect(_SC(')')); + Expression(); Expect(')'); SQInteger container = _fs->TopTarget(); //push the index local var SQInteger indexpos = _fs->PushLocalVariable(idxname); @@ -995,7 +1000,7 @@ public: SQInteger valuepos = _fs->PushLocalVariable(valname); _fs->AddInstruction(_OP_LOADNULLS, valuepos,1); //push reference index - SQInteger itrpos = _fs->PushLocalVariable(_fs->CreateString(_SC("@ITERATOR@"))); //use invalid id to make it inaccessible + SQInteger itrpos = _fs->PushLocalVariable(_fs->CreateString("@ITERATOR@")); //use invalid id to make it inaccessible _fs->AddInstruction(_OP_LOADNULLS, itrpos,1); SQInteger jmppos = _fs->GetCurrentPos(); _fs->AddInstruction(_OP_FOREACH, container, 0, indexpos); @@ -1014,8 +1019,8 @@ public: } void SwitchStatement() { - Lex(); Expect(_SC('(')); CommaExpr(); Expect(_SC(')')); - Expect(_SC('{')); + Lex(); Expect('('); CommaExpr(); Expect(')'); + Expect('{'); SQInteger expr = _fs->TopTarget(); bool bfirst = true; SQInteger tonextcondjmp = -1; @@ -1030,7 +1035,7 @@ public: _fs->SetIntructionParam(tonextcondjmp, 1, _fs->GetCurrentPos() - tonextcondjmp); } //condition - Lex(); Expression(); Expect(_SC(':')); + Lex(); Expression(); Expect(':'); SQInteger trg = _fs->PopTarget(); _fs->AddInstruction(_OP_EQ, trg, trg, expr); _fs->AddInstruction(_OP_JZ, trg, 0); @@ -1049,13 +1054,13 @@ public: _fs->SetIntructionParam(tonextcondjmp, 1, _fs->GetCurrentPos() - tonextcondjmp); if(_token == TK_DEFAULT) { // _fs->AddLineInfos(_lex._currentline, _lineinfo); - Lex(); Expect(_SC(':')); + Lex(); Expect(':'); SQInteger stacksize = _fs->GetStackSize(); _last_stacksize = _fs->GetStackSize(); Statements(); _fs->SetStackSize(stacksize); } - Expect(_SC('}')); + Expect('}'); _fs->PopTarget(); __nbreaks__ = _fs->_unresolvedbreaks.size() - __nbreaks__; if(__nbreaks__ > 0)ResolveBreaks(_fs, __nbreaks__); @@ -1076,7 +1081,7 @@ public: _fs->AddInstruction(_OP_LOAD, _fs->PushTarget(), _fs->GetConstant(id)); if(_token == TK_DOUBLE_COLON) Emit2ArgsOP(_OP_GET); } - Expect(_SC('(')); + Expect('('); CreateFunction(id); _fs->AddInstruction(_OP_CLOSURE, _fs->PushTarget(), _fs->_functions.size() - 1, 0); EmitDerefOp(_OP_NEWSLOT); @@ -1090,13 +1095,13 @@ public: _exst._funcarg = false; PrefixedExpr(); es = PopExpState(); - if(es._deref == DEREF_NO_DEREF) Error(_SC("invalid class name")); + if(es._deref == DEREF_NO_DEREF) Error("invalid class name"); if(es._deref == DEREF_FIELD) { ClassExp(); EmitDerefOp(_OP_NEWSLOT); _fs->PopTarget(); } - else Error(_SC("cannot create a class in a local with the syntax(class )")); + else Error("cannot create a class in a local with the syntax(class )"); } SQObject ExpectScalar() { @@ -1126,12 +1131,12 @@ public: val._unVal.fFloat = -_lex._fvalue; break; default: - Error(_SC("scalar expected : integer,float")); + Error("scalar expected : integer,float"); val._type = OT_NULL; // Silent compile-warning } break; default: - Error(_SC("scalar expected : integer,float or string")); + Error("scalar expected : integer,float or string"); val._type = OT_NULL; // Silent compile-warning } Lex(); @@ -1142,14 +1147,14 @@ public: Lex(); SQObject id = Expect(TK_IDENTIFIER); - Expect(_SC('{')); + Expect('{'); SQObject table = _fs->CreateTable(); SQInteger nval = 0; - while(_token != _SC('}')) { + while(_token != '}') { SQObject key = Expect(TK_IDENTIFIER); SQObject val; - if(_token == _SC('=')) { + if(_token == '=') { Lex(); val = ExpectScalar(); } @@ -1165,7 +1170,7 @@ public: /*SQObjectPtr dummy; if(enums->Get(strongid,dummy)) { dummy.Null(); strongid.Null(); - Error(_SC("enumeration already exists")); + Error("enumeration already exists"); }*/ enums->NewSlot(SQObjectPtr(strongid),SQObjectPtr(table)); strongid.Null(); @@ -1189,7 +1194,7 @@ public: _fs->AddInstruction(_OP_JMP, 0, 0); SQInteger jmppos = _fs->GetCurrentPos(); _fs->SetIntructionParam(trappos, 1, (_fs->GetCurrentPos() - trappos)); - Expect(TK_CATCH); Expect(_SC('(')); exid = Expect(TK_IDENTIFIER); Expect(_SC(')')); + Expect(TK_CATCH); Expect('('); exid = Expect(TK_IDENTIFIER); Expect(')'); SQInteger stacksize = _fs->GetStackSize(); SQInteger ex_target = _fs->PushLocalVariable(exid); _fs->SetIntructionParam(trappos, 0, ex_target); @@ -1199,7 +1204,7 @@ public: } void FunctionExp(SQInteger ftype) { - Lex(); Expect(_SC('(')); + Lex(); Expect('('); CreateFunction(_null_); _fs->AddInstruction(_OP_CLOSURE, _fs->PushTarget(), _fs->_functions.size() - 1, ftype == TK_FUNCTION?0:1); } @@ -1214,19 +1219,19 @@ public: if(_token == TK_ATTR_OPEN) { Lex(); _fs->AddInstruction(_OP_NEWTABLE, _fs->PushTarget()); - ParseTableOrClass(_SC(','),TK_ATTR_CLOSE); + ParseTableOrClass(',',TK_ATTR_CLOSE); attrs = _fs->TopTarget(); } - Expect(_SC('{')); + Expect('{'); if(attrs != -1) _fs->PopTarget(); if(base != -1) _fs->PopTarget(); _fs->AddInstruction(_OP_CLASS, _fs->PushTarget(), base, attrs); - ParseTableOrClass(_SC(';')); + ParseTableOrClass(';'); } void DelegateExpr() { Lex(); CommaExpr(); - Expect(_SC(':')); + Expect(':'); CommaExpr(); SQInteger table = _fs->PopTarget(), delegate = _fs->PopTarget(); _fs->AddInstruction(_OP_DELEGATE, _fs->PushTarget(), table, delegate); @@ -1239,9 +1244,9 @@ public: _exst._funcarg = false; PrefixedExpr(); es = PopExpState(); - if(es._deref == DEREF_NO_DEREF) Error(_SC("can't delete an expression")); + if(es._deref == DEREF_NO_DEREF) Error("can't delete an expression"); if(es._deref == DEREF_FIELD) Emit2ArgsOP(_OP_DELETE); - else Error(_SC("cannot delete a local")); + else Error("cannot delete a local"); } void PrefixIncDec(SQInteger token) { @@ -1263,46 +1268,46 @@ public: SQFuncState *funcstate = _fs->PushChildState(_ss(_vm)); funcstate->_name = name; SQObject paramname; - funcstate->AddParameter(_fs->CreateString(_SC("this"))); + funcstate->AddParameter(_fs->CreateString("this")); funcstate->_sourcename = _sourcename; SQInteger defparams = 0; - while(_token!=_SC(')')) { + while(_token!=')') { if(_token == TK_VARPARAMS) { - if(defparams > 0) Error(_SC("function with default parameters cannot have variable number of parameters")); + if(defparams > 0) Error("function with default parameters cannot have variable number of parameters"); funcstate->_varparams = true; Lex(); - if(_token != _SC(')')) Error(_SC("expected ')'")); + if(_token != ')') Error("expected ')'"); break; } else { paramname = Expect(TK_IDENTIFIER); funcstate->AddParameter(paramname); - if(_token == _SC('=')) { + if(_token == '=') { Lex(); Expression(); funcstate->AddDefaultParam(_fs->TopTarget()); defparams++; } else { - if(defparams > 0) Error(_SC("expected '='")); + if(defparams > 0) Error("expected '='"); } - if(_token == _SC(',')) Lex(); - else if(_token != _SC(')')) Error(_SC("expected ')' or ','")); + if(_token == ',') Lex(); + else if(_token != ')') Error("expected ')' or ','"); } } - Expect(_SC(')')); + Expect(')'); for(SQInteger n = 0; n < defparams; n++) { _fs->PopTarget(); } //outer values - if(_token == _SC(':')) { - Lex(); Expect(_SC('(')); - while(_token != _SC(')')) { + if(_token == ':') { + Lex(); Expect('('); + while(_token != ')') { paramname = Expect(TK_IDENTIFIER); //outers are treated as implicit local variables funcstate->AddOuterValue(paramname); - if(_token == _SC(',')) Lex(); - else if(_token != _SC(')')) Error(_SC("expected ')' or ','")); + if(_token == ',') Lex(); + else if(_token != ')') Error("expected ')' or ','"); } Lex(); } @@ -1310,7 +1315,7 @@ public: SQFuncState *currchunk = _fs; _fs = funcstate; Statement(); - funcstate->AddLineInfos(_lex._prevtoken == _SC('\n')?_lex._lasttokenline:_lex._currentline, _lineinfo, true); + funcstate->AddLineInfos(_lex._prevtoken == '\n'?_lex._lasttokenline:_lex._currentline, _lineinfo, true); funcstate->AddInstruction(_OP_RETURN, -1); funcstate->SetStackSize(0); //_fs->->_stacksize = _fs->_stacksize; diff --git a/src/3rdparty/squirrel/squirrel/sqcompiler.h b/src/3rdparty/squirrel/squirrel/sqcompiler.h index dd55888b6e..b29917390b 100644 --- a/src/3rdparty/squirrel/squirrel/sqcompiler.h +++ b/src/3rdparty/squirrel/squirrel/sqcompiler.h @@ -71,7 +71,12 @@ struct SQVM; #define TK_ENUM 323 #define TK_CONST 324 - +/* MSVC doesn't like NORETURN for function prototypes, but we kinda need it for GCC. */ +#if defined(_MSC_VER) typedef void(*CompilerErrorFunc)(void *ud, const SQChar *s); +#else +typedef NORETURN void(*CompilerErrorFunc)(void *ud, const SQChar *s); +#endif + bool Compile(SQVM *vm, SQLEXREADFUNC rg, SQUserPointer up, const SQChar *sourcename, SQObjectPtr &out, bool raiseerror, bool lineinfo); #endif //_SQCOMPILER_H_ diff --git a/src/3rdparty/squirrel/squirrel/sqdebug.cpp b/src/3rdparty/squirrel/squirrel/sqdebug.cpp index 77f88d1c4e..74272e432a 100644 --- a/src/3rdparty/squirrel/squirrel/sqdebug.cpp +++ b/src/3rdparty/squirrel/squirrel/sqdebug.cpp @@ -1,14 +1,21 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include #include "sqpcheader.h" -#include #include "sqvm.h" #include "sqfuncproto.h" #include "sqclosure.h" #include "sqstring.h" +#include "../../../core/alloc_func.hpp" +#include "../../../string_func.h" + +#include "../../../safeguards.h" + SQRESULT sq_getfunctioninfo(HSQUIRRELVM v,SQInteger level,SQFunctionInfo *fi) { SQInteger cssize = v->_callsstacksize; @@ -18,12 +25,12 @@ SQRESULT sq_getfunctioninfo(HSQUIRRELVM v,SQInteger level,SQFunctionInfo *fi) SQClosure *c = _closure(ci._closure); SQFunctionProto *proto = _funcproto(c->_function); fi->funcid = proto; - fi->name = type(proto->_name) == OT_STRING?_stringval(proto->_name):_SC("unknown"); - fi->source = type(proto->_name) == OT_STRING?_stringval(proto->_sourcename):_SC("unknown"); + fi->name = type(proto->_name) == OT_STRING?_stringval(proto->_name):"unknown"; + fi->source = type(proto->_name) == OT_STRING?_stringval(proto->_sourcename):"unknown"; return SQ_OK; } } - return sq_throwerror(v,_SC("the object is not a closure")); + return sq_throwerror(v,"the object is not a closure"); } SQRESULT sq_stackinfos(HSQUIRRELVM v, SQInteger level, SQStackInfos *si) @@ -43,8 +50,8 @@ SQRESULT sq_stackinfos(HSQUIRRELVM v, SQInteger level, SQStackInfos *si) } break; case OT_NATIVECLOSURE: - si->source = _SC("NATIVE"); - si->funcname = _SC("unknown"); + si->source = "NATIVE"; + si->funcname = "unknown"; if(type(_nativeclosure(ci._closure)->_name) == OT_STRING) si->funcname = _stringval(_nativeclosure(ci._closure)->_name); si->line = -1; @@ -60,9 +67,12 @@ void SQVM::Raise_Error(const SQChar *s, ...) { va_list vl; va_start(vl, s); - scvsprintf(_sp(rsl((SQInteger)scstrlen(s)+(NUMBER_MAX_CHAR*2))), s, vl); + size_t len = strlen(s)+(NUMBER_MAX_CHAR*2); + char *buffer = MallocT(len + 1); + vseprintf(buffer, buffer + len, s, vl); va_end(vl); - _lasterror = SQString::Create(_ss(this),_spval,-1); + _lasterror = SQString::Create(_ss(this),buffer,-1); + free(buffer); } void SQVM::Raise_Error(SQObjectPtr &desc) @@ -72,16 +82,15 @@ void SQVM::Raise_Error(SQObjectPtr &desc) SQString *SQVM::PrintObjVal(const SQObject &o) { + char buf[NUMBER_MAX_CHAR+1]; switch(type(o)) { case OT_STRING: return _string(o); case OT_INTEGER: - scsprintf(_sp(rsl(NUMBER_MAX_CHAR+1)), SQ_PRINTF64, _integer(o)); - return SQString::Create(_ss(this), _spval); - break; + seprintf(buf, lastof(buf), OTTD_PRINTF64, _integer(o)); + return SQString::Create(_ss(this), buf); case OT_FLOAT: - scsprintf(_sp(rsl(NUMBER_MAX_CHAR+1)), _SC("%.14g"), _float(o)); - return SQString::Create(_ss(this), _spval); - break; + seprintf(buf, lastof(buf), "%.14g", _float(o)); + return SQString::Create(_ss(this), buf); default: return SQString::Create(_ss(this), GetTypeName(o)); } @@ -90,28 +99,28 @@ SQString *SQVM::PrintObjVal(const SQObject &o) void SQVM::Raise_IdxError(const SQObject &o) { SQObjectPtr oval = PrintObjVal(o); - Raise_Error(_SC("the index '%.50s' does not exist"), _stringval(oval)); + Raise_Error("the index '%.50s' does not exist", _stringval(oval)); } void SQVM::Raise_CompareError(const SQObject &o1, const SQObject &o2) { SQObjectPtr oval1 = PrintObjVal(o1), oval2 = PrintObjVal(o2); - Raise_Error(_SC("comparsion between '%.50s' and '%.50s'"), _stringval(oval1), _stringval(oval2)); + Raise_Error("comparsion between '%.50s' and '%.50s'", _stringval(oval1), _stringval(oval2)); } void SQVM::Raise_ParamTypeError(SQInteger nparam,SQInteger typemask,SQInteger type) { - SQObjectPtr exptypes = SQString::Create(_ss(this), _SC(""), -1); + SQObjectPtr exptypes = SQString::Create(_ss(this), "", -1); SQInteger found = 0; for(SQInteger i=0; i<16; i++) { SQInteger mask = 0x00000001 << i; if(typemask & (mask)) { - if(found>0) StringCat(exptypes,SQString::Create(_ss(this), _SC("|"), -1), exptypes); + if(found>0) StringCat(exptypes,SQString::Create(_ss(this), "|", -1), exptypes); found ++; StringCat(exptypes,SQString::Create(_ss(this), IdType2Name((SQObjectType)mask), -1), exptypes); } } - Raise_Error(_SC("parameter %d has an invalid type '%s' ; expected: '%s'"), nparam, IdType2Name((SQObjectType)type), _stringval(exptypes)); + Raise_Error("parameter %d has an invalid type '%s' ; expected: '%s'", nparam, IdType2Name((SQObjectType)type), _stringval(exptypes)); } diff --git a/src/3rdparty/squirrel/squirrel/sqfuncproto.h b/src/3rdparty/squirrel/squirrel/sqfuncproto.h index faac9e925a..e58ccd2994 100644 --- a/src/3rdparty/squirrel/squirrel/sqfuncproto.h +++ b/src/3rdparty/squirrel/squirrel/sqfuncproto.h @@ -7,13 +7,13 @@ enum SQOuterType { otLOCAL = 0, otSYMBOL = 1, - otOUTER = 2 + otOUTER = 2, }; struct SQOuterVar { - SQOuterVar(){} + SQOuterVar() : _type(otLOCAL) {} SQOuterVar(const SQObjectPtr &name,const SQObjectPtr &src,SQOuterType t) { _name = name; @@ -33,7 +33,7 @@ struct SQOuterVar struct SQLocalVarInfo { - SQLocalVarInfo():_start_op(0),_end_op(0){} + SQLocalVarInfo():_start_op(0),_end_op(0), _pos(0){} SQLocalVarInfo(const SQLocalVarInfo &lvi) { _name=lvi._name; @@ -73,9 +73,37 @@ typedef sqvector SQLineInfoVec; struct SQFunctionProto : public SQRefCounted { private: - SQFunctionProto(){ - _stacksize=0; - _bgenerator=false;} + SQFunctionProto(SQInteger ninstructions, + SQInteger nliterals,SQInteger nparameters, + SQInteger nfunctions,SQInteger noutervalues, + SQInteger nlineinfos,SQInteger nlocalvarinfos,SQInteger ndefaultparams) + { + _stacksize=0; + _bgenerator=false; + _varparams = false; + _ninstructions = ninstructions; + _literals = (SQObjectPtr*)&_instructions[ninstructions]; + _nliterals = nliterals; + _parameters = (SQObjectPtr*)&_literals[nliterals]; + _nparameters = nparameters; + _functions = (SQObjectPtr*)&_parameters[nparameters]; + _nfunctions = nfunctions; + _outervalues = (SQOuterVar*)&_functions[nfunctions]; + _noutervalues = noutervalues; + _lineinfos = (SQLineInfo *)&_outervalues[noutervalues]; + _nlineinfos = nlineinfos; + _localvarinfos = (SQLocalVarInfo *)&_lineinfos[nlineinfos]; + _nlocalvarinfos = nlocalvarinfos; + _defaultparams = (SQInteger *)&_localvarinfos[nlocalvarinfos]; + _ndefaultparams = ndefaultparams; + + _CONSTRUCT_VECTOR(SQObjectPtr,_nliterals,_literals); + _CONSTRUCT_VECTOR(SQObjectPtr,_nparameters,_parameters); + _CONSTRUCT_VECTOR(SQObjectPtr,_nfunctions,_functions); + _CONSTRUCT_VECTOR(SQOuterVar,_noutervalues,_outervalues); + //_CONSTRUCT_VECTOR(SQLineInfo,_nlineinfos,_lineinfos); //not required are 2 integers + _CONSTRUCT_VECTOR(SQLocalVarInfo,_nlocalvarinfos,_localvarinfos); + } public: static SQFunctionProto *Create(SQInteger ninstructions, SQInteger nliterals,SQInteger nparameters, @@ -85,29 +113,7 @@ public: SQFunctionProto *f; //I compact the whole class and members in a single memory allocation f = (SQFunctionProto *)sq_vm_malloc(_FUNC_SIZE(ninstructions,nliterals,nparameters,nfunctions,noutervalues,nlineinfos,nlocalvarinfos,ndefaultparams)); - new (f) SQFunctionProto; - f->_ninstructions = ninstructions; - f->_literals = (SQObjectPtr*)&f->_instructions[ninstructions]; - f->_nliterals = nliterals; - f->_parameters = (SQObjectPtr*)&f->_literals[nliterals]; - f->_nparameters = nparameters; - f->_functions = (SQObjectPtr*)&f->_parameters[nparameters]; - f->_nfunctions = nfunctions; - f->_outervalues = (SQOuterVar*)&f->_functions[nfunctions]; - f->_noutervalues = noutervalues; - f->_lineinfos = (SQLineInfo *)&f->_outervalues[noutervalues]; - f->_nlineinfos = nlineinfos; - f->_localvarinfos = (SQLocalVarInfo *)&f->_lineinfos[nlineinfos]; - f->_nlocalvarinfos = nlocalvarinfos; - f->_defaultparams = (SQInteger *)&f->_localvarinfos[nlocalvarinfos]; - f->_ndefaultparams = ndefaultparams; - - _CONSTRUCT_VECTOR(SQObjectPtr,f->_nliterals,f->_literals); - _CONSTRUCT_VECTOR(SQObjectPtr,f->_nparameters,f->_parameters); - _CONSTRUCT_VECTOR(SQObjectPtr,f->_nfunctions,f->_functions); - _CONSTRUCT_VECTOR(SQOuterVar,f->_noutervalues,f->_outervalues); - //_CONSTRUCT_VECTOR(SQLineInfo,f->_nlineinfos,f->_lineinfos); //not required are 2 integers - _CONSTRUCT_VECTOR(SQLocalVarInfo,f->_nlocalvarinfos,f->_localvarinfos); + new (f) SQFunctionProto(ninstructions, nliterals, nparameters, nfunctions, noutervalues, nlineinfos, nlocalvarinfos, ndefaultparams); return f; } void Release(){ diff --git a/src/3rdparty/squirrel/squirrel/sqfuncstate.cpp b/src/3rdparty/squirrel/squirrel/sqfuncstate.cpp index fd8caf2e4b..5415b566e8 100644 --- a/src/3rdparty/squirrel/squirrel/sqfuncstate.cpp +++ b/src/3rdparty/squirrel/squirrel/sqfuncstate.cpp @@ -1,6 +1,9 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include "sqpcheader.h" #include "sqcompiler.h" #include "sqfuncproto.h" @@ -9,80 +12,82 @@ #include "sqopcodes.h" #include "sqfuncstate.h" +#include "../../../safeguards.h" + #ifdef _DEBUG_DUMP SQInstructionDesc g_InstrDesc[]={ - {_SC("_OP_LINE")}, - {_SC("_OP_LOAD")}, - {_SC("_OP_LOADINT")}, - {_SC("_OP_LOADFLOAT")}, - {_SC("_OP_DLOAD")}, - {_SC("_OP_TAILCALL")}, - {_SC("_OP_CALL")}, - {_SC("_OP_PREPCALL")}, - {_SC("_OP_PREPCALLK")}, - {_SC("_OP_GETK")}, - {_SC("_OP_MOVE")}, - {_SC("_OP_NEWSLOT")}, - {_SC("_OP_DELETE")}, - {_SC("_OP_SET")}, - {_SC("_OP_GET")}, - {_SC("_OP_EQ")}, - {_SC("_OP_NE")}, - {_SC("_OP_ARITH")}, - {_SC("_OP_BITW")}, - {_SC("_OP_RETURN")}, - {_SC("_OP_LOADNULLS")}, - {_SC("_OP_LOADROOTTABLE")}, - {_SC("_OP_LOADBOOL")}, - {_SC("_OP_DMOVE")}, - {_SC("_OP_JMP")}, - {_SC("_OP_JNZ")}, - {_SC("_OP_JZ")}, - {_SC("_OP_LOADFREEVAR")}, - {_SC("_OP_VARGC")}, - {_SC("_OP_GETVARGV")}, - {_SC("_OP_NEWTABLE")}, - {_SC("_OP_NEWARRAY")}, - {_SC("_OP_APPENDARRAY")}, - {_SC("_OP_GETPARENT")}, - {_SC("_OP_COMPARITH")}, - {_SC("_OP_COMPARITHL")}, - {_SC("_OP_INC")}, - {_SC("_OP_INCL")}, - {_SC("_OP_PINC")}, - {_SC("_OP_PINCL")}, - {_SC("_OP_CMP")}, - {_SC("_OP_EXISTS")}, - {_SC("_OP_INSTANCEOF")}, - {_SC("_OP_AND")}, - {_SC("_OP_OR")}, - {_SC("_OP_NEG")}, - {_SC("_OP_NOT")}, - {_SC("_OP_BWNOT")}, - {_SC("_OP_CLOSURE")}, - {_SC("_OP_YIELD")}, - {_SC("_OP_RESUME")}, - {_SC("_OP_FOREACH")}, - {_SC("_OP_POSTFOREACH")}, - {_SC("_OP_DELEGATE")}, - {_SC("_OP_CLONE")}, - {_SC("_OP_TYPEOF")}, - {_SC("_OP_PUSHTRAP")}, - {_SC("_OP_POPTRAP")}, - {_SC("_OP_THROW")}, - {_SC("_OP_CLASS")}, - {_SC("_OP_NEWSLOTA")}, - {_SC("_OP_SCOPE_END")} + {"_OP_LINE"}, + {"_OP_LOAD"}, + {"_OP_LOADINT"}, + {"_OP_LOADFLOAT"}, + {"_OP_DLOAD"}, + {"_OP_TAILCALL"}, + {"_OP_CALL"}, + {"_OP_PREPCALL"}, + {"_OP_PREPCALLK"}, + {"_OP_GETK"}, + {"_OP_MOVE"}, + {"_OP_NEWSLOT"}, + {"_OP_DELETE"}, + {"_OP_SET"}, + {"_OP_GET"}, + {"_OP_EQ"}, + {"_OP_NE"}, + {"_OP_ARITH"}, + {"_OP_BITW"}, + {"_OP_RETURN"}, + {"_OP_LOADNULLS"}, + {"_OP_LOADROOTTABLE"}, + {"_OP_LOADBOOL"}, + {"_OP_DMOVE"}, + {"_OP_JMP"}, + {"_OP_JNZ"}, + {"_OP_JZ"}, + {"_OP_LOADFREEVAR"}, + {"_OP_VARGC"}, + {"_OP_GETVARGV"}, + {"_OP_NEWTABLE"}, + {"_OP_NEWARRAY"}, + {"_OP_APPENDARRAY"}, + {"_OP_GETPARENT"}, + {"_OP_COMPARITH"}, + {"_OP_COMPARITHL"}, + {"_OP_INC"}, + {"_OP_INCL"}, + {"_OP_PINC"}, + {"_OP_PINCL"}, + {"_OP_CMP"}, + {"_OP_EXISTS"}, + {"_OP_INSTANCEOF"}, + {"_OP_AND"}, + {"_OP_OR"}, + {"_OP_NEG"}, + {"_OP_NOT"}, + {"_OP_BWNOT"}, + {"_OP_CLOSURE"}, + {"_OP_YIELD"}, + {"_OP_RESUME"}, + {"_OP_FOREACH"}, + {"_OP_POSTFOREACH"}, + {"_OP_DELEGATE"}, + {"_OP_CLONE"}, + {"_OP_TYPEOF"}, + {"_OP_PUSHTRAP"}, + {"_OP_POPTRAP"}, + {"_OP_THROW"}, + {"_OP_CLASS"}, + {"_OP_NEWSLOTA"}, + {"_OP_SCOPE_END"} }; #endif void DumpLiteral(SQObjectPtr &o) { switch(type(o)){ - case OT_STRING: scprintf(_SC("\"%s\""),_stringval(o));break; - case OT_FLOAT: scprintf(_SC("{%f}"),_float(o));break; - case OT_INTEGER: scprintf(_SC("{") SQ_PRINTF64 _SC("}"),_integer(o));break; - case OT_BOOL: scprintf(_SC("%s"),_integer(o)?_SC("true"):_SC("false"));break; - default: scprintf(_SC("(%s %p)"),GetTypeName(o),(void*)_rawval(o));break; break; //shut up compiler + case OT_STRING: printf("\"%s\"",_stringval(o));break; + case OT_FLOAT: printf("{%f}",_float(o));break; + case OT_INTEGER: printf("{" OTTD_PRINTF64 "}",_integer(o));break; + case OT_BOOL: printf("%s",_integer(o)?"true":"false");break; + default: printf("(%s %p)",GetTypeName(o),(void*)_rawval(o));break; break; //shut up compiler } } @@ -115,11 +120,11 @@ void SQFuncState::Dump(SQFunctionProto *func) { SQUnsignedInteger n=0,i; SQInteger si; - scprintf(_SC("SQInstruction sizeof %d\n"),sizeof(SQInstruction)); - scprintf(_SC("SQObject sizeof %d\n"),sizeof(SQObject)); - scprintf(_SC("--------------------------------------------------------------------\n")); - scprintf(_SC("*****FUNCTION [%s]\n"),type(func->_name)==OT_STRING?_stringval(func->_name):_SC("unknown")); - scprintf(_SC("-----LITERALS\n")); + printf("SQInstruction sizeof %d\n",sizeof(SQInstruction)); + printf("SQObject sizeof %d\n",sizeof(SQObject)); + printf("--------------------------------------------------------------------\n"); + printf("*****FUNCTION [%s]\n",type(func->_name)==OT_STRING?_stringval(func->_name):"unknown"); + printf("-----LITERALS\n"); SQObjectPtr refidx,key,val; SQInteger idx; SQObjectPtrVec templiterals; @@ -129,43 +134,43 @@ void SQFuncState::Dump(SQFunctionProto *func) templiterals[_integer(val)]=key; } for(i=0;i>\n")); + printf("<>\n"); n=0; for(i=0;i<_parameters.size();i++){ - scprintf(_SC("[%d] "),n); + printf("[%d] ",n); DumpLiteral(_parameters[i]); - scprintf(_SC("\n")); + printf("\n"); n++; } - scprintf(_SC("-----LOCALS\n")); + printf("-----LOCALS\n"); for(si=0;si_nlocalvarinfos;si++){ SQLocalVarInfo lvi=func->_localvarinfos[si]; - scprintf(_SC("[%d] %s \t%d %d\n"),lvi._pos,_stringval(lvi._name),lvi._start_op,lvi._end_op); + printf("[%d] %s \t%d %d\n",lvi._pos,_stringval(lvi._name),lvi._start_op,lvi._end_op); n++; } - scprintf(_SC("-----LINE INFO\n")); + printf("-----LINE INFO\n"); for(i=0;i<_lineinfos.size();i++){ SQLineInfo li=_lineinfos[i]; - scprintf(_SC("op [%d] line [%d] \n"),li._op,li._line); + printf("op [%d] line [%d] \n",li._op,li._line); n++; } - scprintf(_SC("-----dump\n")); + printf("-----dump\n"); n=0; for(i=0;i<_instructions.size();i++){ SQInstruction &inst=_instructions[i]; if(inst.op==_OP_LOAD || inst.op==_OP_DLOAD || inst.op==_OP_PREPCALLK || inst.op==_OP_GETK ){ SQInteger lidx = inst._arg1; - scprintf(_SC("[%03d] %15s %d "),n,g_InstrDesc[inst.op].name,inst._arg0); + printf("[%03d] %15s %d ",n,g_InstrDesc[inst.op].name,inst._arg0); if(lidx >= 0xFFFFFFFF) - scprintf(_SC("null")); + printf("null"); else { SQInteger refidx; SQObjectPtr val,key,refo; @@ -175,13 +180,13 @@ void SQFuncState::Dump(SQFunctionProto *func) DumpLiteral(key); } if(inst.op != _OP_DLOAD) { - scprintf(_SC(" %d %d \n"),inst._arg2,inst._arg3); + printf(" %d %d \n",inst._arg2,inst._arg3); } else { - scprintf(_SC(" %d "),inst._arg2); + printf(" %d ",inst._arg2); lidx = inst._arg3; if(lidx >= 0xFFFFFFFF) - scprintf(_SC("null")); + printf("null"); else { SQInteger refidx; SQObjectPtr val,key,refo; @@ -189,23 +194,23 @@ void SQFuncState::Dump(SQFunctionProto *func) refo = refidx; } DumpLiteral(key); - scprintf(_SC("\n")); + printf("\n"); } } } else if(inst.op==_OP_LOADFLOAT) { - scprintf(_SC("[%03d] %15s %d %f %d %d\n"),n,g_InstrDesc[inst.op].name,inst._arg0,*((SQFloat*)&inst._arg1),inst._arg2,inst._arg3); + printf("[%03d] %15s %d %f %d %d\n",n,g_InstrDesc[inst.op].name,inst._arg0,*((SQFloat*)&inst._arg1),inst._arg2,inst._arg3); } else if(inst.op==_OP_ARITH){ - scprintf(_SC("[%03d] %15s %d %d %d %c\n"),n,g_InstrDesc[inst.op].name,inst._arg0,inst._arg1,inst._arg2,inst._arg3); + printf("[%03d] %15s %d %d %d %c\n",n,g_InstrDesc[inst.op].name,inst._arg0,inst._arg1,inst._arg2,inst._arg3); } else - scprintf(_SC("[%03d] %15s %d %d %d %d\n"),n,g_InstrDesc[inst.op].name,inst._arg0,inst._arg1,inst._arg2,inst._arg3); + printf("[%03d] %15s %d %d %d %d\n",n,g_InstrDesc[inst.op].name,inst._arg0,inst._arg1,inst._arg2,inst._arg3); n++; } - scprintf(_SC("-----\n")); - scprintf(_SC("stack size[%d]\n"),func->_stacksize); - scprintf(_SC("--------------------------------------------------------------------\n\n")); + printf("-----\n"); + printf("stack size[%d]\n",func->_stacksize); + printf("--------------------------------------------------------------------\n\n"); } #endif @@ -229,7 +234,7 @@ SQInteger SQFuncState::GetConstant(const SQObject &cons) _nliterals++; if(_nliterals > MAX_LITERALS) { val.Null(); - Error(_SC("internal compiler error: too many literals")); + Error("internal compiler error: too many literals"); } } return _integer(val); @@ -258,7 +263,7 @@ SQInteger SQFuncState::AllocStackPos() SQInteger npos=_vlocals.size(); _vlocals.push_back(SQLocalVarInfo()); if(_vlocals.size()>((SQUnsignedInteger)_stacksize)) { - if(_stacksize>MAX_FUNC_STACKSIZE) Error(_SC("internal compiler error: too many locals")); + if(_stacksize>MAX_FUNC_STACKSIZE) Error("internal compiler error: too many locals"); _stacksize=_vlocals.size(); } return npos; @@ -414,7 +419,6 @@ void SQFuncState::AddInstruction(SQInstruction &i) break; case _OP_GET: if( pi.op == _OP_LOAD && pi._arg0 == i._arg2 && (!IsLocal(pi._arg0))){ - pi._arg1 = pi._arg1; pi._arg2 = (unsigned char)i._arg1; pi.op = _OP_GETK; pi._arg0 = i._arg0; @@ -426,7 +430,6 @@ void SQFuncState::AddInstruction(SQInstruction &i) if( pi.op == _OP_LOAD && pi._arg0 == i._arg1 && (!IsLocal(pi._arg0))){ pi.op = _OP_PREPCALLK; pi._arg0 = i._arg0; - pi._arg1 = pi._arg1; pi._arg2 = i._arg2; pi._arg3 = i._arg3; return; @@ -436,7 +439,6 @@ void SQFuncState::AddInstruction(SQInstruction &i) if(pi.op == _OP_LOAD && pi._arg0 == i._arg1 && (!IsLocal(pi._arg0))){ pi.op = _OP_APPENDARRAY; pi._arg0 = i._arg0; - pi._arg1 = pi._arg1; pi._arg2 = MAX_FUNC_STACKSIZE; pi._arg3 = MAX_FUNC_STACKSIZE; return; @@ -471,7 +473,6 @@ void SQFuncState::AddInstruction(SQInstruction &i) { pi.op = i.op; pi._arg0 = i._arg0; - pi._arg1 = pi._arg1; pi._arg2 = i._arg2; pi._arg3 = MAX_FUNC_STACKSIZE; return; diff --git a/src/3rdparty/squirrel/squirrel/sqlexer.cpp b/src/3rdparty/squirrel/squirrel/sqlexer.cpp index c03048e9a2..77c487a269 100644 --- a/src/3rdparty/squirrel/squirrel/sqlexer.cpp +++ b/src/3rdparty/squirrel/squirrel/sqlexer.cpp @@ -1,30 +1,41 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include "sqpcheader.h" #include -#include #include "sqtable.h" #include "sqstring.h" #include "sqcompiler.h" #include "sqlexer.h" +#include "../../../string_func.h" + +#include "../../../safeguards.h" + #define CUR_CHAR (_currdata) #define RETURN_TOKEN(t) { _prevtoken = _curtoken; _curtoken = t; return t;} #define IS_EOB() (CUR_CHAR <= SQUIRREL_EOB) #define NEXT() {Next();_currentcolumn++;} -#define INIT_TEMP_STRING() { _longstr.resize(0);} -#define APPEND_CHAR(c) { _longstr.push_back(c);} -#define TERMINATE_BUFFER() {_longstr.push_back(_SC('\0'));} -#define ADD_KEYWORD(key,id) _keywords->NewSlot( SQString::Create(ss, _SC(#key)) ,SQInteger(id)) +#define ADD_KEYWORD(key,id) _keywords->NewSlot( SQString::Create(ss, #key) ,SQInteger(id)) -SQLexer::SQLexer(){} SQLexer::~SQLexer() { _keywords->Release(); } -void SQLexer::Init(SQSharedState *ss, SQLEXREADFUNC rg, SQUserPointer up,CompilerErrorFunc efunc,void *ed) +void SQLexer::APPEND_CHAR(WChar c) +{ + char buf[4]; + size_t chars = Utf8Encode(buf, c); + for (size_t i = 0; i < chars; i++) { + _longstr.push_back(buf[i]); + } +} + +SQLexer::SQLexer(SQSharedState *ss, SQLEXREADFUNC rg, SQUserPointer up,CompilerErrorFunc efunc,void *ed) { _errfunc = efunc; _errtarget = ed; @@ -74,20 +85,26 @@ void SQLexer::Init(SQSharedState *ss, SQLEXREADFUNC rg, SQUserPointer up,Compile _lasttokenline = _currentline = 1; _currentcolumn = 0; _prevtoken = -1; + _curtoken = -1; + + _svalue = NULL; + _nvalue = 0; + _fvalue = 0; + Next(); } -void SQLexer::Error(const SQChar *err) +NORETURN void SQLexer::Error(const SQChar *err) { _errfunc(_errtarget,err); } void SQLexer::Next() { - SQInteger t = _readf(_up); - if(t > MAX_CHAR) Error(_SC("Invalid character")); + WChar t = _readf(_up); + if(t > MAX_CHAR) Error("Invalid character"); if(t != 0) { - _currdata = (LexChar)t; + _currdata = t; return; } _currdata = SQUIRREL_EOB; @@ -110,9 +127,9 @@ void SQLexer::LexBlockComment() bool done = false; while(!done) { switch(CUR_CHAR) { - case _SC('*'): { NEXT(); if(CUR_CHAR == _SC('/')) { done = true; NEXT(); }}; continue; - case _SC('\n'): _currentline++; NEXT(); continue; - case SQUIRREL_EOB: Error(_SC("missing \"*/\" in comment")); + case '*': { NEXT(); if(CUR_CHAR == '/') { done = true; NEXT(); }}; continue; + case '\n': _currentline++; NEXT(); continue; + case SQUIRREL_EOB: Error("missing \"*/\" in comment"); default: NEXT(); } } @@ -123,136 +140,134 @@ SQInteger SQLexer::Lex() _lasttokenline = _currentline; while(CUR_CHAR != SQUIRREL_EOB) { switch(CUR_CHAR){ - case _SC('\t'): case _SC('\r'): case _SC(' '): NEXT(); continue; - case _SC('\n'): + case '\t': case '\r': case ' ': NEXT(); continue; + case '\n': _currentline++; _prevtoken=_curtoken; - _curtoken=_SC('\n'); + _curtoken='\n'; NEXT(); _currentcolumn=1; continue; - case _SC('/'): + case '/': NEXT(); switch(CUR_CHAR){ - case _SC('*'): + case '*': NEXT(); LexBlockComment(); continue; - case _SC('/'): - do { NEXT(); } while (CUR_CHAR != _SC('\n') && (!IS_EOB())); + case '/': + do { NEXT(); } while (CUR_CHAR != '\n' && (!IS_EOB())); continue; - case _SC('='): + case '=': NEXT(); RETURN_TOKEN(TK_DIVEQ); - continue; - case _SC('>'): + case '>': NEXT(); RETURN_TOKEN(TK_ATTR_CLOSE); - continue; default: RETURN_TOKEN('/'); } - case _SC('='): + case '=': NEXT(); - if (CUR_CHAR != _SC('=')){ RETURN_TOKEN('=') } + if (CUR_CHAR != '='){ RETURN_TOKEN('=') } else { NEXT(); RETURN_TOKEN(TK_EQ); } - case _SC('<'): + case '<': NEXT(); - if ( CUR_CHAR == _SC('=') ) { NEXT(); RETURN_TOKEN(TK_LE) } - else if ( CUR_CHAR == _SC('-') ) { NEXT(); RETURN_TOKEN(TK_NEWSLOT); } - else if ( CUR_CHAR == _SC('<') ) { NEXT(); RETURN_TOKEN(TK_SHIFTL); } - else if ( CUR_CHAR == _SC('/') ) { NEXT(); RETURN_TOKEN(TK_ATTR_OPEN); } - //else if ( CUR_CHAR == _SC('[') ) { NEXT(); ReadMultilineString(); RETURN_TOKEN(TK_STRING_LITERAL); } + if ( CUR_CHAR == '=' ) { NEXT(); RETURN_TOKEN(TK_LE) } + else if ( CUR_CHAR == '-' ) { NEXT(); RETURN_TOKEN(TK_NEWSLOT); } + else if ( CUR_CHAR == '<' ) { NEXT(); RETURN_TOKEN(TK_SHIFTL); } + else if ( CUR_CHAR == '/' ) { NEXT(); RETURN_TOKEN(TK_ATTR_OPEN); } + //else if ( CUR_CHAR == '[' ) { NEXT(); ReadMultilineString(); RETURN_TOKEN(TK_STRING_LITERAL); } else { RETURN_TOKEN('<') } - case _SC('>'): + case '>': NEXT(); - if (CUR_CHAR == _SC('=')){ NEXT(); RETURN_TOKEN(TK_GE);} - else if(CUR_CHAR == _SC('>')){ + if (CUR_CHAR == '='){ NEXT(); RETURN_TOKEN(TK_GE);} + else if(CUR_CHAR == '>'){ NEXT(); - if(CUR_CHAR == _SC('>')){ + if(CUR_CHAR == '>'){ NEXT(); RETURN_TOKEN(TK_USHIFTR); } RETURN_TOKEN(TK_SHIFTR); } else { RETURN_TOKEN('>') } - case _SC('!'): + case '!': NEXT(); - if (CUR_CHAR != _SC('=')){ RETURN_TOKEN('!')} + if (CUR_CHAR != '='){ RETURN_TOKEN('!')} else { NEXT(); RETURN_TOKEN(TK_NE); } - case _SC('@'): { + case '@': { SQInteger stype; NEXT(); - if(CUR_CHAR != _SC('"')) - Error(_SC("string expected")); - if((stype=ReadString(_SC('"'),true))!=-1) { + if(CUR_CHAR != '"') + Error("string expected"); + if((stype=ReadString('"',true))!=-1) { RETURN_TOKEN(stype); } - Error(_SC("error parsing the string")); + Error("error parsing the string"); } - case _SC('"'): - case _SC('\''): { + case '"': + case '\'': { SQInteger stype; if((stype=ReadString(CUR_CHAR,false))!=-1){ RETURN_TOKEN(stype); } - Error(_SC("error parsing the string")); + Error("error parsing the string"); } - case _SC('{'): case _SC('}'): case _SC('('): case _SC(')'): case _SC('['): case _SC(']'): - case _SC(';'): case _SC(','): case _SC('?'): case _SC('^'): case _SC('~'): + case '{': case '}': case '(': case ')': case '[': case ']': + case ';': case ',': case '?': case '^': case '~': {SQInteger ret = CUR_CHAR; NEXT(); RETURN_TOKEN(ret); } - case _SC('.'): + case '.': NEXT(); - if (CUR_CHAR != _SC('.')){ RETURN_TOKEN('.') } + if (CUR_CHAR != '.'){ RETURN_TOKEN('.') } NEXT(); - if (CUR_CHAR != _SC('.')){ Error(_SC("invalid token '..'")); } + if (CUR_CHAR != '.'){ Error("invalid token '..'"); } NEXT(); RETURN_TOKEN(TK_VARPARAMS); - case _SC('&'): + case '&': NEXT(); - if (CUR_CHAR != _SC('&')){ RETURN_TOKEN('&') } + if (CUR_CHAR != '&'){ RETURN_TOKEN('&') } else { NEXT(); RETURN_TOKEN(TK_AND); } - case _SC('|'): + case '|': NEXT(); - if (CUR_CHAR != _SC('|')){ RETURN_TOKEN('|') } + if (CUR_CHAR != '|'){ RETURN_TOKEN('|') } else { NEXT(); RETURN_TOKEN(TK_OR); } - case _SC(':'): + case ':': NEXT(); - if (CUR_CHAR != _SC(':')){ RETURN_TOKEN(':') } + if (CUR_CHAR != ':'){ RETURN_TOKEN(':') } else { NEXT(); RETURN_TOKEN(TK_DOUBLE_COLON); } - case _SC('*'): + case '*': NEXT(); - if (CUR_CHAR == _SC('=')){ NEXT(); RETURN_TOKEN(TK_MULEQ);} + if (CUR_CHAR == '='){ NEXT(); RETURN_TOKEN(TK_MULEQ);} else RETURN_TOKEN('*'); - case _SC('%'): + case '%': NEXT(); - if (CUR_CHAR == _SC('=')){ NEXT(); RETURN_TOKEN(TK_MODEQ);} + if (CUR_CHAR == '='){ NEXT(); RETURN_TOKEN(TK_MODEQ);} else RETURN_TOKEN('%'); - case _SC('-'): + case '-': NEXT(); - if (CUR_CHAR == _SC('=')){ NEXT(); RETURN_TOKEN(TK_MINUSEQ);} - else if (CUR_CHAR == _SC('-')){ NEXT(); RETURN_TOKEN(TK_MINUSMINUS);} + if (CUR_CHAR == '='){ NEXT(); RETURN_TOKEN(TK_MINUSEQ);} + else if (CUR_CHAR == '-'){ NEXT(); RETURN_TOKEN(TK_MINUSMINUS);} else RETURN_TOKEN('-'); - case _SC('+'): + case '+': NEXT(); - if (CUR_CHAR == _SC('=')){ NEXT(); RETURN_TOKEN(TK_PLUSEQ);} - else if (CUR_CHAR == _SC('+')){ NEXT(); RETURN_TOKEN(TK_PLUSPLUS);} + if (CUR_CHAR == '='){ NEXT(); RETURN_TOKEN(TK_PLUSEQ);} + else if (CUR_CHAR == '+'){ NEXT(); RETURN_TOKEN(TK_PLUSPLUS);} else RETURN_TOKEN('+'); case SQUIRREL_EOB: return 0; default:{ - if (scisdigit(CUR_CHAR)) { + if (isdigit(CUR_CHAR)) { SQInteger ret = ReadNumber(); RETURN_TOKEN(ret); } - else if (scisalpha(CUR_CHAR) || CUR_CHAR == _SC('_')) { + else if (isalpha(CUR_CHAR) || CUR_CHAR == '_') { SQInteger t = ReadID(); RETURN_TOKEN(t); } else { SQInteger c = CUR_CHAR; - if (sciscntrl((int)c)) Error(_SC("unexpected character(control)")); + if (iscntrl((int)c)) Error("unexpected character(control)"); NEXT(); RETURN_TOKEN(c); } @@ -273,7 +288,7 @@ SQInteger SQLexer::GetIDType(SQChar *s) } -SQInteger SQLexer::ReadString(SQChar ndelim,bool verbatim) +SQInteger SQLexer::ReadString(WChar ndelim,bool verbatim) { INIT_TEMP_STRING(); NEXT(); @@ -282,22 +297,22 @@ SQInteger SQLexer::ReadString(SQChar ndelim,bool verbatim) while(CUR_CHAR != ndelim) { switch(CUR_CHAR) { case SQUIRREL_EOB: - Error(_SC("unfinished string")); + Error("unfinished string"); return -1; - case _SC('\n'): - if(!verbatim) Error(_SC("newline in a constant")); + case '\n': + if(!verbatim) Error("newline in a constant"); APPEND_CHAR(CUR_CHAR); NEXT(); _currentline++; break; - case _SC('\\'): + case '\\': if(verbatim) { APPEND_CHAR('\\'); NEXT(); } else { NEXT(); switch(CUR_CHAR) { - case _SC('x'): NEXT(); { - if(!isxdigit(CUR_CHAR)) Error(_SC("hexadecimal number expected")); + case 'x': NEXT(); { + if(!isxdigit(CUR_CHAR)) Error("hexadecimal number expected"); const SQInteger maxdigits = 4; SQChar temp[maxdigits+1]; SQInteger n = 0; @@ -308,22 +323,22 @@ SQInteger SQLexer::ReadString(SQChar ndelim,bool verbatim) } temp[n] = 0; SQChar *sTemp; - APPEND_CHAR((SQChar)scstrtoul(temp,&sTemp,16)); + APPEND_CHAR((SQChar)strtoul(temp,&sTemp,16)); } break; - case _SC('t'): APPEND_CHAR(_SC('\t')); NEXT(); break; - case _SC('a'): APPEND_CHAR(_SC('\a')); NEXT(); break; - case _SC('b'): APPEND_CHAR(_SC('\b')); NEXT(); break; - case _SC('n'): APPEND_CHAR(_SC('\n')); NEXT(); break; - case _SC('r'): APPEND_CHAR(_SC('\r')); NEXT(); break; - case _SC('v'): APPEND_CHAR(_SC('\v')); NEXT(); break; - case _SC('f'): APPEND_CHAR(_SC('\f')); NEXT(); break; - case _SC('0'): APPEND_CHAR(_SC('\0')); NEXT(); break; - case _SC('\\'): APPEND_CHAR(_SC('\\')); NEXT(); break; - case _SC('"'): APPEND_CHAR(_SC('"')); NEXT(); break; - case _SC('\''): APPEND_CHAR(_SC('\'')); NEXT(); break; + case 't': APPEND_CHAR('\t'); NEXT(); break; + case 'a': APPEND_CHAR('\a'); NEXT(); break; + case 'b': APPEND_CHAR('\b'); NEXT(); break; + case 'n': APPEND_CHAR('\n'); NEXT(); break; + case 'r': APPEND_CHAR('\r'); NEXT(); break; + case 'v': APPEND_CHAR('\v'); NEXT(); break; + case 'f': APPEND_CHAR('\f'); NEXT(); break; + case '0': APPEND_CHAR('\0'); NEXT(); break; + case '\\': APPEND_CHAR('\\'); NEXT(); break; + case '"': APPEND_CHAR('"'); NEXT(); break; + case '\'': APPEND_CHAR('\''); NEXT(); break; default: - Error(_SC("unrecognised escaper char")); + Error("unrecognised escaper char"); break; } } @@ -344,9 +359,9 @@ SQInteger SQLexer::ReadString(SQChar ndelim,bool verbatim) } TERMINATE_BUFFER(); SQInteger len = _longstr.size()-1; - if(ndelim == _SC('\'')) { - if(len == 0) Error(_SC("empty constant")); - if(len > 1) Error(_SC("constant too long")); + if(ndelim == '\'') { + if(len == 0) Error("empty constant"); + if(len > 1) Error("constant too long"); _nvalue = _longstr[0]; return TK_INTEGER; } @@ -359,8 +374,8 @@ void LexHexadecimal(const SQChar *s,SQUnsignedInteger *res) *res = 0; while(*s != 0) { - if(scisdigit(*s)) *res = (*res)*16+((*s++)-'0'); - else if(scisxdigit(*s)) *res = (*res)*16+(toupper(*s++)-'A'+10); + if(isdigit(*s)) *res = (*res)*16+((*s++)-'0'); + else if(isxdigit(*s)) *res = (*res)*16+(toupper(*s++)-'A'+10); else { assert(0); } } } @@ -374,7 +389,7 @@ void LexInteger(const SQChar *s,SQUnsignedInteger *res) } } -SQInteger scisodigit(SQChar c) { return c >= _SC('0') && c <= _SC('7'); } +SQInteger scisodigit(SQChar c) { return c >= '0' && c <= '7'; } void LexOctal(const SQChar *s,SQUnsignedInteger *res) { @@ -401,14 +416,14 @@ SQInteger SQLexer::ReadNumber() SQChar *sTemp; INIT_TEMP_STRING(); NEXT(); - if(firstchar == _SC('0') && (toupper(CUR_CHAR) == _SC('X') || scisodigit(CUR_CHAR)) ) { + if(firstchar == '0' && (toupper(CUR_CHAR) == 'X' || scisodigit(CUR_CHAR)) ) { if(scisodigit(CUR_CHAR)) { type = TOCTAL; while(scisodigit(CUR_CHAR)) { APPEND_CHAR(CUR_CHAR); NEXT(); } - if(scisdigit(CUR_CHAR)) Error(_SC("invalid octal number")); + if(isdigit(CUR_CHAR)) Error("invalid octal number"); } else { NEXT(); @@ -417,15 +432,15 @@ SQInteger SQLexer::ReadNumber() APPEND_CHAR(CUR_CHAR); NEXT(); } - if(_longstr.size() > MAX_HEX_DIGITS) Error(_SC("too many digits for an Hex number")); + if(_longstr.size() > MAX_HEX_DIGITS) Error("too many digits for an Hex number"); } } else { APPEND_CHAR((int)firstchar); - while (CUR_CHAR == _SC('.') || scisdigit(CUR_CHAR) || isexponent(CUR_CHAR)) { - if(CUR_CHAR == _SC('.') || isexponent(CUR_CHAR)) type = TFLOAT; + while (CUR_CHAR == '.' || isdigit(CUR_CHAR) || isexponent(CUR_CHAR)) { + if(CUR_CHAR == '.' || isexponent(CUR_CHAR)) type = TFLOAT; if(isexponent(CUR_CHAR)) { - if(type != TFLOAT) Error(_SC("invalid numeric format")); + if(type != TFLOAT) Error("invalid numeric format"); type = TSCIENTIFIC; APPEND_CHAR(CUR_CHAR); NEXT(); @@ -433,7 +448,7 @@ SQInteger SQLexer::ReadNumber() APPEND_CHAR(CUR_CHAR); NEXT(); } - if(!scisdigit(CUR_CHAR)) Error(_SC("exponent expected")); + if(!isdigit(CUR_CHAR)) Error("exponent expected"); } APPEND_CHAR(CUR_CHAR); @@ -444,7 +459,7 @@ SQInteger SQLexer::ReadNumber() switch(type) { case TSCIENTIFIC: case TFLOAT: - _fvalue = (SQFloat)scstrtod(&_longstr[0],&sTemp); + _fvalue = (SQFloat)strtod(&_longstr[0],&sTemp); return TK_FLOAT; case TINT: LexInteger(&_longstr[0],(SQUnsignedInteger *)&_nvalue); @@ -466,7 +481,7 @@ SQInteger SQLexer::ReadID() do { APPEND_CHAR(CUR_CHAR); NEXT(); - } while(scisalnum(CUR_CHAR) || CUR_CHAR == _SC('_')); + } while(isalnum(CUR_CHAR) || CUR_CHAR == '_'); TERMINATE_BUFFER(); res = GetIDType(&_longstr[0]); if(res == TK_IDENTIFIER || res == TK_CONSTRUCTOR) { diff --git a/src/3rdparty/squirrel/squirrel/sqlexer.h b/src/3rdparty/squirrel/squirrel/sqlexer.h index 1d81ab3c8b..b53b309d6b 100644 --- a/src/3rdparty/squirrel/squirrel/sqlexer.h +++ b/src/3rdparty/squirrel/squirrel/sqlexer.h @@ -2,25 +2,26 @@ #ifndef _SQLEXER_H_ #define _SQLEXER_H_ -typedef unsigned short LexChar; - struct SQLexer { - SQLexer(); ~SQLexer(); - void Init(SQSharedState *ss,SQLEXREADFUNC rg,SQUserPointer up,CompilerErrorFunc efunc,void *ed); - void Error(const SQChar *err); + SQLexer(SQSharedState *ss,SQLEXREADFUNC rg,SQUserPointer up,CompilerErrorFunc efunc,void *ed); + NORETURN void Error(const SQChar *err); SQInteger Lex(); const SQChar *Tok2Str(SQInteger tok); private: SQInteger GetIDType(SQChar *s); - SQInteger ReadString(SQChar ndelim,bool verbatim); + SQInteger ReadString(WChar ndelim,bool verbatim); SQInteger ReadNumber(); void LexBlockComment(); SQInteger ReadID(); void Next(); SQInteger _curtoken; SQTable *_keywords; + void INIT_TEMP_STRING() { _longstr.resize(0); } + void APPEND_CHAR(WChar c); + void TERMINATE_BUFFER() { _longstr.push_back('\0'); } + public: SQInteger _prevtoken; SQInteger _currentline; @@ -31,7 +32,7 @@ public: SQFloat _fvalue; SQLEXREADFUNC _readf; SQUserPointer _up; - LexChar _currdata; + WChar _currdata; SQSharedState *_sharedstate; sqvector _longstr; CompilerErrorFunc _errfunc; diff --git a/src/3rdparty/squirrel/squirrel/sqmem.cpp b/src/3rdparty/squirrel/squirrel/sqmem.cpp index 26d07047ed..5c1b3966aa 100644 --- a/src/3rdparty/squirrel/squirrel/sqmem.cpp +++ b/src/3rdparty/squirrel/squirrel/sqmem.cpp @@ -1,9 +1,16 @@ /* - see copyright notice in squirrel.h -*/ -#include "sqpcheader.h" -void *sq_vm_malloc(SQUnsignedInteger size){ return malloc((size_t)size); } + * see copyright notice in squirrel.h + */ -void *sq_vm_realloc(void *p, SQUnsignedInteger oldsize, SQUnsignedInteger size){ return realloc(p, (size_t)size); } +#include "../../../stdafx.h" + +#include "sqpcheader.h" + +#include "../../../core/alloc_func.hpp" +#include "../../../safeguards.h" + +void *sq_vm_malloc(SQUnsignedInteger size){ return MallocT((size_t)size); } + +void *sq_vm_realloc(void *p, SQUnsignedInteger oldsize, SQUnsignedInteger size){ return ReallocT(static_cast(p), (size_t)size); } void sq_vm_free(void *p, SQUnsignedInteger size){ free(p); } diff --git a/src/3rdparty/squirrel/squirrel/sqobject.cpp b/src/3rdparty/squirrel/squirrel/sqobject.cpp index c19e71fa9b..d48baca1e9 100644 --- a/src/3rdparty/squirrel/squirrel/sqobject.cpp +++ b/src/3rdparty/squirrel/squirrel/sqobject.cpp @@ -1,6 +1,9 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include "sqpcheader.h" #include "sqvm.h" #include "sqstring.h" @@ -11,30 +14,32 @@ #include "sqclass.h" #include "sqclosure.h" +#include "../../../safeguards.h" + const SQChar *IdType2Name(SQObjectType type) { switch(_RAW_TYPE(type)) { - case _RT_NULL:return _SC("null"); - case _RT_INTEGER:return _SC("integer"); - case _RT_FLOAT:return _SC("float"); - case _RT_BOOL:return _SC("bool"); - case _RT_STRING:return _SC("string"); - case _RT_TABLE:return _SC("table"); - case _RT_ARRAY:return _SC("array"); - case _RT_GENERATOR:return _SC("generator"); + case _RT_NULL:return "null"; + case _RT_INTEGER:return "integer"; + case _RT_FLOAT:return "float"; + case _RT_BOOL:return "bool"; + case _RT_STRING:return "string"; + case _RT_TABLE:return "table"; + case _RT_ARRAY:return "array"; + case _RT_GENERATOR:return "generator"; case _RT_CLOSURE: case _RT_NATIVECLOSURE: - return _SC("function"); + return "function"; case _RT_USERDATA: case _RT_USERPOINTER: - return _SC("userdata"); - case _RT_THREAD: return _SC("thread"); - case _RT_FUNCPROTO: return _SC("function"); - case _RT_CLASS: return _SC("class"); - case _RT_INSTANCE: return _SC("instance"); - case _RT_WEAKREF: return _SC("weakref"); + return "userdata"; + case _RT_THREAD: return "thread"; + case _RT_FUNCPROTO: return "function"; + case _RT_CLASS: return "class"; + case _RT_INSTANCE: return "instance"; + case _RT_WEAKREF: return "weakref"; default: return NULL; } @@ -130,8 +135,8 @@ bool SQDelegable::SetDelegate(SQTable *mt) bool SQGenerator::Yield(SQVM *v) { - if(_state==eSuspended) { v->Raise_Error(_SC("internal vm error, yielding dead generator")); return false;} - if(_state==eDead) { v->Raise_Error(_SC("internal vm error, yielding a dead generator")); return false; } + if(_state==eSuspended) { v->Raise_Error("internal vm error, yielding dead generator"); return false;} + if(_state==eDead) { v->Raise_Error("internal vm error, yielding a dead generator"); return false; } SQInteger size = v->_top-v->_stackbase; _ci=*v->ci; _stack.resize(size); @@ -156,8 +161,8 @@ bool SQGenerator::Yield(SQVM *v) bool SQGenerator::Resume(SQVM *v,SQInteger target) { SQInteger size=_stack.size(); - if(_state==eDead){ v->Raise_Error(_SC("resuming dead generator")); return false; } - if(_state==eRunning){ v->Raise_Error(_SC("resuming active generator")); return false; } + if(_state==eDead){ v->Raise_Error("resuming dead generator"); return false; } + if(_state==eRunning){ v->Raise_Error("resuming active generator"); return false; } SQInteger prevtop=v->_top-v->_stackbase; PUSH_CALLINFO(v,_ci); SQInteger oldstackbase=v->_stackbase; @@ -184,7 +189,7 @@ bool SQGenerator::Resume(SQVM *v,SQInteger target) v->ci->_prevstkbase = (SQInt32)(v->_stackbase - oldstackbase); _state=eRunning; if (type(v->_debughook) != OT_NULL && _rawval(v->_debughook) != _rawval(v->ci->_closure)) - v->CallDebugHook(_SC('c')); + v->CallDebugHook('c'); return true; } @@ -232,7 +237,7 @@ SQInteger SQFunctionProto::GetLine(SQInstruction *curr) bool SafeWrite(HSQUIRRELVM v,SQWRITEFUNC write,SQUserPointer up,SQUserPointer dest,SQInteger size) { if(write(up,dest,size) != size) { - v->Raise_Error(_SC("io error (write function failure)")); + v->Raise_Error("io error (write function failure)"); return false; } return true; @@ -241,7 +246,7 @@ bool SafeWrite(HSQUIRRELVM v,SQWRITEFUNC write,SQUserPointer up,SQUserPointer de bool SafeRead(HSQUIRRELVM v,SQWRITEFUNC read,SQUserPointer up,SQUserPointer dest,SQInteger size) { if(size && read(up,dest,size) != size) { - v->Raise_Error(_SC("io error, read function failure, the origin stream could be corrupted/trucated")); + v->Raise_Error("io error, read function failure, the origin stream could be corrupted/trucated"); return false; } return true; @@ -257,7 +262,7 @@ bool CheckTag(HSQUIRRELVM v,SQWRITEFUNC read,SQUserPointer up,SQInteger tag) SQInteger t; _CHECK_IO(SafeRead(v,read,up,&t,sizeof(t))); if(t != tag){ - v->Raise_Error(_SC("invalid or corrupted closure stream")); + v->Raise_Error("invalid or corrupted closure stream"); return false; } return true; @@ -269,7 +274,7 @@ bool WriteObject(HSQUIRRELVM v,SQUserPointer up,SQWRITEFUNC write,SQObjectPtr &o switch(type(o)){ case OT_STRING: _CHECK_IO(SafeWrite(v,write,up,&_string(o)->_len,sizeof(SQInteger))); - _CHECK_IO(SafeWrite(v,write,up,_stringval(o),rsl(_string(o)->_len))); + _CHECK_IO(SafeWrite(v,write,up,_stringval(o),_string(o)->_len)); break; case OT_INTEGER: _CHECK_IO(SafeWrite(v,write,up,&_integer(o),sizeof(SQInteger)));break; @@ -278,7 +283,7 @@ bool WriteObject(HSQUIRRELVM v,SQUserPointer up,SQWRITEFUNC write,SQObjectPtr &o case OT_NULL: break; default: - v->Raise_Error(_SC("cannot serialize a %s"),GetTypeName(o)); + v->Raise_Error("cannot serialize a %s",GetTypeName(o)); return false; } return true; @@ -292,7 +297,7 @@ bool ReadObject(HSQUIRRELVM v,SQUserPointer up,SQREADFUNC read,SQObjectPtr &o) case OT_STRING:{ SQInteger len; _CHECK_IO(SafeRead(v,read,up,&len,sizeof(SQInteger))); - _CHECK_IO(SafeRead(v,read,up,_ss(v)->GetScratchPad(rsl(len)),rsl(len))); + _CHECK_IO(SafeRead(v,read,up,_ss(v)->GetScratchPad(len),len)); o=SQString::Create(_ss(v),_ss(v)->GetScratchPad(-1),len); } break; @@ -308,7 +313,7 @@ bool ReadObject(HSQUIRRELVM v,SQUserPointer up,SQREADFUNC read,SQObjectPtr &o) o=_null_; break; default: - v->Raise_Error(_SC("cannot serialize a %s"),IdType2Name(t)); + v->Raise_Error("cannot serialize a %s",IdType2Name(t)); return false; } return true; diff --git a/src/3rdparty/squirrel/squirrel/sqobject.h b/src/3rdparty/squirrel/squirrel/sqobject.h index ac367ae02c..d71e515a8d 100644 --- a/src/3rdparty/squirrel/squirrel/sqobject.h +++ b/src/3rdparty/squirrel/squirrel/sqobject.h @@ -32,24 +32,24 @@ enum SQMetaMethod{ MT_LAST = 18 }; -#define MM_ADD _SC("_add") -#define MM_SUB _SC("_sub") -#define MM_MUL _SC("_mul") -#define MM_DIV _SC("_div") -#define MM_UNM _SC("_unm") -#define MM_MODULO _SC("_modulo") -#define MM_SET _SC("_set") -#define MM_GET _SC("_get") -#define MM_TYPEOF _SC("_typeof") -#define MM_NEXTI _SC("_nexti") -#define MM_CMP _SC("_cmp") -#define MM_CALL _SC("_call") -#define MM_CLONED _SC("_cloned") -#define MM_NEWSLOT _SC("_newslot") -#define MM_DELSLOT _SC("_delslot") -#define MM_TOSTRING _SC("_tostring") -#define MM_NEWMEMBER _SC("_newmember") -#define MM_INHERITED _SC("_inherited") +#define MM_ADD "_add" +#define MM_SUB "_sub" +#define MM_MUL "_mul" +#define MM_DIV "_div" +#define MM_UNM "_unm" +#define MM_MODULO "_modulo" +#define MM_SET "_set" +#define MM_GET "_get" +#define MM_TYPEOF "_typeof" +#define MM_NEXTI "_nexti" +#define MM_CMP "_cmp" +#define MM_CALL "_call" +#define MM_CLONED "_cloned" +#define MM_NEWSLOT "_newslot" +#define MM_DELSLOT "_delslot" +#define MM_TOSTRING "_tostring" +#define MM_NEWMEMBER "_newmember" +#define MM_INHERITED "_inherited" #define MINPOWER2 4 diff --git a/src/3rdparty/squirrel/squirrel/sqopcodes.h b/src/3rdparty/squirrel/squirrel/sqopcodes.h index d20ef4f3f5..a9e4a8743c 100644 --- a/src/3rdparty/squirrel/squirrel/sqopcodes.h +++ b/src/3rdparty/squirrel/squirrel/sqopcodes.h @@ -92,8 +92,7 @@ struct SQInstructionDesc { struct SQInstruction { - SQInstruction(){}; - SQInstruction(SQOpcode _op,SQInteger a0=0,SQInteger a1=0,SQInteger a2=0,SQInteger a3=0) + SQInstruction(SQOpcode _op=_OP_SCOPE_END,SQInteger a0=0,SQInteger a1=0,SQInteger a2=0,SQInteger a3=0) { op = _op; _arg0 = (unsigned char)a0;_arg1 = (SQInt32)a1; _arg2 = (unsigned char)a2;_arg3 = (unsigned char)a3; diff --git a/src/3rdparty/squirrel/squirrel/sqpcheader.h b/src/3rdparty/squirrel/squirrel/sqpcheader.h index db49f5e0d1..3cebdd11ac 100644 --- a/src/3rdparty/squirrel/squirrel/sqpcheader.h +++ b/src/3rdparty/squirrel/squirrel/sqpcheader.h @@ -6,10 +6,6 @@ #include #endif -#include -#include -#include -#include #include //squirrel stuff #include diff --git a/src/3rdparty/squirrel/squirrel/sqstate.cpp b/src/3rdparty/squirrel/squirrel/sqstate.cpp index 659d59c176..35878e197b 100644 --- a/src/3rdparty/squirrel/squirrel/sqstate.cpp +++ b/src/3rdparty/squirrel/squirrel/sqstate.cpp @@ -1,6 +1,9 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include "sqpcheader.h" #include "sqopcodes.h" #include "sqvm.h" @@ -12,20 +15,14 @@ #include "squserdata.h" #include "sqclass.h" +#include "../../../safeguards.h" + SQObjectPtr _null_; SQObjectPtr _true_(true); SQObjectPtr _false_(false); SQObjectPtr _one_((SQInteger)1); SQObjectPtr _minusone_((SQInteger)-1); -SQSharedState::SQSharedState() -{ - _compilererrorhandler = NULL; - _printfunc = NULL; - _debuginfo = false; - _notifyallexceptions = false; -} - #define newsysstring(s) { \ _systemstrings->push_back(SQString::Create(this,s)); \ } @@ -94,8 +91,12 @@ SQTable *CreateDefaultDelegate(SQSharedState *ss,SQRegFunction *funcz) return t; } -void SQSharedState::Init() +SQSharedState::SQSharedState() { + _compilererrorhandler = NULL; + _printfunc = NULL; + _debuginfo = false; + _notifyallexceptions = false; _scratchpad=NULL; _scratchpadsize=0; #ifndef NO_GARBAGE_COLLECTOR @@ -108,21 +109,21 @@ void SQSharedState::Init() _metamethodsmap = SQTable::Create(this,MT_LAST-1); //adding type strings to avoid memory trashing //types names - newsysstring(_SC("null")); - newsysstring(_SC("table")); - newsysstring(_SC("array")); - newsysstring(_SC("closure")); - newsysstring(_SC("string")); - newsysstring(_SC("userdata")); - newsysstring(_SC("integer")); - newsysstring(_SC("float")); - newsysstring(_SC("userpointer")); - newsysstring(_SC("function")); - newsysstring(_SC("generator")); - newsysstring(_SC("thread")); - newsysstring(_SC("class")); - newsysstring(_SC("instance")); - newsysstring(_SC("bool")); + newsysstring("null"); + newsysstring("table"); + newsysstring("array"); + newsysstring("closure"); + newsysstring("string"); + newsysstring("userdata"); + newsysstring("integer"); + newsysstring("float"); + newsysstring("userpointer"); + newsysstring("function"); + newsysstring("generator"); + newsysstring("thread"); + newsysstring("class"); + newsysstring("instance"); + newsysstring("bool"); //meta methods newmetamethod(MM_ADD); newmetamethod(MM_SUB); @@ -143,7 +144,7 @@ void SQSharedState::Init() newmetamethod(MM_NEWMEMBER); newmetamethod(MM_INHERITED); - _constructoridx = SQString::Create(this,_SC("constructor")); + _constructoridx = SQString::Create(this,"constructor"); _registry = SQTable::Create(this,0); _consts = SQTable::Create(this,0); _table_default_delegate = CreateDefaultDelegate(this,_table_default_delegate_funcz); @@ -486,10 +487,10 @@ void RefTable::AllocNodes(SQUnsignedInteger size) ////////////////////////////////////////////////////////////////////////// //SQStringTable /* -* The following code is based on Lua 4.0 (Copyright 1994-2002 Tecgraf, PUC-Rio.) -* http://www.lua.org/copyright.html#4 -* http://www.lua.org/source/4.0.1/src_lstring.c.html -*/ + * The following code is based on Lua 4.0 (Copyright 1994-2002 Tecgraf, PUC-Rio.) + * http://www.lua.org/copyright.html#4 + * http://www.lua.org/source/4.0.1/src_lstring.c.html + */ SQStringTable::SQStringTable() { @@ -513,20 +514,16 @@ void SQStringTable::AllocNodes(SQInteger size) SQString *SQStringTable::Add(const SQChar *news,SQInteger len) { if(len<0) - len = (SQInteger)scstrlen(news); + len = (SQInteger)strlen(news); SQHash h = ::_hashstr(news,(size_t)len)&(_numofslots-1); SQString *s; for (s = _strings[h]; s; s = s->_next){ - if(s->_len == len && (!memcmp(news,s->_val,(size_t)rsl(len)))) + if(s->_len == len && (!memcmp(news,s->_val,(size_t)len))) return s; //found } - SQString *t=(SQString *)SQ_MALLOC(rsl(len)+sizeof(SQString)); - new (t) SQString; - memcpy(t->_val,news,(size_t)rsl(len)); - t->_val[len] = _SC('\0'); - t->_len = len; - t->_hash = ::_hashstr(news,(size_t)len); + SQString *t=(SQString *)SQ_MALLOC(len+sizeof(SQString)); + new (t) SQString(news, len); t->_next = _strings[h]; _strings[h] = t; _slotused++; @@ -535,6 +532,16 @@ SQString *SQStringTable::Add(const SQChar *news,SQInteger len) return t; } +SQString::SQString(const SQChar *news, SQInteger len) +{ + memcpy(_val,news,(size_t)len); + _val[len] = '\0'; + _len = len; + _hash = ::_hashstr(news,(size_t)len); + _next = NULL; + _sharedstate = NULL; +} + void SQStringTable::Resize(SQInteger size) { SQInteger oldsize=_numofslots; @@ -568,7 +575,7 @@ void SQStringTable::Remove(SQString *bs) _slotused--; SQInteger slen = s->_len; s->~SQString(); - SQ_FREE(s,sizeof(SQString) + rsl(slen)); + SQ_FREE(s,sizeof(SQString) + slen); return; } prev = s; diff --git a/src/3rdparty/squirrel/squirrel/sqstate.h b/src/3rdparty/squirrel/squirrel/sqstate.h index 302f68611a..da6bf9ae64 100644 --- a/src/3rdparty/squirrel/squirrel/sqstate.h +++ b/src/3rdparty/squirrel/squirrel/sqstate.h @@ -58,7 +58,6 @@ struct SQSharedState { SQSharedState(); ~SQSharedState(); - void Init(); public: SQChar* GetScratchPad(SQInteger size); SQInteger GetMetaMethodIdxByName(const SQObjectPtr &name); @@ -123,12 +122,6 @@ private: #define _instance_ddel _table(_sharedstate->_instance_default_delegate) #define _weakref_ddel _table(_sharedstate->_weakref_default_delegate) -#ifdef SQUNICODE //rsl REAL STRING LEN -#define rsl(l) ((l)<<1) -#else -#define rsl(l) (l) -#endif - extern SQObjectPtr _null_; extern SQObjectPtr _true_; extern SQObjectPtr _false_; diff --git a/src/3rdparty/squirrel/squirrel/sqstring.h b/src/3rdparty/squirrel/squirrel/sqstring.h index 14f09e1b0f..a5f298e1e2 100644 --- a/src/3rdparty/squirrel/squirrel/sqstring.h +++ b/src/3rdparty/squirrel/squirrel/sqstring.h @@ -13,7 +13,7 @@ inline SQHash _hashstr (const SQChar *s, size_t l) struct SQString : public SQRefCounted { - SQString(){} + SQString(const SQChar *news, SQInteger len); ~SQString(){} public: static SQString *Create(SQSharedState *ss, const SQChar *, SQInteger len = -1 ); diff --git a/src/3rdparty/squirrel/squirrel/sqtable.cpp b/src/3rdparty/squirrel/squirrel/sqtable.cpp index bb5feba3e7..60146fe738 100644 --- a/src/3rdparty/squirrel/squirrel/sqtable.cpp +++ b/src/3rdparty/squirrel/squirrel/sqtable.cpp @@ -1,12 +1,17 @@ /* -see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include "sqpcheader.h" #include "sqvm.h" #include "sqtable.h" #include "sqfuncproto.h" #include "sqclosure.h" +#include "../../../safeguards.h" + SQTable::SQTable(SQSharedState *ss,SQInteger nInitialSize) { SQInteger pow2size=MINPOWER2; diff --git a/src/3rdparty/squirrel/squirrel/sqtable.h b/src/3rdparty/squirrel/squirrel/sqtable.h index 2b4a3d4de4..52d9ba41ab 100644 --- a/src/3rdparty/squirrel/squirrel/sqtable.h +++ b/src/3rdparty/squirrel/squirrel/sqtable.h @@ -2,10 +2,10 @@ #ifndef _SQTABLE_H_ #define _SQTABLE_H_ /* -* The following code is based on Lua 4.0 (Copyright 1994-2002 Tecgraf, PUC-Rio.) -* http://www.lua.org/copyright.html#4 -* http://www.lua.org/source/4.0.1/src_ltable.c.html -*/ + * The following code is based on Lua 4.0 (Copyright 1994-2002 Tecgraf, PUC-Rio.) + * http://www.lua.org/copyright.html#4 + * http://www.lua.org/source/4.0.1/src_ltable.c.html + */ #include "sqstring.h" diff --git a/src/3rdparty/squirrel/squirrel/squirrel.dsp b/src/3rdparty/squirrel/squirrel/squirrel.dsp deleted file mode 100644 index eb8a0c1774..0000000000 --- a/src/3rdparty/squirrel/squirrel/squirrel.dsp +++ /dev/null @@ -1,302 +0,0 @@ -# Microsoft Developer Studio Project File - Name="squirrel" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=squirrel - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "squirrel.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "squirrel.mak" CFG="squirrel - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "squirrel - Win32 Release" (based on "Win32 (x86) Static Library") -!MESSAGE "squirrel - Win32 Debug" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_LocalPath ".." -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "squirrel - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /W3 /GX /O2 /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D "GARBAGE_COLLECTOR" /YX /FD /c -# ADD BASE RSC /l 0x410 /d "NDEBUG" -# ADD RSC /l 0x410 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\lib\squirrel.lib" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c -# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "GARBAGE_COLLECTOR" /YX /FD /GZ /c -# ADD BASE RSC /l 0x410 /d "_DEBUG" -# ADD RSC /l 0x410 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\lib\squirrel.lib" - -!ENDIF - -# Begin Target - -# Name "squirrel - Win32 Release" -# Name "squirrel - Win32 Debug" -# Begin Group "Source Files" - -# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" -# Begin Source File - -SOURCE=.\sqapi.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqbaselib.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqcompiler.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqdebug.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqfuncstate.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqlexer.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqmem.cpp -# End Source File -# Begin Source File - -SOURCE=.\sqobject.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqstate.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqtable.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqclass.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=.\sqvm.cpp - -!IF "$(CFG)" == "squirrel - Win32 Release" - -!ELSEIF "$(CFG)" == "squirrel - Win32 Debug" - -# ADD CPP /YX"stdafx.h" - -!ENDIF - -# End Source File -# End Group -# Begin Group "Header Files" - -# PROP Default_Filter "h;hpp;hxx;hm;inl" -# Begin Source File - -SOURCE=.\sqarray.h -# End Source File -# Begin Source File - -SOURCE=.\sqclosure.h -# End Source File -# Begin Source File - -SOURCE=.\sqcompiler.h -# End Source File -# Begin Source File - -SOURCE=.\sqfuncproto.h -# End Source File -# Begin Source File - -SOURCE=.\sqfuncstate.h -# End Source File -# Begin Source File - -SOURCE=.\sqlexer.h -# End Source File -# Begin Source File - -SOURCE=.\sqobject.h -# End Source File -# Begin Source File - -SOURCE=.\sqopcodes.h -# End Source File -# Begin Source File - -SOURCE=.\sqpcheader.h -# End Source File -# Begin Source File - -SOURCE=.\sqstate.h -# End Source File -# Begin Source File - -SOURCE=.\sqstring.h -# End Source File -# Begin Source File - -SOURCE=.\sqtable.h -# End Source File -# Begin Source File - -SOURCE=.\squserdata.h -# End Source File -# Begin Source File - -SOURCE=.\squtils.h -# End Source File -# Begin Source File - -SOURCE=.\sqclass.h -# End Source File -# Begin Source File - -SOURCE=.\sqvm.h -# End Source File -# End Group -# End Target -# End Project diff --git a/src/3rdparty/squirrel/squirrel/squserdata.h b/src/3rdparty/squirrel/squirrel/squserdata.h index 8b6b431481..3bf1a9dbad 100644 --- a/src/3rdparty/squirrel/squirrel/squserdata.h +++ b/src/3rdparty/squirrel/squirrel/squserdata.h @@ -4,7 +4,8 @@ struct SQUserData : SQDelegable { - SQUserData(SQSharedState *ss){ _delegate = 0; _hook = NULL; INIT_CHAIN(); ADD_TO_CHAIN(&_ss(this)->_gc_chain, this); } + SQUserData(SQSharedState *ss, SQInteger size){ _delegate = 0; _hook = NULL; INIT_CHAIN(); ADD_TO_CHAIN(&_ss(this)->_gc_chain, this); _size = size; _typetag = 0; +} ~SQUserData() { REMOVE_FROM_CHAIN(&_ss(this)->_gc_chain, this); @@ -13,9 +14,7 @@ struct SQUserData : SQDelegable static SQUserData* Create(SQSharedState *ss, SQInteger size) { SQUserData* ud = (SQUserData*)SQ_MALLOC(sizeof(SQUserData)+(size-1)); - new (ud) SQUserData(ss); - ud->_size = size; - ud->_typetag = 0; + new (ud) SQUserData(ss, size); return ud; } #ifndef NO_GARBAGE_COLLECTOR diff --git a/src/3rdparty/squirrel/squirrel/sqvm.cpp b/src/3rdparty/squirrel/squirrel/sqvm.cpp index 6f2894774a..973002b49d 100644 --- a/src/3rdparty/squirrel/squirrel/sqvm.cpp +++ b/src/3rdparty/squirrel/squirrel/sqvm.cpp @@ -1,10 +1,12 @@ /* - see copyright notice in squirrel.h -*/ + * see copyright notice in squirrel.h + */ + +#include "../../../stdafx.h" + #include #include "sqpcheader.h" #include -#include #include "sqopcodes.h" #include "sqfuncproto.h" #include "sqvm.h" @@ -15,6 +17,10 @@ #include "sqarray.h" #include "sqclass.h" +#include "../../../string_func.h" + +#include "../../../safeguards.h" + #define TOP() (_stack._vals[_top-1]) #define CLEARSTACK(_last_top) { if((_last_top) >= _top) ClearStack(_last_top); } @@ -45,10 +51,10 @@ bool SQVM::BW_OP(SQUnsignedInteger op,SQObjectPtr &trg,const SQObjectPtr &o1,con case BW_SHIFTL: res = i1 << i2; break; case BW_SHIFTR: res = i1 >> i2; break; case BW_USHIFTR:res = (SQInteger)(*((SQUnsignedInteger*)&i1) >> i2); break; - default: { Raise_Error(_SC("internal vm error bitwise op failed")); return false; } + default: { Raise_Error("internal vm error bitwise op failed"); return false; } } } - else { Raise_Error(_SC("bitwise op between '%s' and '%s'"),GetTypeName(o1),GetTypeName(o2)); return false;} + else { Raise_Error("bitwise op between '%s' and '%s'",GetTypeName(o1),GetTypeName(o2)); return false;} trg = res; return true; } @@ -61,11 +67,11 @@ bool SQVM::ARITH_OP(SQUnsignedInteger op,SQObjectPtr &trg,const SQObjectPtr &o1, switch(op) { case '+': res = i1 + i2; break; case '-': res = i1 - i2; break; - case '/': if(i2 == 0) { Raise_Error(_SC("division by zero")); return false; } + case '/': if(i2 == 0) { Raise_Error("division by zero"); return false; } res = i1 / i2; break; case '*': res = i1 * i2; break; - case '%': if(i2 == 0) { Raise_Error(_SC("modulo by zero")); return false; } + case '%': if(i2 == 0) { Raise_Error("modulo by zero"); return false; } res = i1 % i2; break; default: res = 0xDEADBEEF; @@ -88,7 +94,7 @@ bool SQVM::ARITH_OP(SQUnsignedInteger op,SQObjectPtr &trg,const SQObjectPtr &o1, if(!StringCat(o1, o2, trg)) return false; } else if(!ArithMetaMethod(op,o1,o2,trg)) { - Raise_Error(_SC("arith op %c on between '%s' and '%s'"),op,GetTypeName(o1),GetTypeName(o2)); return false; + Raise_Error("arith op %c on between '%s' and '%s'",op,GetTypeName(o1),GetTypeName(o2)); return false; } } return true; @@ -109,6 +115,11 @@ SQVM::SQVM(SQSharedState *ss) _can_suspend = false; _in_stackoverflow = false; _ops_till_suspend = 0; + _callsstack = NULL; + _callsstacksize = 0; + _alloccallsstacksize = 0; + _top = 0; + _stackbase = 0; ci = NULL; INIT_CHAIN();ADD_TO_CHAIN(&_ss(this)->_gc_chain,this); } @@ -137,11 +148,11 @@ bool SQVM::ArithMetaMethod(SQInteger op,const SQObjectPtr &o1,const SQObjectPtr { SQMetaMethod mm; switch(op){ - case _SC('+'): mm=MT_ADD; break; - case _SC('-'): mm=MT_SUB; break; - case _SC('/'): mm=MT_DIV; break; - case _SC('*'): mm=MT_MUL; break; - case _SC('%'): mm=MT_MODULO; break; + case '+': mm=MT_ADD; break; + case '-': mm=MT_SUB; break; + case '/': mm=MT_DIV; break; + case '*': mm=MT_MUL; break; + case '%': mm=MT_MODULO; break; default: mm = MT_ADD; assert(0); break; //shutup compiler } if(is_delegable(o1) && _delegable(o1)->_delegate) { @@ -173,7 +184,7 @@ bool SQVM::NEG_OP(SQObjectPtr &trg,const SQObjectPtr &o) } default:break; //shutup compiler } - Raise_Error(_SC("attempt to negate a %s"), GetTypeName(o)); + Raise_Error("attempt to negate a %s", GetTypeName(o)); return false; } @@ -185,7 +196,7 @@ bool SQVM::ObjCmp(const SQObjectPtr &o1,const SQObjectPtr &o2,SQInteger &result) SQObjectPtr res; switch(type(o1)){ case OT_STRING: - _RET_SUCCEED(scstrcmp(_stringval(o1),_stringval(o2))); + _RET_SUCCEED(strcmp(_stringval(o1),_stringval(o2))); case OT_INTEGER: /* FS#3954: wrong integer comparison */ _RET_SUCCEED((_integer(o1)<_integer(o2))?-1:(_integer(o1)==_integer(o2))?0:1); @@ -198,7 +209,7 @@ bool SQVM::ObjCmp(const SQObjectPtr &o1,const SQObjectPtr &o2,SQInteger &result) Push(o1);Push(o2); if(CallMetaMethod(_delegable(o1),MT_CMP,2,res)) { if(type(res) != OT_INTEGER) { - Raise_Error(_SC("_cmp must return an integer")); + Raise_Error("_cmp must return an integer"); return false; } _RET_SUCCEED(_integer(res)) @@ -251,18 +262,19 @@ bool SQVM::CMP_OP(CmpOP op, const SQObjectPtr &o1,const SQObjectPtr &o2,SQObject void SQVM::ToString(const SQObjectPtr &o,SQObjectPtr &res) { + char buf[64]; switch(type(o)) { case OT_STRING: res = o; return; case OT_FLOAT: - scsprintf(_sp(rsl(NUMBER_MAX_CHAR+1)),_SC("%g"),_float(o)); + seprintf(buf, lastof(buf),"%g",_float(o)); break; case OT_INTEGER: - scsprintf(_sp(rsl(NUMBER_MAX_CHAR+1)),SQ_PRINTF64,_integer(o)); + seprintf(buf, lastof(buf),OTTD_PRINTF64,_integer(o)); break; case OT_BOOL: - scsprintf(_sp(rsl(6)),_integer(o)?_SC("true"):_SC("false")); + seprintf(buf, lastof(buf),_integer(o)?"true":"false"); break; case OT_TABLE: case OT_USERDATA: @@ -276,9 +288,9 @@ void SQVM::ToString(const SQObjectPtr &o,SQObjectPtr &res) } } default: - scsprintf(_sp(rsl(sizeof(void*)+20)),_SC("(%s : 0x%p)"),GetTypeName(o),(void*)_rawval(o)); + seprintf(buf, lastof(buf),"(%s : 0x%p)",GetTypeName(o),(void*)_rawval(o)); } - res = SQString::Create(_ss(this),_spval); + res = SQString::Create(_ss(this),buf); } @@ -288,9 +300,9 @@ bool SQVM::StringCat(const SQObjectPtr &str,const SQObjectPtr &obj,SQObjectPtr & ToString(str, a); ToString(obj, b); SQInteger l = _string(a)->_len , ol = _string(b)->_len; - SQChar *s = _sp(rsl(l + ol + 1)); - memcpy(s, _stringval(a), (size_t)rsl(l)); - memcpy(s + l, _stringval(b), (size_t)rsl(ol)); + SQChar *s = _sp(l + ol + 1); + memcpy(s, _stringval(a), (size_t)l); + memcpy(s + l, _stringval(b), (size_t)ol); dest = SQString::Create(_ss(this), _spval, l + ol); return true; } @@ -346,7 +358,7 @@ bool SQVM::StartCall(SQClosure *closure,SQInteger target,SQInteger args,SQIntege else if(func->_varparams) { if (nargs < paramssize) { - Raise_Error(_SC("wrong number of parameters")); + Raise_Error("wrong number of parameters"); return false; } for(SQInteger n = 0; n < nargs - paramssize; n++) { @@ -355,7 +367,7 @@ bool SQVM::StartCall(SQClosure *closure,SQInteger target,SQInteger args,SQIntege } } else { - Raise_Error(_SC("wrong number of parameters")); + Raise_Error("wrong number of parameters"); return false; } } @@ -392,7 +404,7 @@ bool SQVM::StartCall(SQClosure *closure,SQInteger target,SQInteger args,SQIntege _top = newtop; _stackbase = stackbase; if (type(_debughook) != OT_NULL && _rawval(_debughook) != _rawval(ci->_closure)) - CallDebugHook(_SC('c')); + CallDebugHook('c'); return true; } @@ -400,7 +412,7 @@ bool SQVM::Return(SQInteger _arg0, SQInteger _arg1, SQObjectPtr &retval) { if (type(_debughook) != OT_NULL && _rawval(_debughook) != _rawval(ci->_closure)) for(SQInteger i=0;i_ncalls;i++) - CallDebugHook(_SC('r')); + CallDebugHook('r'); SQBool broot = ci->_root; SQInteger last_top = _top; @@ -466,9 +478,9 @@ bool SQVM::DerefInc(SQInteger op,SQObjectPtr &target, SQObjectPtr &self, SQObjec SQRESULT SQVM::Suspend() { if (_suspended) - return sq_throwerror(this, _SC("cannot suspend an already suspended vm")); + return sq_throwerror(this, "cannot suspend an already suspended vm"); if (_nnativecalls!=2) - return sq_throwerror(this, _SC("cannot suspend through native calls/metamethods")); + return sq_throwerror(this, "cannot suspend through native calls/metamethods"); return SQ_SUSPEND_FLAG; } @@ -506,12 +518,12 @@ bool SQVM::FOREACH_OP(SQObjectPtr &o1,SQObjectPtr &o2,SQObjectPtr o4 = o2 = itr; if(type(itr) == OT_NULL) _FINISH(exitpos); if(!Get(o1, itr, o3, false,false)) { - Raise_Error(_SC("_nexti returned an invalid idx")); + Raise_Error("_nexti returned an invalid idx"); return false; } _FINISH(1); } - Raise_Error(_SC("_nexti failed")); + Raise_Error("_nexti failed"); return false; } break; @@ -527,19 +539,20 @@ bool SQVM::FOREACH_OP(SQObjectPtr &o1,SQObjectPtr &o2,SQObjectPtr _generator(o1)->Resume(this, arg_2+1); _FINISH(0); } + /* FALL THROUGH */ default: - Raise_Error(_SC("cannot iterate %s"), GetTypeName(o1)); + Raise_Error("cannot iterate %s", GetTypeName(o1)); } return false; //cannot be hit(just to avoid warnings) } bool SQVM::DELEGATE_OP(SQObjectPtr &trg,SQObjectPtr &o1,SQObjectPtr &o2) { - if(type(o1) != OT_TABLE) { Raise_Error(_SC("delegating a '%s'"), GetTypeName(o1)); return false; } + if(type(o1) != OT_TABLE) { Raise_Error("delegating a '%s'", GetTypeName(o1)); return false; } switch(type(o2)) { case OT_TABLE: if(!_table(o1)->SetDelegate(_table(o2))){ - Raise_Error(_SC("delegate cycle detected")); + Raise_Error("delegate cycle detected"); return false; } break; @@ -547,7 +560,7 @@ bool SQVM::DELEGATE_OP(SQObjectPtr &trg,SQObjectPtr &o1,SQObjectPtr &o2) _table(o1)->SetDelegate(NULL); break; default: - Raise_Error(_SC("using '%s' as delegate"), GetTypeName(o2)); + Raise_Error("using '%s' as delegate", GetTypeName(o2)); return false; break; } @@ -599,15 +612,15 @@ bool SQVM::CLOSURE_OP(SQObjectPtr &target, SQFunctionProto *func) bool SQVM::GETVARGV_OP(SQObjectPtr &target,SQObjectPtr &index,CallInfo *ci) { if(ci->_vargs.size == 0) { - Raise_Error(_SC("the function doesn't have var args")); + Raise_Error("the function doesn't have var args"); return false; } if(!sq_isnumeric(index)){ - Raise_Error(_SC("indexing 'vargv' with %s"),GetTypeName(index)); + Raise_Error("indexing 'vargv' with %s",GetTypeName(index)); return false; } SQInteger idx = tointeger(index); - if(idx < 0 || idx >= ci->_vargs.size){ Raise_Error(_SC("vargv index out of range")); return false; } + if(idx < 0 || idx >= ci->_vargs.size){ Raise_Error("vargv index out of range"); return false; } target = _vargsstack[ci->_vargs.base+idx]; return true; } @@ -617,7 +630,7 @@ bool SQVM::CLASS_OP(SQObjectPtr &target,SQInteger baseclass,SQInteger attributes SQClass *base = NULL; SQObjectPtr attrs; if(baseclass != -1) { - if(type(_stack._vals[_stackbase+baseclass]) != OT_CLASS) { Raise_Error(_SC("trying to inherit from a %s"),GetTypeName(_stack._vals[_stackbase+baseclass])); return false; } + if(type(_stack._vals[_stackbase+baseclass]) != OT_CLASS) { Raise_Error("trying to inherit from a %s",GetTypeName(_stack._vals[_stackbase+baseclass])); return false; } base = _class(_stack._vals[_stackbase + baseclass]); } if(attributes != MAX_FUNC_STACKSIZE) { @@ -672,7 +685,7 @@ bool SQVM::GETPARENT_OP(SQObjectPtr &o,SQObjectPtr &target) case OT_CLASS: target = _class(o)->_base?_class(o)->_base:_null_; break; default: - Raise_Error(_SC("the %s type doesn't have a parent slot"), GetTypeName(o)); + Raise_Error("the %s type doesn't have a parent slot", GetTypeName(o)); return false; } return true; @@ -680,7 +693,7 @@ bool SQVM::GETPARENT_OP(SQObjectPtr &o,SQObjectPtr &target) bool SQVM::Execute(SQObjectPtr &closure, SQInteger target, SQInteger nargs, SQInteger stackbase,SQObjectPtr &outres, SQBool raiseerror,ExecutionType et) { - if ((_nnativecalls + 1) > MAX_NATIVE_CALLS) { Raise_Error(_SC("Native stack overflow")); return false; } + if ((_nnativecalls + 1) > MAX_NATIVE_CALLS) { Raise_Error("Native stack overflow"); return false; } _nnativecalls++; AutoDec ad(&_nnativecalls); SQInteger traps = 0; @@ -735,12 +748,12 @@ exception_restore: const SQInstruction &_i_ = *ci->_ip++; //dumpstack(_stackbase); - //scprintf("%s %d %d %d %d\n",g_InstrDesc[_i_.op].name,arg0,arg1,arg2,arg3); + //printf("%s %d %d %d %d\n",g_InstrDesc[_i_.op].name,arg0,arg1,arg2,arg3); switch(_i_.op) { case _OP_LINE: if(type(_debughook) != OT_NULL && _rawval(_debughook) != _rawval(ci->_closure)) - CallDebugHook(_SC('l'),arg1); + CallDebugHook('l',arg1); continue; case _OP_LOAD: TARGET = ci->_literals[arg1]; continue; case _OP_LOADINT: TARGET = (SQInteger)arg1; continue; @@ -756,6 +769,7 @@ exception_restore: ct_stackbase = _stackbase; goto common_call; } + /* FALL THROUGH */ case _OP_CALL: { ct_tailcall = false; ct_target = arg0; @@ -825,11 +839,11 @@ common_call: STK(ct_target) = clo; break; } - Raise_Error(_SC("attempt to call '%s'"), GetTypeName(clo)); + Raise_Error("attempt to call '%s'", GetTypeName(clo)); SQ_THROW(); } default: - Raise_Error(_SC("attempt to call '%s'"), GetTypeName(clo)); + Raise_Error("attempt to call '%s'", GetTypeName(clo)); SQ_THROW(); } } @@ -931,7 +945,7 @@ common_call: case _OP_EXISTS: TARGET = Get(STK(arg1), STK(arg2), temp_reg, true,false)?_true_:_false_;continue; case _OP_INSTANCEOF: if(type(STK(arg1)) != OT_CLASS || type(STK(arg2)) != OT_INSTANCE) - {Raise_Error(_SC("cannot apply instanceof between a %s and a %s"),GetTypeName(STK(arg1)),GetTypeName(STK(arg2))); SQ_THROW();} + {Raise_Error("cannot apply instanceof between a %s and a %s",GetTypeName(STK(arg1)),GetTypeName(STK(arg2))); SQ_THROW();} TARGET = _instance(STK(arg2))->InstanceOf(_class(STK(arg1)))?_true_:_false_; continue; case _OP_AND: @@ -954,7 +968,7 @@ common_call: TARGET = SQInteger(~t); continue; } - Raise_Error(_SC("attempt to perform a bitwise op on a %s"), GetTypeName(STK(arg1))); + Raise_Error("attempt to perform a bitwise op on a %s", GetTypeName(STK(arg1))); SQ_THROW(); case _OP_CLOSURE: { SQClosure *c = ci->_closure._unVal.pClosure; @@ -969,7 +983,7 @@ common_call: traps -= ci->_etraps; if(sarg1 != MAX_FUNC_STACKSIZE) STK(arg1) = temp_reg; } - else { Raise_Error(_SC("trying to yield a '%s',only genenerator can be yielded"), GetTypeName(ci->_closure)); SQ_THROW();} + else { Raise_Error("trying to yield a '%s',only genenerator can be yielded", GetTypeName(ci->_closure)); SQ_THROW();} if(Return(arg0, arg1, temp_reg)){ assert(traps == 0); outres = temp_reg; @@ -979,7 +993,7 @@ common_call: } continue; case _OP_RESUME: - if(type(STK(arg1)) != OT_GENERATOR){ Raise_Error(_SC("trying to resume a '%s',only genenerator can be resumed"), GetTypeName(STK(arg1))); SQ_THROW();} + if(type(STK(arg1)) != OT_GENERATOR){ Raise_Error("trying to resume a '%s',only genenerator can be resumed", GetTypeName(STK(arg1))); SQ_THROW();} _GUARD(_generator(STK(arg1))->Resume(this, arg0)); traps += ci->_etraps; continue; @@ -995,7 +1009,7 @@ common_call: case _OP_DELEGATE: _GUARD(DELEGATE_OP(TARGET,STK(arg1),STK(arg2))); continue; case _OP_CLONE: if(!Clone(STK(arg1), TARGET)) - { Raise_Error(_SC("cloning a %s"), GetTypeName(STK(arg1))); SQ_THROW();} + { Raise_Error("cloning a %s", GetTypeName(STK(arg1))); SQ_THROW();} continue; case _OP_TYPEOF: TypeOf(STK(arg1), TARGET); continue; case _OP_PUSHTRAP:{ @@ -1011,7 +1025,7 @@ common_call: } } continue; - case _OP_THROW: Raise_Error(TARGET); SQ_THROW(); continue; + case _OP_THROW: Raise_Error(TARGET); SQ_THROW(); case _OP_CLASS: _GUARD(CLASS_OP(TARGET,arg1,arg2)); continue; case _OP_NEWSLOTA: bool bstatic = (arg0&NEW_SLOT_STATIC_FLAG)?true:false; @@ -1121,11 +1135,11 @@ void SQVM::CallDebugHook(SQInteger type,SQInteger forcedline) bool SQVM::CallNative(SQNativeClosure *nclosure,SQInteger nargs,SQInteger stackbase,SQObjectPtr &retval,bool &suspend) { - if (_nnativecalls + 1 > MAX_NATIVE_CALLS) { Raise_Error(_SC("Native stack overflow")); return false; } + if (_nnativecalls + 1 > MAX_NATIVE_CALLS) { Raise_Error("Native stack overflow"); return false; } SQInteger nparamscheck = nclosure->_nparamscheck; if(((nparamscheck > 0) && (nparamscheck != nargs)) || ((nparamscheck < 0) && (nargs < (-nparamscheck)))) { - Raise_Error(_SC("wrong number of parameters")); + Raise_Error("wrong number of parameters"); return false; } @@ -1333,10 +1347,10 @@ bool SQVM::Set(const SQObjectPtr &self,const SQObjectPtr &key,const SQObjectPtr } break; case OT_ARRAY: - if(!sq_isnumeric(key)) {Raise_Error(_SC("indexing %s with %s"),GetTypeName(self),GetTypeName(key)); return false; } + if(!sq_isnumeric(key)) {Raise_Error("indexing %s with %s",GetTypeName(self),GetTypeName(key)); return false; } return _array(self)->Set(tointeger(key),val); default: - Raise_Error(_SC("trying to set '%s'"),GetTypeName(self)); + Raise_Error("trying to set '%s'",GetTypeName(self)); return false; } if(fetchroot) { @@ -1375,7 +1389,7 @@ cloned_mt: bool SQVM::NewSlot(const SQObjectPtr &self,const SQObjectPtr &key,const SQObjectPtr &val,bool bstatic) { - if(type(key) == OT_NULL) { Raise_Error(_SC("null cannot be used as index")); return false; } + if(type(key) == OT_NULL) { Raise_Error("null cannot be used as index"); return false; } switch(type(self)) { case OT_TABLE: { bool rawcall = true; @@ -1393,25 +1407,25 @@ bool SQVM::NewSlot(const SQObjectPtr &self,const SQObjectPtr &key,const SQObject SQObjectPtr res; Push(self);Push(key);Push(val); if(!CallMetaMethod(_instance(self),MT_NEWSLOT,3,res)) { - Raise_Error(_SC("class instances do not support the new slot operator")); + Raise_Error("class instances do not support the new slot operator"); return false; } break;} case OT_CLASS: if(!_class(self)->NewSlot(_ss(this),key,val,bstatic)) { if(_class(self)->_locked) { - Raise_Error(_SC("trying to modify a class that has already been instantiated")); + Raise_Error("trying to modify a class that has already been instantiated"); return false; } else { SQObjectPtr oval = PrintObjVal(key); - Raise_Error(_SC("the property '%s' already exists"),_stringval(oval)); + Raise_Error("the property '%s' already exists",_stringval(oval)); return false; } } break; default: - Raise_Error(_SC("indexing %s with %s"),GetTypeName(self),GetTypeName(key)); + Raise_Error("indexing %s with %s",GetTypeName(self),GetTypeName(key)); return false; break; } @@ -1442,7 +1456,7 @@ bool SQVM::DeleteSlot(const SQObjectPtr &self,const SQObjectPtr &key,SQObjectPtr } } else { - Raise_Error(_SC("cannot delete a slot from %s"),GetTypeName(self)); + Raise_Error("cannot delete a slot from %s",GetTypeName(self)); return false; } } @@ -1450,7 +1464,7 @@ bool SQVM::DeleteSlot(const SQObjectPtr &self,const SQObjectPtr &key,SQObjectPtr } break; default: - Raise_Error(_SC("attempt to delete a slot from a %s"),GetTypeName(self)); + Raise_Error("attempt to delete a slot from a %s",GetTypeName(self)); return false; } return true; @@ -1554,37 +1568,37 @@ void SQVM::dumpstack(SQInteger stackbase,bool dumpall) { SQInteger size=dumpall?_stack.size():_top; SQInteger n=0; - scprintf(_SC("\n>>>>stack dump<<<<\n")); + printf("\n>>>>stack dump<<<<\n"); CallInfo &ci=_callsstack[_callsstacksize-1]; - scprintf(_SC("IP: %p\n"),ci._ip); - scprintf(_SC("prev stack base: %d\n"),ci._prevstkbase); - scprintf(_SC("prev top: %d\n"),ci._prevtop); + printf("IP: %p\n",ci._ip); + printf("prev stack base: %d\n",ci._prevstkbase); + printf("prev top: %d\n",ci._prevtop); for(SQInteger i=0;i"));else scprintf(_SC(" ")); - scprintf(_SC("[%d]:"),n); + if(stackbase==i)printf(">");else printf(" "); + printf("[%d]:",n); switch(type(obj)){ - case OT_FLOAT: scprintf(_SC("FLOAT %.3f"),_float(obj));break; - case OT_INTEGER: scprintf(_SC("INTEGER %d"),_integer(obj));break; - case OT_BOOL: scprintf(_SC("BOOL %s"),_integer(obj)?"true":"false");break; - case OT_STRING: scprintf(_SC("STRING %s"),_stringval(obj));break; - case OT_NULL: scprintf(_SC("NULL")); break; - case OT_TABLE: scprintf(_SC("TABLE %p[%p]"),_table(obj),_table(obj)->_delegate);break; - case OT_ARRAY: scprintf(_SC("ARRAY %p"),_array(obj));break; - case OT_CLOSURE: scprintf(_SC("CLOSURE [%p]"),_closure(obj));break; - case OT_NATIVECLOSURE: scprintf(_SC("NATIVECLOSURE"));break; - case OT_USERDATA: scprintf(_SC("USERDATA %p[%p]"),_userdataval(obj),_userdata(obj)->_delegate);break; - case OT_GENERATOR: scprintf(_SC("GENERATOR %p"),_generator(obj));break; - case OT_THREAD: scprintf(_SC("THREAD [%p]"),_thread(obj));break; - case OT_USERPOINTER: scprintf(_SC("USERPOINTER %p"),_userpointer(obj));break; - case OT_CLASS: scprintf(_SC("CLASS %p"),_class(obj));break; - case OT_INSTANCE: scprintf(_SC("INSTANCE %p"),_instance(obj));break; - case OT_WEAKREF: scprintf(_SC("WEAKERF %p"),_weakref(obj));break; + case OT_FLOAT: printf("FLOAT %.3f",_float(obj));break; + case OT_INTEGER: printf("INTEGER %d",_integer(obj));break; + case OT_BOOL: printf("BOOL %s",_integer(obj)?"true":"false");break; + case OT_STRING: printf("STRING %s",_stringval(obj));break; + case OT_NULL: printf("NULL"); break; + case OT_TABLE: printf("TABLE %p[%p]",_table(obj),_table(obj)->_delegate);break; + case OT_ARRAY: printf("ARRAY %p",_array(obj));break; + case OT_CLOSURE: printf("CLOSURE [%p]",_closure(obj));break; + case OT_NATIVECLOSURE: printf("NATIVECLOSURE");break; + case OT_USERDATA: printf("USERDATA %p[%p]",_userdataval(obj),_userdata(obj)->_delegate);break; + case OT_GENERATOR: printf("GENERATOR %p",_generator(obj));break; + case OT_THREAD: printf("THREAD [%p]",_thread(obj));break; + case OT_USERPOINTER: printf("USERPOINTER %p",_userpointer(obj));break; + case OT_CLASS: printf("CLASS %p",_class(obj));break; + case OT_INSTANCE: printf("INSTANCE %p",_instance(obj));break; + case OT_WEAKREF: printf("WEAKERF %p",_weakref(obj));break; default: assert(0); break; }; - scprintf(_SC("\n")); + printf("\n"); ++n; } } diff --git a/src/3rdparty/squirrel/squirrel/sqvm.h b/src/3rdparty/squirrel/squirrel/sqvm.h index d272d152e7..89a592e136 100644 --- a/src/3rdparty/squirrel/squirrel/sqvm.h +++ b/src/3rdparty/squirrel/squirrel/sqvm.h @@ -203,7 +203,7 @@ inline SQObjectPtr &stack_get(HSQUIRRELVM v,SQInteger idx){return ((idx>=0)?(v-> if(v->_callsstacksize == v->_alloccallsstacksize) { \ if (v->_callsstacksize > 65535 && !v->_in_stackoverflow) {\ v->_in_stackoverflow = true; \ - v->Raise_Error(_SC("stack overflow"));\ + v->Raise_Error("stack overflow");\ v->CallErrorHandler(v->_lasterror);\ return false;\ }\ diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index 2c1051f05b..0c557d790b 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -346,7 +346,7 @@ struct AISettingsWindow : public Window { virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) { if (widget == WID_AIS_BACKGROUND) { - this->line_height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; + this->line_height = max(SETTING_BUTTON_HEIGHT, FONT_HEIGHT_NORMAL) + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; resize->width = 1; resize->height = this->line_height; @@ -371,6 +371,7 @@ struct AISettingsWindow : public Window { int y = r.top; int button_y_offset = (this->line_height - SETTING_BUTTON_HEIGHT) / 2; + int text_y_offset = (this->line_height - FONT_HEIGHT_NORMAL) / 2; for (; this->vscroll->IsVisible(i) && it != visible_settings.end(); i++, it++) { const ScriptConfigItem &config_item = **it; int current_value = config->GetSetting((config_item).name); @@ -412,7 +413,7 @@ struct AISettingsWindow : public Window { } } - DrawString(text_left, text_right, y + WD_MATRIX_TOP, str, colour); + DrawString(text_left, text_right, y + text_y_offset, str, colour); y += this->line_height; } } @@ -969,7 +970,7 @@ struct AIDebugWindow : public Window { static const int top_offset; ///< Offset of the text at the top of the WID_AID_LOG_PANEL. static const int bottom_offset; ///< Offset of the text at the bottom of the WID_AID_LOG_PANEL. - static const unsigned int MAX_BREAK_STR_STRING_LENGTH = 256; ///< Maximum length of the break string. + static const uint MAX_BREAK_STR_STRING_LENGTH = 256; ///< Maximum length of the break string. static CompanyID ai_debug_company; ///< The AI that is (was last) being debugged. int redraw_timer; ///< Timer for redrawing the window, otherwise it'll happen every tick. diff --git a/src/ai/ai_info.cpp b/src/ai/ai_info.cpp index e048a54572..ec7c896cee 100644 --- a/src/ai/ai_info.cpp +++ b/src/ai/ai_info.cpp @@ -28,7 +28,7 @@ static bool CheckAPIVersion(const char *api_version) { return strcmp(api_version, "0.7") == 0 || strcmp(api_version, "1.0") == 0 || strcmp(api_version, "1.1") == 0 || strcmp(api_version, "1.2") == 0 || strcmp(api_version, "1.3") == 0 || strcmp(api_version, "1.4") == 0 || - strcmp(api_version, "1.5") == 0; + strcmp(api_version, "1.5") == 0 || strcmp(api_version, "1.6") == 0; } #if defined(WIN32) @@ -65,7 +65,7 @@ template <> const char *GetClassName() { return "AIInfo"; } { /* Get the AIInfo */ SQUserPointer instance = NULL; - if (SQ_FAILED(sq_getinstanceup(vm, 2, &instance, 0)) || instance == NULL) return sq_throwerror(vm, _SC("Pass an instance of a child class of AIInfo to RegisterAI")); + if (SQ_FAILED(sq_getinstanceup(vm, 2, &instance, 0)) || instance == NULL) return sq_throwerror(vm, "Pass an instance of a child class of AIInfo to RegisterAI"); AIInfo *info = (AIInfo *)instance; SQInteger res = ScriptInfo::Constructor(vm, info); diff --git a/src/ai/ai_instance.cpp b/src/ai/ai_instance.cpp index 1c304c8569..c03e745992 100644 --- a/src/ai/ai_instance.cpp +++ b/src/ai/ai_instance.cpp @@ -171,6 +171,17 @@ void AIInstance::RegisterAPI() SQAISignList_Register(this->engine); SQAIStation_Register(this->engine); SQAIStationList_Register(this->engine); + SQAIStationList_Cargo_Register(this->engine); + SQAIStationList_CargoPlanned_Register(this->engine); + SQAIStationList_CargoPlannedByFrom_Register(this->engine); + SQAIStationList_CargoPlannedByVia_Register(this->engine); + SQAIStationList_CargoPlannedFromByVia_Register(this->engine); + SQAIStationList_CargoPlannedViaByFrom_Register(this->engine); + SQAIStationList_CargoWaiting_Register(this->engine); + SQAIStationList_CargoWaitingByFrom_Register(this->engine); + SQAIStationList_CargoWaitingByVia_Register(this->engine); + SQAIStationList_CargoWaitingFromByVia_Register(this->engine); + SQAIStationList_CargoWaitingViaByFrom_Register(this->engine); SQAIStationList_Vehicle_Register(this->engine); SQAISubsidy_Register(this->engine); SQAISubsidyList_Register(this->engine); diff --git a/src/aircraft.h b/src/aircraft.h index d151f92a6b..0805ae8ec6 100644 --- a/src/aircraft.h +++ b/src/aircraft.h @@ -15,6 +15,17 @@ #include "station_map.h" #include "vehicle_base.h" +/** + * Base values for flight levels above ground level for 'normal' flight and holding patterns. + * Due to speed and direction, the actual flight level may be higher. + */ +enum AircraftFlyingAltitude { + AIRCRAFT_MIN_FLYING_ALTITUDE = 120, ///< Minimum flying altitude above tile. + AIRCRAFT_MAX_FLYING_ALTITUDE = 360, ///< Maximum flying altitude above tile. + PLANE_HOLD_MAX_FLYING_ALTITUDE = 150, ///< holding flying altitude above tile of planes. + HELICOPTER_HOLD_MAX_FLYING_ALTITUDE = 184 ///< holding flying altitude above tile of helicopters. +}; + struct Aircraft; /** An aircraft can be one of those types. */ @@ -25,11 +36,18 @@ enum AircraftSubType { AIR_ROTOR = 6, ///< rotor of an helicopter }; -/** Aircraft flags. */ -enum VehicleAirFlags { - VAF_DEST_TOO_FAR = 0, ///< Next destination is too far away. +/** Flags for air vehicles; shared with disaster vehicles. */ +enum AirVehicleFlags { + VAF_DEST_TOO_FAR = 0, ///< Next destination is too far away. + + /* The next two flags are to prevent stair climbing of the aircraft. The idea is that the aircraft + * will ascend or descend multiple flight levels at a time instead of following the contours of the + * landscape at a fixed altitude. This only has effect when there are more than 15 height levels. */ + VAF_IN_MAX_HEIGHT_CORRECTION = 1, ///< The vehicle is currently lowering its altitude because it hit the upper bound. + VAF_IN_MIN_HEIGHT_CORRECTION = 2, ///< The vehicle is currently raising its altitude because it hit the lower bound. }; +static const int ROTOR_Z_OFFSET = 5; ///< Z Offset between helicopter- and rotorsprite. void HandleAircraftEnterHangar(Aircraft *v); void GetAircraftSpriteSize(EngineID engine, uint &width, uint &height, int &xoffs, int &yoffs, EngineImageType image_type); @@ -39,7 +57,10 @@ void UpdateAircraftCache(Aircraft *v, bool update_range = false); void AircraftLeaveHangar(Aircraft *v, Direction exit_dir); void AircraftNextAirportPos_and_Order(Aircraft *v); void SetAircraftPosition(Aircraft *v, int x, int y, int z); -int GetAircraftFlyingAltitude(const Aircraft *v); + +void GetAircraftFlightLevelBounds(const Vehicle *v, int *min, int *max); +template +int GetAircraftFlightLevel(T *v, bool takeoff = false); /** Variables that are cached to improve performance and such. */ struct AircraftCache { @@ -59,7 +80,7 @@ struct Aircraft FINAL : public SpecializedVehicle { DirectionByte last_direction; byte number_consecutive_turns; ///< Protection to prevent the aircraft of making a lot of turns in order to reach a specific point. byte turn_counter; ///< Ticks between each turn to prevent > 45 degree turns. - byte flags; ///< Aircraft flags. @see VehicleAirFlags + byte flags; ///< Aircraft flags. @see AirVehicleFlags AircraftCache acache; diff --git a/src/aircraft_cmd.cpp b/src/aircraft_cmd.cpp index ee70d15b32..677ff23450 100644 --- a/src/aircraft_cmd.cpp +++ b/src/aircraft_cmd.cpp @@ -36,17 +36,12 @@ #include "core/random_func.hpp" #include "core/backup_type.hpp" #include "zoom_func.h" +#include "disaster_vehicle.h" #include "table/strings.h" #include "safeguards.h" -static const int ROTOR_Z_OFFSET = 5; ///< Z Offset between helicopter- and rotorsprite. - -static const int PLANE_HOLDING_ALTITUDE = 150; ///< Altitude of planes in holding pattern (= lowest flight altitude). -static const int HELI_FLIGHT_ALTITUDE = 184; ///< Normal flight altitude of helicopters. - - void Aircraft::UpdateDeltaXY(Direction direction) { this->x_offs = -1; @@ -206,13 +201,15 @@ void DrawAircraftEngine(int left, int right, int preferred_x, int y, EngineID en { SpriteID sprite = GetAircraftIcon(engine, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - preferred_x = Clamp(preferred_x, left - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI), right - UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI) - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI)); + preferred_x = Clamp(preferred_x, + left - UnScaleGUI(real_sprite->x_offs), + right - UnScaleGUI(real_sprite->width) - UnScaleGUI(real_sprite->x_offs)); DrawSprite(sprite, pal, preferred_x, y); if (!(AircraftVehInfo(engine)->subtype & AIR_CTOL)) { SpriteID rotor_sprite = GetCustomRotorIcon(engine, image_type); if (rotor_sprite == 0) rotor_sprite = SPR_ROTOR_STOPPED; - DrawSprite(rotor_sprite, PAL_NONE, preferred_x, y - 5); + DrawSprite(rotor_sprite, PAL_NONE, preferred_x, y - ScaleGUITrad(5)); } } @@ -229,10 +226,10 @@ void GetAircraftSpriteSize(EngineID engine, uint &width, uint &height, int &xoff { const Sprite *spr = GetSprite(GetAircraftIcon(engine, image_type), ST_NORMAL); - width = UnScaleByZoom(spr->width, ZOOM_LVL_GUI); - height = UnScaleByZoom(spr->height, ZOOM_LVL_GUI); - xoffs = UnScaleByZoom(spr->x_offs, ZOOM_LVL_GUI); - yoffs = UnScaleByZoom(spr->y_offs, ZOOM_LVL_GUI); + width = UnScaleGUI(spr->width); + height = UnScaleGUI(spr->height); + xoffs = UnScaleGUI(spr->x_offs); + yoffs = UnScaleGUI(spr->y_offs); } /** @@ -337,8 +334,8 @@ CommandCost CmdBuildAircraft(TileIndex tile, DoCommandFlag flags, const Engine * UpdateAircraftCache(v, true); - VehicleUpdatePosition(v); - VehicleUpdatePosition(u); + v->UpdatePosition(); + u->UpdatePosition(); /* Aircraft with 3 vehicles (chopper)? */ if (v->subtype == AIR_HELICOPTER) { @@ -359,7 +356,7 @@ CommandCost CmdBuildAircraft(TileIndex tile, DoCommandFlag flags, const Engine * w->UpdateDeltaXY(INVALID_DIR); u->SetNext(w); - VehicleUpdatePosition(w); + w->UpdatePosition(); } } @@ -487,7 +484,7 @@ static void HelicopterTickHandler(Aircraft *v) u->cur_image = img; - VehicleUpdatePositionAndViewport(u); + u->UpdatePositionAndViewport(); } /** @@ -503,7 +500,7 @@ void SetAircraftPosition(Aircraft *v, int x, int y, int z) v->y_pos = y; v->z_pos = z; - VehicleUpdatePosition(v); + v->UpdatePosition(); v->UpdateViewport(true, false); if (v->subtype == AIR_HELICOPTER) v->Next()->Next()->cur_image = GetRotorImage(v, EIT_ON_MAP); @@ -518,7 +515,7 @@ void SetAircraftPosition(Aircraft *v, int x, int y, int z) u->z_pos = GetSlopePixelZ(safe_x, safe_y); u->cur_image = v->cur_image; - VehicleUpdatePositionAndViewport(u); + u->UpdatePositionAndViewport(); u = u->Next(); if (u != NULL) { @@ -526,7 +523,7 @@ void SetAircraftPosition(Aircraft *v, int x, int y, int z) u->y_pos = y; u->z_pos = z + ROTOR_Z_OFFSET; - VehicleUpdatePositionAndViewport(u); + u->UpdatePositionAndViewport(); } } @@ -665,20 +662,35 @@ static int UpdateAircraftSpeed(Aircraft *v, uint speed_limit = SPEED_LIMIT_NONE, } /** - * Gets the cruise altitude of an aircraft. - * The cruise altitude is determined by the velocity of the vehicle - * and the direction it is moving - * @param v The vehicle. Should be an aircraft - * @returns Altitude in pixel units + * Get the tile height below the aircraft. + * This function is needed because aircraft can leave the mapborders. + * + * @param v The vehicle to get the height for. + * @return The height in pixels from 'z_pos' 0. */ -int GetAircraftFlyingAltitude(const Aircraft *v) +int GetTileHeightBelowAircraft(const Vehicle *v) { - if (v->subtype == AIR_HELICOPTER) return HELI_FLIGHT_ALTITUDE; + int safe_x = Clamp(v->x_pos, 0, MapMaxX() * TILE_SIZE); + int safe_y = Clamp(v->y_pos, 0, MapMaxY() * TILE_SIZE); + return TileHeight(TileVirtXY(safe_x, safe_y)) * TILE_HEIGHT; +} - /* Make sure Aircraft fly no lower so that they don't conduct - * CFITs (controlled flight into terrain) - */ - int base_altitude = PLANE_HOLDING_ALTITUDE; +/** + * Get the 'flight level' bounds, in pixels from 'z_pos' 0 for a particular + * vehicle for normal flight situation. + * When the maximum is reached the vehicle should consider descending. + * When the minimum is reached the vehicle should consider ascending. + * + * @param v The vehicle to get the flight levels for. + * @param [out] min_level The minimum bounds for flight level. + * @param [out] max_level The maximum bounds for flight level. + */ +void GetAircraftFlightLevelBounds(const Vehicle *v, int *min_level, int *max_level) +{ + int base_altitude = GetTileHeightBelowAircraft(v); + if (v->type == VEH_AIRCRAFT && Aircraft::From(v)->subtype == AIR_HELICOPTER) { + base_altitude += HELICOPTER_HOLD_MAX_FLYING_ALTITUDE - PLANE_HOLD_MAX_FLYING_ALTITUDE; + } /* Make sure eastbound and westbound planes do not "crash" into each * other by providing them with vertical separation @@ -695,11 +707,67 @@ int GetAircraftFlyingAltitude(const Aircraft *v) } /* Make faster planes fly higher so that they can overtake slower ones */ - base_altitude += min(20 * (v->vcache.cached_max_speed / 200), 90); + base_altitude += min(20 * (v->vcache.cached_max_speed / 200) - 90, 0); - return base_altitude; + if (min_level != NULL) *min_level = base_altitude + AIRCRAFT_MIN_FLYING_ALTITUDE; + if (max_level != NULL) *max_level = base_altitude + AIRCRAFT_MAX_FLYING_ALTITUDE; } +/** + * Gets the maximum 'flight level' for the holding pattern of the aircraft, + * in pixels 'z_pos' 0, depending on terrain below.. + * + * @param v The aircraft that may or may not need to decrease its altitude. + * @return Maximal aircraft holding altitude, while in normal flight, in pixels. + */ +int GetAircraftHoldMaxAltitude(const Aircraft *v) +{ + int tile_height = GetTileHeightBelowAircraft(v); + + return tile_height + ((v->subtype == AIR_HELICOPTER) ? HELICOPTER_HOLD_MAX_FLYING_ALTITUDE : PLANE_HOLD_MAX_FLYING_ALTITUDE); +} + +template +int GetAircraftFlightLevel(T *v, bool takeoff) +{ + /* Aircraft is in flight. We want to enforce it being somewhere + * between the minimum and the maximum allowed altitude. */ + int aircraft_min_altitude; + int aircraft_max_altitude; + GetAircraftFlightLevelBounds(v, &aircraft_min_altitude, &aircraft_max_altitude); + int aircraft_middle_altitude = (aircraft_min_altitude + aircraft_max_altitude) / 2; + + /* If those assumptions would be violated, aircrafts would behave fairly strange. */ + assert(aircraft_min_altitude < aircraft_middle_altitude); + assert(aircraft_middle_altitude < aircraft_max_altitude); + + int z = v->z_pos; + if (z < aircraft_min_altitude || + (HasBit(v->flags, VAF_IN_MIN_HEIGHT_CORRECTION) && z < aircraft_middle_altitude)) { + /* Ascend. And don't fly into that mountain right ahead. + * And avoid our aircraft become a stairclimber, so if we start + * correcting altitude, then we stop correction not too early. */ + SetBit(v->flags, VAF_IN_MIN_HEIGHT_CORRECTION); + z += takeoff ? 2 : 1; + } else if (!takeoff && (z > aircraft_max_altitude || + (HasBit(v->flags, VAF_IN_MAX_HEIGHT_CORRECTION) && z > aircraft_middle_altitude))) { + /* Descend lower. You are an aircraft, not an space ship. + * And again, don't stop correcting altitude too early. */ + SetBit(v->flags, VAF_IN_MAX_HEIGHT_CORRECTION); + z--; + } else if (HasBit(v->flags, VAF_IN_MIN_HEIGHT_CORRECTION) && z >= aircraft_middle_altitude) { + /* Now, we have corrected altitude enough. */ + ClrBit(v->flags, VAF_IN_MIN_HEIGHT_CORRECTION); + } else if (HasBit(v->flags, VAF_IN_MAX_HEIGHT_CORRECTION) && z <= aircraft_middle_altitude) { + /* Now, we have corrected altitude enough. */ + ClrBit(v->flags, VAF_IN_MAX_HEIGHT_CORRECTION); + } + + return z; +} + +template int GetAircraftFlightLevel(DisasterVehicle *v, bool takeoff); + /** * Find the entry point to an airport depending on direction which * the airport is being approached from. Each airport can have up to @@ -712,7 +780,7 @@ int GetAircraftFlyingAltitude(const Aircraft *v) * @param v The vehicle that is approaching the airport * @param apc The Airport Class being approached. * @param rotation The rotation of the airport. - * @returns The index of the entry point + * @return The index of the entry point */ static byte AircraftGetEntryPoint(const Aircraft *v, const AirportFTAClass *apc, Direction rotation) { @@ -789,7 +857,7 @@ static bool AircraftController(Aircraft *v) UpdateAircraftCache(v); AircraftNextAirportPos_and_Order(v); /* get aircraft back on running altitude */ - SetAircraftPosition(v, v->x_pos, v->y_pos, GetAircraftFlyingAltitude(v)); + SetAircraftPosition(v, v->x_pos, v->y_pos, GetAircraftFlightLevel(v)); return false; } } @@ -817,7 +885,9 @@ static bool AircraftController(Aircraft *v) count = UpdateAircraftSpeed(v); if (count > 0) { v->tile = 0; - int z_dest = GetAircraftFlyingAltitude(v); + + int z_dest; + GetAircraftFlightLevelBounds(v, &z_dest, NULL); /* Reached altitude? */ if (v->z_pos >= z_dest) { @@ -974,12 +1044,14 @@ static bool AircraftController(Aircraft *v) int z = v->z_pos; if (amd.flag & AMED_TAKEOFF) { - z = min(z + 2, GetAircraftFlyingAltitude(v)); + z = GetAircraftFlightLevel(v, true); + } else if (amd.flag & AMED_HOLD) { + /* Let the plane drop from normal flight altitude to holding pattern altitude */ + if (z > GetAircraftHoldMaxAltitude(v)) z--; + } else if ((amd.flag & AMED_SLOWTURN) && (amd.flag & AMED_NOSPDCLAMP)) { + z = GetAircraftFlightLevel(v); } - /* Let the plane drop from normal flight altitude to holding pattern altitude */ - if ((amd.flag & AMED_HOLD) && (z > PLANE_HOLDING_ALTITUDE)) z--; - if (amd.flag & AMED_LAND) { if (st->airport.tile == INVALID_TILE) { /* Airport has been removed, abort the landing procedure */ @@ -987,7 +1059,7 @@ static bool AircraftController(Aircraft *v) UpdateAircraftCache(v); AircraftNextAirportPos_and_Order(v); /* get aircraft back on running altitude */ - SetAircraftPosition(v, gp.x, gp.y, GetAircraftFlyingAltitude(v)); + SetAircraftPosition(v, gp.x, gp.y, GetAircraftFlightLevel(v)); continue; } diff --git a/src/aircraft_gui.cpp b/src/aircraft_gui.cpp index 2c58b68c89..c3379d3951 100644 --- a/src/aircraft_gui.cpp +++ b/src/aircraft_gui.cpp @@ -86,22 +86,26 @@ void DrawAircraftImage(const Vehicle *v, int left, int right, int y, VehicleID s SpriteID sprite = v->GetImage(rtl ? DIR_E : DIR_W, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - int width = UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI); - int x_offs = UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI); + int width = UnScaleGUI(real_sprite->width); + int x_offs = UnScaleGUI(real_sprite->x_offs); int x = rtl ? right - width - x_offs : left - x_offs; bool helicopter = v->subtype == AIR_HELICOPTER; + int y_offs = ScaleGUITrad(10); + int heli_offs = 0; + PaletteID pal = (v->vehstatus & VS_CRASHED) ? PALETTE_CRASH : GetVehiclePalette(v); - DrawSprite(sprite, pal, x, y + 10); + DrawSprite(sprite, pal, x, y + y_offs); if (helicopter) { const Aircraft *a = Aircraft::From(v); SpriteID rotor_sprite = GetCustomRotorSprite(a, true, image_type); if (rotor_sprite == 0) rotor_sprite = SPR_ROTOR_STOPPED; - DrawSprite(rotor_sprite, PAL_NONE, x, y + 5); + heli_offs = ScaleGUITrad(5); + DrawSprite(rotor_sprite, PAL_NONE, x, y + y_offs - heli_offs); } if (v->index == selection) { x += x_offs; - y += UnScaleByZoom(real_sprite->y_offs, ZOOM_LVL_GUI) + 10 - (helicopter ? 5 : 0); - DrawFrameRect(x - 1, y - 1, x + width + 1, y + UnScaleByZoom(real_sprite->height, ZOOM_LVL_GUI) + (helicopter ? 5 : 0) + 1, COLOUR_WHITE, FR_BORDERONLY); + y += UnScaleGUI(real_sprite->y_offs) + y_offs - heli_offs; + DrawFrameRect(x - 1, y - 1, x + width + 1, y + UnScaleGUI(real_sprite->height) + heli_offs + 1, COLOUR_WHITE, FR_BORDERONLY); } } diff --git a/src/airport_gui.cpp b/src/airport_gui.cpp index 761466f1a5..6437f236cd 100644 --- a/src/airport_gui.cpp +++ b/src/airport_gui.cpp @@ -82,6 +82,18 @@ struct BuildAirToolbarWindow : Window { if (_settings_client.gui.link_terraform_toolbar) DeleteWindowById(WC_SCEN_LAND_GEN, 0, false); } + /** + * Some data on this window has become invalid. + * @param data Information about the changed data. + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. + */ + virtual void OnInvalidateData(int data = 0, bool gui_scope = true) + { + if (!gui_scope) return; + + if (!CanBuildVehicleInfrastructure(VEH_AIRCRAFT)) delete this; + } + virtual void OnClick(Point pt, int widget, int click_count) { switch (widget) { @@ -228,8 +240,27 @@ public: this->SetWidgetLoweredState(WID_AP_BTN_DOHILIGHT, _settings_client.gui.station_show_coverage); this->OnInvalidateData(); - this->vscroll->SetCount(AirportClass::Get(_selected_airport_class)->GetSpecCount()); - this->SelectFirstAvailableAirport(true); + /* Ensure airport class is valid (changing NewGRFs). */ + _selected_airport_class = Clamp(_selected_airport_class, APC_BEGIN, (AirportClassID)(AirportClass::GetClassCount() - 1)); + const AirportClass *ac = AirportClass::Get(_selected_airport_class); + this->vscroll->SetCount(ac->GetSpecCount()); + + /* Ensure the airport index is valid for this class (changing NewGRFs). */ + _selected_airport_index = Clamp(_selected_airport_index, -1, ac->GetSpecCount() - 1); + + /* Only when no valid airport was selected, we want to select the first airport. */ + bool selectFirstAirport = true; + if (_selected_airport_index != -1) { + const AirportSpec *as = ac->GetSpec(_selected_airport_index); + if (as->IsAvailable()) { + /* Ensure the airport layout is valid. */ + _selected_airport_layout = Clamp(_selected_airport_layout, 0, as->num_table - 1); + selectFirstAirport = false; + this->UpdateSelectSize(); + } + } + + if (selectFirstAirport) this->SelectFirstAvailableAirport(true); } virtual ~BuildAirportWindow() @@ -394,7 +425,7 @@ public: * Never make the window smaller to avoid oscillating if the size change affects the acceptance. * (This is the case, if making the window bigger moves the mouse into the window.) */ if (top > bottom) { - ResizeWindow(this, 0, top - bottom); + ResizeWindow(this, 0, top - bottom, false); } } diff --git a/src/articulated_vehicles.cpp b/src/articulated_vehicles.cpp index 859d9a750a..193c5ac4a8 100644 --- a/src/articulated_vehicles.cpp +++ b/src/articulated_vehicles.cpp @@ -162,6 +162,41 @@ CargoArray GetCapacityOfArticulatedParts(EngineID engine) return capacity; } +/** + * Get the default cargoes and refits of an articulated vehicle. + * The refits are linked to a cargo rather than an articulated part to prevent a long list of parts. + * @param engine Model to investigate. + * @param[out] cargoes Total amount of units that can be transported, summed by cargo. + * @param[out] refits Whether a (possibly partial) refit for each cargo is possible. + */ +void GetArticulatedVehicleCargoesAndRefits(EngineID engine, CargoArray *cargoes, uint32 *refits) +{ + cargoes->Clear(); + *refits = 0; + + const Engine *e = Engine::Get(engine); + + CargoID cargo_type; + uint16 cargo_capacity = GetVehicleDefaultCapacity(engine, &cargo_type); + if (cargo_type < NUM_CARGO && cargo_capacity > 0) { + (*cargoes)[cargo_type] += cargo_capacity; + if (IsEngineRefittable(engine)) SetBit(*refits, cargo_type); + } + + if (!e->IsGroundVehicle() || !HasBit(e->info.callback_mask, CBM_VEHICLE_ARTIC_ENGINE)) return; + + for (uint i = 1; i < MAX_ARTICULATED_PARTS; i++) { + EngineID artic_engine = GetNextArticulatedPart(i, engine); + if (artic_engine == INVALID_ENGINE) break; + + cargo_capacity = GetVehicleDefaultCapacity(artic_engine, &cargo_type); + if (cargo_type < NUM_CARGO && cargo_capacity > 0) { + (*cargoes)[cargo_type] += cargo_capacity; + if (IsEngineRefittable(artic_engine)) SetBit(*refits, cargo_type); + } + } +} + /** * Checks whether any of the articulated parts is refittable * @param engine the first part @@ -410,6 +445,6 @@ void AddArticulatedParts(Vehicle *first) if (flip_image) v->spritenum++; - VehicleUpdatePosition(v); + v->UpdatePosition(); } } diff --git a/src/autoreplace_gui.cpp b/src/autoreplace_gui.cpp index e6ce64cfa7..691042a1d5 100644 --- a/src/autoreplace_gui.cpp +++ b/src/autoreplace_gui.cpp @@ -30,8 +30,6 @@ #include "safeguards.h" - -uint GetEngineListHeight(VehicleType type); void DrawEngineList(VehicleType type, int x, int r, int y, const GUIEngineList *eng_list, uint16 min, uint16 max, EngineID selected_id, bool show_count, GroupID selected_group); static int CDECL EngineNumberSorter(const EngineID *a, const EngineID *b) @@ -86,6 +84,9 @@ class ReplaceVehicleWindow : public Window { bool reset_sel_engine; ///< Also reset #sel_engine while updating left and/or right (#update_left and/or #update_right) and no valid engine selected. GroupID sel_group; ///< Group selected to replace. int details_height; ///< Minimal needed height of the details panels (found so far). + byte sort_criteria; ///< Criteria of sorting vehicles. + bool descending_sort_order; ///< Order of sorting vehicles. + bool show_hidden_engines; ///< Whether to show the hidden engines. RailType sel_railtype; ///< Type of rail tracks selected. Scrollbar *vscroll[2]; @@ -126,6 +127,7 @@ class ReplaceVehicleWindow : public Window { const Engine *e; FOR_ALL_ENGINES_OF_TYPE(e, type) { + if (!draw_left && !this->show_hidden_engines && e->IsHidden(_local_company)) continue; EngineID eid = e->index; if (type == VEH_TRAIN && !this->GenerateReplaceRailList(eid, draw_left, this->replace_engines)) continue; // special rules for trains @@ -142,7 +144,12 @@ class ReplaceVehicleWindow : public Window { if (eid == this->sel_engine[side]) selected_engine = eid; // The selected engine is still in the list } this->sel_engine[side] = selected_engine; // update which engine we selected (the same or none, if it's not in the list anymore) - EngList_Sort(list, &EngineNumberSorter); + if (draw_left) { + EngList_Sort(list, &EngineNumberSorter); + } else { + _engine_sort_direction = this->descending_sort_order; + EngList_Sort(list, _engine_sort_functions[this->window_number][this->sort_criteria]); + } } /** Generate the lists */ @@ -229,12 +236,20 @@ public: this->details_height = ((vehicletype == VEH_TRAIN) ? 10 : 9) * FONT_HEIGHT_NORMAL + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM; this->sel_engine[0] = INVALID_ENGINE; this->sel_engine[1] = INVALID_ENGINE; + this->show_hidden_engines = _engine_sort_show_hidden_engines[vehicletype]; this->CreateNestedTree(); this->vscroll[0] = this->GetScrollbar(WID_RV_LEFT_SCROLLBAR); this->vscroll[1] = this->GetScrollbar(WID_RV_RIGHT_SCROLLBAR); + + NWidgetCore *widget = this->GetWidget(WID_RV_SHOW_HIDDEN_ENGINES); + widget->widget_data = STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN + vehicletype; + widget->tool_tip = STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP + vehicletype; + widget->SetLowered(this->show_hidden_engines); this->FinishInitNested(vehicletype); + this->sort_criteria = _engine_sort_last_criteria[vehicletype]; + this->descending_sort_order = _engine_sort_last_order[vehicletype]; this->owner = _local_company; this->sel_group = id_g; } @@ -242,6 +257,14 @@ public: virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) { switch (widget) { + case WID_RV_SORT_ASCENDING_DESCENDING: { + Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); + d.width += padding.width + Window::SortButtonWidth() * 2; // Doubled since the string is centred and it also looks better. + d.height += padding.height; + *size = maxdim(*size, d); + break; + } + case WID_RV_LEFT_MATRIX: case WID_RV_RIGHT_MATRIX: resize->height = GetEngineListHeight((VehicleType)this->window_number); @@ -334,6 +357,10 @@ public: } break; + case WID_RV_SORT_DROPDOWN: + SetDParam(0, _engine_sort_listing[this->window_number][this->sort_criteria]); + break; + case WID_RV_TRAIN_WAGONREMOVE_TOGGLE: { const Company *c = Company::Get(_local_company); SetDParam(0, c->settings.renew_keep_length ? STR_CONFIG_SETTING_ON : STR_CONFIG_SETTING_OFF); @@ -349,6 +376,10 @@ public: virtual void DrawWidget(const Rect &r, int widget) const { switch (widget) { + case WID_RV_SORT_ASCENDING_DESCENDING: + this->DrawSortButtonState(WID_RV_SORT_ASCENDING_DESCENDING, this->descending_sort_order ? SBS_DOWN : SBS_UP); + break; + case WID_RV_INFO_TAB: { const Company *c = Company::Get(_local_company); StringID str; @@ -393,16 +424,12 @@ public: * Either engines list is empty * or The selected replacement engine has a replacement (to prevent loops). */ this->SetWidgetDisabledState(WID_RV_START_REPLACE, - this->sel_engine[0] == INVALID_ENGINE || - this->sel_engine[1] == INVALID_ENGINE || - EngineReplacementForCompany(c, this->sel_engine[1], this->sel_group) != INVALID_ENGINE); + this->sel_engine[0] == INVALID_ENGINE || this->sel_engine[1] == INVALID_ENGINE || EngineReplacementForCompany(c, this->sel_engine[1], this->sel_group) != INVALID_ENGINE); /* Disable the "Stop Replacing" button if: * The left engines list (existing vehicle) is empty * or The selected vehicle has no replacement set up */ - this->SetWidgetDisabledState(WID_RV_STOP_REPLACE, - this->sel_engine[0] == INVALID_ENGINE || - !EngineHasReplacementForCompany(c, this->sel_engine[0], this->sel_group)); + this->SetWidgetDisabledState(WID_RV_STOP_REPLACE, this->sel_engine[0] == INVALID_ENGINE || !EngineHasReplacementForCompany(c, this->sel_engine[0], this->sel_group)); if (this->window_number == VEH_TRAIN) { /* sets the colour of that art thing */ @@ -437,6 +464,25 @@ public: virtual void OnClick(Point pt, int widget, int click_count) { switch (widget) { + case WID_RV_SORT_ASCENDING_DESCENDING: + this->descending_sort_order ^= true; + _engine_sort_last_order[this->window_number] = this->descending_sort_order; + this->engines[1].ForceRebuild(); + this->SetDirty(); + break; + + case WID_RV_SHOW_HIDDEN_ENGINES: + this->show_hidden_engines ^= true; + _engine_sort_show_hidden_engines[this->window_number] = this->show_hidden_engines; + this->engines[1].ForceRebuild(); + this->SetWidgetLoweredState(widget, this->show_hidden_engines); + this->SetDirty(); + break; + + case WID_RV_SORT_DROPDOWN: + DisplayVehicleSortDropDown(this, static_cast(this->window_number), this->sort_criteria, WID_RV_SORT_DROPDOWN); + break; + case WID_RV_TRAIN_ENGINEWAGON_TOGGLE: this->replace_engines = !(this->replace_engines); this->engines[0].ForceRebuild(); @@ -496,6 +542,15 @@ public: virtual void OnDropdownSelect(int widget, int index) { switch (widget) { + case WID_RV_SORT_DROPDOWN: + if (this->sort_criteria != index) { + this->sort_criteria = index; + _engine_sort_last_criteria[this->window_number] = this->sort_criteria; + this->engines[1].ForceRebuild(); + this->SetDirty(); + } + break; + case WID_RV_TRAIN_RAILTYPE_DROPDOWN: { RailType temp = (RailType)index; if (temp == sel_railtype) return; // we didn't select a new one. No need to change anything @@ -547,6 +602,27 @@ static const NWidgetPart _nested_replace_rail_vehicle_widgets[] = { NWidget(WWT_DEFSIZEBOX, COLOUR_GREY), NWidget(WWT_STICKYBOX, COLOUR_GREY), EndContainer(), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), + NWidget(WWT_PANEL, COLOUR_GREY), + NWidget(WWT_LABEL, COLOUR_GREY), SetDataTip(STR_REPLACE_VEHICLE_VEHICLES_IN_USE, STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP), SetFill(1, 1), SetMinimalSize(0, 12), SetResize(1, 0), + EndContainer(), + NWidget(WWT_PANEL, COLOUR_GREY), + NWidget(WWT_LABEL, COLOUR_GREY), SetDataTip(STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES, STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP), SetFill(1, 1), SetMinimalSize(0, 12), SetResize(1, 0), + EndContainer(), + EndContainer(), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), + NWidget(WWT_PANEL, COLOUR_GREY), SetResize(1, 0), EndContainer(), + NWidget(NWID_VERTICAL), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_RV_SORT_ASCENDING_DESCENDING), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), SetFill(1, 1), + NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_RV_SORT_DROPDOWN), SetResize(1, 0), SetFill(1, 1), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA), + EndContainer(), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_RV_SHOW_HIDDEN_ENGINES), SetDataTip(STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN, STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP), + NWidget(WWT_PANEL, COLOUR_GREY), SetResize(1, 0), SetFill(1, 1), EndContainer(), + EndContainer(), + EndContainer(), + EndContainer(), NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), NWidget(WWT_MATRIX, COLOUR_GREY, WID_RV_LEFT_MATRIX), SetMinimalSize(216, 0), SetFill(1, 1), SetMatrixDataTip(1, 0, STR_REPLACE_HELP_LEFT_ARRAY), SetResize(1, 1), SetScrollbar(WID_RV_LEFT_SCROLLBAR), NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_RV_LEFT_SCROLLBAR), @@ -588,6 +664,27 @@ static const NWidgetPart _nested_replace_vehicle_widgets[] = { NWidget(WWT_DEFSIZEBOX, COLOUR_GREY), NWidget(WWT_STICKYBOX, COLOUR_GREY), EndContainer(), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), + NWidget(WWT_PANEL, COLOUR_GREY), + NWidget(WWT_LABEL, COLOUR_GREY), SetDataTip(STR_REPLACE_VEHICLE_VEHICLES_IN_USE, STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP), SetFill(1, 1), SetMinimalSize(0, 12), SetResize(1, 0), + EndContainer(), + NWidget(WWT_PANEL, COLOUR_GREY), + NWidget(WWT_LABEL, COLOUR_GREY), SetDataTip(STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES, STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP), SetFill(1, 1), SetMinimalSize(0, 12), SetResize(1, 0), + EndContainer(), + EndContainer(), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), + NWidget(WWT_PANEL, COLOUR_GREY), SetResize(1, 0), EndContainer(), + NWidget(NWID_VERTICAL), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_RV_SORT_ASCENDING_DESCENDING), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), + NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_RV_SORT_DROPDOWN), SetResize(1, 0), SetFill(1, 1), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA), + EndContainer(), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_RV_SHOW_HIDDEN_ENGINES), SetDataTip(STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN, STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP), + NWidget(WWT_PANEL, COLOUR_GREY), SetResize(1, 0), SetFill(1, 1), EndContainer(), + EndContainer(), + EndContainer(), + EndContainer(), NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), NWidget(WWT_MATRIX, COLOUR_GREY, WID_RV_LEFT_MATRIX), SetMinimalSize(216, 0), SetFill(1, 1), SetMatrixDataTip(1, 0, STR_REPLACE_HELP_LEFT_ARRAY), SetResize(1, 1), SetScrollbar(WID_RV_LEFT_SCROLLBAR), NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_RV_LEFT_SCROLLBAR), diff --git a/src/base_consist.cpp b/src/base_consist.cpp index c7fcdec217..200512786c 100644 --- a/src/base_consist.cpp +++ b/src/base_consist.cpp @@ -44,4 +44,8 @@ void BaseConsist::CopyConsistPropertiesFrom(const BaseConsist *src) if (HasBit(src->vehicle_flags, VF_TIMETABLE_STARTED)) SetBit(this->vehicle_flags, VF_TIMETABLE_STARTED); if (HasBit(src->vehicle_flags, VF_AUTOFILL_TIMETABLE)) SetBit(this->vehicle_flags, VF_AUTOFILL_TIMETABLE); if (HasBit(src->vehicle_flags, VF_AUTOFILL_PRES_WAIT_TIME)) SetBit(this->vehicle_flags, VF_AUTOFILL_PRES_WAIT_TIME); + if (HasBit(src->vehicle_flags, VF_SERVINT_IS_PERCENT) != HasBit(this->vehicle_flags, VF_SERVINT_IS_PERCENT)) { + ToggleBit(this->vehicle_flags, VF_SERVINT_IS_PERCENT); + } + if (HasBit(src->vehicle_flags, VF_SERVINT_IS_CUSTOM)) SetBit(this->vehicle_flags, VF_SERVINT_IS_CUSTOM); } diff --git a/src/blitter/32bpp_anim.cpp b/src/blitter/32bpp_anim.cpp index 6127ff3a00..a3083e40b3 100644 --- a/src/blitter/32bpp_anim.cpp +++ b/src/blitter/32bpp_anim.cpp @@ -175,6 +175,16 @@ inline void Blitter_32bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel } break; + + case BM_BLACK_REMAP: + do { + *dst++ = Colour(0, 0, 0); + *anim++ = 0; + src_px++; + src_n++; + } while (--n != 0); + break; + case BM_TRANSPARENT: /* TODO -- We make an assumption here that the remap in fact is transparency, not some colour. * This is never a problem with the code we produce, but newgrfs can make it fail... or at least: @@ -251,6 +261,7 @@ void Blitter_32bppAnim::Draw(Blitter::BlitterParams *bp, BlitterMode mode, ZoomL case BM_COLOUR_REMAP: Draw(bp, zoom); return; case BM_TRANSPARENT: Draw (bp, zoom); return; case BM_CRASH_REMAP: Draw (bp, zoom); return; + case BM_BLACK_REMAP: Draw (bp, zoom); return; } } diff --git a/src/blitter/32bpp_anim_sse4.cpp b/src/blitter/32bpp_anim_sse4.cpp index f25683a10b..7d4b66fca6 100644 --- a/src/blitter/32bpp_anim_sse4.cpp +++ b/src/blitter/32bpp_anim_sse4.cpp @@ -334,6 +334,19 @@ bmcr_alpha_blend_single: anim++; } break; + + case BM_BLACK_REMAP: + for (uint x = (uint) bp->width; x > 0; x--) { + if (src->a != 0) { + *dst = Colour(0, 0, 0); + *anim = 0; + } + src_mv++; + dst++; + src++; + anim++; + } + break; } next_line: @@ -395,6 +408,7 @@ bm_normal: break; case BM_TRANSPARENT: Draw(bp, zoom); return; case BM_CRASH_REMAP: Draw(bp, zoom); return; + case BM_BLACK_REMAP: Draw(bp, zoom); return; } } diff --git a/src/blitter/32bpp_optimized.cpp b/src/blitter/32bpp_optimized.cpp index 9b7d7115c9..cc056f5b59 100644 --- a/src/blitter/32bpp_optimized.cpp +++ b/src/blitter/32bpp_optimized.cpp @@ -177,6 +177,15 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL } break; + case BM_BLACK_REMAP: + do { + *dst = Colour(0, 0, 0); + dst++; + src_px++; + src_n++; + } while (--n != 0); + break; + case BM_TRANSPARENT: /* TODO -- We make an assumption here that the remap in fact is transparency, not some colour. * This is never a problem with the code we produce, but newgrfs can make it fail... or at least: @@ -241,6 +250,7 @@ void Blitter_32bppOptimized::Draw(Blitter::BlitterParams *bp, BlitterMode mode, case BM_COLOUR_REMAP: Draw(bp, zoom); return; case BM_TRANSPARENT: Draw (bp, zoom); return; case BM_CRASH_REMAP: Draw (bp, zoom); return; + case BM_BLACK_REMAP: Draw (bp, zoom); return; } } diff --git a/src/blitter/32bpp_simple.cpp b/src/blitter/32bpp_simple.cpp index 0ad7418db0..92375be165 100644 --- a/src/blitter/32bpp_simple.cpp +++ b/src/blitter/32bpp_simple.cpp @@ -58,6 +58,12 @@ void Blitter_32bppSimple::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Zoo } break; + case BM_BLACK_REMAP: + if (src->a != 0) { + *dst = Colour(0, 0, 0); + } + break; + case BM_TRANSPARENT: /* TODO -- We make an assumption here that the remap in fact is transparency, not some colour. * This is never a problem with the code we produce, but newgrfs can make it fail... or at least: diff --git a/src/blitter/32bpp_sse_func.hpp b/src/blitter/32bpp_sse_func.hpp index 6b60ba6642..fb0ce9eb6e 100644 --- a/src/blitter/32bpp_sse_func.hpp +++ b/src/blitter/32bpp_sse_func.hpp @@ -159,7 +159,7 @@ static inline __m128i AdjustBrightnessOfTwoPixels(__m128i from, uint32 brightnes __m128i briAB = _mm_cvtsi32_si128(brightness); briAB = _mm_shuffle_epi8(briAB, BRIGHTNESS_LOW_CONTROL_MASK); // DEFAULT_BRIGHTNESS in 0, 0x00 in 2. colAB = _mm_mullo_epi16(colAB, briAB); - __m128i colAB_ob = _mm_srli_epi16(colAB, 8+7); + __m128i colAB_ob = _mm_srli_epi16(colAB, 8 + 7); colAB = _mm_srli_epi16(colAB, 7); /* Sum overbright. @@ -394,6 +394,17 @@ bmcr_alpha_blend_single: src++; } break; + + case BM_BLACK_REMAP: + for (uint x = (uint) bp->width; x > 0; x--) { + if (src->a != 0) { + *dst = Colour(0, 0, 0); + } + src_mv++; + dst++; + src++; + } + break; } next_line: @@ -447,6 +458,7 @@ bm_normal: } case BM_TRANSPARENT: Draw(bp, zoom); return; case BM_CRASH_REMAP: Draw(bp, zoom); return; + case BM_BLACK_REMAP: Draw(bp, zoom); return; } } #endif /* FULL_ANIMATION */ diff --git a/src/blitter/8bpp_optimized.cpp b/src/blitter/8bpp_optimized.cpp index bcd8dc2824..0f07e7c7bb 100644 --- a/src/blitter/8bpp_optimized.cpp +++ b/src/blitter/8bpp_optimized.cpp @@ -13,6 +13,7 @@ #include "../zoom_func.h" #include "../settings_type.h" #include "../core/math_func.hpp" +#include "../core/mem_func.hpp" #include "8bpp_optimized.hpp" #include "../safeguards.h" @@ -96,6 +97,11 @@ void Blitter_8bppOptimized::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Z break; } + case BM_BLACK_REMAP: + MemSetT(dst, 0, pixels); + dst += pixels; + break; + case BM_TRANSPARENT: { const uint8 *remap = bp->remap; src += pixels; @@ -107,7 +113,7 @@ void Blitter_8bppOptimized::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Z } default: - memcpy(dst, src, pixels); + MemCpyT(dst, src, pixels); dst += pixels; src += pixels; break; } diff --git a/src/blitter/8bpp_simple.cpp b/src/blitter/8bpp_simple.cpp index d24d8caac5..ed5dd3f7ae 100644 --- a/src/blitter/8bpp_simple.cpp +++ b/src/blitter/8bpp_simple.cpp @@ -47,6 +47,10 @@ void Blitter_8bppSimple::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Zoom if (*src != 0) colour = bp->remap[*dst]; break; + case BM_BLACK_REMAP: + colour = 0; + break; + default: colour = *src; break; diff --git a/src/blitter/base.hpp b/src/blitter/base.hpp index 3314eddfec..a9403b339d 100644 --- a/src/blitter/base.hpp +++ b/src/blitter/base.hpp @@ -21,6 +21,7 @@ enum BlitterMode { BM_COLOUR_REMAP, ///< Perform a colour remapping. BM_TRANSPARENT, ///< Perform transparency colour remapping. BM_CRASH_REMAP, ///< Perform a crash remapping. + BM_BLACK_REMAP, ///< Perform remapping to a completely blackened sprite }; /** diff --git a/src/bridge_gui.cpp b/src/bridge_gui.cpp index 95c9d7137c..797ead1f51 100644 --- a/src/bridge_gui.cpp +++ b/src/bridge_gui.cpp @@ -168,7 +168,7 @@ public: switch (widget) { case WID_BBS_DROPDOWN_ORDER: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; diff --git a/src/bridge_map.h b/src/bridge_map.h index 8ee658ce75..74c6974db2 100644 --- a/src/bridge_map.h +++ b/src/bridge_map.h @@ -37,28 +37,14 @@ static inline bool IsBridgeTile(TileIndex t) return IsTileType(t, MP_TUNNELBRIDGE) && IsBridge(t); } -/** - * checks for the possibility that a bridge may be on this tile - * These are in fact all the tile types on which a bridge can be found - * @param t The tile to analyze - * @return true if a bridge might be present - */ -static inline bool MayHaveBridgeAbove(TileIndex t) -{ - return IsTileType(t, MP_CLEAR) || IsTileType(t, MP_RAILWAY) || IsTileType(t, MP_ROAD) || - IsTileType(t, MP_WATER) || IsTileType(t, MP_TUNNELBRIDGE) || IsTileType(t, MP_OBJECT); -} - /** * checks if a bridge is set above the ground of this tile * @param t The tile to analyze - * @pre MayHaveBridgeAbove(t) * @return true if a bridge is detected above */ static inline bool IsBridgeAbove(TileIndex t) { - assert(MayHaveBridgeAbove(t)); - return GB(_m[t].m6, 6, 2) != 0; + return GB(_m[t].type, 2, 2) != 0; } /** @@ -70,7 +56,7 @@ static inline bool IsBridgeAbove(TileIndex t) static inline BridgeType GetBridgeType(TileIndex t) { assert(IsBridgeTile(t)); - return GB(_m[t].m6, 2, 4); + return GB(_me[t].m6, 2, 4); } /** @@ -82,7 +68,7 @@ static inline BridgeType GetBridgeType(TileIndex t) static inline Axis GetBridgeAxis(TileIndex t) { assert(IsBridgeAbove(t)); - return (Axis)(GB(_m[t].m6, 6, 2) - 1); + return (Axis)(GB(_m[t].type, 2, 2) - 1); } TileIndex GetNorthernBridgeEnd(TileIndex t); @@ -104,18 +90,15 @@ static inline int GetBridgePixelHeight(TileIndex tile) * Remove the bridge over the given axis. * @param t the tile to remove the bridge from * @param a the axis of the bridge to remove - * @pre MayHaveBridgeAbove(t) */ static inline void ClearSingleBridgeMiddle(TileIndex t, Axis a) { - assert(MayHaveBridgeAbove(t)); - ClrBit(_m[t].m6, 6 + a); + ClrBit(_m[t].type, 2 + a); } /** * Removes bridges from the given, that is bridges along the X and Y axis. * @param t the tile to remove the bridge from - * @pre MayHaveBridgeAbove(t) */ static inline void ClearBridgeMiddle(TileIndex t) { @@ -127,12 +110,10 @@ static inline void ClearBridgeMiddle(TileIndex t) * Set that there is a bridge over the given axis. * @param t the tile to add the bridge to * @param a the axis of the bridge to add - * @pre MayHaveBridgeAbove(t) */ static inline void SetBridgeMiddle(TileIndex t, Axis a) { - assert(MayHaveBridgeAbove(t)); - SetBit(_m[t].m6, 6 + a); + SetBit(_m[t].type, 2 + a); } /** @@ -153,7 +134,7 @@ static inline void MakeBridgeRamp(TileIndex t, Owner o, BridgeType bridgetype, D _m[t].m3 = rt; _m[t].m4 = 0; _m[t].m5 = 1 << 7 | tt << 2 | d; - SB(_m[t].m6, 2, 4, bridgetype); + SB(_me[t].m6, 2, 4, bridgetype); _me[t].m7 = 0; } diff --git a/src/build_vehicle_gui.cpp b/src/build_vehicle_gui.cpp index 57e306e882..bd4bf3b59b 100644 --- a/src/build_vehicle_gui.cpp +++ b/src/build_vehicle_gui.cpp @@ -58,13 +58,13 @@ static const NWidgetPart _nested_build_vehicle_widgets[] = { NWidget(WWT_STICKYBOX, COLOUR_GREY), EndContainer(), NWidget(WWT_PANEL, COLOUR_GREY), - NWidget(NWID_HORIZONTAL), - NWidget(NWID_VERTICAL), - NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_BV_SORT_ASSENDING_DESCENDING), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), SetFill(1, 0), - NWidget(NWID_SPACER), SetFill(1, 1), - EndContainer(), - NWidget(NWID_VERTICAL), + NWidget(NWID_VERTICAL), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_BV_SORT_ASCENDING_DESCENDING), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_BV_SORT_DROPDOWN), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA), + EndContainer(), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_BV_SHOW_HIDDEN_ENGINES), NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_BV_CARGO_FILTER_DROPDOWN), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_FILTER_CRITERIA), EndContainer(), EndContainer(), @@ -81,6 +81,7 @@ static const NWidgetPart _nested_build_vehicle_widgets[] = { NWidget(NWID_SELECTION, INVALID_COLOUR, WID_BV_BUILD_SEL), NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_BV_BUILD), SetResize(1, 0), SetFill(1, 0), EndContainer(), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_BV_SHOW_HIDE), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_NULL), NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_BV_RENAME), SetResize(1, 0), SetFill(1, 0), NWidget(WWT_RESIZEBOX, COLOUR_GREY), EndContainer(), @@ -90,10 +91,11 @@ static const NWidgetPart _nested_build_vehicle_widgets[] = { static const CargoID CF_ANY = CT_NO_REFIT; ///< Show all vehicles independent of carried cargo (i.e. no filtering) static const CargoID CF_NONE = CT_INVALID; ///< Show only vehicles which do not carry cargo (e.g. train engines) -static bool _internal_sort_order; ///< false = descending, true = ascending -static byte _last_sort_criteria[] = {0, 0, 0, 0}; -static bool _last_sort_order[] = {false, false, false, false}; -static CargoID _last_filter_criteria[] = {CF_ANY, CF_ANY, CF_ANY, CF_ANY}; +bool _engine_sort_direction; ///< \c false = descending, \c true = ascending. +byte _engine_sort_last_criteria[] = {0, 0, 0, 0}; ///< Last set sort criteria, for each vehicle type. +bool _engine_sort_last_order[] = {false, false, false, false}; ///< Last set direction of the sort order, for each vehicle type. +bool _engine_sort_show_hidden_engines[] = {false, false, false, false}; ///< Last set 'show hidden engines' setting for each vehicle type. +static CargoID _engine_sort_last_cargo_criteria[] = {CF_ANY, CF_ANY, CF_ANY, CF_ANY}; ///< Last set filter criteria, for each vehicle type. /** * Determines order of engines by engineID @@ -105,7 +107,7 @@ static int CDECL EngineNumberSorter(const EngineID *a, const EngineID *b) { int r = Engine::Get(*a)->list_position - Engine::Get(*b)->list_position; - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -122,7 +124,7 @@ static int CDECL EngineIntroDateSorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -155,7 +157,7 @@ static int CDECL EngineNameSorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -172,7 +174,7 @@ static int CDECL EngineReliabilitySorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -189,7 +191,7 @@ static int CDECL EngineCostSorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -206,7 +208,7 @@ static int CDECL EngineSpeedSorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -223,7 +225,7 @@ static int CDECL EnginePowerSorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -240,7 +242,7 @@ static int CDECL EngineTractiveEffortSorter(const EngineID *a, const EngineID *b /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -257,7 +259,7 @@ static int CDECL EngineRunningCostSorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -283,7 +285,7 @@ static int CDECL EnginePowerVsRunningCostSorter(const EngineID *a, const EngineI /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /* Train sorting functions */ @@ -305,7 +307,7 @@ static int CDECL TrainEngineCapacitySorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -322,7 +324,7 @@ static int CDECL TrainEnginesThenWagonsSorter(const EngineID *a, const EngineID /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /* Road vehicle sorting functions */ @@ -341,7 +343,7 @@ static int CDECL RoadVehEngineCapacitySorter(const EngineID *a, const EngineID * /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /* Ship vehicle sorting functions */ @@ -363,7 +365,7 @@ static int CDECL ShipEngineCapacitySorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /* Aircraft sorting functions */ @@ -393,7 +395,7 @@ static int CDECL AircraftEngineCargoSorter(const EngineID *a, const EngineID *b) return EngineNumberSorter(a, b); } } - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } /** @@ -411,10 +413,11 @@ static int CDECL AircraftRangeSorter(const EngineID *a, const EngineID *b) /* Use EngineID to sort instead since we want consistent sorting */ if (r == 0) return EngineNumberSorter(a, b); - return _internal_sort_order ? -r : r; + return _engine_sort_direction ? -r : r; } -static EngList_SortTypeFunction * const _sorter[][11] = {{ +/** Sort functions for the vehicle sort criteria, for each vehicle type. */ +EngList_SortTypeFunction * const _engine_sort_functions[][11] = {{ /* Trains */ &EngineNumberSorter, &EngineCostSorter, @@ -463,7 +466,8 @@ static EngList_SortTypeFunction * const _sorter[][11] = {{ &AircraftRangeSorter, }}; -static const StringID _sort_listing[][12] = {{ +/** Dropdown menu strings for the vehicle sort criteria. */ +const StringID _engine_sort_listing[][12] = {{ /* Trains */ STR_SORT_BY_ENGINE_ID, STR_SORT_BY_COST, @@ -528,21 +532,20 @@ static GUIEngineList::FilterFunction * const _filter_funcs[] = { &CargoFilter, }; -static int DrawCargoCapacityInfo(int left, int right, int y, EngineID engine, bool refittable) +static int DrawCargoCapacityInfo(int left, int right, int y, EngineID engine) { - CargoArray cap = GetCapacityOfArticulatedParts(engine); + CargoArray cap; + uint32 refits; + GetArticulatedVehicleCargoesAndRefits(engine, &cap, &refits); for (CargoID c = 0; c < NUM_CARGO; c++) { if (cap[c] == 0) continue; SetDParam(0, c); SetDParam(1, cap[c]); - SetDParam(2, refittable ? STR_PURCHASE_INFO_REFITTABLE : STR_EMPTY); + SetDParam(2, HasBit(refits, c) ? STR_PURCHASE_INFO_REFITTABLE : STR_EMPTY); DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY); y += FONT_HEIGHT_NORMAL; - - /* Only show as refittable once */ - refittable = false; } return y; @@ -827,7 +830,7 @@ int DrawVehiclePurchaseInfo(int left, int right, int y, EngineID engine_number) if (articulated_cargo) { /* Cargo type + capacity, or N/A */ - int new_y = DrawCargoCapacityInfo(left, right, y, engine_number, refittable); + int new_y = DrawCargoCapacityInfo(left, right, y, engine_number); if (new_y == y) { SetDParam(0, CT_INVALID); @@ -913,8 +916,13 @@ void DrawEngineList(VehicleType type, int l, int r, int y, const GUIEngineList * /* Note: num_engines is only used in the autoreplace GUI, so it is correct to use _local_company here. */ const uint num_engines = GetGroupNumEngines(_local_company, selected_group, engine); + const Engine *e = Engine::Get(engine); + bool hidden = HasBit(e->company_hidden, _local_company); + StringID str = hidden ? STR_HIDDEN_ENGINE_NAME : STR_ENGINE_NAME; + TextColour tc = (engine == selected_id) ? TC_WHITE : (TC_NO_SHADE | (hidden ? TC_GREY : TC_BLACK)); + SetDParam(0, engine); - DrawString(text_left, text_right, y + normal_text_y_offset, STR_ENGINE_NAME, engine == selected_id ? TC_WHITE : TC_BLACK); + DrawString(text_left, text_right, y + normal_text_y_offset, str, tc); DrawVehicleEngine(l, r, sprite_x, y + sprite_y_offset, engine, (show_count && num_engines == 0) ? PALETTE_CRASH : GetEnginePalette(engine, _local_company), EIT_PURCHASE); if (show_count) { SetDParam(0, num_engines); @@ -924,18 +932,42 @@ void DrawEngineList(VehicleType type, int l, int r, int y, const GUIEngineList * } } +/** + * Display the dropdown for the vehicle sort criteria. + * @param w Parent window (holds the dropdown button). + * @param vehicle_type %Vehicle type being sorted. + * @param selected Currently selected sort criterium. + * @param button Widget button. + */ +void DisplayVehicleSortDropDown(Window *w, VehicleType vehicle_type, int selected, int button) +{ + uint32 hidden_mask = 0; + /* Disable sorting by power or tractive effort when the original acceleration model for road vehicles is being used. */ + if (vehicle_type == VEH_ROAD && _settings_game.vehicle.roadveh_acceleration_model == AM_ORIGINAL) { + SetBit(hidden_mask, 3); // power + SetBit(hidden_mask, 4); // tractive effort + SetBit(hidden_mask, 8); // power by running costs + } + /* Disable sorting by tractive effort when the original acceleration model for trains is being used. */ + if (vehicle_type == VEH_TRAIN && _settings_game.vehicle.train_acceleration_model == AM_ORIGINAL) { + SetBit(hidden_mask, 4); // tractive effort + } + ShowDropDownMenu(w, _engine_sort_listing[vehicle_type], selected, button, 0, hidden_mask); +} +/** GUI for building vehicles. */ struct BuildVehicleWindow : Window { - VehicleType vehicle_type; + VehicleType vehicle_type; ///< Type of vehicles shown in the window. union { - RailTypeByte railtype; - RoadTypes roadtypes; - } filter; - bool descending_sort_order; - byte sort_criteria; - bool listview_mode; - EngineID sel_engine; - EngineID rename_engine; + RailTypeByte railtype; ///< Rail type to show, or #RAILTYPE_END. + RoadTypes roadtypes; ///< Road type to show, or #ROADTYPES_ALL. + } filter; ///< Filter to apply. + bool descending_sort_order; ///< Sort direction, @see _engine_sort_direction + byte sort_criteria; ///< Current sort criterium. + bool show_hidden_engines; ///< State of the 'show hidden engines' button. + bool listview_mode; ///< If set, only display the available vehicles and do not show a 'build' button. + EngineID sel_engine; ///< Currently selected engine, or #INVALID_ENGINE + EngineID rename_engine; ///< Engine being renamed. GUIEngineList eng_list; CargoID cargo_filter[NUM_CARGO + 2]; ///< Available cargo filters; CargoID or CF_ANY or CF_NONE StringID cargo_filter_texts[NUM_CARGO + 3]; ///< Texts for filter_cargo, terminated by INVALID_STRING_ID @@ -948,10 +980,11 @@ struct BuildVehicleWindow : Window { this->vehicle_type = type; this->window_number = tile == INVALID_TILE ? (int)type : tile; - this->sel_engine = INVALID_ENGINE; + this->sel_engine = INVALID_ENGINE; - this->sort_criteria = _last_sort_criteria[type]; - this->descending_sort_order = _last_sort_order[type]; + this->sort_criteria = _engine_sort_last_criteria[type]; + this->descending_sort_order = _engine_sort_last_order[type]; + this->show_hidden_engines = _engine_sort_show_hidden_engines[type]; switch (type) { default: NOT_REACHED(); @@ -981,6 +1014,9 @@ struct BuildVehicleWindow : Window { NWidgetCore *widget = this->GetWidget(WID_BV_LIST); widget->tool_tip = STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP + type; + widget = this->GetWidget(WID_BV_SHOW_HIDE); + widget->tool_tip = STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP + type; + widget = this->GetWidget(WID_BV_BUILD); widget->widget_data = STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON + type; widget->tool_tip = STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP + type; @@ -989,6 +1025,11 @@ struct BuildVehicleWindow : Window { widget->widget_data = STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON + type; widget->tool_tip = STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP + type; + widget = this->GetWidget(WID_BV_SHOW_HIDDEN_ENGINES); + widget->widget_data = STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN + type; + widget->tool_tip = STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP + type; + 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->FinishInitNested(tile == INVALID_TILE ? (int)type : tile); @@ -1035,7 +1076,7 @@ struct BuildVehicleWindow : Window { /* Find the last cargo filter criteria. */ for (uint i = 0; i < filter_items; i++) { - if (this->cargo_filter[i] == _last_filter_criteria[this->vehicle_type]) { + if (this->cargo_filter[i] == _engine_sort_last_cargo_criteria[this->vehicle_type]) { this->cargo_filter_criteria = i; break; } @@ -1085,6 +1126,7 @@ struct BuildVehicleWindow : Window { * when engines become obsolete and are removed */ const Engine *e; FOR_ALL_ENGINES_OF_TYPE(e, VEH_TRAIN) { + if (!this->show_hidden_engines && e->IsHidden(_local_company)) continue; EngineID eid = e->index; const RailVehicleInfo *rvi = &e->u.rail; @@ -1108,15 +1150,15 @@ struct BuildVehicleWindow : Window { this->sel_engine = sel_id; /* make engines first, and then wagons, sorted by selected sort_criteria */ - _internal_sort_order = false; + _engine_sort_direction = false; EngList_Sort(&this->eng_list, TrainEnginesThenWagonsSorter); /* and then sort engines */ - _internal_sort_order = this->descending_sort_order; - EngList_SortPartial(&this->eng_list, _sorter[0][this->sort_criteria], 0, num_engines); + _engine_sort_direction = this->descending_sort_order; + EngList_SortPartial(&this->eng_list, _engine_sort_functions[0][this->sort_criteria], 0, num_engines); /* and finally sort wagons */ - EngList_SortPartial(&this->eng_list, _sorter[0][this->sort_criteria], num_engines, num_wagons); + EngList_SortPartial(&this->eng_list, _engine_sort_functions[0][this->sort_criteria], num_engines, num_wagons); } /* Figure out what road vehicle EngineIDs to put in the list */ @@ -1128,6 +1170,7 @@ struct BuildVehicleWindow : Window { const Engine *e; FOR_ALL_ENGINES_OF_TYPE(e, VEH_ROAD) { + if (!this->show_hidden_engines && e->IsHidden(_local_company)) continue; EngineID eid = e->index; if (!IsEngineBuildable(eid, VEH_ROAD, _local_company)) continue; if (!HasBit(this->filter.roadtypes, HasBit(EngInfo(eid)->misc_flags, EF_ROAD_TRAM) ? ROADTYPE_TRAM : ROADTYPE_ROAD)) continue; @@ -1146,6 +1189,7 @@ struct BuildVehicleWindow : Window { const Engine *e; FOR_ALL_ENGINES_OF_TYPE(e, VEH_SHIP) { + if (!this->show_hidden_engines && e->IsHidden(_local_company)) continue; EngineID eid = e->index; if (!IsEngineBuildable(eid, VEH_SHIP, _local_company)) continue; *this->eng_list.Append() = eid; @@ -1170,6 +1214,7 @@ struct BuildVehicleWindow : Window { * when planes become obsolete and are removed */ const Engine *e; FOR_ALL_ENGINES_OF_TYPE(e, VEH_AIRCRAFT) { + if (!this->show_hidden_engines && e->IsHidden(_local_company)) continue; EngineID eid = e->index; if (!IsEngineBuildable(eid, VEH_AIRCRAFT, _local_company)) continue; /* First VEH_END window_numbers are fake to allow a window open for all different types at once */ @@ -1206,8 +1251,8 @@ struct BuildVehicleWindow : Window { this->FilterEngineList(); - _internal_sort_order = this->descending_sort_order; - EngList_Sort(&this->eng_list, _sorter[this->vehicle_type][this->sort_criteria]); + _engine_sort_direction = this->descending_sort_order; + EngList_Sort(&this->eng_list, _engine_sort_functions[this->vehicle_type][this->sort_criteria]); this->eng_list.Compact(); this->eng_list.RebuildDone(); @@ -1216,44 +1261,50 @@ struct BuildVehicleWindow : Window { void OnClick(Point pt, int widget, int click_count) { switch (widget) { - case WID_BV_SORT_ASSENDING_DESCENDING: + case WID_BV_SORT_ASCENDING_DESCENDING: this->descending_sort_order ^= true; - _last_sort_order[this->vehicle_type] = this->descending_sort_order; + _engine_sort_last_order[this->vehicle_type] = this->descending_sort_order; this->eng_list.ForceRebuild(); this->SetDirty(); break; + case WID_BV_SHOW_HIDDEN_ENGINES: + this->show_hidden_engines ^= true; + _engine_sort_show_hidden_engines[this->vehicle_type] = this->show_hidden_engines; + this->eng_list.ForceRebuild(); + this->SetWidgetLoweredState(widget, this->show_hidden_engines); + this->SetDirty(); + break; + case WID_BV_LIST: { uint i = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_BV_LIST); size_t num_items = this->eng_list.Length(); this->sel_engine = (i < num_items) ? this->eng_list[i] : INVALID_ENGINE; this->SetDirty(); - if (click_count > 1 && !this->listview_mode) this->OnClick(pt, WID_BV_BUILD, 1); + if (_ctrl_pressed) { + this->OnClick(pt, WID_BV_SHOW_HIDE, 1); + } else if (click_count > 1 && !this->listview_mode) { + this->OnClick(pt, WID_BV_BUILD, 1); + } break; } - case WID_BV_SORT_DROPDOWN: { // Select sorting criteria dropdown menu - uint32 hidden_mask = 0; - /* Disable sorting by power or tractive effort when the original acceleration model for road vehicles is being used. */ - if (this->vehicle_type == VEH_ROAD && - _settings_game.vehicle.roadveh_acceleration_model == AM_ORIGINAL) { - SetBit(hidden_mask, 3); // power - SetBit(hidden_mask, 4); // tractive effort - SetBit(hidden_mask, 8); // power by running costs - } - /* Disable sorting by tractive effort when the original acceleration model for trains is being used. */ - if (this->vehicle_type == VEH_TRAIN && - _settings_game.vehicle.train_acceleration_model == AM_ORIGINAL) { - SetBit(hidden_mask, 4); // tractive effort - } - ShowDropDownMenu(this, _sort_listing[this->vehicle_type], this->sort_criteria, WID_BV_SORT_DROPDOWN, 0, hidden_mask); + case WID_BV_SORT_DROPDOWN: // Select sorting criteria dropdown menu + DisplayVehicleSortDropDown(this, this->vehicle_type, this->sort_criteria, WID_BV_SORT_DROPDOWN); break; - } case WID_BV_CARGO_FILTER_DROPDOWN: // Select cargo filtering criteria dropdown menu ShowDropDownMenu(this, this->cargo_filter_texts, this->cargo_filter_criteria, WID_BV_CARGO_FILTER_DROPDOWN, 0, 0); break; + case WID_BV_SHOW_HIDE: { + const Engine *e = (this->sel_engine == INVALID_ENGINE) ? NULL : Engine::Get(this->sel_engine); + if (e != NULL) { + DoCommandP(0, 0, this->sel_engine | (e->IsHidden(_current_company) ? 0 : (1u << 31)), CMD_SET_VEHICLE_VISIBILITY); + } + break; + } + case WID_BV_BUILD: { EngineID sel_eng = this->sel_engine; if (sel_eng != INVALID_ENGINE) { @@ -1288,7 +1339,7 @@ struct BuildVehicleWindow : Window { _settings_game.vehicle.roadveh_acceleration_model == AM_ORIGINAL && this->sort_criteria > 7) { this->sort_criteria = 0; - _last_sort_criteria[VEH_ROAD] = 0; + _engine_sort_last_criteria[VEH_ROAD] = 0; } this->eng_list.ForceRebuild(); } @@ -1306,11 +1357,22 @@ struct BuildVehicleWindow : Window { break; case WID_BV_SORT_DROPDOWN: - SetDParam(0, _sort_listing[this->vehicle_type][this->sort_criteria]); + SetDParam(0, _engine_sort_listing[this->vehicle_type][this->sort_criteria]); break; case WID_BV_CARGO_FILTER_DROPDOWN: SetDParam(0, this->cargo_filter_texts[this->cargo_filter_criteria]); + break; + + case WID_BV_SHOW_HIDE: { + const Engine *e = (this->sel_engine == INVALID_ENGINE) ? NULL : Engine::Get(this->sel_engine); + if (e != NULL && e->IsHidden(_local_company)) { + SetDParam(0, STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON + this->vehicle_type); + } else { + SetDParam(0, STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON + this->vehicle_type); + } + break; + } } } @@ -1320,19 +1382,27 @@ struct BuildVehicleWindow : Window { case WID_BV_LIST: resize->height = GetEngineListHeight(this->vehicle_type); size->height = 3 * resize->height; + size->width = max(size->width, GetVehicleImageCellSize(this->vehicle_type, EIT_PURCHASE).extend_left + GetVehicleImageCellSize(this->vehicle_type, EIT_PURCHASE).extend_right + 165); break; case WID_BV_PANEL: size->height = this->details_height; break; - case WID_BV_SORT_ASSENDING_DESCENDING: { + case WID_BV_SORT_ASCENDING_DESCENDING: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; } + + case WID_BV_SHOW_HIDE: + *size = GetStringBoundingBox(STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON + this->vehicle_type); + *size = maxdim(*size, GetStringBoundingBox(STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON + this->vehicle_type)); + size->width += padding.width; + size->height += padding.height; + break; } } @@ -1343,8 +1413,8 @@ struct BuildVehicleWindow : Window { DrawEngineList(this->vehicle_type, r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, r.top + WD_FRAMERECT_TOP, &this->eng_list, this->vscroll->GetPosition(), min(this->vscroll->GetPosition() + this->vscroll->GetCapacity(), this->eng_list.Length()), this->sel_engine, false, DEFAULT_GROUP); break; - case WID_BV_SORT_ASSENDING_DESCENDING: - this->DrawSortButtonState(WID_BV_SORT_ASSENDING_DESCENDING, this->descending_sort_order ? SBS_DOWN : SBS_UP); + case WID_BV_SORT_ASCENDING_DESCENDING: + this->DrawSortButtonState(WID_BV_SORT_ASCENDING_DESCENDING, this->descending_sort_order ? SBS_DOWN : SBS_UP); break; } } @@ -1354,6 +1424,8 @@ struct BuildVehicleWindow : Window { this->GenerateBuildList(); this->vscroll->SetCount(this->eng_list.Length()); + this->SetWidgetDisabledState(WID_BV_SHOW_HIDE, this->sel_engine == INVALID_ENGINE); + this->DrawWidgets(); if (!this->IsShaded()) { @@ -1387,7 +1459,7 @@ struct BuildVehicleWindow : Window { case WID_BV_SORT_DROPDOWN: if (this->sort_criteria != index) { this->sort_criteria = index; - _last_sort_criteria[this->vehicle_type] = this->sort_criteria; + _engine_sort_last_criteria[this->vehicle_type] = this->sort_criteria; this->eng_list.ForceRebuild(); } break; @@ -1395,7 +1467,7 @@ struct BuildVehicleWindow : Window { case WID_BV_CARGO_FILTER_DROPDOWN: // Select a cargo filter criteria if (this->cargo_filter_criteria != index) { this->cargo_filter_criteria = index; - _last_filter_criteria[this->vehicle_type] = this->cargo_filter[this->cargo_filter_criteria]; + _engine_sort_last_cargo_criteria[this->vehicle_type] = this->cargo_filter[this->cargo_filter_criteria]; /* deactivate filter if criteria is 'Show All', activate it otherwise */ this->eng_list.SetFilterState(this->cargo_filter[this->cargo_filter_criteria] != CF_ANY); this->eng_list.ForceRebuild(); diff --git a/src/cheat_gui.cpp b/src/cheat_gui.cpp index b2006053a7..fda2b246e4 100644 --- a/src/cheat_gui.cpp +++ b/src/cheat_gui.cpp @@ -25,6 +25,10 @@ #include "settings_gui.h" #include "company_gui.h" #include "linkgraph/linkgraphschedule.h" +#include "map_func.h" +#include "tile_map.h" +#include "newgrf.h" +#include "error.h" #include "widgets/cheat_widget.h" @@ -104,7 +108,7 @@ static int32 ClickChangeDateCheat(int32 p1, int32 p2) if (p1 == _cur_year) return _cur_year; Date new_date = ConvertYMDToDate(p1, ymd.month, ymd.day); - LinkGraphSchedule::Instance()->ShiftDates(new_date - _date); + LinkGraphSchedule::instance.ShiftDates(new_date - _date); SetDate(new_date, _date_fract); EnginesMonthlyLoop(); SetWindowDirty(WC_STATUS_BAR, 0); @@ -114,6 +118,37 @@ static int32 ClickChangeDateCheat(int32 p1, int32 p2) return _cur_year; } +/** + * Allow (or disallow) a change of the maximum allowed heightlevel. + * @param p1 new value + * @param p2 unused + * @return New value (or unchanged old value) of the maximum + * allowed heightlevel value. + */ +static int32 ClickChangeMaxHlCheat(int32 p1, int32 p2) +{ + p1 = Clamp(p1, MIN_MAX_HEIGHTLEVEL, MAX_MAX_HEIGHTLEVEL); + + /* Check if at least one mountain on the map is higher than the new value. + * If yes, disallow the change. */ + for (TileIndex t = 0; t < MapSize(); t++) { + if ((int32)TileHeight(t) > p1) { + ShowErrorMessage(STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN, INVALID_STRING_ID, WL_ERROR); + /* Return old, unchanged value */ + return _settings_game.construction.max_heightlevel; + } + } + + /* Execute the change and reload GRF Data */ + _settings_game.construction.max_heightlevel = p1; + ReloadNewGRFData(); + + /* The smallmap uses an index from heightlevels to colours. Trigger rebuilding it. */ + InvalidateWindowClassesData(WC_SMALLMAP, 2); + + return _settings_game.construction.max_heightlevel; +} + /** Available cheats. */ enum CheatNumbers { CHT_MONEY, ///< Change amount of money. @@ -122,6 +157,7 @@ enum CheatNumbers { CHT_CROSSINGTUNNELS, ///< Allow tunnels to cross each other. CHT_NO_JETCRASH, ///< Disable jet-airplane crashes. CHT_SETUP_PROD, ///< Allow manually editing of industry production. + CHT_EDIT_MAX_HL, ///< Edit maximum allowed heightlevel CHT_CHANGE_DATE, ///< Do time traveling. CHT_NUM_CHEATS, ///< Number of cheats. @@ -154,6 +190,7 @@ static const CheatEntry _cheats_ui[] = { {SLE_BOOL, STR_CHEAT_CROSSINGTUNNELS, &_cheats.crossing_tunnels.value, &_cheats.crossing_tunnels.been_used, NULL }, {SLE_BOOL, STR_CHEAT_NO_JETCRASH, &_cheats.no_jetcrash.value, &_cheats.no_jetcrash.been_used, NULL }, {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_INT32, STR_CHEAT_CHANGE_DATE, &_cur_year, &_cheats.change_date.been_used, &ClickChangeDateCheat }, }; @@ -174,9 +211,13 @@ static const NWidgetPart _nested_cheat_widgets[] = { struct CheatWindow : Window { int clicked; int header_height; + int clicked_widget; + uint line_height; + int box_width; CheatWindow(WindowDesc *desc) : Window(desc) { + this->box_width = GetSpriteSize(SPR_BOX_EMPTY).width; this->InitNested(); } @@ -188,21 +229,24 @@ struct CheatWindow : Window { DrawStringMultiLine(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_LEFT, r.top + WD_FRAMERECT_TOP, y, STR_CHEATS_WARNING, TC_FROMSTRING, SA_CENTER); bool rtl = _current_text_dir == TD_RTL; - uint box_left = rtl ? r.right - 12 : r.left + 5; - uint button_left = rtl ? r.right - 20 - SETTING_BUTTON_WIDTH : r.left + 20; - uint text_left = r.left + (rtl ? WD_FRAMERECT_LEFT : 30 + SETTING_BUTTON_WIDTH); - uint text_right = r.right - (rtl ? 30 + SETTING_BUTTON_WIDTH : WD_FRAMERECT_RIGHT); + uint box_left = rtl ? r.right - this->box_width - 5 : r.left + 5; + uint button_left = rtl ? r.right - this->box_width - 10 - SETTING_BUTTON_WIDTH : r.left + this->box_width + 10; + uint text_left = r.left + (rtl ? WD_FRAMERECT_LEFT : 20 + this->box_width + SETTING_BUTTON_WIDTH); + uint text_right = r.right - (rtl ? 20 + this->box_width + SETTING_BUTTON_WIDTH : WD_FRAMERECT_RIGHT); + + int text_y_offset = (this->line_height - FONT_HEIGHT_NORMAL) / 2; + int icon_y_offset = (this->line_height - SETTING_BUTTON_HEIGHT) / 2; for (int i = 0; i != lengthof(_cheats_ui); i++) { const CheatEntry *ce = &_cheats_ui[i]; - DrawSprite((*ce->been_used) ? SPR_BOX_CHECKED : SPR_BOX_EMPTY, PAL_NONE, box_left, y + 2); + DrawSprite((*ce->been_used) ? SPR_BOX_CHECKED : SPR_BOX_EMPTY, PAL_NONE, box_left, y + icon_y_offset + 2); switch (ce->type) { case SLE_BOOL: { bool on = (*(bool*)ce->variable); - DrawBoolButton(button_left, y, on, true); + DrawBoolButton(button_left, y + icon_y_offset, on, true); SetDParam(0, on ? STR_CONFIG_SETTING_ON : STR_CONFIG_SETTING_OFF); break; } @@ -212,7 +256,7 @@ struct CheatWindow : Window { char buf[512]; /* Draw [<][>] boxes for settings of an integer-type */ - DrawArrowButtons(button_left, y, COLOUR_YELLOW, clicked - (i * 2), true, true); + DrawArrowButtons(button_left, y + icon_y_offset, COLOUR_YELLOW, clicked - (i * 2), true, true); switch (ce->str) { /* Display date for change date cheat */ @@ -223,7 +267,7 @@ struct CheatWindow : Window { SetDParam(0, val + 1); GetString(buf, STR_CHEAT_CHANGE_COMPANY, lastof(buf)); uint offset = 10 + GetStringBoundingBox(buf).width; - DrawCompanyIcon(_local_company, rtl ? text_right - offset - 10 : text_left + offset, y + 2); + DrawCompanyIcon(_local_company, rtl ? text_right - offset - 10 : text_left + offset, y + icon_y_offset + 2); break; } @@ -233,9 +277,9 @@ struct CheatWindow : Window { } } - DrawString(text_left, text_right, y + 1, ce->str); + DrawString(text_left, text_right, y + text_y_offset, ce->str); - y += FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL; + y += this->line_height; } } @@ -277,16 +321,20 @@ struct CheatWindow : Window { } } - size->width = width + 50 /* stuff on the left */ + 10 /* extra spacing on right */; + this->line_height = max(GetSpriteSize(SPR_BOX_CHECKED).height, GetSpriteSize(SPR_BOX_EMPTY).height); + this->line_height = max(this->line_height, SETTING_BUTTON_HEIGHT); + this->line_height = max(this->line_height, FONT_HEIGHT_NORMAL) + WD_PAR_VSEP_NORMAL; + + size->width = width + 20 + this->box_width + SETTING_BUTTON_WIDTH /* stuff on the left */ + 10 /* extra spacing on right */; this->header_height = GetStringHeight(STR_CHEATS_WARNING, size->width - WD_FRAMERECT_LEFT - WD_FRAMERECT_RIGHT) + WD_PAR_VSEP_WIDE; - size->height = this->header_height + WD_FRAMERECT_TOP + WD_PAR_VSEP_NORMAL + WD_FRAMERECT_BOTTOM + (FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL) * lengthof(_cheats_ui); + size->height = this->header_height + WD_FRAMERECT_TOP + WD_PAR_VSEP_NORMAL + WD_FRAMERECT_BOTTOM + this->line_height * lengthof(_cheats_ui); } virtual void OnClick(Point pt, int widget, int click_count) { const NWidgetBase *wid = this->GetWidget(WID_C_PANEL); - uint btn = (pt.y - wid->pos_y - WD_FRAMERECT_TOP - this->header_height) / (FONT_HEIGHT_NORMAL + WD_PAR_VSEP_NORMAL); - uint x = pt.x - wid->pos_x; + uint btn = (pt.y - wid->pos_y - WD_FRAMERECT_TOP - this->header_height) / this->line_height; + int x = pt.x - wid->pos_x; bool rtl = _current_text_dir == TD_RTL; if (rtl) x = wid->current_x - x; @@ -296,15 +344,21 @@ struct CheatWindow : Window { int value = (int32)ReadValue(ce->variable, ce->type); int oldvalue = value; - if (btn == CHT_CHANGE_DATE && x >= 20 + SETTING_BUTTON_WIDTH) { + if (btn == CHT_CHANGE_DATE && x >= 20 + this->box_width + SETTING_BUTTON_WIDTH) { /* Click at the date text directly. */ + clicked_widget = CHT_CHANGE_DATE; SetDParam(0, value); ShowQueryString(STR_JUST_INT, STR_CHEAT_CHANGE_DATE_QUERY_CAPT, 8, this, CS_NUMERAL, QSF_ACCEPT_UNCHANGED); return; + } else if (btn == CHT_EDIT_MAX_HL && x >= 20 + this->box_width + SETTING_BUTTON_WIDTH) { + clicked_widget = CHT_EDIT_MAX_HL; + SetDParam(0, value); + ShowQueryString(STR_JUST_INT, STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT, 8, this, CS_NUMERAL, QSF_ACCEPT_UNCHANGED); + return; } /* Not clicking a button? */ - if (!IsInsideMM(x, 20, 20 + SETTING_BUTTON_WIDTH)) return; + if (!IsInsideMM(x, 10 + this->box_width, 10 + this->box_width + SETTING_BUTTON_WIDTH)) return; *ce->been_used = true; @@ -316,10 +370,10 @@ struct CheatWindow : Window { default: /* Take whatever the function returns */ - value = ce->proc(value + ((x >= 20 + SETTING_BUTTON_WIDTH / 2) ? 1 : -1), (x >= 20 + SETTING_BUTTON_WIDTH / 2) ? 1 : -1); + value = ce->proc(value + ((x >= 20 + SETTING_BUTTON_WIDTH / 2) ? 1 : -1), (x >= 10 + this->box_width + SETTING_BUTTON_WIDTH / 2) ? 1 : -1); /* The first cheat (money), doesn't return a different value. */ - if (value != oldvalue || btn == CHT_MONEY) this->clicked = btn * 2 + 1 + ((x >= 20 + SETTING_BUTTON_WIDTH / 2) != rtl ? 1 : 0); + if (value != oldvalue || btn == CHT_MONEY) this->clicked = btn * 2 + 1 + ((x >= 10 + this->box_width + SETTING_BUTTON_WIDTH / 2) != rtl ? 1 : 0); break; } @@ -341,7 +395,7 @@ struct CheatWindow : Window { /* Was 'cancel' pressed or nothing entered? */ if (str == NULL || StrEmpty(str)) return; - const CheatEntry *ce = &_cheats_ui[CHT_CHANGE_DATE]; + const CheatEntry *ce = &_cheats_ui[clicked_widget]; int oldvalue = (int32)ReadValue(ce->variable, ce->type); int value = atoi(str); *ce->been_used = true; diff --git a/src/cheat_type.h b/src/cheat_type.h index a345cdd3bd..a75acf35e3 100644 --- a/src/cheat_type.h +++ b/src/cheat_type.h @@ -36,6 +36,7 @@ struct Cheats { Cheat change_date; ///< changes date ingame Cheat setup_prod; ///< setup raw-material production in game Cheat dummy3; ///< empty cheat (enable running el-engines on normal rail) + Cheat edit_max_hl; ///< edit the maximum heightlevel; this is a cheat because of the fact that it needs to reset NewGRF game state and doing so as a simple configuration breaks the expectation of many }; extern Cheats _cheats; diff --git a/src/clear_cmd.cpp b/src/clear_cmd.cpp index ad73ed143d..2e9589aee2 100644 --- a/src/clear_cmd.cpp +++ b/src/clear_cmd.cpp @@ -112,7 +112,7 @@ static void DrawTile_Clear(TileInfo *ti) break; case CLEAR_ROCKS: - DrawGroundSprite(SPR_FLAT_ROCKY_LAND_1 + SlopeToSpriteOffset(ti->tileh), PAL_NONE); + DrawGroundSprite((HasGrfMiscBit(GMB_SECOND_ROCKY_TILE_SET) && (TileHash(ti->x, ti->y) & 1) ? SPR_FLAT_ROCKY_LAND_2 : SPR_FLAT_ROCKY_LAND_1) + SlopeToSpriteOffset(ti->tileh), PAL_NONE); break; case CLEAR_FIELDS: diff --git a/src/clear_map.h b/src/clear_map.h index ca1d1043e7..76b1e82d04 100644 --- a/src/clear_map.h +++ b/src/clear_map.h @@ -228,7 +228,7 @@ static inline uint GetFence(TileIndex t, DiagDirection side) case DIAGDIR_SE: return GB(_m[t].m4, 2, 3); case DIAGDIR_SW: return GB(_m[t].m4, 5, 3); case DIAGDIR_NE: return GB(_m[t].m3, 5, 3); - case DIAGDIR_NW: return GB(_m[t].m6, 2, 3); + case DIAGDIR_NW: return GB(_me[t].m6, 2, 3); } } @@ -247,7 +247,7 @@ static inline void SetFence(TileIndex t, DiagDirection side, uint h) case DIAGDIR_SE: SB(_m[t].m4, 2, 3, h); break; case DIAGDIR_SW: SB(_m[t].m4, 5, 3, h); break; case DIAGDIR_NE: SB(_m[t].m3, 5, 3, h); break; - case DIAGDIR_NW: SB(_m[t].m6, 2, 3, h); break; + case DIAGDIR_NW: SB(_me[t].m6, 2, 3, h); break; } } @@ -260,10 +260,6 @@ static inline void SetFence(TileIndex t, DiagDirection side, uint h) */ static inline void MakeClear(TileIndex t, ClearGround g, uint density) { - /* If this is a non-bridgeable tile, clear the bridge bits while the rest - * of the tile information is still here. */ - if (!MayHaveBridgeAbove(t)) SB(_m[t].m6, 6, 2, 0); - SetTileType(t, MP_CLEAR); _m[t].m1 = 0; SetTileOwner(t, OWNER_NONE); @@ -271,7 +267,7 @@ static inline void MakeClear(TileIndex t, ClearGround g, uint density) _m[t].m3 = 0; _m[t].m4 = 0 << 5 | 0 << 2; SetClearGroundDensity(t, g, density); // Sets m5 - SB(_m[t].m6, 2, 4, 0); // Other bits are "tropic zone" and "bridge above" + _me[t].m6 = 0; _me[t].m7 = 0; } @@ -291,7 +287,7 @@ static inline void MakeField(TileIndex t, uint field_type, IndustryID industry) _m[t].m3 = field_type; _m[t].m4 = 0 << 5 | 0 << 2; SetClearGroundDensity(t, CLEAR_FIELDS, 3); - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } diff --git a/src/command.cpp b/src/command.cpp index 3700eae1bc..959610cd28 100644 --- a/src/command.cpp +++ b/src/command.cpp @@ -84,6 +84,7 @@ CommandProc CmdBuildVehicle; CommandProc CmdSellVehicle; CommandProc CmdRefitVehicle; CommandProc CmdSendVehicleToDepot; +CommandProc CmdSetVehicleVisibility; CommandProc CmdForceTrainProceed; CommandProc CmdReverseTrainDirection; @@ -243,12 +244,13 @@ static const Command _command_proc_table[] = { DEF_CMD(CmdSellVehicle, CMD_CLIENT_ID, CMDT_VEHICLE_CONSTRUCTION ), // CMD_SELL_VEHICLE DEF_CMD(CmdRefitVehicle, 0, CMDT_VEHICLE_CONSTRUCTION ), // CMD_REFIT_VEHICLE DEF_CMD(CmdSendVehicleToDepot, 0, CMDT_VEHICLE_MANAGEMENT ), // CMD_SEND_VEHICLE_TO_DEPOT + DEF_CMD(CmdSetVehicleVisibility, 0, CMDT_COMPANY_SETTING ), // CMD_SET_VEHICLE_VISIBILITY DEF_CMD(CmdMoveRailVehicle, 0, CMDT_VEHICLE_CONSTRUCTION ), // CMD_MOVE_RAIL_VEHICLE DEF_CMD(CmdForceTrainProceed, 0, CMDT_VEHICLE_MANAGEMENT ), // CMD_FORCE_TRAIN_PROCEED DEF_CMD(CmdReverseTrainDirection, 0, CMDT_VEHICLE_MANAGEMENT ), // CMD_REVERSE_TRAIN_DIRECTION - DEF_CMD(CmdClearOrderBackup, CMD_CLIENT_ID, CMDT_ROUTE_MANAGEMENT ), // CMD_CLEAR_ORDER_BACKUP + DEF_CMD(CmdClearOrderBackup, CMD_CLIENT_ID, CMDT_SERVER_SETTING ), // CMD_CLEAR_ORDER_BACKUP DEF_CMD(CmdModifyOrder, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_MODIFY_ORDER DEF_CMD(CmdSkipToOrder, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_SKIP_TO_ORDER DEF_CMD(CmdDeleteOrder, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_DELETE_ORDER diff --git a/src/command_type.h b/src/command_type.h index a369be6651..f318216acc 100644 --- a/src/command_type.h +++ b/src/command_type.h @@ -216,6 +216,7 @@ enum Commands { CMD_SELL_VEHICLE, ///< sell a vehicle CMD_REFIT_VEHICLE, ///< refit the cargo space of a vehicle CMD_SEND_VEHICLE_TO_DEPOT, ///< send a vehicle to a depot + CMD_SET_VEHICLE_VISIBILITY, ///< hide or unhide a vehicle in the build vehicle and autoreplace GUIs CMD_MOVE_RAIL_VEHICLE, ///< move a rail vehicle (in the depot) CMD_FORCE_TRAIN_PROCEED, ///< proceed a train to pass a red signal diff --git a/src/company_cmd.cpp b/src/company_cmd.cpp index 3dfcc3234a..577ea884d8 100644 --- a/src/company_cmd.cpp +++ b/src/company_cmd.cpp @@ -41,6 +41,8 @@ #include "safeguards.h" +void ClearEnginesHiddenFlagOfCompany(CompanyID cid); + CompanyByte _local_company; ///< Company controlled by the human player at this client. Can also be #COMPANY_SPECTATOR. CompanyByte _current_company; ///< Company currently doing an action. Colours _company_colours[MAX_COMPANIES]; ///< NOSAVE: can be determined from company structs. @@ -558,6 +560,7 @@ Company *DoStartupNewCompany(bool is_ai, CompanyID company = INVALID_COMPANY) RandomCompanyManagerFaceBits(c->face, (GenderEthnicity)Random(), false, false); // create a random company manager face SetDefaultCompanySettings(c->index); + ClearEnginesHiddenFlagOfCompany(c->index); GeneratePresidentName(c); diff --git a/src/company_gui.cpp b/src/company_gui.cpp index 3a854ccbfd..1343acb91b 100644 --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -35,6 +35,7 @@ #include "road_func.h" #include "water.h" #include "station_func.h" +#include "zoom_func.h" #include "widgets/company_widget.h" @@ -528,7 +529,7 @@ public: uint Height(uint width) const { - return max(FONT_HEIGHT_NORMAL, 14); + return max(FONT_HEIGHT_NORMAL, ScaleGUITrad(12) + 2); } bool Selectable() const @@ -539,8 +540,15 @@ public: void Draw(int left, int right, int top, int bottom, bool sel, int bg_colour) const { bool rtl = _current_text_dir == TD_RTL; - DrawSprite(SPR_VEH_BUS_SIDE_VIEW, PALETTE_RECOLOUR_START + this->result, rtl ? right - 16 : left + 16, top + 7); - DrawString(rtl ? left + 2 : left + 32, rtl ? right - 32 : right - 2, top + max(0, 13 - FONT_HEIGHT_NORMAL), this->String(), sel ? TC_WHITE : TC_BLACK); + int height = bottom - top; + int icon_y_offset = height / 2; + int text_y_offset = (height - FONT_HEIGHT_NORMAL) / 2 + 1; + DrawSprite(SPR_VEH_BUS_SIDE_VIEW, PALETTE_RECOLOUR_START + this->result, + rtl ? right - 2 - ScaleGUITrad(14) : left + ScaleGUITrad(14) + 2, + top + icon_y_offset); + DrawString(rtl ? left + 2 : left + ScaleGUITrad(28) + 4, + rtl ? right - ScaleGUITrad(28) - 4 : right - 2, + top + text_y_offset, this->String(), sel ? TC_WHITE : TC_BLACK); } }; @@ -1137,6 +1145,13 @@ public: virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) { switch (widget) { + case WID_SCMF_FACE: { + Dimension face_size = GetSpriteSize(SPR_GRADIENT); + size->width = max(size->width, face_size.width); + size->height = max(size->height, face_size.height); + break; + } + case WID_SCMF_HAS_MOUSTACHE_EARRING_TEXT: case WID_SCMF_TIE_EARRING_TEXT: { int offset = (widget - WID_SCMF_HAS_MOUSTACHE_EARRING_TEXT) * 2; @@ -2074,6 +2089,13 @@ struct CompanyWindow : Window virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) { switch (widget) { + case WID_C_FACE: { + Dimension face_size = GetSpriteSize(SPR_GRADIENT); + size->width = max(size->width, face_size.width); + size->height = max(size->height, face_size.height); + break; + } + case WID_C_DESC_COLOUR_SCHEME_EXAMPLE: { Point offset; Dimension d = GetSpriteSize(SPR_VEH_BUS_SW_VIEW, &offset); diff --git a/src/core/random_func.cpp b/src/core/random_func.cpp index 5c1d079403..e4593c4076 100644 --- a/src/core/random_func.cpp +++ b/src/core/random_func.cpp @@ -13,6 +13,15 @@ #include "random_func.hpp" #include "bitmath_func.hpp" +#ifdef RANDOM_DEBUG +#include "../network/network.h" +#include "../network/network_server.h" +#include "../network/network_internal.h" +#include "../company_func.h" +#include "../fileio_func.h" +#include "../date_func.h" +#endif /* RANDOM_DEBUG */ + #include "../safeguards.h" Randomizer _random, _interactive_random; @@ -62,13 +71,6 @@ void SetRandomSeed(uint32 seed) } #ifdef RANDOM_DEBUG -#include "../network/network.h" -#include "../network/network_server.h" -#include "../network/network_internal.h" -#include "../company_func.h" -#include "../fileio_func.h" -#include "../date_func.h" - uint32 DoRandom(int line, const char *file) { if (_networking && (!_network_server || (NetworkClientSocket::IsValidID(0) && NetworkClientSocket::Get(0)->status != NetworkClientSocket::STATUS_INACTIVE))) { diff --git a/src/currency.cpp b/src/currency.cpp index 56111022cf..8cc385fc04 100644 --- a/src/currency.cpp +++ b/src/currency.cpp @@ -56,7 +56,7 @@ static const CurrencySpec origin_currency_specs[CURRENCY_END] = { { 60, "", 2009, "", NBSP "Sk", 1, STR_GAME_OPTIONS_CURRENCY_SKK }, ///< slovak koruna { 4, "", CF_NOEURO, "R$" NBSP, "", 0, STR_GAME_OPTIONS_CURRENCY_BRL }, ///< brazil real { 31, "", 2011, "", NBSP "EEK", 1, STR_GAME_OPTIONS_CURRENCY_EEK }, ///< estonian krooni - { 4, "", 2014, "", NBSP "Lt", 1, STR_GAME_OPTIONS_CURRENCY_LTL }, ///< lithuanian litas + { 4, "", 2015, "", NBSP "Lt", 1, STR_GAME_OPTIONS_CURRENCY_LTL }, ///< lithuanian litas { 1850, "", CF_NOEURO, "\xE2\x82\xA9", "", 0, STR_GAME_OPTIONS_CURRENCY_KRW }, ///< south korean won { 13, "", CF_NOEURO, "R" NBSP, "", 0, STR_GAME_OPTIONS_CURRENCY_ZAR }, ///< south african rand { 1, "", CF_NOEURO, "", "", 2, STR_GAME_OPTIONS_CURRENCY_CUSTOM }, ///< custom currency (add further languages below) diff --git a/src/depot_gui.cpp b/src/depot_gui.cpp index 6b44428afb..fe75708ddf 100644 --- a/src/depot_gui.cpp +++ b/src/depot_gui.cpp @@ -190,16 +190,19 @@ static void InitBlocksizeForVehicles(VehicleType type, EngineImageType image_typ if ((int)x + x_offs > max_extend_right) max_extend_right = x + x_offs; } + int min_extend = ScaleGUITrad(16); + int max_extend = ScaleGUITrad(98); + switch (image_type) { case EIT_IN_DEPOT: - _base_block_sizes_depot[type].height = max(GetVehicleHeight(type), max_height); - _base_block_sizes_depot[type].extend_left = Clamp(max_extend_left, 16, 98); - _base_block_sizes_depot[type].extend_right = Clamp(max_extend_right, 16, 98); + _base_block_sizes_depot[type].height = max(ScaleGUITrad(GetVehicleHeight(type)), max_height); + _base_block_sizes_depot[type].extend_left = Clamp(max_extend_left, min_extend, max_extend); + _base_block_sizes_depot[type].extend_right = Clamp(max_extend_right, min_extend, max_extend); break; case EIT_PURCHASE: - _base_block_sizes_purchase[type].height = max(GetVehicleHeight(type), max_height); - _base_block_sizes_purchase[type].extend_left = Clamp(max_extend_left, 16, 98); - _base_block_sizes_purchase[type].extend_right = Clamp(max_extend_right, 16, 98); + _base_block_sizes_purchase[type].height = max(ScaleGUITrad(GetVehicleHeight(type)), max_height); + _base_block_sizes_purchase[type].extend_left = Clamp(max_extend_left, min_extend, max_extend); + _base_block_sizes_purchase[type].extend_right = Clamp(max_extend_right, min_extend, max_extend); break; default: NOT_REACHED(); @@ -228,6 +231,7 @@ struct DepotWindow : Window { bool generate_list; VehicleList vehicle_list; VehicleList wagon_list; + uint unitnumber_digits; uint num_columns; ///< Number of columns. Scrollbar *hscroll; ///< Only for trains. Scrollbar *vscroll; @@ -241,6 +245,7 @@ struct DepotWindow : Window { this->generate_list = true; this->type = type; this->num_columns = 1; // for non-trains this gets set in FinishInitNested() + this->unitnumber_digits = 2; this->CreateNestedTree(); this->hscroll = (this->type == VEH_TRAIN ? this->GetScrollbar(WID_D_H_SCROLL) : NULL); @@ -274,7 +279,7 @@ struct DepotWindow : Window { void DrawVehicleInDepot(const Vehicle *v, int left, int right, int y) const { bool free_wagon = false; - int sprite_y = y + (this->resize.step_height - GetVehicleHeight(v->type)) / 2; + int sprite_y = y + (this->resize.step_height - ScaleGUITrad(GetVehicleHeight(v->type))) / 2; bool rtl = _current_text_dir == TD_RTL; int image_left = rtl ? left + this->count_width : left + this->header_width; @@ -285,7 +290,7 @@ struct DepotWindow : Window { const Train *u = Train::From(v); free_wagon = u->IsFreeWagon(); - uint x_space = free_wagon ? TRAININFO_DEFAULT_VEHICLE_WIDTH : 0; + uint x_space = free_wagon ? ScaleGUITrad(TRAININFO_DEFAULT_VEHICLE_WIDTH) : 0; DrawTrainImage(u, image_left + (rtl ? 0 : x_space), image_right - (rtl ? x_space : 0), sprite_y - 1, this->sel, EIT_IN_DEPOT, free_wagon ? 0 : this->hscroll->GetPosition(), this->vehicle_over); @@ -298,13 +303,7 @@ struct DepotWindow : Window { case VEH_ROAD: DrawRoadVehImage( v, image_left, image_right, sprite_y, this->sel, EIT_IN_DEPOT); break; case VEH_SHIP: DrawShipImage( v, image_left, image_right, sprite_y, this->sel, EIT_IN_DEPOT); break; - case VEH_AIRCRAFT: { - const Sprite *spr = GetSprite(v->GetImage(DIR_W, EIT_IN_DEPOT), ST_NORMAL); - DrawAircraftImage(v, image_left, image_right, - y + max(UnScaleByZoom(spr->height, ZOOM_LVL_GUI) + UnScaleByZoom(spr->y_offs, ZOOM_LVL_GUI) - 14, 0), // tall sprites needs an y offset - this->sel, EIT_IN_DEPOT); - break; - } + case VEH_AIRCRAFT: DrawAircraftImage(v, image_left, image_right, sprite_y, this->sel, EIT_IN_DEPOT); break; default: NOT_REACHED(); } @@ -430,7 +429,7 @@ struct DepotWindow : Window { pos -= this->vehicle_list.Length(); *veh = this->wagon_list[pos]; /* free wagons don't have an initial loco. */ - x -= VEHICLEINFO_FULL_VEHICLE_WIDTH; + x -= ScaleGUITrad(VEHICLEINFO_FULL_VEHICLE_WIDTH); wagon = true; } @@ -610,16 +609,17 @@ struct DepotWindow : Window { this->count_width = 0; } - Dimension unumber = { GetDigitWidth() * 4, FONT_HEIGHT_NORMAL }; + SetDParamMaxDigits(0, this->unitnumber_digits); + Dimension unumber = GetStringBoundingBox(STR_BLACK_COMMA); const Sprite *spr = GetSprite(SPR_FLAG_VEH_STOPPED, ST_NORMAL); - this->flag_width = UnScaleByZoom(spr->width, ZOOM_LVL_GUI) + WD_FRAMERECT_RIGHT; - this->flag_height = UnScaleByZoom(spr->height, ZOOM_LVL_GUI); + this->flag_width = UnScaleGUI(spr->width) + WD_FRAMERECT_RIGHT; + this->flag_height = UnScaleGUI(spr->height); if (this->type == VEH_TRAIN || this->type == VEH_ROAD) { - min_height = max(unumber.height + WD_MATRIX_TOP, UnScaleByZoom(spr->height, ZOOM_LVL_GUI)); + min_height = max(unumber.height + WD_MATRIX_TOP, UnScaleGUI(spr->height)); this->header_width = unumber.width + this->flag_width + WD_FRAMERECT_LEFT; } else { - min_height = unumber.height + UnScaleByZoom(spr->height, ZOOM_LVL_GUI) + WD_MATRIX_TOP + WD_PAR_VSEP_NORMAL + WD_MATRIX_BOTTOM; + min_height = unumber.height + UnScaleGUI(spr->height) + WD_MATRIX_TOP + WD_PAR_VSEP_NORMAL + WD_MATRIX_BOTTOM; this->header_width = max(unumber.width, this->flag_width) + WD_FRAMERECT_RIGHT; } int base_width = this->count_width + this->header_width; @@ -627,7 +627,7 @@ struct DepotWindow : Window { resize->height = max(GetVehicleImageCellSize(this->type, EIT_IN_DEPOT).height, min_height); if (this->type == VEH_TRAIN) { resize->width = 1; - size->width = base_width + 2 * 29; // about 2 parts + size->width = base_width + 2 * ScaleGUITrad(29); // about 2 parts size->height = resize->height * 6; } else { resize->width = base_width + GetVehicleImageCellSize(this->type, EIT_IN_DEPOT).extend_left + GetVehicleImageCellSize(this->type, EIT_IN_DEPOT).extend_right; @@ -659,11 +659,17 @@ struct DepotWindow : Window { BuildDepotVehicleList(this->type, this->window_number, &this->vehicle_list, &this->wagon_list); this->generate_list = false; DepotSortList(&this->vehicle_list); + + uint new_unitnumber_digits = GetUnitNumberDigits(this->vehicle_list); + if (this->unitnumber_digits != new_unitnumber_digits) { + this->unitnumber_digits = new_unitnumber_digits; + this->ReInit(); + } } /* determine amount of items for scroller */ if (this->type == VEH_TRAIN) { - uint max_width = VEHICLEINFO_FULL_VEHICLE_WIDTH; + uint max_width = ScaleGUITrad(VEHICLEINFO_FULL_VEHICLE_WIDTH); for (uint num = 0; num < this->vehicle_list.Length(); num++) { uint width = 0; for (const Train *v = Train::From(this->vehicle_list[num]); v != NULL; v = v->Next()) { diff --git a/src/disaster_cmd.cpp b/src/disaster_vehicle.cpp similarity index 85% rename from src/disaster_cmd.cpp rename to src/disaster_vehicle.cpp index 1be0f217a2..d75e2d460e 100644 --- a/src/disaster_cmd.cpp +++ b/src/disaster_vehicle.cpp @@ -8,7 +8,8 @@ */ /** - * @file disaster_cmd.cpp + * @file disaster_vehicle.cpp + * * All disaster/easter egg vehicles are handled here. * The general flow of control for the disaster vehicles is as follows: *
      @@ -26,6 +27,8 @@ #include "stdafx.h" +#include "aircraft.h" +#include "disaster_vehicle.h" #include "industry.h" #include "station_base.h" #include "command_func.h" @@ -52,26 +55,6 @@ /** Delay counter for considering the next disaster. */ uint16 _disaster_delay; -enum DisasterSubType { - ST_ZEPPELINER, - ST_ZEPPELINER_SHADOW, - ST_SMALL_UFO, - ST_SMALL_UFO_SHADOW, - ST_AIRPLANE, - ST_AIRPLANE_SHADOW, - ST_HELICOPTER, - ST_HELICOPTER_SHADOW, - ST_HELICOPTER_ROTORS, - ST_BIG_UFO, - ST_BIG_UFO_SHADOW, - ST_BIG_UFO_DESTROYER, - ST_BIG_UFO_DESTROYER_SHADOW, - ST_SMALL_SUBMARINE, - ST_BIG_SUBMARINE, -}; - -static const uint INITIAL_DISASTER_VEHICLE_ZPOS = 135; ///< Initial Z position of flying disaster vehicles. - static void DisasterClearSquare(TileIndex tile) { if (EnsureNoVehicleOnGround(tile).Failed()) return; @@ -125,46 +108,88 @@ static const SpriteID * const _disaster_images[] = { _disaster_images_4, _disaster_images_5, ///< small and big submarine sprites }; -static void DisasterVehicleUpdateImage(DisasterVehicle *v) +void DisasterVehicle::UpdateImage() { - SpriteID img = v->image_override; - if (img == 0) img = _disaster_images[v->subtype][v->direction]; - v->cur_image = img; + SpriteID img = this->image_override; + if (img == 0) img = _disaster_images[this->subtype][this->direction]; + this->cur_image = img; } /** - * Initialize a disaster vehicle. These vehicles are of type VEH_DISASTER, are unclickable - * and owned by nobody + * Construct the disaster vehicle. + * @param x The X coordinate. + * @param y The Y coordinate. + * @param direction The direction the vehicle is facing. + * @param subtype The sub type of vehicle. + * @param big_ufo_destroyer_target The target for the UFO destroyer. */ -static void InitializeDisasterVehicle(DisasterVehicle *v, int x, int y, int z, Direction direction, byte subtype) +DisasterVehicle::DisasterVehicle(int x, int y, Direction direction, DisasterSubType subtype, VehicleID big_ufo_destroyer_target) : + SpecializedVehicleBase(), big_ufo_destroyer_target(big_ufo_destroyer_target) { - v->x_pos = x; - v->y_pos = y; - v->z_pos = z; - v->tile = TileVirtXY(x, y); - v->direction = direction; - v->subtype = subtype; - v->UpdateDeltaXY(INVALID_DIR); - v->owner = OWNER_NONE; - v->vehstatus = VS_UNCLICKABLE; - v->image_override = 0; - v->current_order.Free(); + this->vehstatus = VS_UNCLICKABLE; - DisasterVehicleUpdateImage(v); - VehicleUpdatePositionAndViewport(v); + this->x_pos = x; + this->y_pos = y; + switch (subtype) { + case ST_ZEPPELINER: + case ST_SMALL_UFO: + case ST_AIRPLANE: + case ST_HELICOPTER: + case ST_BIG_UFO: + case ST_BIG_UFO_DESTROYER: + GetAircraftFlightLevelBounds(this, &this->z_pos, NULL); + break; + + case ST_HELICOPTER_ROTORS: + GetAircraftFlightLevelBounds(this, &this->z_pos, NULL); + this->z_pos += ROTOR_Z_OFFSET; + break; + + case ST_SMALL_SUBMARINE: + case ST_BIG_SUBMARINE: + this->z_pos = 0; + break; + + case ST_ZEPPELINER_SHADOW: + case ST_SMALL_UFO_SHADOW: + case ST_AIRPLANE_SHADOW: + case ST_HELICOPTER_SHADOW: + case ST_BIG_UFO_SHADOW: + case ST_BIG_UFO_DESTROYER_SHADOW: + this->z_pos = 0; + this->vehstatus |= VS_SHADOW; + break; + } + + this->direction = direction; + this->tile = TileVirtXY(x, y); + this->subtype = subtype; + this->UpdateDeltaXY(INVALID_DIR); + this->owner = OWNER_NONE; + this->image_override = 0; + this->current_order.Free(); + + this->UpdateImage(); + this->UpdatePositionAndViewport(); } -static void SetDisasterVehiclePos(DisasterVehicle *v, int x, int y, int z) +/** + * Update the position of the vehicle. + * @param x The new X-coordinate. + * @param y The new Y-coordinate. + * @param z The new Z-coordinate. + */ +void DisasterVehicle::UpdatePosition(int x, int y, int z) { - v->x_pos = x; - v->y_pos = y; - v->z_pos = z; - v->tile = TileVirtXY(x, y); + this->x_pos = x; + this->y_pos = y; + this->z_pos = z; + this->tile = TileVirtXY(x, y); - DisasterVehicleUpdateImage(v); - VehicleUpdatePositionAndViewport(v); + this->UpdateImage(); + this->UpdatePositionAndViewport(); - DisasterVehicle *u = v->Next(); + DisasterVehicle *u = this->Next(); if (u != NULL) { int safe_x = Clamp(x, 0, MapMaxX() * TILE_SIZE); int safe_y = Clamp(y - 1, 0, MapMaxY() * TILE_SIZE); @@ -173,16 +198,16 @@ static void SetDisasterVehiclePos(DisasterVehicle *v, int x, int y, int z) u->y_pos = y - 1 - (max(z - GetSlopePixelZ(safe_x, safe_y), 0) >> 3); safe_y = Clamp(u->y_pos, 0, MapMaxY() * TILE_SIZE); u->z_pos = GetSlopePixelZ(safe_x, safe_y); - u->direction = v->direction; + u->direction = this->direction; - DisasterVehicleUpdateImage(u); - VehicleUpdatePositionAndViewport(u); + u->UpdateImage(); + u->UpdatePositionAndViewport(); if ((u = u->Next()) != NULL) { u->x_pos = x; u->y_pos = y; - u->z_pos = z + 5; - VehicleUpdatePositionAndViewport(u); + u->z_pos = z + ROTOR_Z_OFFSET; + u->UpdatePositionAndViewport(); } } } @@ -204,7 +229,7 @@ static bool DisasterTick_Zeppeliner(DisasterVehicle *v) GetNewVehiclePosResult gp = GetNewVehiclePos(v); - SetDisasterVehiclePos(v, gp.x, gp.y, v->z_pos); + v->UpdatePosition(gp.x, gp.y, GetAircraftFlightLevel(v)); if (v->current_order.GetDestination() == 1) { if (++v->age == 38) { @@ -242,7 +267,7 @@ static bool DisasterTick_Zeppeliner(DisasterVehicle *v) AI::NewEvent(GetTileOwner(v->tile), new ScriptEventDisasterZeppelinerCleared(st->index)); } - SetDisasterVehiclePos(v, v->x_pos, v->y_pos, v->z_pos); + v->UpdatePosition(v->x_pos, v->y_pos, GetAircraftFlightLevel(v)); delete v; return false; } @@ -251,7 +276,7 @@ static bool DisasterTick_Zeppeliner(DisasterVehicle *v) int y = v->y_pos; int z = GetSlopePixelZ(x, y); if (z < v->z_pos) z = v->z_pos - 1; - SetDisasterVehiclePos(v, x, y, z); + v->UpdatePosition(x, y, z); if (++v->age == 1) { CreateEffectVehicleRel(v, 0, 7, 8, EV_EXPLOSION_LARGE); @@ -298,7 +323,7 @@ static bool DisasterTick_Ufo(DisasterVehicle *v) if (Delta(x, v->x_pos) + Delta(y, v->y_pos) >= (int)TILE_SIZE) { v->direction = GetDirectionTowards(v, x, y); GetNewVehiclePosResult gp = GetNewVehiclePos(v); - SetDisasterVehiclePos(v, gp.x, gp.y, v->z_pos); + v->UpdatePosition(gp.x, gp.y, GetAircraftFlightLevel(v)); return true; } if (++v->age < 6) { @@ -346,7 +371,7 @@ static bool DisasterTick_Ufo(DisasterVehicle *v) int z = v->z_pos; if (dist <= TILE_SIZE && z > u->z_pos) z--; - SetDisasterVehiclePos(v, gp.x, gp.y, z); + v->UpdatePosition(gp.x, gp.y, z); if (z <= u->z_pos && (u->vehstatus & VS_HIDDEN) == 0) { v->age++; @@ -401,7 +426,7 @@ static bool DisasterTick_Aircraft(DisasterVehicle *v, uint16 image_override, boo v->image_override = (v->current_order.GetDestination() == 1 && HasBit(v->tick_counter, 2)) ? image_override : 0; GetNewVehiclePosResult gp = GetNewVehiclePos(v); - SetDisasterVehiclePos(v, gp.x, gp.y, v->z_pos); + v->UpdatePosition(gp.x, gp.y, GetAircraftFlightLevel(v)); if ((leave_at_top && gp.x < (-10 * (int)TILE_SIZE)) || (!leave_at_top && gp.x > (int)(MapSizeX() * TILE_SIZE + 9 * TILE_SIZE) - 1)) { delete v; @@ -476,7 +501,7 @@ static bool DisasterTick_Helicopter_Rotors(DisasterVehicle *v) if (++v->cur_image > SPR_ROTOR_MOVING_3) v->cur_image = SPR_ROTOR_MOVING_1; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); return true; } @@ -498,7 +523,7 @@ static bool DisasterTick_Big_Ufo(DisasterVehicle *v) v->direction = GetDirectionTowards(v, x, y); GetNewVehiclePosResult gp = GetNewVehiclePos(v); - SetDisasterVehiclePos(v, gp.x, gp.y, v->z_pos); + v->UpdatePosition(gp.x, gp.y, GetAircraftFlightLevel(v)); return true; } @@ -510,7 +535,7 @@ static bool DisasterTick_Big_Ufo(DisasterVehicle *v) int z = GetSlopePixelZ(v->x_pos, v->y_pos); if (z < v->z_pos) { - SetDisasterVehiclePos(v, v->x_pos, v->y_pos, v->z_pos - 1); + v->UpdatePosition(v->x_pos, v->y_pos, v->z_pos - 1); return true; } @@ -534,23 +559,16 @@ static bool DisasterTick_Big_Ufo(DisasterVehicle *v) delete v; return false; } - DisasterVehicle *u = new DisasterVehicle(); - - InitializeDisasterVehicle(u, -6 * (int)TILE_SIZE, v->y_pos, INITIAL_DISASTER_VEHICLE_ZPOS, DIR_SW, ST_BIG_UFO_DESTROYER); - u->big_ufo_destroyer_target = v->index; - - DisasterVehicle *w = new DisasterVehicle(); - + DisasterVehicle *u = new DisasterVehicle(-6 * (int)TILE_SIZE, v->y_pos, DIR_SW, ST_BIG_UFO_DESTROYER, v->index); + DisasterVehicle *w = new DisasterVehicle(-6 * (int)TILE_SIZE, v->y_pos, DIR_SW, ST_BIG_UFO_DESTROYER_SHADOW); u->SetNext(w); - InitializeDisasterVehicle(w, -6 * (int)TILE_SIZE, v->y_pos, 0, DIR_SW, ST_BIG_UFO_DESTROYER_SHADOW); - w->vehstatus |= VS_SHADOW; } else if (v->current_order.GetDestination() == 0) { int x = TileX(v->dest_tile) * TILE_SIZE; int y = TileY(v->dest_tile) * TILE_SIZE; if (Delta(x, v->x_pos) + Delta(y, v->y_pos) >= (int)TILE_SIZE) { v->direction = GetDirectionTowards(v, x, y); GetNewVehiclePosResult gp = GetNewVehiclePos(v); - SetDisasterVehiclePos(v, gp.x, gp.y, v->z_pos); + v->UpdatePosition(gp.x, gp.y, GetAircraftFlightLevel(v)); return true; } @@ -585,7 +603,7 @@ static bool DisasterTick_Big_Ufo_Destroyer(DisasterVehicle *v) v->tick_counter++; GetNewVehiclePosResult gp = GetNewVehiclePos(v); - SetDisasterVehiclePos(v, gp.x, gp.y, v->z_pos); + v->UpdatePosition(gp.x, gp.y, GetAircraftFlightLevel(v)); if (gp.x > (int)(MapSizeX() * TILE_SIZE + 9 * TILE_SIZE) - 1) { delete v; @@ -642,7 +660,7 @@ static bool DisasterTick_Submarine(DisasterVehicle *v) TrackBits trackbits = TrackStatusToTrackBits(GetTileTrackStatus(tile, TRANSPORT_WATER, 0)); if (trackbits == TRACK_BIT_ALL && !Chance16(1, 90)) { GetNewVehiclePosResult gp = GetNewVehiclePos(v); - SetDisasterVehiclePos(v, gp.x, gp.y, v->z_pos); + v->UpdatePosition(gp.x, gp.y, v->z_pos); return true; } } @@ -699,14 +717,10 @@ static void Disaster_Zeppeliner_Init() } } - DisasterVehicle *v = new DisasterVehicle(); - InitializeDisasterVehicle(v, x, 0, INITIAL_DISASTER_VEHICLE_ZPOS, DIR_SE, ST_ZEPPELINER); - + DisasterVehicle *v = new DisasterVehicle(x, 0, DIR_SE, ST_ZEPPELINER); /* Allocate shadow */ - DisasterVehicle *u = new DisasterVehicle(); + DisasterVehicle *u = new DisasterVehicle(x, 0, DIR_SE, ST_ZEPPELINER_SHADOW); v->SetNext(u); - InitializeDisasterVehicle(u, x, 0, 0, DIR_SE, ST_ZEPPELINER_SHADOW); - u->vehstatus |= VS_SHADOW; } @@ -718,18 +732,13 @@ static void Disaster_Small_Ufo_Init() { if (!Vehicle::CanAllocateItem(2)) return; - DisasterVehicle *v = new DisasterVehicle(); int x = TileX(Random()) * TILE_SIZE + TILE_SIZE / 2; - - InitializeDisasterVehicle(v, x, 0, INITIAL_DISASTER_VEHICLE_ZPOS, DIR_SE, ST_SMALL_UFO); + DisasterVehicle *v = new DisasterVehicle(x, 0, DIR_SE, ST_SMALL_UFO); v->dest_tile = TileXY(MapSizeX() / 2, MapSizeY() / 2); - v->age = 0; /* Allocate shadow */ - DisasterVehicle *u = new DisasterVehicle(); + DisasterVehicle *u = new DisasterVehicle(x, 0, DIR_SE, ST_SMALL_UFO_SHADOW); v->SetNext(u); - InitializeDisasterVehicle(u, x, 0, 0, DIR_SE, ST_SMALL_UFO_SHADOW); - u->vehstatus |= VS_SHADOW; } @@ -749,18 +758,13 @@ static void Disaster_Airplane_Init() if (found == NULL) return; - DisasterVehicle *v = new DisasterVehicle(); - /* Start from the bottom (south side) of the map */ int x = (MapSizeX() + 9) * TILE_SIZE - 1; int y = TileY(found->location.tile) * TILE_SIZE + 37; - InitializeDisasterVehicle(v, x, y, INITIAL_DISASTER_VEHICLE_ZPOS, DIR_NE, ST_AIRPLANE); - - DisasterVehicle *u = new DisasterVehicle(); + DisasterVehicle *v = new DisasterVehicle(x, y, DIR_NE, ST_AIRPLANE); + DisasterVehicle *u = new DisasterVehicle(x, y, DIR_NE, ST_AIRPLANE_SHADOW); v->SetNext(u); - InitializeDisasterVehicle(u, x, y, 0, DIR_SE, ST_AIRPLANE_SHADOW); - u->vehstatus |= VS_SHADOW; } @@ -780,21 +784,15 @@ static void Disaster_Helicopter_Init() if (found == NULL) return; - DisasterVehicle *v = new DisasterVehicle(); - int x = -16 * (int)TILE_SIZE; int y = TileY(found->location.tile) * TILE_SIZE + 37; - InitializeDisasterVehicle(v, x, y, INITIAL_DISASTER_VEHICLE_ZPOS, DIR_SW, ST_HELICOPTER); - - DisasterVehicle *u = new DisasterVehicle(); + DisasterVehicle *v = new DisasterVehicle(x, y, DIR_SW, ST_HELICOPTER); + DisasterVehicle *u = new DisasterVehicle(x, y, DIR_SW, ST_HELICOPTER_SHADOW); v->SetNext(u); - InitializeDisasterVehicle(u, x, y, 0, DIR_SW, ST_HELICOPTER_SHADOW); - u->vehstatus |= VS_SHADOW; - DisasterVehicle *w = new DisasterVehicle(); + DisasterVehicle *w = new DisasterVehicle(x, y, DIR_SW, ST_HELICOPTER_ROTORS); u->SetNext(w); - InitializeDisasterVehicle(w, x, y, 140, DIR_SW, ST_HELICOPTER_ROTORS); } @@ -804,19 +802,15 @@ static void Disaster_Big_Ufo_Init() { if (!Vehicle::CanAllocateItem(2)) return; - DisasterVehicle *v = new DisasterVehicle(); int x = TileX(Random()) * TILE_SIZE + TILE_SIZE / 2; int y = MapMaxX() * TILE_SIZE - 1; - InitializeDisasterVehicle(v, x, y, INITIAL_DISASTER_VEHICLE_ZPOS, DIR_NW, ST_BIG_UFO); + DisasterVehicle *v = new DisasterVehicle(x, y, DIR_NW, ST_BIG_UFO); v->dest_tile = TileXY(MapSizeX() / 2, MapSizeY() / 2); - v->age = 0; /* Allocate shadow */ - DisasterVehicle *u = new DisasterVehicle(); + DisasterVehicle *u = new DisasterVehicle(x, y, DIR_NW, ST_BIG_UFO_SHADOW); v->SetNext(u); - InitializeDisasterVehicle(u, x, y, 0, DIR_NW, ST_BIG_UFO_SHADOW); - u->vehstatus |= VS_SHADOW; } @@ -839,9 +833,7 @@ static void Disaster_Submarine_Init(DisasterSubType subtype) } if (!IsWaterTile(TileVirtXY(x, y))) return; - DisasterVehicle *v = new DisasterVehicle(); - InitializeDisasterVehicle(v, x, y, 0, dir, subtype); - v->age = 0; + new DisasterVehicle(x, y, dir, subtype); } /* Curious submarine #1, just floats around */ @@ -973,7 +965,7 @@ void ReleaseDisastersTargetingVehicle(VehicleID vehicle) /* Revert to target-searching */ v->current_order.SetDestination(0); v->dest_tile = RandomTile(); - v->z_pos = INITIAL_DISASTER_VEHICLE_ZPOS; + GetAircraftFlightLevelBounds(v, &v->z_pos, NULL); v->age = 0; } } diff --git a/src/disaster_vehicle.h b/src/disaster_vehicle.h new file mode 100644 index 0000000000..06fb36c1e3 --- /dev/null +++ b/src/disaster_vehicle.h @@ -0,0 +1,62 @@ +/* $Id$ */ + +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + */ + +/** @file disaster_vehicle.h All disaster vehicles. */ + +#ifndef DISASTER_VEHICLE_H +#define DISASTER_VEHICLE_H + +#include "vehicle_base.h" + +/** Different sub types of disaster vehicles. */ +enum DisasterSubType { + ST_ZEPPELINER, ///< Zeppelin, crashes at airports. + ST_ZEPPELINER_SHADOW, ///< Shadow of the zeppelin. + ST_SMALL_UFO, ///< Small UFO, tries to find a road vehicle to destroy. + ST_SMALL_UFO_SHADOW, ///< Shadow of small UFO + ST_AIRPLANE, ///< Airplane destroying an oil refinery + ST_AIRPLANE_SHADOW, ///< Shadow of airplane + ST_HELICOPTER, ///< Helicopter destroying a factory. + ST_HELICOPTER_SHADOW, ///< Shadow of helicopter. + ST_HELICOPTER_ROTORS, ///< Rotors of helicopter. + ST_BIG_UFO, ///< Big UFO, finds a piece of railroad to "park" on + ST_BIG_UFO_SHADOW, ///< Shadow of the big UFO + ST_BIG_UFO_DESTROYER, ///< Aircraft the will bomb the big UFO + ST_BIG_UFO_DESTROYER_SHADOW, ///< Shadow of the aircraft. + ST_SMALL_SUBMARINE, ///< Small submarine, pops up in the oceans but doesn't do anything + ST_BIG_SUBMARINE, ///< Big submarine, pops up in the oceans but doesn't do anything +}; + +/** + * Disasters, like submarines, skyrangers and their shadows, belong to this class. + */ +struct DisasterVehicle FINAL : public SpecializedVehicle { + SpriteID image_override; ///< Override for the default disaster vehicle sprite. + VehicleID big_ufo_destroyer_target; ///< The big UFO that this destroyer is supposed to bomb. + byte flags; ///< Flags about the state of the vehicle, @see AirVehicleFlags + + /** For use by saveload. */ + DisasterVehicle() : SpecializedVehicleBase() {} + DisasterVehicle(int x, int y, Direction direction, DisasterSubType subtype, VehicleID big_ufo_destroyer_target = VEH_INVALID); + /** We want to 'destruct' the right class. */ + virtual ~DisasterVehicle() {} + + void UpdatePosition(int x, int y, int z); + void UpdateDeltaXY(Direction direction); + void UpdateImage(); + bool Tick(); +}; + +/** + * Iterate over disaster vehicles. + * @param var The variable used to iterate over. + */ +#define FOR_ALL_DISASTERVEHICLES(var) FOR_ALL_VEHICLES_OF_TYPE(DisasterVehicle, var) + +#endif /* DISASTER_VEHICLE_H */ diff --git a/src/dock_gui.cpp b/src/dock_gui.cpp index 94b7355731..f6699daeff 100644 --- a/src/dock_gui.cpp +++ b/src/dock_gui.cpp @@ -26,6 +26,7 @@ #include "company_base.h" #include "hotkeys.h" #include "gui.h" +#include "zoom_func.h" #include "widgets/dock_widget.h" @@ -115,11 +116,17 @@ struct BuildDocksToolbarWindow : Window { virtual void OnInvalidateData(int data = 0, bool gui_scope = true) { if (!gui_scope) return; - this->SetWidgetsDisabledState(!CanBuildVehicleInfrastructure(VEH_SHIP), + + bool can_build = CanBuildVehicleInfrastructure(VEH_SHIP); + this->SetWidgetsDisabledState(!can_build, WID_DT_DEPOT, WID_DT_STATION, WID_DT_BUOY, WIDGET_LIST_END); + if (!can_build) { + DeleteWindowById(WC_BUILD_STATION, TRANSPORT_WATER); + DeleteWindowById(WC_BUILD_DEPOT, TRANSPORT_WATER); + } } virtual void OnClick(Point pt, int widget, int click_count) @@ -498,14 +505,30 @@ public: UpdateDocksDirection(); } + virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) + { + switch (widget) { + case WID_BDD_X: + case WID_BDD_Y: + size->width = ScaleGUITrad(96) + 2; + size->height = ScaleGUITrad(64) + 2; + break; + } + } + virtual void OnPaint() { this->DrawWidgets(); - DrawShipDepotSprite(this->GetWidget(WID_BDD_X)->pos_x + 64, this->GetWidget(WID_BDD_X)->pos_y + 18, AXIS_X, DEPOT_PART_NORTH); - DrawShipDepotSprite(this->GetWidget(WID_BDD_X)->pos_x + 32, this->GetWidget(WID_BDD_X)->pos_y + 34, AXIS_X, DEPOT_PART_SOUTH); - DrawShipDepotSprite(this->GetWidget(WID_BDD_Y)->pos_x + 32, this->GetWidget(WID_BDD_Y)->pos_y + 18, AXIS_Y, DEPOT_PART_NORTH); - DrawShipDepotSprite(this->GetWidget(WID_BDD_Y)->pos_x + 64, this->GetWidget(WID_BDD_Y)->pos_y + 34, AXIS_Y, DEPOT_PART_SOUTH); + int x1 = ScaleGUITrad(63) + 1; + int x2 = ScaleGUITrad(31) + 1; + int y1 = ScaleGUITrad(17) + 1; + int y2 = ScaleGUITrad(33) + 1; + + DrawShipDepotSprite(this->GetWidget(WID_BDD_X)->pos_x + x1, this->GetWidget(WID_BDD_X)->pos_y + y1, AXIS_X, DEPOT_PART_NORTH); + DrawShipDepotSprite(this->GetWidget(WID_BDD_X)->pos_x + x2, this->GetWidget(WID_BDD_X)->pos_y + y2, AXIS_X, DEPOT_PART_SOUTH); + DrawShipDepotSprite(this->GetWidget(WID_BDD_Y)->pos_x + x2, this->GetWidget(WID_BDD_Y)->pos_y + y1, AXIS_Y, DEPOT_PART_NORTH); + DrawShipDepotSprite(this->GetWidget(WID_BDD_Y)->pos_x + x1, this->GetWidget(WID_BDD_Y)->pos_y + y2, AXIS_Y, DEPOT_PART_SOUTH); } virtual void OnClick(Point pt, int widget, int click_count) diff --git a/src/economy.cpp b/src/economy.cpp index e36e431478..d78d2cccec 100644 --- a/src/economy.cpp +++ b/src/economy.cpp @@ -300,7 +300,7 @@ void ChangeOwnershipOfCompanyItems(Owner old_owner, Owner new_owner) /* Single player cheated to AI company. * There are no spectators in single player, so we must pick some other company. */ assert(!_networking); - Backup cur_company(_current_company, FILE_LINE); + Backup cur_company2(_current_company, FILE_LINE); Company *c; FOR_ALL_COMPANIES(c) { if (c->index != old_owner) { @@ -308,7 +308,7 @@ void ChangeOwnershipOfCompanyItems(Owner old_owner, Owner new_owner) break; } } - cur_company.Restore(); + cur_company2.Restore(); assert(old_owner != _local_company); } @@ -431,11 +431,38 @@ void ChangeOwnershipOfCompanyItems(Owner old_owner, Owner new_owner) FreeUnitIDGenerator(VEH_SHIP, new_owner), FreeUnitIDGenerator(VEH_AIRCRAFT, new_owner) }; + /* Override company settings to new company defaults in case we need to convert them. + * This is required as the CmdChangeServiceInt doesn't copy the supplied value when it is non-custom + */ + if (new_owner != INVALID_OWNER) { + Company *old_company = Company::Get(old_owner); + Company *new_company = Company::Get(new_owner); + + old_company->settings.vehicle.servint_aircraft = new_company->settings.vehicle.servint_aircraft; + old_company->settings.vehicle.servint_trains = new_company->settings.vehicle.servint_trains; + old_company->settings.vehicle.servint_roadveh = new_company->settings.vehicle.servint_roadveh; + old_company->settings.vehicle.servint_ships = new_company->settings.vehicle.servint_ships; + old_company->settings.vehicle.servint_ispercent = new_company->settings.vehicle.servint_ispercent; + } + Vehicle *v; FOR_ALL_VEHICLES(v) { if (v->owner == old_owner && IsCompanyBuildableVehicleType(v->type)) { assert(new_owner != INVALID_OWNER); + /* Correct default values of interval settings while maintaining custom set ones. + * This prevents invalid values on mismatching company defaults being accepted. + */ + if (!v->ServiceIntervalIsCustom()) { + Company *new_company = Company::Get(new_owner); + + /* Technically, passing the interval is not needed as the command will query the default value itself. + * However, do not rely on that behaviour. + */ + int interval = CompanyServiceInterval(new_company, v->type); + DoCommand(v->tile, v->index, interval | (new_company->settings.vehicle.servint_ispercent << 17), DC_EXEC | DC_BANKRUPT, CMD_CHANGE_SERVICE_INT); + } + v->owner = new_owner; /* Owner changes, clear cache */ @@ -1293,53 +1320,6 @@ static uint GetLoadAmount(Vehicle *v) return load_amount; } -/** - * Reserves cargo if the full load order and improved_load is set or if the - * current order allows autorefit. - * @param st Station where the consist is loading at the moment. - * @param u Front of the loading vehicle consist. - * @param consist_capleft If given, save free capacities after reserving there. - * @param next_station Station(s) the vehicle will stop at next. - */ -static void ReserveConsist(Station *st, Vehicle *u, CargoArray *consist_capleft, StationIDStack next_station) -{ - Vehicle *next_cargo = u; - uint32 seen_cargos = 0; - - while (next_cargo != NULL) { - if (next_cargo->cargo_cap == 0) { - /* No need to reserve for vehicles without capacity. */ - next_cargo = next_cargo->Next(); - continue; - } - - CargoID current_cargo = next_cargo->cargo_type; - - Vehicle *v = next_cargo; - SetBit(seen_cargos, current_cargo); - next_cargo = NULL; - for (; v != NULL; v = v->Next()) { - if (v->cargo_type != current_cargo) { - /* Save start point for next cargo type. */ - if (next_cargo == NULL && !HasBit(seen_cargos, v->cargo_type)) next_cargo = v; - continue; - } - - assert(v->cargo_cap >= v->cargo.RemainingCount()); - uint cap = v->cargo_cap - v->cargo.RemainingCount(); - - /* Nothing to do if the vehicle is full */ - if (cap > 0) { - cap -= st->goods[v->cargo_type].cargo.Reserve(cap, &v->cargo, st->xy, next_station); - } - - if (consist_capleft != NULL) { - (*consist_capleft)[current_cargo] += cap; - } - } - } -} - /** * Iterate the articulated parts of a vehicle, also considering the special cases of "normal" * aircraft and double headed trains. Apply an action to each vehicle and immediately return false @@ -1445,15 +1425,17 @@ struct FinalizeRefitAction CargoArray &consist_capleft; ///< Capacities left in the consist. Station *st; ///< Station to reserve cargo from. StationIDStack &next_station; ///< Next hops to reserve cargo for. + bool do_reserve; ///< If the vehicle should reserve. /** * Create a finalizing action. * @param consist_capleft Capacities left in the consist. * @param st Station to reserve cargo from. * @param next_station Next hops to reserve cargo for. + * @param do_reserve If we should reserve cargo or just add up the capacities. */ - FinalizeRefitAction(CargoArray &consist_capleft, Station *st, StationIDStack &next_station) : - consist_capleft(consist_capleft), st(st), next_station(next_station) {} + FinalizeRefitAction(CargoArray &consist_capleft, Station *st, StationIDStack &next_station, bool do_reserve) : + consist_capleft(consist_capleft), st(st), next_station(next_station), do_reserve(do_reserve) {} /** * Reserve cargo from the station and update the remaining consist capacities with the @@ -1463,8 +1445,10 @@ struct FinalizeRefitAction */ bool operator()(Vehicle *v) { - this->st->goods[v->cargo_type].cargo.Reserve(v->cargo_cap - v->cargo.RemainingCount(), - &v->cargo, st->xy, next_station); + if (this->do_reserve) { + this->st->goods[v->cargo_type].cargo.Reserve(v->cargo_cap - v->cargo.RemainingCount(), + &v->cargo, st->xy, this->next_station); + } this->consist_capleft[v->cargo_type] += v->cargo_cap - v->cargo.RemainingCount(); return true; } @@ -1490,7 +1474,8 @@ static void HandleStationRefit(Vehicle *v, CargoArray &consist_capleft, Station /* Remove old capacity from consist capacity and collect refit mask. */ IterateVehicleParts(v_start, PrepareRefitAction(consist_capleft, refit_mask)); - if (new_cid == CT_AUTO_REFIT) { + bool is_auto_refit = new_cid == CT_AUTO_REFIT; + if (is_auto_refit) { /* Get a refittable cargo type with waiting cargo for next_station or INVALID_STATION. */ CargoID cid; new_cid = v_start->cargo_type; @@ -1516,17 +1501,72 @@ static void HandleStationRefit(Vehicle *v, CargoArray &consist_capleft, Station /* Refit if given a valid cargo. */ if (new_cid < NUM_CARGO && new_cid != v_start->cargo_type) { - IterateVehicleParts(v_start, ReturnCargoAction(st, StationIDStack(next_station).Pop())); + /* INVALID_STATION because in the DT_MANUAL case that's correct and in the DT_(A)SYMMETRIC + * cases the next hop of the vehicle doesn't really tell us anything if the cargo had been + * "via any station" before reserving. We rather produce some more "any station" cargo than + * misrouting it. */ + IterateVehicleParts(v_start, ReturnCargoAction(st, INVALID_STATION)); CommandCost cost = DoCommand(v_start->tile, v_start->index, new_cid | 1U << 6 | 0xFF << 8 | 1U << 16, DC_EXEC, GetCmdRefitVeh(v_start)); // Auto-refit and only this vehicle including artic parts. if (cost.Succeeded()) v->First()->profit_this_year -= cost.GetCost() << 8; } /* Add new capacity to consist capacity and reserve cargo */ - IterateVehicleParts(v_start, FinalizeRefitAction(consist_capleft, st, next_station)); + IterateVehicleParts(v_start, FinalizeRefitAction(consist_capleft, st, next_station, + is_auto_refit || (v->First()->current_order.GetLoadType() & OLFB_FULL_LOAD) != 0)); cur_company.Restore(); } +struct ReserveCargoAction { + Station *st; + StationIDStack *next_station; + + ReserveCargoAction(Station *st, StationIDStack *next_station) : + st(st), next_station(next_station) {} + + bool operator()(Vehicle *v) + { + if (v->cargo_cap > v->cargo.RemainingCount()) { + st->goods[v->cargo_type].cargo.Reserve(v->cargo_cap - v->cargo.RemainingCount(), + &v->cargo, st->xy, *next_station); + } + + return true; + } + +}; + +/** + * Reserves cargo if the full load order and improved_load is set or if the + * current order allows autorefit. + * @param st Station where the consist is loading at the moment. + * @param u Front of the loading vehicle consist. + * @param consist_capleft If given, save free capacities after reserving there. + * @param next_station Station(s) the vehicle will stop at next. + */ +static void ReserveConsist(Station *st, Vehicle *u, CargoArray *consist_capleft, StationIDStack *next_station) +{ + /* If there is a cargo payment not all vehicles of the consist have tried to do the refit. + * In that case, only reserve if it's a fixed refit and the equivalent of "articulated chain" + * a vehicle belongs to already has the right cargo. */ + bool must_reserve = !u->current_order.IsRefit() || u->cargo_payment == NULL; + for (Vehicle *v = u; v != NULL; v = v->Next()) { + assert(v->cargo_cap >= v->cargo.RemainingCount()); + + /* Exclude various ways in which the vehicle might not be the head of an equivalent of + * "articulated chain". Also don't do the reservation if the vehicle is going to refit + * to a different cargo and hasn't tried to do so, yet. */ + if (!v->IsArticulatedPart() && + (v->type != VEH_TRAIN || !Train::From(v)->IsRearDualheaded()) && + (v->type != VEH_AIRCRAFT || Aircraft::From(v)->IsNormalAircraft()) && + (must_reserve || u->current_order.GetRefitCargo() == v->cargo_type)) { + IterateVehicleParts(v, ReserveCargoAction(st, next_station)); + } + if (consist_capleft == NULL || v->cargo_cap == 0) continue; + (*consist_capleft)[v->cargo_type] += v->cargo_cap - v->cargo.RemainingCount(); + } +} + /** * Update the vehicle's load_unload_ticks, the time it will wait until it tries to load or unload * again. Adjust for overhang of trains and set it at least to 1. @@ -1562,11 +1602,11 @@ static void LoadUnloadVehicle(Vehicle *front) StationIDStack next_station = front->GetNextStoppingStation(); bool use_autorefit = front->current_order.IsRefit() && front->current_order.GetRefitCargo() == CT_AUTO_REFIT; CargoArray consist_capleft; - if (_settings_game.order.improved_load && - ((front->current_order.GetLoadType() & OLFB_FULL_LOAD) != 0 || use_autorefit)) { + if (_settings_game.order.improved_load && use_autorefit ? + front->cargo_payment == NULL : (front->current_order.GetLoadType() & OLFB_FULL_LOAD) != 0) { ReserveConsist(st, front, (use_autorefit && front->load_unload_ticks != 0) ? &consist_capleft : NULL, - next_station); + &next_station); } /* We have not waited enough time till the next round of loading/unloading */ diff --git a/src/effectvehicle.cpp b/src/effectvehicle.cpp index 48f3e6cdf0..209b78d2e9 100644 --- a/src/effectvehicle.cpp +++ b/src/effectvehicle.cpp @@ -46,7 +46,7 @@ static bool ChimneySmokeTick(EffectVehicle *v) v->cur_image = SPR_CHIMNEY_SMOKE_0; } v->progress = 7; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } return true; @@ -79,7 +79,7 @@ static bool SteamSmokeTick(EffectVehicle *v) moved = true; } - if (moved) VehicleUpdatePositionAndViewport(v); + if (moved) v->UpdatePositionAndViewport(); return true; } @@ -96,11 +96,11 @@ static bool DieselSmokeTick(EffectVehicle *v) if ((v->progress & 3) == 0) { v->z_pos++; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } else if ((v->progress & 7) == 1) { if (v->cur_image != SPR_DIESEL_SMOKE_5) { v->cur_image++; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } else { delete v; return false; @@ -124,7 +124,7 @@ static bool ElectricSparkTick(EffectVehicle *v) v->progress = 0; if (v->cur_image != SPR_ELECTRIC_SPARK_5) { v->cur_image++; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } else { delete v; return false; @@ -161,7 +161,7 @@ static bool SmokeTick(EffectVehicle *v) moved = true; } - if (moved) VehicleUpdatePositionAndViewport(v); + if (moved) v->UpdatePositionAndViewport(); return true; } @@ -178,7 +178,7 @@ static bool ExplosionLargeTick(EffectVehicle *v) if ((v->progress & 3) == 0) { if (v->cur_image != SPR_EXPLOSION_LARGE_F) { v->cur_image++; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } else { delete v; return false; @@ -203,7 +203,7 @@ static bool BreakdownSmokeTick(EffectVehicle *v) } else { v->cur_image = SPR_BREAKDOWN_SMOKE_0; } - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } v->animation_state--; @@ -227,7 +227,7 @@ static bool ExplosionSmallTick(EffectVehicle *v) if ((v->progress & 3) == 0) { if (v->cur_image != SPR_EXPLOSION_SMALL_B) { v->cur_image++; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } else { delete v; return false; @@ -304,7 +304,7 @@ static bool BulldozerTick(EffectVehicle *v) return false; } } - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); } return true; @@ -477,7 +477,7 @@ static bool BubbleTick(EffectVehicle *v) if (v->spritenum == 0) { v->cur_image++; if (v->cur_image < SPR_BUBBLE_GENERATE_3) { - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); return true; } if (v->animation_substate != 0) { @@ -523,7 +523,7 @@ static bool BubbleTick(EffectVehicle *v) v->z_pos += b->z; v->cur_image = SPR_BUBBLE_0 + b->image; - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); return true; } @@ -607,7 +607,7 @@ EffectVehicle *CreateEffectVehicle(int x, int y, int z, EffectVehicleType type) _effect_init_procs[type](v); - VehicleUpdatePositionAndViewport(v); + v->UpdatePositionAndViewport(); return v; } diff --git a/src/elrail.cpp b/src/elrail.cpp index 8116bff2c6..1927be03e5 100644 --- a/src/elrail.cpp +++ b/src/elrail.cpp @@ -407,7 +407,7 @@ static void DrawCatenaryRailway(const TileInfo *ti) * Remove those (simply by ANDing with allowed, since these markers are never allowed) */ if ((PPPallowed[i] & PPPpreferred[i]) != 0) PPPallowed[i] &= PPPpreferred[i]; - if (MayHaveBridgeAbove(ti->tile) && IsBridgeAbove(ti->tile)) { + if (IsBridgeAbove(ti->tile)) { Track bridgetrack = GetBridgeAxis(ti->tile) == AXIS_X ? TRACK_X : TRACK_Y; int height = GetBridgeHeight(GetNorthernBridgeEnd(ti->tile)); @@ -446,7 +446,7 @@ static void DrawCatenaryRailway(const TileInfo *ti) if (IsTunnelTile(ti->tile)) return; /* Don't draw a wire under a low bridge */ - if (MayHaveBridgeAbove(ti->tile) && IsBridgeAbove(ti->tile) && !IsTransparencySet(TO_BRIDGES)) { + if (IsBridgeAbove(ti->tile) && !IsTransparencySet(TO_BRIDGES)) { int height = GetBridgeHeight(GetNorthernBridgeEnd(ti->tile)); if (height <= GetTileMaxZ(ti->tile) + 1) return; diff --git a/src/engine.cpp b/src/engine.cpp index 362bd014af..f8fc0ee6aa 100644 --- a/src/engine.cpp +++ b/src/engine.cpp @@ -655,6 +655,7 @@ void StartupOneEngine(Engine *e, Date aging_date) e->age = 0; e->flags = 0; e->company_avail = 0; + e->company_hidden = 0; /* Don't randomise the start-date in the first two years after gamestart to ensure availability * of engines in early starting games. @@ -853,6 +854,41 @@ void EnginesDailyLoop() } } +/** + * Clear the 'hidden' flag for all engines of a new company. + * @param cid Company being created. + */ +void ClearEnginesHiddenFlagOfCompany(CompanyID cid) +{ + Engine *e; + FOR_ALL_ENGINES(e) { + SB(e->company_hidden, cid, 1, 0); + } +} + +/** + * Set the visibility of an engine. + * @param tile Unused. + * @param flags Operation to perform. + * @param p1 Unused. + * @param p2 Bit 31: 0=visible, 1=hidden, other bits for the #EngineID. + * @param text Unused. + * @return The cost of this operation or an error. + */ +CommandCost CmdSetVehicleVisibility(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text) +{ + Engine *e = Engine::GetIfValid(GB(p2, 0, 31)); + if (e == NULL || _current_company >= MAX_COMPANIES) return CMD_ERROR; + if ((e->flags & ENGINE_AVAILABLE) == 0 || !HasBit(e->company_avail, _current_company)) return CMD_ERROR; + + if ((flags & DC_EXEC) != 0) { + SB(e->company_hidden, _current_company, 1, GB(p2, 31, 1)); + AddRemoveEngineFromAutoreplaceAndBuildWindows(e->type); + } + + return CommandCost(); +} + /** * Accept an engine prototype. XXX - it is possible that the top-company * changes while you are waiting to accept the offer? Then it becomes invalid diff --git a/src/engine_base.h b/src/engine_base.h index 99a15aaea0..6a2e6816c3 100644 --- a/src/engine_base.h +++ b/src/engine_base.h @@ -37,6 +37,7 @@ struct Engine : EnginePool::PoolItem<&_engine_pool> { CompanyByte preview_company;///< Company which is currently being offered a preview \c INVALID_COMPANY means no company. byte preview_wait; ///< Daily countdown timer for timeout of offering the engine to the #preview_company company. CompanyMask company_avail; ///< Bit for each company whether the engine is available for that company. + CompanyMask company_hidden; ///< Bit for each company whether the engine is normally hidden in the build gui for that company. uint8 original_image_index; ///< Original vehicle image index, thus the image index of the overridden vehicle VehicleType type; ///< %Vehicle type, ie #VEH_ROAD, #VEH_TRAIN, etc. @@ -111,6 +112,16 @@ struct Engine : EnginePool::PoolItem<&_engine_pool> { Date GetLifeLengthInDays() const; uint16 GetRange() const; + /** + * Check whether the engine is hidden in the GUI for the given company. + * @param c Company to check. + * @return \c true iff the engine is hidden in the GUI for the given company. + */ + inline bool IsHidden(CompanyByte c) const + { + return c < MAX_COMPANIES && HasBit(this->company_hidden, c); + } + /** * Check if the engine is a ground vehicle. * @return True iff the engine is a train or a road vehicle. diff --git a/src/engine_func.h b/src/engine_func.h index faa8e8e024..6c3fb14ff2 100644 --- a/src/engine_func.h +++ b/src/engine_func.h @@ -26,6 +26,7 @@ extern const uint8 _engine_offsets[4]; bool IsEngineBuildable(EngineID engine, VehicleType type, CompanyID company); bool IsEngineRefittable(EngineID engine); +void GetArticulatedVehicleCargoesAndRefits(EngineID engine, CargoArray *cargoes, uint32 *refits); void SetYearEngineAgingStops(); void StartupOneEngine(Engine *e, Date aging_date); diff --git a/src/engine_gui.cpp b/src/engine_gui.cpp index 3ac261d15a..899543c189 100644 --- a/src/engine_gui.cpp +++ b/src/engine_gui.cpp @@ -20,6 +20,10 @@ #include "company_func.h" #include "rail.h" #include "settings_type.h" +#include "train.h" +#include "roadveh.h" +#include "ship.h" +#include "aircraft.h" #include "widgets/engine_widget.h" @@ -61,7 +65,7 @@ static const NWidgetPart _nested_engine_preview_widgets[] = { }; struct EnginePreviewWindow : Window { - static const int VEHICLE_SPACE = 40; // The space to show the vehicle image + int vehicle_space; // The space to show the vehicle image EnginePreviewWindow(WindowDesc *desc, WindowNumber window_number) : Window(desc) { @@ -75,9 +79,25 @@ struct EnginePreviewWindow : Window { { if (widget != WID_EP_QUESTION) return; + /* Get size of engine sprite, on loan from depot_gui.cpp */ EngineID engine = this->window_number; + EngineImageType image_type = EIT_PURCHASE; + uint x, y; + int x_offs, y_offs; + + const Engine *e = Engine::Get(engine); + switch (e->type) { + default: NOT_REACHED(); + case VEH_TRAIN: GetTrainSpriteSize( engine, x, y, x_offs, y_offs, image_type); break; + case VEH_ROAD: GetRoadVehSpriteSize( engine, x, y, x_offs, y_offs, image_type); break; + case VEH_SHIP: GetShipSpriteSize( engine, x, y, x_offs, y_offs, image_type); break; + case VEH_AIRCRAFT: GetAircraftSpriteSize(engine, x, y, x_offs, y_offs, image_type); break; + } + this->vehicle_space = max(40, y - y_offs); + + size->width = max(size->width, x - x_offs); SetDParam(0, GetEngineCategoryName(engine)); - size->height = GetStringHeight(STR_ENGINE_PREVIEW_MESSAGE, size->width) + WD_PAR_VSEP_WIDE + FONT_HEIGHT_NORMAL + VEHICLE_SPACE; + size->height = GetStringHeight(STR_ENGINE_PREVIEW_MESSAGE, size->width) + WD_PAR_VSEP_WIDE + FONT_HEIGHT_NORMAL + this->vehicle_space; SetDParam(0, engine); size->height += GetStringHeight(GetEngineInfoString(engine), size->width); } @@ -95,9 +115,9 @@ struct EnginePreviewWindow : Window { DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, STR_ENGINE_NAME, TC_BLACK, SA_HOR_CENTER); y += FONT_HEIGHT_NORMAL; - DrawVehicleEngine(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, this->width >> 1, y + VEHICLE_SPACE / 2, engine, GetEnginePalette(engine, _local_company), EIT_PREVIEW); + DrawVehicleEngine(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, this->width >> 1, y + this->vehicle_space / 2, engine, GetEnginePalette(engine, _local_company), EIT_PREVIEW); - y += VEHICLE_SPACE; + y += this->vehicle_space; DrawStringMultiLine(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, r.bottom, GetEngineInfoString(engine), TC_FROMSTRING, SA_CENTER); } @@ -142,14 +162,8 @@ void ShowEnginePreviewWindow(EngineID engine) */ uint GetTotalCapacityOfArticulatedParts(EngineID engine) { - uint total = 0; - CargoArray cap = GetCapacityOfArticulatedParts(engine); - for (CargoID c = 0; c < NUM_CARGO; c++) { - total += cap[c]; - } - - return total; + return cap.GetSum(); } static StringID GetTrainEngineInfoString(const Engine *e) diff --git a/src/engine_gui.h b/src/engine_gui.h index f426413d9c..fc0b7ad7d9 100644 --- a/src/engine_gui.h +++ b/src/engine_gui.h @@ -32,4 +32,14 @@ void DrawRoadVehEngine(int left, int right, int preferred_x, int y, EngineID eng void DrawShipEngine(int left, int right, int preferred_x, int y, EngineID engine, PaletteID pal, EngineImageType image_type); void DrawAircraftEngine(int left, int right, int preferred_x, int y, EngineID engine, PaletteID pal, EngineImageType image_type); +extern bool _engine_sort_direction; +extern byte _engine_sort_last_criteria[]; +extern bool _engine_sort_last_order[]; +extern bool _engine_sort_show_hidden_engines[]; +extern const StringID _engine_sort_listing[][12]; +extern EngList_SortTypeFunction * const _engine_sort_functions[][11]; + +uint GetEngineListHeight(VehicleType type); +void DisplayVehicleSortDropDown(Window *w, VehicleType vehicle_type, int selected, int button); + #endif /* ENGINE_GUI_H */ diff --git a/src/error_gui.cpp b/src/error_gui.cpp index 98988de5a0..c8c603afb3 100644 --- a/src/error_gui.cpp +++ b/src/error_gui.cpp @@ -182,21 +182,30 @@ public: virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) { - if (widget != WID_EM_MESSAGE) return; + switch (widget) { + case WID_EM_MESSAGE: { + CopyInDParam(0, this->decode_params, lengthof(this->decode_params)); + if (this->textref_stack_size > 0) StartTextRefStackUsage(this->textref_stack_grffile, this->textref_stack_size, this->textref_stack); - CopyInDParam(0, this->decode_params, lengthof(this->decode_params)); - if (this->textref_stack_size > 0) StartTextRefStackUsage(this->textref_stack_grffile, this->textref_stack_size, this->textref_stack); + int text_width = max(0, (int)size->width - WD_FRAMETEXT_LEFT - WD_FRAMETEXT_RIGHT); + this->height_summary = GetStringHeight(this->summary_msg, text_width); + this->height_detailed = (this->detailed_msg == INVALID_STRING_ID) ? 0 : GetStringHeight(this->detailed_msg, text_width); - int text_width = max(0, (int)size->width - WD_FRAMETEXT_LEFT - WD_FRAMETEXT_RIGHT); - this->height_summary = GetStringHeight(this->summary_msg, text_width); - this->height_detailed = (this->detailed_msg == INVALID_STRING_ID) ? 0 : GetStringHeight(this->detailed_msg, text_width); + if (this->textref_stack_size > 0) StopTextRefStackUsage(); - if (this->textref_stack_size > 0) StopTextRefStackUsage(); + uint panel_height = WD_FRAMERECT_TOP + this->height_summary + WD_FRAMERECT_BOTTOM; + if (this->detailed_msg != INVALID_STRING_ID) panel_height += this->height_detailed + WD_PAR_VSEP_WIDE; - uint panel_height = WD_FRAMERECT_TOP + this->height_summary + WD_FRAMERECT_BOTTOM; - if (this->detailed_msg != INVALID_STRING_ID) panel_height += this->height_detailed + WD_PAR_VSEP_WIDE; - - size->height = max(size->height, panel_height); + size->height = max(size->height, panel_height); + break; + } + case WID_EM_FACE: { + Dimension face_size = GetSpriteSize(SPR_GRADIENT); + size->width = max(size->width, face_size.width); + size->height = max(size->height, face_size.height); + break; + } + } } virtual Point OnInitialPosition(int16 sm_width, int16 sm_height, int window_number) diff --git a/src/fios_gui.cpp b/src/fios_gui.cpp index 14c335e946..9316deb658 100644 --- a/src/fios_gui.cpp +++ b/src/fios_gui.cpp @@ -483,7 +483,7 @@ public: case WID_SL_SORT_BYNAME: case WID_SL_SORT_BYDATE: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; diff --git a/src/fontcache.cpp b/src/fontcache.cpp index 0f949c544f..6bea59c103 100644 --- a/src/fontcache.cpp +++ b/src/fontcache.cpp @@ -18,6 +18,7 @@ #include "strings_func.h" #include "zoom_type.h" #include "gfx_layout.h" +#include "zoom_func.h" #include "table/sprites.h" #include "table/control_codes.h" @@ -80,6 +81,7 @@ public: virtual void ClearFontCache(); virtual const Sprite *GetGlyph(GlyphID key); virtual uint GetGlyphWidth(GlyphID key); + virtual int GetHeight() const; virtual bool GetDrawGlyphShadow(); virtual GlyphID MapCharToGlyph(WChar key) { assert(IsPrintable(key)); return SPRITE_GLYPH | key; } virtual const void *GetFontTable(uint32 tag, size_t &length) { length = 0; return NULL; } @@ -141,8 +143,8 @@ void SpriteFontCache::InitializeUnicodeGlyphMap() byte key = _default_unicode_map[i].key; if (key == CLRA) { /* Clear the glyph. This happens if the glyph at this code point - * is non-standard and should be accessed by an SCC_xxx enum - * entry only. */ + * is non-standard and should be accessed by an SCC_xxx enum + * entry only. */ this->SetUnicodeGlyph(_default_unicode_map[i].code, 0); } else { SpriteID sprite = base + key - ASCII_LETTERSTART; @@ -181,7 +183,12 @@ uint SpriteFontCache::GetGlyphWidth(GlyphID key) { SpriteID sprite = this->GetUnicodeGlyph(key); if (sprite == 0) sprite = this->GetUnicodeGlyph('?'); - return SpriteExists(sprite) ? GetSprite(sprite, ST_FONT)->width + (this->fs != FS_NORMAL) : 0; + return SpriteExists(sprite) ? GetSprite(sprite, ST_FONT)->width + ScaleGUITrad(this->fs != FS_NORMAL ? 1 : 0) : 0; +} + +int SpriteFontCache::GetHeight() const +{ + return ScaleGUITrad(this->height); } bool SpriteFontCache::GetDrawGlyphShadow() @@ -189,7 +196,7 @@ bool SpriteFontCache::GetDrawGlyphShadow() return false; } -/*static */ FontCache *FontCache::caches[FS_END] = { new SpriteFontCache(FS_NORMAL), new SpriteFontCache(FS_SMALL), new SpriteFontCache(FS_LARGE), new SpriteFontCache(FS_MONO) }; +/* static */ FontCache *FontCache::caches[FS_END] = { new SpriteFontCache(FS_NORMAL), new SpriteFontCache(FS_SMALL), new SpriteFontCache(FS_LARGE), new SpriteFontCache(FS_MONO) }; #ifdef WITH_FREETYPE #include @@ -529,8 +536,8 @@ const Sprite *FreeTypeFontCache::GetGlyph(GlyphID key) aa = (slot->bitmap.pixel_mode == FT_PIXEL_MODE_GRAY); /* Add 1 pixel for the shadow on the medium font. Our sprite must be at least 1x1 pixel */ - int width = max(1, slot->bitmap.width + (this->fs == FS_NORMAL)); - int height = max(1, slot->bitmap.rows + (this->fs == FS_NORMAL)); + uint width = max(1U, (uint)slot->bitmap.width + (this->fs == FS_NORMAL)); + uint height = max(1U, (uint)slot->bitmap.rows + (this->fs == FS_NORMAL)); /* Limit glyph size to prevent overflows later on. */ if (width > 256 || height > 256) usererror("Font glyph is too large"); @@ -546,8 +553,8 @@ const Sprite *FreeTypeFontCache::GetGlyph(GlyphID key) /* Draw shadow for medium size */ if (this->fs == FS_NORMAL && !aa) { - for (int y = 0; y < slot->bitmap.rows; y++) { - for (int x = 0; x < slot->bitmap.width; x++) { + for (uint y = 0; y < (uint)slot->bitmap.rows; y++) { + for (uint x = 0; x < (uint)slot->bitmap.width; x++) { if (aa ? (slot->bitmap.buffer[x + y * slot->bitmap.pitch] > 0) : HasBit(slot->bitmap.buffer[(x / 8) + y * slot->bitmap.pitch], 7 - (x % 8))) { sprite.data[1 + x + (1 + y) * sprite.width].m = SHADOW_COLOUR; sprite.data[1 + x + (1 + y) * sprite.width].a = aa ? slot->bitmap.buffer[x + y * slot->bitmap.pitch] : 0xFF; @@ -556,8 +563,8 @@ const Sprite *FreeTypeFontCache::GetGlyph(GlyphID key) } } - for (int y = 0; y < slot->bitmap.rows; y++) { - for (int x = 0; x < slot->bitmap.width; x++) { + for (uint y = 0; y < (uint)slot->bitmap.rows; y++) { + for (uint x = 0; x < (uint)slot->bitmap.width; x++) { if (aa ? (slot->bitmap.buffer[x + y * slot->bitmap.pitch] > 0) : HasBit(slot->bitmap.buffer[(x / 8) + y * slot->bitmap.pitch], 7 - (x % 8))) { sprite.data[x + y * sprite.width].m = FACE_COLOUR; sprite.data[x + y * sprite.width].a = aa ? slot->bitmap.buffer[x + y * slot->bitmap.pitch] : 0xFF; diff --git a/src/fontcache.h b/src/fontcache.h index 804ad2c4b5..8caf4f1bd3 100644 --- a/src/fontcache.h +++ b/src/fontcache.h @@ -44,7 +44,7 @@ public: * Get the height of the font. * @return The height of the font. */ - inline int GetHeight() const { return this->height; } + virtual int GetHeight() const { return this->height; } /** * Get the ascender value of the font. diff --git a/src/fontdetection.cpp b/src/fontdetection.cpp index 0033cdfa7f..6df45cf6a1 100644 --- a/src/fontdetection.cpp +++ b/src/fontdetection.cpp @@ -396,7 +396,7 @@ FT_Error GetFontByFaceName(const char *font_name, FT_Face *face) } else #endif { -#if (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5) && !__LP64__ +#if (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5) && !defined(__LP64__) /* This type was introduced with the 10.5 SDK. */ #if (MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5) #define ATSFSSpec FSSpec diff --git a/src/game/game_info.cpp b/src/game/game_info.cpp index e6ec3657bf..9bb36d1aa5 100644 --- a/src/game/game_info.cpp +++ b/src/game/game_info.cpp @@ -25,7 +25,7 @@ static bool CheckAPIVersion(const char *api_version) { return strcmp(api_version, "1.2") == 0 || strcmp(api_version, "1.3") == 0 || strcmp(api_version, "1.4") == 0 || - strcmp(api_version, "1.5") == 0; + strcmp(api_version, "1.5") == 0 || strcmp(api_version, "1.6") == 0; } #if defined(WIN32) @@ -55,7 +55,7 @@ template <> const char *GetClassName() { return "GSInfo"; } { /* Get the GameInfo */ SQUserPointer instance = NULL; - if (SQ_FAILED(sq_getinstanceup(vm, 2, &instance, 0)) || instance == NULL) return sq_throwerror(vm, _SC("Pass an instance of a child class of GameInfo to RegisterGame")); + if (SQ_FAILED(sq_getinstanceup(vm, 2, &instance, 0)) || instance == NULL) return sq_throwerror(vm, "Pass an instance of a child class of GameInfo to RegisterGame"); GameInfo *info = (GameInfo *)instance; SQInteger res = ScriptInfo::Constructor(vm, info); diff --git a/src/game/game_instance.cpp b/src/game/game_instance.cpp index 9d030f296b..c5e5c7f05a 100644 --- a/src/game/game_instance.cpp +++ b/src/game/game_instance.cpp @@ -173,6 +173,17 @@ void GameInstance::RegisterAPI() SQGSSignList_Register(this->engine); SQGSStation_Register(this->engine); SQGSStationList_Register(this->engine); + SQGSStationList_Cargo_Register(this->engine); + SQGSStationList_CargoPlanned_Register(this->engine); + SQGSStationList_CargoPlannedByFrom_Register(this->engine); + SQGSStationList_CargoPlannedByVia_Register(this->engine); + SQGSStationList_CargoPlannedFromByVia_Register(this->engine); + SQGSStationList_CargoPlannedViaByFrom_Register(this->engine); + SQGSStationList_CargoWaiting_Register(this->engine); + SQGSStationList_CargoWaitingByFrom_Register(this->engine); + SQGSStationList_CargoWaitingByVia_Register(this->engine); + SQGSStationList_CargoWaitingFromByVia_Register(this->engine); + SQGSStationList_CargoWaitingViaByFrom_Register(this->engine); SQGSStationList_Vehicle_Register(this->engine); SQGSStoryPage_Register(this->engine); SQGSStoryPageElementList_Register(this->engine); diff --git a/src/game/game_text.cpp b/src/game/game_text.cpp index d4a1379047..42ced20083 100644 --- a/src/game/game_text.cpp +++ b/src/game/game_text.cpp @@ -356,12 +356,12 @@ void RegisterGameTranslation(Squirrel *engine) HSQUIRRELVM vm = engine->GetVM(); sq_pushroottable(vm); - sq_pushstring(vm, _SC("GSText"), -1); + sq_pushstring(vm, "GSText", -1); if (SQ_FAILED(sq_get(vm, -2))) return; int idx = 0; for (const char * const *p = _current_data->string_names.Begin(); p != _current_data->string_names.End(); p++, idx++) { - sq_pushstring(vm, OTTD2SQ(*p), -1); + sq_pushstring(vm, *p, -1); sq_pushinteger(vm, idx); sq_rawset(vm, -3); } diff --git a/src/genworld.h b/src/genworld.h index 2673354234..ea3faa15fc 100644 --- a/src/genworld.h +++ b/src/genworld.h @@ -32,6 +32,17 @@ enum GenWorldMode { GWM_HEIGHTMAP = 3, ///< Generate a newgame from a heightmap }; +/** Smoothness presets. */ +enum TgenSmoothness { + TGEN_SMOOTHNESS_BEGIN, ///< First smoothness value. + TGEN_SMOOTHNESS_VERY_SMOOTH = TGEN_SMOOTHNESS_BEGIN, ///< Smoothness preset 'very smooth'. + TGEN_SMOOTHNESS_SMOOTH, ///< Smoothness preset 'smooth'. + TGEN_SMOOTHNESS_ROUGH, ///< Smoothness preset 'rough'. + TGEN_SMOOTHNESS_VERY_ROUGH, ///< Smoothness preset 'very rough'. + + TGEN_SMOOTHNESS_END, ///< Used to iterate. +}; + static const uint CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY = 4; ///< Value for custom sea level in difficulty settings. static const uint CUSTOM_SEA_LEVEL_MIN_PERCENTAGE = 1; ///< Minimum percentage a user can specify for custom sea level. static const uint CUSTOM_SEA_LEVEL_MAX_PERCENTAGE = 90; ///< Maximum percentage a user can specify for custom sea level. diff --git a/src/genworld_gui.cpp b/src/genworld_gui.cpp index a95a326302..ad64ae802f 100644 --- a/src/genworld_gui.cpp +++ b/src/genworld_gui.cpp @@ -24,7 +24,6 @@ #include "widgets/dropdown_func.h" #include "querystring_gui.h" #include "town.h" -#include "settings_func.h" #include "core/geometry_func.hpp" #include "core/random_func.hpp" #include "progress.h" @@ -38,7 +37,7 @@ extern void MakeNewgameSettingsLive(); /** Enum for the modes we can generate in. */ -enum GenenerateLandscapeWindowMode { +enum GenerateLandscapeWindowMode { GLWM_GENERATE, ///< Generate new game. GLWM_HEIGHTMAP, ///< Load from heightmap. GLWM_SCENARIO, ///< Generate flat land. @@ -84,9 +83,9 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = { NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_LAND_GENERATOR, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TERRAIN_TYPE, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_VARIETY, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_SEA_LAKES, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TREE_PLACER, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_VARIETY, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_BORDER_TYPE, STR_NULL), SetFill(1, 1), EndContainer(), /* Widgets at the right of the labels. */ @@ -100,41 +99,47 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = { NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_LANDSCAPE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TERRAIN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_VARIETY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_WATER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TREE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_VARIETY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_BORDERS_RANDOM), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), EndContainer(), NWidget(NWID_VERTICAL), SetPIP(0, 4, 0), NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0), NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAX_HEIGHTLEVEL, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_LINE_HEIGHT, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SMOOTHNESS, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1), EndContainer(), NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), + /* Max. heightlevel. */ + NWidget(NWID_HORIZONTAL), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN), SetFill(0, 1), + NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_MAX_HEIGHTLEVEL_UP), SetFill(0, 1), + EndContainer(), + /* Snow line. */ + NWidget(NWID_HORIZONTAL), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1), + NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1), + EndContainer(), /* Starting date. */ NWidget(NWID_HORIZONTAL), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD), SetFill(0, 1), NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_START_DATE_TEXT), SetDataTip(STR_BLACK_DATE_LONG, STR_NULL), SetFill(1, 0), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_UP), SetDataTip(SPR_ARROW_UP, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD), SetFill(0, 1), EndContainer(), - /* Snow line. */ - NWidget(NWID_HORIZONTAL), - NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1), - NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), - NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1), - EndContainer(), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_SMOOTHNESS_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_RIVER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), EndContainer(), - NWidget(NWID_SPACER), SetFill(1, 1), - NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 30), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 0), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 1), EndContainer(), EndContainer(), NWidget(NWID_SPACER), SetMinimalSize(0, 4), @@ -194,11 +199,11 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = { NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_NAME, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAPSIZE, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_ROTATION, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TREE_PLACER, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_ROTATION, STR_NULL), SetFill(1, 1), EndContainer(), /* Widgets at the right of the labels. */ NWidget(NWID_VERTICAL), SetPIP(0, 4, 0), @@ -211,35 +216,40 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = { NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_BY, STR_NULL), SetPadding(1, 0, 0, 0), SetFill(1, 1), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_Y_PULLDOWN), SetDataTip(STR_JUST_INT, STR_NULL), SetFill(1, 0), EndContainer(), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_ROTATION_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_RIVER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TREE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_ROTATION_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), NWidget(NWID_VERTICAL), SetPIP(0, 4, 0), NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0), NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE_LABEL, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_LINE_HEIGHT, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAX_HEIGHTLEVEL, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1), EndContainer(), NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), NWidget(WWT_TEXT, COLOUR_ORANGE, WID_GL_HEIGHTMAP_SIZE_TEXT), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE, STR_NULL), SetFill(1, 0), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1), + NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1), + EndContainer(), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN), SetFill(0, 1), + NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_MAX_HEIGHTLEVEL_UP), SetFill(0, 1), + EndContainer(), NWidget(NWID_HORIZONTAL), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD), SetFill(0, 1), NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_START_DATE_TEXT), SetDataTip(STR_BLACK_DATE_LONG, STR_NULL), SetFill(1, 0), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_UP), SetDataTip(SPR_ARROW_UP, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD), SetFill(0, 1), EndContainer(), - NWidget(NWID_HORIZONTAL), - NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1), - NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), - NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1), - EndContainer(), EndContainer(), EndContainer(), - NWidget(NWID_SPACER), SetFill(1, 1), - NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 30), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 0), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 1), EndContainer(), EndContainer(), EndContainer(), @@ -248,7 +258,7 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = { EndContainer(), }; -static void StartGeneratingLandscape(GenenerateLandscapeWindowMode mode) +static void StartGeneratingLandscape(GenerateLandscapeWindowMode mode) { DeleteAllNonVitalWindows(); ClearErrorMessages(); @@ -268,7 +278,7 @@ static void StartGeneratingLandscape(GenenerateLandscapeWindowMode mode) static void LandscapeGenerationCallback(Window *w, bool confirmed) { - if (confirmed) StartGeneratingLandscape((GenenerateLandscapeWindowMode)w->window_number); + if (confirmed) StartGeneratingLandscape((GenerateLandscapeWindowMode)w->window_number); } static DropDownList *BuildMapsizeDropDown() @@ -284,7 +294,7 @@ static DropDownList *BuildMapsizeDropDown() return list; } -static const StringID _elevations[] = {STR_TERRAIN_TYPE_VERY_FLAT, STR_TERRAIN_TYPE_FLAT, STR_TERRAIN_TYPE_HILLY, STR_TERRAIN_TYPE_MOUNTAINOUS, 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, INVALID_STRING_ID}; static const StringID _sea_lakes[] = {STR_SEA_LEVEL_VERY_LOW, STR_SEA_LEVEL_LOW, STR_SEA_LEVEL_MEDIUM, STR_SEA_LEVEL_HIGH, STR_SEA_LEVEL_CUSTOM, INVALID_STRING_ID}; static const StringID _rivers[] = {STR_RIVERS_NONE, STR_RIVERS_FEW, STR_RIVERS_MODERATE, STR_RIVERS_LOT, INVALID_STRING_ID}; static const StringID _smoothness[] = {STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH, STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH, INVALID_STRING_ID}; @@ -302,7 +312,7 @@ struct GenerateLandscapeWindow : public Window { uint x; uint y; char name[64]; - GenenerateLandscapeWindowMode mode; + GenerateLandscapeWindowMode mode; GenerateLandscapeWindow(WindowDesc *desc, WindowNumber number = 0) : Window(desc) { @@ -310,7 +320,7 @@ struct GenerateLandscapeWindow : public Window { this->LowerWidget(_settings_newgame.game_creation.landscape + WID_GL_TEMPERATE); - this->mode = (GenenerateLandscapeWindowMode)this->window_number; + this->mode = (GenerateLandscapeWindowMode)this->window_number; /* Disable town, industry and trees in SE */ this->SetWidgetDisabledState(WID_GL_TOWN_PULLDOWN, _game_mode == GM_EDITOR); @@ -324,10 +334,11 @@ struct GenerateLandscapeWindow : public Window { virtual void SetStringParameters(int widget) const { switch (widget) { - 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, 1 << _settings_newgame.game_creation.map_x); break; - case WID_GL_MAPSIZE_Y_PULLDOWN: SetDParam(0, 1 << _settings_newgame.game_creation.map_y); break; - case WID_GL_SNOW_LEVEL_TEXT: SetDParam(0, _settings_newgame.game_creation.snow_line_height); 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, 1 << _settings_newgame.game_creation.map_x); break; + case WID_GL_MAPSIZE_Y_PULLDOWN: SetDParam(0, 1 << _settings_newgame.game_creation.map_y); break; + case WID_GL_MAX_HEIGHTLEVEL_TEXT: SetDParam(0, _settings_newgame.construction.max_heightlevel); break; + case WID_GL_SNOW_LEVEL_TEXT: SetDParam(0, _settings_newgame.game_creation.snow_line_height); break; case WID_GL_TOWN_PULLDOWN: if (_game_mode == GM_EDITOR) { @@ -392,10 +403,10 @@ struct GenerateLandscapeWindow : public Window { /* You can't select smoothness / non-water borders if not terragenesis */ if (mode == GLWM_GENERATE) { - this->SetWidgetDisabledState(WID_GL_SMOOTHNESS_PULLDOWN, _settings_newgame.game_creation.land_generator == 0); - this->SetWidgetDisabledState(WID_GL_VARIETY_PULLDOWN, _settings_newgame.game_creation.land_generator == 0); - this->SetWidgetDisabledState(WID_GL_BORDERS_RANDOM, _settings_newgame.game_creation.land_generator == 0 || !_settings_newgame.construction.freeform_edges); - this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == 0 || !_settings_newgame.construction.freeform_edges || _settings_newgame.game_creation.water_borders == BORDERS_RANDOM, + this->SetWidgetDisabledState(WID_GL_SMOOTHNESS_PULLDOWN, _settings_newgame.game_creation.land_generator == LG_ORIGINAL); + this->SetWidgetDisabledState(WID_GL_VARIETY_PULLDOWN, _settings_newgame.game_creation.land_generator == LG_ORIGINAL); + this->SetWidgetDisabledState(WID_GL_BORDERS_RANDOM, _settings_newgame.game_creation.land_generator == LG_ORIGINAL || !_settings_newgame.construction.freeform_edges); + this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == LG_ORIGINAL || !_settings_newgame.construction.freeform_edges || _settings_newgame.game_creation.water_borders == BORDERS_RANDOM, WID_GL_WATER_NW, WID_GL_WATER_NE, WID_GL_WATER_SE, WID_GL_WATER_SW, WIDGET_LIST_END); this->SetWidgetLoweredState(WID_GL_BORDERS_RANDOM, _settings_newgame.game_creation.water_borders == BORDERS_RANDOM); @@ -405,7 +416,7 @@ struct GenerateLandscapeWindow : public Window { this->SetWidgetLoweredState(WID_GL_WATER_SE, HasBit(_settings_newgame.game_creation.water_borders, BORDER_SE)); this->SetWidgetLoweredState(WID_GL_WATER_SW, HasBit(_settings_newgame.game_creation.water_borders, BORDER_SW)); - this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == 0 && (_settings_newgame.game_creation.landscape == LT_ARCTIC || _settings_newgame.game_creation.landscape == LT_TROPIC), + this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == LG_ORIGINAL && (_settings_newgame.game_creation.landscape == LT_ARCTIC || _settings_newgame.game_creation.landscape == LT_TROPIC), WID_GL_TERRAIN_PULLDOWN, WID_GL_WATER_PULLDOWN, WIDGET_LIST_END); } @@ -413,13 +424,15 @@ struct GenerateLandscapeWindow : public Window { this->SetWidgetDisabledState(WID_GL_SNOW_LEVEL_TEXT, _settings_newgame.game_creation.landscape != LT_ARCTIC); /* 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); + this->SetWidgetDisabledState(WID_GL_MAX_HEIGHTLEVEL_UP, _settings_newgame.construction.max_heightlevel >= MAX_MAX_HEIGHTLEVEL); 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_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_LEVEL_UP, _settings_newgame.game_creation.snow_line_height >= MAX_SNOWLINE_HEIGHT || _settings_newgame.game_creation.landscape != LT_ARCTIC); /* Do not allow a custom sea level with the original land generator. */ - if (_settings_newgame.game_creation.land_generator == 0 && + if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL && _settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) { _settings_newgame.difficulty.quantity_sea_lakes = CUSTOM_SEA_LEVEL_MIN_PERCENTAGE; } @@ -430,32 +443,37 @@ struct GenerateLandscapeWindow : public Window { { const StringID *strs = NULL; switch (widget) { + case WID_GL_MAX_HEIGHTLEVEL_TEXT: + SetDParam(0, MAX_TILE_HEIGHT); + *size = GetStringBoundingBox(STR_JUST_INT); + break; + case WID_GL_START_DATE_TEXT: SetDParam(0, ConvertYMDToDate(MAX_YEAR, 0, 1)); - *size = GetStringBoundingBox(STR_BLACK_DATE_LONG); + *size = maxdim(*size, GetStringBoundingBox(STR_BLACK_DATE_LONG)); break; case WID_GL_MAPSIZE_X_PULLDOWN: case WID_GL_MAPSIZE_Y_PULLDOWN: SetDParamMaxValue(0, MAX_MAP_SIZE); - *size = GetStringBoundingBox(STR_JUST_INT); + *size = maxdim(*size, GetStringBoundingBox(STR_JUST_INT)); break; case WID_GL_SNOW_LEVEL_TEXT: SetDParamMaxValue(0, MAX_TILE_HEIGHT); - *size = GetStringBoundingBox(STR_JUST_INT); + *size = maxdim(*size, GetStringBoundingBox(STR_JUST_INT)); break; case WID_GL_HEIGHTMAP_SIZE_TEXT: SetDParam(0, this->x); SetDParam(1, this->y); - *size = GetStringBoundingBox(STR_MAPGEN_HEIGHTMAP_SIZE); + *size = maxdim(*size, GetStringBoundingBox(STR_MAPGEN_HEIGHTMAP_SIZE)); break; case WID_GL_TOWN_PULLDOWN: strs = _num_towns; SetDParamMaxValue(0, CUSTOM_TOWN_MAX_NUMBER); - *size = GetStringBoundingBox(STR_NUM_CUSTOM_NUMBER); + *size = maxdim(*size, GetStringBoundingBox(STR_NUM_CUSTOM_NUMBER)); break; case WID_GL_INDUSTRY_PULLDOWN: strs = _num_inds; break; @@ -465,7 +483,7 @@ struct GenerateLandscapeWindow : public Window { case WID_GL_WATER_PULLDOWN: strs = _sea_lakes; SetDParamMaxValue(0, CUSTOM_SEA_LEVEL_MAX_PERCENTAGE); - *size = GetStringBoundingBox(STR_SEA_LEVEL_CUSTOM_PERCENTAGE); + *size = maxdim(*size, GetStringBoundingBox(STR_SEA_LEVEL_CUSTOM_PERCENTAGE)); break; case WID_GL_RIVER_PULLDOWN: strs = _rivers; break; @@ -496,7 +514,7 @@ struct GenerateLandscapeWindow : public Window { } } size->width += padding.width; - size->height = FONT_HEIGHT_NORMAL + WD_DROPDOWNTEXT_TOP + WD_DROPDOWNTEXT_BOTTOM; + size->height = max(size->height, (uint)(FONT_HEIGHT_NORMAL + WD_DROPDOWNTEXT_TOP + WD_DROPDOWNTEXT_BOTTOM)); } virtual void DrawWidget(const Rect &r, int widget) const @@ -562,6 +580,25 @@ struct GenerateLandscapeWindow : public Window { break; } + case WID_GL_MAX_HEIGHTLEVEL_DOWN: + case WID_GL_MAX_HEIGHTLEVEL_UP: // Height level buttons + /* Don't allow too fast scrolling */ + if (!(this->flags & WF_TIMEOUT) || this->timeout_timer <= 1) { + 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); + this->InvalidateData(); + } + _left_button_clicked = false; + break; + + case WID_GL_MAX_HEIGHTLEVEL_TEXT: // Height level text + this->widget_id = WID_GL_MAX_HEIGHTLEVEL_TEXT; + SetDParam(0, _settings_newgame.construction.max_heightlevel); + ShowQueryString(STR_JUST_INT, STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT); + break; + + case WID_GL_START_DATE_DOWN: case WID_GL_START_DATE_UP: // Year buttons /* Don't allow too fast scrolling */ @@ -595,7 +632,7 @@ struct GenerateLandscapeWindow : public Window { case WID_GL_SNOW_LEVEL_TEXT: // Snow line text this->widget_id = WID_GL_SNOW_LEVEL_TEXT; SetDParam(0, _settings_newgame.game_creation.snow_line_height); - ShowQueryString(STR_JUST_INT, STR_MAPGEN_SNOW_LINE_QUERY_CAPT, 3, this, CS_NUMERAL, QSF_ENABLE_DEFAULT); + ShowQueryString(STR_JUST_INT, STR_MAPGEN_SNOW_LINE_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT); break; case WID_GL_TREE_PULLDOWN: // Tree placer @@ -611,13 +648,14 @@ struct GenerateLandscapeWindow : public Window { break; case WID_GL_TERRAIN_PULLDOWN: // Terrain type - ShowDropDownMenu(this, _elevations, _settings_newgame.difficulty.terrain_type, WID_GL_TERRAIN_PULLDOWN, 0, 0); + /* For the original map generation only the first four are valid. */ + ShowDropDownMenu(this, _elevations, _settings_newgame.difficulty.terrain_type, WID_GL_TERRAIN_PULLDOWN, 0, _settings_newgame.game_creation.land_generator == LG_ORIGINAL ? ~0xF : 0); break; case WID_GL_WATER_PULLDOWN: { // Water quantity uint32 hidden_mask = 0; /* Disable custom water level when the original map generator is active. */ - if (_settings_newgame.game_creation.land_generator == 0) { + if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL) { SetBit(hidden_mask, CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY); } ShowDropDownMenu(this, _sea_lakes, _settings_newgame.difficulty.quantity_sea_lakes, WID_GL_WATER_PULLDOWN, 0, hidden_mask); @@ -666,7 +704,7 @@ struct GenerateLandscapeWindow : public Window { virtual void OnTimeout() { - static const int raise_widgets[] = {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 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}; for (const int *widget = raise_widgets; *widget != WIDGET_LIST_END; widget++) { if (this->IsWidgetLowered(*widget)) { this->RaiseWidget(*widget); @@ -684,7 +722,14 @@ struct GenerateLandscapeWindow : public Window { case WID_GL_RIVER_PULLDOWN: _settings_newgame.game_creation.amount_of_rivers = index; break; case WID_GL_SMOOTHNESS_PULLDOWN: _settings_newgame.game_creation.tgen_smoothness = index; break; case WID_GL_VARIETY_PULLDOWN: _settings_newgame.game_creation.variety = index; break; - case WID_GL_LANDSCAPE_PULLDOWN: _settings_newgame.game_creation.land_generator = index; break; + + case WID_GL_LANDSCAPE_PULLDOWN: _settings_newgame.game_creation.land_generator = index; + /* If original landgenerator is selected and alpinist terrain_type was selected, revert to mountainous. */ + if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL) { + _settings_newgame.difficulty.terrain_type = Clamp(_settings_newgame.difficulty.terrain_type, 0, 3); + } + break; + case WID_GL_HEIGHTMAP_ROTATION_PULLDOWN: _settings_newgame.game_creation.heightmap_rotation = index; break; case WID_GL_TOWN_PULLDOWN: @@ -693,20 +738,11 @@ struct GenerateLandscapeWindow : public Window { SetDParam(0, _settings_newgame.game_creation.custom_town_number); ShowQueryString(STR_JUST_INT, STR_MAPGEN_NUMBER_OF_TOWNS, 5, this, CS_NUMERAL, QSF_NONE); } - IConsoleSetSetting("difficulty.number_towns", index); + _settings_newgame.difficulty.number_towns = index; break; - case WID_GL_INDUSTRY_PULLDOWN: - IConsoleSetSetting("difficulty.industry_density", index); - break; - - case WID_GL_TERRAIN_PULLDOWN: { - GameMode old_gm = _game_mode; - _game_mode = GM_MENU; - IConsoleSetSetting("difficulty.terrain_type", index); - _game_mode = old_gm; - 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_WATER_PULLDOWN: { if ((uint)index == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) { @@ -714,10 +750,7 @@ struct GenerateLandscapeWindow : public Window { SetDParam(0, _settings_newgame.game_creation.custom_sea_level); ShowQueryString(STR_JUST_INT, STR_MAPGEN_QUANTITY_OF_SEA_LAKES, 3, this, CS_NUMERAL, QSF_NONE); } - GameMode old_gm = _game_mode; - _game_mode = GM_MENU; - IConsoleSetSetting("difficulty.quantity_sea_lakes", index); - _game_mode = old_gm; + _settings_newgame.difficulty.quantity_sea_lakes = index; break; } } @@ -735,6 +768,7 @@ struct GenerateLandscapeWindow : public Window { } else { /* An empty string means revert to the default */ switch (this->widget_id) { + case WID_GL_MAX_HEIGHTLEVEL_TEXT: value = DEF_MAX_HEIGHTLEVEL; 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_TOWN_PULLDOWN: value = 1; break; @@ -744,6 +778,11 @@ struct GenerateLandscapeWindow : public Window { } switch (this->widget_id) { + case WID_GL_MAX_HEIGHTLEVEL_TEXT: + this->SetWidgetDirty(WID_GL_MAX_HEIGHTLEVEL_TEXT); + _settings_newgame.construction.max_heightlevel = Clamp(value, MIN_MAX_HEIGHTLEVEL, MAX_MAX_HEIGHTLEVEL); + break; + case WID_GL_START_DATE_TEXT: this->SetWidgetDirty(WID_GL_START_DATE_TEXT); _settings_newgame.game_creation.starting_year = Clamp(value, MIN_YEAR, MAX_YEAR); @@ -781,7 +820,7 @@ static WindowDesc _heightmap_load_desc( _nested_heightmap_load_widgets, lengthof(_nested_heightmap_load_widgets) ); -static void _ShowGenerateLandscape(GenenerateLandscapeWindowMode mode) +static void _ShowGenerateLandscape(GenerateLandscapeWindowMode mode) { uint x = 0; uint y = 0; @@ -796,7 +835,8 @@ static void _ShowGenerateLandscape(GenenerateLandscapeWindowMode mode) if (!GetHeightmapDimensions(_file_to_saveload.name, &x, &y)) return; } - GenerateLandscapeWindow *w = AllocateWindowDescFront((mode == GLWM_HEIGHTMAP) ? &_heightmap_load_desc : &_generate_landscape_desc, mode); + WindowDesc *desc = (mode == GLWM_HEIGHTMAP) ? &_heightmap_load_desc : &_generate_landscape_desc; + GenerateLandscapeWindow *w = AllocateWindowDescFront(desc, mode, true); if (mode == GLWM_HEIGHTMAP) { w->x = x; @@ -904,7 +944,7 @@ struct CreateScenarioWindow : public Window default: return; } - *size = GetStringBoundingBox(str); + *size = maxdim(*size, GetStringBoundingBox(str)); size->width += padding.width; size->height += padding.height; } @@ -961,7 +1001,7 @@ struct CreateScenarioWindow : public Window this->HandleButtonClick(widget); 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, MAX_TILE_HEIGHT); + _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); } _left_button_clicked = false; break; @@ -969,7 +1009,7 @@ struct CreateScenarioWindow : public Window case WID_CS_FLAT_LAND_HEIGHT_TEXT: // Height level text this->widget_id = WID_CS_FLAT_LAND_HEIGHT_TEXT; SetDParam(0, _settings_newgame.game_creation.se_flat_world_height); - ShowQueryString(STR_JUST_INT, STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT, 3, this, CS_NUMERAL, QSF_NONE); + ShowQueryString(STR_JUST_INT, STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_NONE); break; } } @@ -1007,7 +1047,7 @@ struct CreateScenarioWindow : public Window case 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, MAX_TILE_HEIGHT); + _settings_newgame.game_creation.se_flat_world_height = Clamp(value, 0, _settings_game.construction.max_heightlevel); break; } diff --git a/src/gfx.cpp b/src/gfx.cpp index 20e27519ad..bc7f932441 100644 --- a/src/gfx.cpp +++ b/src/gfx.cpp @@ -23,6 +23,7 @@ #include "newgrf_debug.h" #include "table/palettes.h" +#include "table/string_colours.h" #include "table/sprites.h" #include "table/control_codes.h" @@ -56,6 +57,8 @@ static void GfxMainBlitter(const Sprite *sprite, int x, int y, BlitterMode mode, static ReusableBuffer _cursor_backup; +ZoomLevelByte _gui_zoom; ///< GUI Zoom level + /** * The rect for repaint. * @@ -173,40 +176,35 @@ static inline void GfxDoDrawLine(void *video, int x, int y, int x2, int y2, int assert(width > 0); - if (y2 == y) { - /* Special case: horizontal line. */ - blitter->DrawLine(video, - Clamp(x, 0, screen_width), y, - Clamp(x2, 0, screen_width), y2, - screen_width, screen_height, colour, width, dash); - return; - } - if (x2 == x) { - /* Special case: vertical line. */ - blitter->DrawLine(video, - x, Clamp(y, 0, screen_height), - x2, Clamp(y2, 0, screen_height), - screen_width, screen_height, colour, width, dash); + if (y2 == y || x2 == x) { + /* Special case: horizontal/vertical line. All checks already done in GfxPreprocessLine. */ + blitter->DrawLine(video, x, y, x2, y2, screen_width, screen_height, colour, width, dash); return; } int grade_y = y2 - y; int grade_x = x2 - x; + /* Clipping rectangle. Slightly extended so we can ignore the width of the line. */ + uint extra = CeilDiv(3 * width, 4); // not less then "width * sqrt(2) / 2" + Rect clip = { -extra, -extra, screen_width - 1 + extra, screen_height - 1 + extra }; + /* prevent integer overflows. */ int margin = 1; - while (INT_MAX / abs(grade_y) < max(abs(x), abs(screen_width - x))) { + while (INT_MAX / abs(grade_y) < max(abs(clip.left - x), abs(clip.right - x))) { grade_y /= 2; grade_x /= 2; margin *= 2; // account for rounding errors } - /* If the line is outside the screen on the same side at X positions 0 - * and screen_width, we don't need to draw anything. */ - int offset_0 = y - x * grade_y / grade_x; - int offset_width = y + (screen_width - x) * grade_y / grade_x; - if ((offset_0 > screen_height + width / 2 + margin && offset_width > screen_height + width / 2 + margin) || - (offset_0 < -width / 2 - margin && offset_width < -width / 2 - margin)) { + /* Imagine that the line is infinitely long and it intersects with + * infinitely long left and right edges of the clipping rectangle. + * If both intersection points are outside the clipping rectangle + * and both on the same side of it, we don't need to draw anything. */ + int left_isec_y = y + (clip.left - x) * grade_y / grade_x; + int right_isec_y = y + (clip.right - x) * grade_y / grade_x; + if ((left_isec_y > clip.bottom + margin && right_isec_y > clip.bottom + margin) || + (left_isec_y < clip.top - margin && right_isec_y < clip.top - margin)) { return; } @@ -435,7 +433,7 @@ static int DrawLayoutLine(const ParagraphLayouter::Line *line, int y, int left, int dpi_left = dpi->left; int dpi_right = dpi->left + dpi->width - 1; - draw_shadow = fc->GetDrawGlyphShadow() && colour != TC_BLACK; + draw_shadow = fc->GetDrawGlyphShadow() && (colour & TC_NO_SHADE) == 0 && colour != TC_BLACK; for (int i = 0; i < run->GetGlyphCount(); i++) { GlyphID glyph = run->GetGlyphs()[i]; @@ -782,6 +780,21 @@ Dimension GetSpriteSize(SpriteID sprid, Point *offset, ZoomLevel zoom) return d; } +/** + * Helper function to get the blitter mode for different types of palettes. + * @param pal The palette to get the blitter mode for. + * @return The blitter mode associated with the palette. + */ +static BlitterMode GetBlitterMode(PaletteID pal) +{ + switch (pal) { + case PAL_NONE: return BM_NORMAL; + case PALETTE_CRASH: return BM_CRASH_REMAP; + case PALETTE_ALL_BLACK: return BM_BLACK_REMAP; + default: return BM_COLOUR_REMAP; + } +} + /** * Draw a sprite in a viewport. * @param img Image number to draw @@ -797,8 +810,12 @@ void DrawSpriteViewport(SpriteID img, PaletteID pal, int x, int y, const SubSpri _colour_remap_ptr = GetNonSprite(GB(pal, 0, PALETTE_WIDTH), ST_RECOLOUR) + 1; GfxMainBlitterViewport(GetSprite(real_sprite, ST_NORMAL), x, y, BM_TRANSPARENT, sub, real_sprite); } else if (pal != PAL_NONE) { - _colour_remap_ptr = GetNonSprite(GB(pal, 0, PALETTE_WIDTH), ST_RECOLOUR) + 1; - GfxMainBlitterViewport(GetSprite(real_sprite, ST_NORMAL), x, y, pal == PALETTE_CRASH ? BM_CRASH_REMAP : BM_COLOUR_REMAP, sub, real_sprite); + if (HasBit(pal, PALETTE_TEXT_RECOLOUR)) { + SetColourRemap((TextColour)GB(pal, 0, PALETTE_WIDTH)); + } else { + _colour_remap_ptr = GetNonSprite(GB(pal, 0, PALETTE_WIDTH), ST_RECOLOUR) + 1; + } + GfxMainBlitterViewport(GetSprite(real_sprite, ST_NORMAL), x, y, GetBlitterMode(pal), sub, real_sprite); } else { GfxMainBlitterViewport(GetSprite(real_sprite, ST_NORMAL), x, y, BM_NORMAL, sub, real_sprite); } @@ -820,8 +837,12 @@ void DrawSprite(SpriteID img, PaletteID pal, int x, int y, const SubSprite *sub, _colour_remap_ptr = GetNonSprite(GB(pal, 0, PALETTE_WIDTH), ST_RECOLOUR) + 1; GfxMainBlitter(GetSprite(real_sprite, ST_NORMAL), x, y, BM_TRANSPARENT, sub, real_sprite, zoom); } else if (pal != PAL_NONE) { - _colour_remap_ptr = GetNonSprite(GB(pal, 0, PALETTE_WIDTH), ST_RECOLOUR) + 1; - GfxMainBlitter(GetSprite(real_sprite, ST_NORMAL), x, y, pal == PALETTE_CRASH ? BM_CRASH_REMAP : BM_COLOUR_REMAP, sub, real_sprite, zoom); + if (HasBit(pal, PALETTE_TEXT_RECOLOUR)) { + SetColourRemap((TextColour)GB(pal, 0, PALETTE_WIDTH)); + } else { + _colour_remap_ptr = GetNonSprite(GB(pal, 0, PALETTE_WIDTH), ST_RECOLOUR) + 1; + } + GfxMainBlitter(GetSprite(real_sprite, ST_NORMAL), x, y, GetBlitterMode(pal), sub, real_sprite, zoom); } else { GfxMainBlitter(GetSprite(real_sprite, ST_NORMAL), x, y, BM_NORMAL, sub, real_sprite, zoom); } @@ -1114,6 +1135,7 @@ void LoadStringWidthTable(bool monospace) } } + ClearFontCache(); ReInitAllWindows(); } @@ -1506,10 +1528,10 @@ void UpdateCursorSize() CursorVars *cv = &_cursor; const Sprite *p = GetSprite(GB(cv->sprite, 0, SPRITE_WIDTH), ST_NORMAL); - cv->size.y = UnScaleByZoom(p->height, ZOOM_LVL_GUI); - cv->size.x = UnScaleByZoom(p->width, ZOOM_LVL_GUI); - cv->offs.x = UnScaleByZoom(p->x_offs, ZOOM_LVL_GUI); - cv->offs.y = UnScaleByZoom(p->y_offs, ZOOM_LVL_GUI); + cv->size.y = UnScaleGUI(p->height); + cv->size.x = UnScaleGUI(p->width); + cv->offs.x = UnScaleGUI(p->x_offs); + cv->offs.y = UnScaleGUI(p->y_offs); cv->dirty = true; } @@ -1577,6 +1599,56 @@ void SetAnimatedMouseCursor(const AnimCursor *table) SwitchAnimatedCursor(); } +/** + * Update cursor position on mouse movement. + * @param x New X position. + * @param y New Y position. + * @param queued True, if the OS queues mouse warps after pending mouse movement events. + * False, if the warp applies instantaneous. + * @return true, if the OS cursor position should be warped back to this->pos. + */ +bool CursorVars::UpdateCursorPosition(int x, int y, bool queued_warp) +{ + /* Detecting relative mouse movement is somewhat tricky. + * - There may be multiple mouse move events in the video driver queue (esp. when OpenTTD lags a bit). + * - When we request warping the mouse position (return true), a mouse move event is appended at the end of the queue. + * + * So, when this->fix_at is active, we use the following strategy: + * - The first movement triggers the warp to reset the mouse position. + * - Subsequent events have to compute movement relative to the previous event. + * - The relative movement is finished, when we receive the event matching the warp. + */ + + if (x == this->pos.x && y == this->pos.y) { + /* Warp finished. */ + this->queued_warp = false; + } + + this->delta.x = x - (this->queued_warp ? this->last_position.x : this->pos.x); + this->delta.y = y - (this->queued_warp ? this->last_position.y : this->pos.y); + + this->last_position.x = x; + this->last_position.y = y; + + bool need_warp = false; + if (this->fix_at) { + if (this->delta.x != 0 || this->delta.y != 0) { + /* Trigger warp. + * Note: We also trigger warping again, if there is already a pending warp. + * This makes it more tolerant about the OS or other software inbetween + * botchering the warp. */ + this->queued_warp = queued_warp; + need_warp = true; + } + } else if (this->pos.x != x || this->pos.y != y) { + this->queued_warp = false; // Cancel warping, we are no longer confining the position. + this->dirty = true; + this->pos.x = x; + this->pos.y = y; + } + return need_warp; +} + bool ChangeResInGame(int width, int height) { return (_screen.width == width && _screen.height == height) || VideoDriver::GetInstance()->ChangeResolution(width, height); diff --git a/src/gfx_type.h b/src/gfx_type.h index 0633bdd521..d25abff218 100644 --- a/src/gfx_type.h +++ b/src/gfx_type.h @@ -138,6 +138,12 @@ struct CursorVars { bool in_window; ///< mouse inside this window, determines drawing logic bool vehchain; ///< vehicle chain is dragged + + bool UpdateCursorPosition(int x, int y, bool queued_warp); + +private: + bool queued_warp; + Point last_position; }; /** Data about how and where to blit pixels. */ @@ -231,7 +237,7 @@ enum Colours { }; template <> struct EnumPropsT : MakeEnumPropsT {}; -/** Colour of the strings, see _string_colourmap in table/palettes.h or docs/ottd-colourtext-palette.png */ +/** Colour of the strings, see _string_colourmap in table/string_colours.h or docs/ottd-colourtext-palette.png */ enum TextColour { TC_BEGIN = 0x00, TC_FROMSTRING = 0x00, diff --git a/src/gfxinit.cpp b/src/gfxinit.cpp index 72ded8f76f..10bc0afa17 100644 --- a/src/gfxinit.cpp +++ b/src/gfxinit.cpp @@ -18,6 +18,7 @@ #include "transparency.h" #include "blitter/factory.hpp" #include "video/video_driver.hpp" +#include "window_func.h" /* The type of set we're replacing */ #define SET_TYPE "graphics" @@ -304,6 +305,7 @@ void CheckBlitter() ClearFontCache(); GfxClearSpriteCache(); + ReInitAllWindows(); } /** Initialise and load all the sprites. */ diff --git a/src/ground_vehicle.hpp b/src/ground_vehicle.hpp index c38c6c4b7d..56b97875fc 100644 --- a/src/ground_vehicle.hpp +++ b/src/ground_vehicle.hpp @@ -231,9 +231,9 @@ struct GroundVehicle : public SpecializedVehicle { * @param update_delta Indicates to also update the delta. * @return Old height of the vehicle. */ - inline byte UpdateInclination(bool new_tile, bool update_delta) + inline int UpdateInclination(bool new_tile, bool update_delta) { - byte old_z = this->z_pos; + int old_z = this->z_pos; if (new_tile) { this->UpdateZPositionAndInclination(); diff --git a/src/group_cmd.cpp b/src/group_cmd.cpp index 8712c378fc..12cce41f74 100644 --- a/src/group_cmd.cpp +++ b/src/group_cmd.cpp @@ -404,11 +404,7 @@ CommandCost CmdAlterGroup(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 /* Ensure request parent isn't child of group. * This is the only place that infinite loops are prevented. */ - const Group *looptest = pg; - while (looptest->parent != INVALID_GROUP) { - if (looptest->parent == g->index) return CMD_ERROR; - looptest = Group::Get(looptest->parent); - } + if (GroupIsInGroup(pg->index, g->index)) return CMD_ERROR; } if (flags & DC_EXEC) { @@ -688,7 +684,7 @@ void UpdateTrainGroupID(Train *v) /** * Get the number of engines with EngineID id_e in the group with GroupID - * id_g + * id_g and its sub-groups. * @param company The company the group belongs to * @param id_g The GroupID of the group used * @param id_e The EngineID of the engine to count @@ -723,10 +719,7 @@ void RemoveAllGroupsForCompany(const CompanyID company) */ bool GroupIsInGroup(GroupID search, GroupID group) { - if (search == NEW_GROUP || - search == ALL_GROUP || - search == DEFAULT_GROUP || - search == INVALID_GROUP) return search == group; + if (!Group::IsValidID(search)) return search == group; do { if (search == group) return true; diff --git a/src/group_gui.cpp b/src/group_gui.cpp index c332c934d6..81fb1202e4 100644 --- a/src/group_gui.cpp +++ b/src/group_gui.cpp @@ -384,7 +384,7 @@ public: case WID_GL_SORT_BY_ORDER: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; @@ -669,7 +669,7 @@ public: case WID_GL_REPLACE_PROTECTION: { const Group *g = Group::GetIfValid(this->vli.index); if (g != NULL) { - DoCommandP(0, this->vli.index, !g->replace_protection | (_ctrl_pressed << 1), CMD_SET_GROUP_REPLACE_PROTECTION); + DoCommandP(0, this->vli.index, (g->replace_protection ? 0 : 1) | (_ctrl_pressed << 1), CMD_SET_GROUP_REPLACE_PROTECTION); } break; } diff --git a/src/heightmap.cpp b/src/heightmap.cpp index 93cfa0a62c..ec31257287 100644 --- a/src/heightmap.cpp +++ b/src/heightmap.cpp @@ -364,8 +364,16 @@ static void GrayscaleToMapHeights(uint img_width, uint img_height, byte *map) assert(img_row < img_height); assert(img_col < img_width); - /* Colour scales from 0 to 255, OpenTTD height scales from 0 to 15 */ - SetTileHeight(tile, map[img_row * img_width + img_col] / 16); + uint heightmap_height = map[img_row * img_width + img_col]; + + if (heightmap_height > 0) { + /* 0 is sea level. + * Other grey scales are scaled evenly to the available height levels > 0. + * (The coastline is independent from the number of height levels) */ + heightmap_height = 1 + (heightmap_height - 1) * _settings_game.construction.max_heightlevel / 255; + } + + SetTileHeight(tile, heightmap_height); } /* Only clear the tiles within the map area. */ if (IsInnerTile(tile)) { diff --git a/src/highscore_gui.cpp b/src/highscore_gui.cpp index 35ada7266c..c67aaa170b 100644 --- a/src/highscore_gui.cpp +++ b/src/highscore_gui.cpp @@ -46,17 +46,20 @@ struct EndGameHighScoreBaseWindow : Window { this->DrawWidgets(); - Point pt = this->GetTopLeft640x480(); + /* Standard background slices are 50 pixels high, but it's designed + * for 480 pixels total. 96% of 500 is 480. */ + Dimension dim = GetSpriteSize(this->background_img); + Point pt = this->GetTopLeft(dim.width, dim.height * 96 / 10); /* Center Highscore/Endscreen background */ for (uint i = 0; i < 10; i++) { // the image is split into 10 50px high parts - DrawSprite(this->background_img + i, PAL_NONE, pt.x, pt.y + (i * 50)); + DrawSprite(this->background_img + i, PAL_NONE, pt.x, pt.y + (i * dim.height)); } } /** Return the coordinate of the screen such that a window of 640x480 is centered at the screen. */ - Point GetTopLeft640x480() + Point GetTopLeft(int x, int y) { - Point pt = {max(0, (_screen.width / 2) - (640 / 2)), max(0, (_screen.height / 2) - (480 / 2))}; + Point pt = {max(0, (_screen.width / 2) - (x / 2)), max(0, (_screen.height / 2) - (y / 2))}; return pt; } @@ -129,7 +132,7 @@ struct EndGameWindow : EndGameHighScoreBaseWindow { virtual void OnPaint() { this->SetupHighScoreEndWindow(); - Point pt = this->GetTopLeft640x480(); + Point pt = this->GetTopLeft(640, 480); const Company *c = Company::GetIfValid(_local_company); if (c == NULL) return; @@ -179,7 +182,7 @@ struct HighScoreWindow : EndGameHighScoreBaseWindow { const HighScore *hs = _highscore_table[this->window_number]; this->SetupHighScoreEndWindow(); - Point pt = this->GetTopLeft640x480(); + Point pt = this->GetTopLeft(640, 480); SetDParam(0, ORIGINAL_END_YEAR); DrawStringMultiLine(pt.x + 70, pt.x + 570, pt.y, pt.y + 140, !_networking ? STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED : STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME, TC_FROMSTRING, SA_CENTER); diff --git a/src/industry_cmd.cpp b/src/industry_cmd.cpp index 9deb043632..5971964fd7 100644 --- a/src/industry_cmd.cpp +++ b/src/industry_cmd.cpp @@ -40,6 +40,7 @@ #include "core/backup_type.hpp" #include "object_base.h" #include "game/game.hpp" +#include "error.h" #include "table/strings.h" #include "table/industry_land.h" @@ -1389,7 +1390,7 @@ static CommandCost CheckIfIndustryTilesAreFree(TileIndex tile, const IndustryTil } else { CommandCost ret = EnsureNoVehicleOnGround(cur_tile); if (ret.Failed()) return ret; - if (MayHaveBridgeAbove(cur_tile) && IsBridgeAbove(cur_tile)) return_cmd_error(STR_ERROR_SITE_UNSUITABLE); + if (IsBridgeAbove(cur_tile)) return_cmd_error(STR_ERROR_SITE_UNSUITABLE); const IndustryTileSpec *its = GetIndustryTileSpec(gfx); @@ -2741,6 +2742,26 @@ void InitializeIndustries() _industry_builder.Reset(); } +/** Verify whether the generated industries are complete, and warn the user if not. */ +void CheckIndustries() +{ + int count = 0; + for (IndustryType it = 0; it < NUM_INDUSTRYTYPES; it++) { + if (Industry::GetIndustryTypeCount(it) > 0) continue; // Types of existing industries can be skipped. + + bool force_at_least_one; + uint32 chance = GetScaledIndustryGenerationProbability(it, &force_at_least_one); + if (chance == 0 || !force_at_least_one) continue; // Types that are not available can be skipped. + + const IndustrySpec *is = GetIndustrySpec(it); + SetDParam(0, is->name); + ShowErrorMessage(STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES, STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION, WL_WARNING); + + count++; + if (count >= 3) break; // Don't swamp the user with errors. + } +} + /** * Is an industry with the spec a raw industry? * @return true if it should be handled as a raw industry diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index 6f944b1873..c160142249 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -42,12 +42,12 @@ #include "table/strings.h" +#include + #include "safeguards.h" bool _ignore_restrictions; -uint64 _displayed_industries; ///< Communication from the industry chain window to the smallmap window about what industries to display. - -assert_compile(NUM_INDUSTRYTYPES <= 64); // Make sure all industry types fit in _displayed_industries. +std::bitset _displayed_industries; ///< Communication from the industry chain window to the smallmap window about what industries to display. /** Cargo suffix type (for which window is it requested) */ enum CargoSuffixType { @@ -229,7 +229,7 @@ class BuildIndustryWindow : public Window { * The tests performed after the enabled allow to load the industries * In the same way they are inserted by grf (if any) */ - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { IndustryType ind = _sorted_industry_types[i]; const IndustrySpec *indsp = GetIndustrySpec(ind); if (indsp->enabled) { @@ -1283,7 +1283,7 @@ public: switch (widget) { case WID_ID_DROPDOWN_ORDER: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; @@ -2002,7 +2002,7 @@ struct CargoesRow { if (!hs->enabled) continue; for (uint j = 0; j < lengthof(hs->accepts_cargo); j++) { - if (cargo_fld->u.cargo.vertical_cargoes[i] == hs->accepts_cargo[j]) { + if (hs->cargo_acceptance[j] > 0 && cargo_fld->u.cargo.vertical_cargoes[i] == hs->accepts_cargo[j]) { cargo_fld->ConnectCargo(cargo_fld->u.cargo.vertical_cargoes[i], false); goto next_cargo; } @@ -2194,7 +2194,7 @@ struct IndustryCargoesWindow : public Window { if (!hs->enabled || !(hs->building_availability & climate_mask)) continue; for (uint j = 0; j < lengthof(hs->accepts_cargo); j++) { - if (cargoes[i] == hs->accepts_cargo[j]) return true; + if (hs->cargo_acceptance[j] > 0 && cargoes[i] == hs->accepts_cargo[j]) return true; } } } @@ -2295,7 +2295,8 @@ struct IndustryCargoesWindow : public Window { { this->GetWidget(WID_IC_CAPTION)->widget_data = STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION; this->ind_cargo = it; - _displayed_industries = 1ULL << it; + _displayed_industries.reset(); + _displayed_industries.set(it); this->fields.Clear(); CargoesRow *row = this->fields.Append(); @@ -2339,12 +2340,12 @@ struct IndustryCargoesWindow : public Window { if (HasCommonValidCargo(central_sp->accepts_cargo, lengthof(central_sp->accepts_cargo), indsp->produced_cargo, lengthof(indsp->produced_cargo))) { this->PlaceIndustry(1 + supp_count * num_indrows / num_supp, 0, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); supp_count++; } if (HasCommonValidCargo(central_sp->produced_cargo, lengthof(central_sp->produced_cargo), indsp->accepts_cargo, lengthof(indsp->accepts_cargo))) { this->PlaceIndustry(1 + cust_count * num_indrows / num_cust, 4, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); cust_count++; } } @@ -2373,7 +2374,7 @@ struct IndustryCargoesWindow : public Window { { this->GetWidget(WID_IC_CAPTION)->widget_data = STR_INDUSTRY_CARGOES_CARGO_CAPTION; this->ind_cargo = cid + NUM_INDUSTRYTYPES; - _displayed_industries = 0; + _displayed_industries.reset(); this->fields.Clear(); CargoesRow *row = this->fields.Append(); @@ -2408,12 +2409,12 @@ struct IndustryCargoesWindow : public Window { if (HasCommonValidCargo(&cid, 1, indsp->produced_cargo, lengthof(indsp->produced_cargo))) { this->PlaceIndustry(1 + supp_count * num_indrows / num_supp, 0, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); supp_count++; } if (HasCommonValidCargo(&cid, 1, indsp->accepts_cargo, lengthof(indsp->accepts_cargo))) { this->PlaceIndustry(1 + cust_count * num_indrows / num_cust, 2, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); cust_count++; } } @@ -2604,7 +2605,7 @@ struct IndustryCargoesWindow : public Window { case WID_IC_IND_DROPDOWN: { DropDownList *lst = new DropDownList; - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { IndustryType ind = _sorted_industry_types[i]; const IndustrySpec *indsp = GetIndustrySpec(ind); if (!indsp->enabled) continue; @@ -2691,7 +2692,7 @@ const int IndustryCargoesWindow::VERT_TEXT_PADDING = 5; ///< Vertical padding ar static void ShowIndustryCargoesWindow(IndustryType id) { if (id >= NUM_INDUSTRYTYPES) { - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { const IndustrySpec *indsp = GetIndustrySpec(_sorted_industry_types[i]); if (indsp->enabled) { id = _sorted_industry_types[i]; diff --git a/src/industry_map.h b/src/industry_map.h index 7d927a13c3..9d2e3de211 100644 --- a/src/industry_map.h +++ b/src/industry_map.h @@ -127,7 +127,7 @@ static inline void SetIndustryConstructionStage(TileIndex tile, byte value) static inline IndustryGfx GetCleanIndustryGfx(TileIndex t) { assert(IsTileType(t, MP_INDUSTRY)); - return _m[t].m5 | (GB(_m[t].m6, 2, 1) << 8); + return _m[t].m5 | (GB(_me[t].m6, 2, 1) << 8); } /** @@ -152,7 +152,7 @@ static inline void SetIndustryGfx(TileIndex t, IndustryGfx gfx) { assert(IsTileType(t, MP_INDUSTRY)); _m[t].m5 = GB(gfx, 0, 8); - SB(_m[t].m6, 2, 1, GB(gfx, 8, 1)); + SB(_me[t].m6, 2, 1, GB(gfx, 8, 1)); } /** @@ -252,7 +252,7 @@ static inline void SetIndustryRandomBits(TileIndex tile, byte bits) static inline byte GetIndustryTriggers(TileIndex tile) { assert(IsTileType(tile, MP_INDUSTRY)); - return GB(_m[tile].m6, 3, 3); + return GB(_me[tile].m6, 3, 3); } @@ -266,7 +266,7 @@ static inline byte GetIndustryTriggers(TileIndex tile) static inline void SetIndustryTriggers(TileIndex tile, byte triggers) { assert(IsTileType(tile, MP_INDUSTRY)); - SB(_m[tile].m6, 3, 3, triggers); + SB(_me[tile].m6, 3, 3, triggers); } /** diff --git a/src/industry_type.h b/src/industry_type.h index 11828c5304..6234f7b114 100644 --- a/src/industry_type.h +++ b/src/industry_type.h @@ -22,13 +22,13 @@ struct IndustryTileSpec; static const IndustryID INVALID_INDUSTRY = 0xFFFF; -static const IndustryType NUM_INDUSTRYTYPES_PER_GRF = 64; ///< maximum number of industry types per NewGRF +static const IndustryType NUM_INDUSTRYTYPES_PER_GRF = 128; ///< maximum number of industry types per NewGRF; limited to 128 because bit 7 has a special meaning in some variables/callbacks (see MapNewGRFIndustryType). static const IndustryType NEW_INDUSTRYOFFSET = 37; ///< original number of industry types -static const IndustryType NUM_INDUSTRYTYPES = 64; ///< total number of industry types, new and old +static const IndustryType NUM_INDUSTRYTYPES = 240; ///< total number of industry types, new and old; limited to 240 because we need some special ids like INVALID_INDUSTRYTYPE, IT_AI_UNKNOWN, IT_AI_TOWN, ... static const IndustryType INVALID_INDUSTRYTYPE = NUM_INDUSTRYTYPES; ///< one above amount is considered invalid -static const IndustryGfx NUM_INDUSTRYTILES_PER_GRF = 255; ///< Maximum number of industry tiles per NewGRF; limited to 255 to allow extending Action3 with an extended byte later on. +static const IndustryGfx NUM_INDUSTRYTILES_PER_GRF = 255; ///< Maximum number of industry tiles per NewGRF; limited to 255 to allow extending Action3 with an extended byte later on. static const IndustryGfx INDUSTRYTILE_NOANIM = 0xFF; ///< flag to mark industry tiles as having no animation static const IndustryGfx NEW_INDUSTRYTILEOFFSET = 175; ///< original number of tiles @@ -37,4 +37,6 @@ static const IndustryGfx INVALID_INDUSTRYTILE = NUM_INDUSTRYTILES; ///< one a static const int INDUSTRY_COMPLETED = 3; ///< final stage of industry construction. +void CheckIndustries(); + #endif /* INDUSTRY_TYPE_H */ diff --git a/src/intro_gui.cpp b/src/intro_gui.cpp index 9de9274083..de8b379392 100644 --- a/src/intro_gui.cpp +++ b/src/intro_gui.cpp @@ -210,7 +210,7 @@ static const NWidgetPart _nested_select_game_widgets[] = { NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_SGI_OPTIONS), SetMinimalSize(158, 12), SetDataTip(STR_INTRO_GAME_OPTIONS, STR_INTRO_TOOLTIP_GAME_OPTIONS), SetPadding(0, 0, 0, 10), SetFill(1, 0), NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_SGI_SETTINGS_OPTIONS), SetMinimalSize(158, 12), - SetDataTip(STR_INTRO_ADVANCED_SETTINGS, STR_INTRO_TOOLTIP_ADVANCED_SETTINGS), SetPadding(0, 10, 0, 0), SetFill(1, 0), + SetDataTip(STR_INTRO_CONFIG_SETTINGS_TREE, STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE), SetPadding(0, 10, 0, 0), SetFill(1, 0), EndContainer(), NWidget(NWID_SPACER), SetMinimalSize(0, 6), diff --git a/src/landscape.cpp b/src/landscape.cpp index c4116eaafd..d1c73fd42b 100644 --- a/src/landscape.cpp +++ b/src/landscape.cpp @@ -892,6 +892,7 @@ static void CreateDesertOrRainForest() { TileIndex update_freq = MapSize() / 4; const TileIndexDiffC *data; + uint max_desert_height = CeilDiv(_settings_game.construction.max_heightlevel, 4); for (TileIndex tile = 0; tile != MapSize(); ++tile) { if ((tile % update_freq) == 0) IncreaseGeneratingWorldProgress(GWP_LANDSCAPE); @@ -901,7 +902,7 @@ static void CreateDesertOrRainForest() for (data = _make_desert_or_rainforest_data; data != endof(_make_desert_or_rainforest_data); ++data) { TileIndex t = AddTileIndexDiffCWrap(tile, *data); - if (t != INVALID_TILE && (TileHeight(t) >= 4 || IsTileType(t, MP_WATER))) break; + if (t != INVALID_TILE && (TileHeight(t) >= max_desert_height || IsTileType(t, MP_WATER))) break; } if (data == endof(_make_desert_or_rainforest_data)) { SetTropicZone(tile, TROPICZONE_DESERT); @@ -1272,7 +1273,8 @@ void GenerateLandscape(byte mode) assert(_settings_game.difficulty.quantity_sea_lakes != CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY); uint i = ScaleByMapSize(GB(r, 0, 7) + (3 - _settings_game.difficulty.quantity_sea_lakes) * 256 + 100); for (; i != 0; --i) { - GenerateTerrain(_settings_game.difficulty.terrain_type, 0); + /* Make sure we do not overflow. */ + GenerateTerrain(Clamp(_settings_game.difficulty.terrain_type, 0, 3), 0); } break; } diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index af12261c22..7ed60a9f15 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Gaskoeldrank # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passasier{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passasier{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} steenkool -STR_QUANTITY_MAIL :{COMMA} sak{P "" ke} pos +STR_QUANTITY_MAIL :{COMMA}{NBSP}sak{P "" ke} pos STR_QUANTITY_OIL :{VOLUME_LONG} olie -STR_QUANTITY_LIVESTOCK :{COMMA} item{P "" s} lewendehawe -STR_QUANTITY_GOODS :{COMMA} krat{P "" te} goedere +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}item{P "" s} lewendehawe +STR_QUANTITY_GOODS :{COMMA}{NBSP}krat{P "" te} goedere STR_QUANTITY_GRAIN :{WEIGHT_LONG} graan STR_QUANTITY_WOOD :{WEIGHT_LONG} hout STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} ystererts STR_QUANTITY_STEEL :{WEIGHT_LONG} staal -STR_QUANTITY_VALUABLES :{COMMA} sak{P "" ke} edelmetale +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}sak{P "" ke} edelmetale STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} kopererts STR_QUANTITY_MAIZE :{WEIGHT_LONG} mielies STR_QUANTITY_FRUIT :{WEIGHT_LONG} vrugte -STR_QUANTITY_DIAMONDS :{COMMA} sak{P "" ke} diamante +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}sak{P "" ke} diamante STR_QUANTITY_FOOD :{WEIGHT_LONG} kos STR_QUANTITY_PAPER :{WEIGHT_LONG} papier -STR_QUANTITY_GOLD :{COMMA} sak{P "" ke} goud +STR_QUANTITY_GOLD :{COMMA}{NBSP}sak{P "" ke} goud STR_QUANTITY_WATER :{VOLUME_LONG} water STR_QUANTITY_WHEAT :{WEIGHT_LONG} koring STR_QUANTITY_RUBBER :{VOLUME_LONG} rubber STR_QUANTITY_SUGAR :{WEIGHT_LONG} suiker -STR_QUANTITY_TOYS :{COMMA} ton speelgoed -STR_QUANTITY_SWEETS :{COMMA} sak{P "" ke} lekkers +STR_QUANTITY_TOYS :{COMMA}{NBSP}ton speelgoed +STR_QUANTITY_SWEETS :{COMMA}{NBSP}sak{P "" ke} lekkers STR_QUANTITY_COLA :{VOLUME_LONG} kola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} spookasem STR_QUANTITY_BUBBLES :{COMMA} borrel{P "" s} @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}NS STR_ABBREV_ALL :{TINY_FONT}ALMAL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passasier{P "" s} -STR_BAGS :{COMMA} sak{P "" ke} -STR_TONS :{COMMA} ton -STR_LITERS :{COMMA} liter -STR_ITEMS :{COMMA} item{P "" s} -STR_CRATES :{COMMA} krat{P "" te} +STR_PASSENGERS :{COMMA}{NBSP}passasier{P "" s} +STR_BAGS :{COMMA}{NBSP}sak{P "" ke} +STR_TONS :{COMMA}{NBSP}ton +STR_LITERS :{COMMA}{NBSP}liter +STR_ITEMS :{COMMA}{NBSP}item{P "" s} +STR_CRATES :{COMMA}{NBSP}krat{P "" te} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Donkerblou @@ -192,37 +192,37 @@ STR_COLOUR_GREY :Grys STR_COLOUR_WHITE :Wit # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mpu -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mpu +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}pk -STR_UNITS_POWER_METRIC :{COMMA}pk -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}pk +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}pk +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gelling -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gelling +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gelling{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gelling{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} vt -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}vt +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter string: @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Rolstaaf STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Rolstaaf - rol die lys links/regs STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Vernietig geboue ens. op 'n vierkant van land +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Wys versteekte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Wys weggesteekde +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Wys weggesteekde +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Wys weggesteekde + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Deur hierdie opsie te aktiveer, sal die weggesteekde treine ook vertoon word +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Deur hierdie opsie te aktiveer, sal die weggesteekde voertuie ook vertoon word +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Deur hierdie opsie te aktiveer, sal die weggesteekde skepe ook vertoon word +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Deur hierdie opsie te aktiveer, sal die weggesteekde vliegtuie ook vertoon word + # Query window STR_BUTTON_DEFAULT :{BLACK}Gewone STR_BUTTON_CANCEL :{BLACK}Kanselleer @@ -303,7 +314,7 @@ STR_SORT_BY_POPULATION :Bevolking STR_SORT_BY_RATING :Waardering # Tooltips for the main toolbar -STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Pouseer spel +STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Onderbreek spel STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Vinnig vooruit die spel STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Opsies STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Stoor spel, verlaat spel, verlaat @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Verlaat ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spel opsies -STR_SETTINGS_MENU_CONFIG_SETTINGS :Gevorderde stellings +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Stellings STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Spel skript instellings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF stellings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Deursigtigheid opsies @@ -672,7 +683,7 @@ STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Klik op STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Klik op musiek lied om te verwyder van huidige program (Slegs Gewoonte1 of Gewoonte2) # Highscore window -STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Beste maatskappye wat {NUM} +STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Top maatskappye wat {NUM} bereik het STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Maatskappy Liga Tafel in {NUM} STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}. STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :Sakeman @@ -757,7 +768,7 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Vertoon # Status bar messages STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Wys laaste boodskap of nuus verslag STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - -STR_STATUSBAR_PAUSED :{YELLOW}* * STIL * * +STR_STATUSBAR_PAUSED :{YELLOW}* * GEONDERBREEK * * STR_STATUSBAR_AUTOSAVE :{RED}OUTOSTOOR STR_STATUSBAR_SAVING_GAME :{RED}* * STOOR SPELETJIE * * @@ -788,7 +799,7 @@ STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLAC STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}Olie raffinadery het ontplof naby {TOWN}! STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}fabriek vernietig in agterdogtig omstandighede naby {TOWN}! STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}'VVV' beland naby {TOWN}! -STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Kool myn bedaaring los spoor van vernietiging naby {TOWN}! +STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Steenkool myn ongeluk los spoor van vernietiging naby {TOWN}! STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Oorstroom!{}Te minste {COMMA} vermis, aangeneem dood na beduidende oorstroom! STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Vervoer maatsappy in moelikheid! @@ -816,7 +827,7 @@ STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLAC STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}Insinking Oor!{}{}Oplewing in sake gee vertroue na nywerhede as ekonomie versterk! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} vermeerder produksie! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}Nuwe kool laag gevind by {INDUSTRY}!{}Produksie is verwag om te verdubbel! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}Nuwe steenkool laag gevind by {INDUSTRY}!{}Produksie word voorspel dat dit sal verdubbel! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}Nuwe olie reserwes gevind by {INDUSTRY}!{}Produksie is verwag om te verdubbel! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}Verbeterde boerdery metodes by {INDUSTRY} sal produksie verdubbel! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_SMOOTH :{BIG_FONT}{BLACK}{STRING} produksie by {INDUSTRY} vermeerder {COMMA}%! @@ -917,10 +928,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgiaanse Lar STR_GAME_OPTIONS_CURRENCY_IRR :Iraanse Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Pad voertuie STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Kies kant van pad waarop voertuie ry STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Bestuur aan linkerkant @@ -974,6 +981,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skerm re STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Kies die skerm resolusie om te gebruik STR_GAME_OPTIONS_RESOLUTION_OTHER :ander +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_NORMAL :Normaal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dubbel groote +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad grootte + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Basis-grafikastel STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Kies die basis-grafikastel stel om te gebruik STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} verlore / korrupte ler{P "" s} @@ -1030,11 +1044,11 @@ STR_NUM_CUSTOM :Pasmaak STR_NUM_CUSTOM_NUMBER :Pasmaak ({NUM}) STR_VARIETY_NONE :Geen -STR_VARIETY_VERY_LOW :Baaie Laag +STR_VARIETY_VERY_LOW :Baie Laag STR_VARIETY_LOW :Laag STR_VARIETY_MEDIUM :Middelmatig STR_VARIETY_HIGH :Hoog -STR_VARIETY_VERY_HIGH :Baaie Hoog +STR_VARIETY_VERY_HIGH :Baie Hoog STR_AI_SPEED_VERY_SLOW :Baie Stadig STR_AI_SPEED_SLOW :Stadig @@ -1067,6 +1081,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Baie Plat STR_TERRAIN_TYPE_FLAT :Plat STR_TERRAIN_TYPE_HILLY :Koppierig STR_TERRAIN_TYPE_MOUNTAINOUS :Bergagtig +STR_TERRAIN_TYPE_ALPINIST :Alpinis STR_CITY_APPROVAL_PERMISSIVE :Permissief STR_CITY_APPROVAL_TOLERANT :Toelaatbaar @@ -1074,8 +1089,8 @@ STR_CITY_APPROVAL_HOSTILE :Vyandelik STR_WARNING_NO_SUITABLE_AI :{WHITE}Geen geskikte KI beskikbaar...{}Jy kan verskeie KI's aflaai deur middel van die 'Aanlyn Inhoud' stelsel -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Gevorderde stellings +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Stellings STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filter string: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Brei alles uit STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Krimp alles in @@ -1091,9 +1106,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Maatskappy inst STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorie: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tipe: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Beperk die lys hier onder deur voorafgestelde "filters" te gebruik slegs veranderde verstellings -STR_CONFIG_SETTING_RESTRICT_BASIC :Basiese verstellings -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Gevorderde verstellings -STR_CONFIG_SETTING_RESTRICT_ALL :Ekspert verstellings / alle verstellings +STR_CONFIG_SETTING_RESTRICT_BASIC :Basiese (wys net belangrik verstellings) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Gevorderde (wys meeste verstellings) +STR_CONFIG_SETTING_RESTRICT_ALL :Ekspert (wys alle verstellings, insluitend vreemde verstellings) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Verstellings met 'n waarde anders as die verstek waarde STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Verstellings met 'n waarde anders as die nuwe spel verstellings @@ -1148,9 +1163,12 @@ 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_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_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_CATCHMENT :Laat meer realisties grootte opvangsgebied toe: {STRING} +STR_CONFIG_SETTING_CATCHMENT :Laat meer realisties groote opvangsgebied toe: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Laat verskillende groote opvang gebiede toe vir verskillende tipes stasies en lughawens STR_CONFIG_SETTING_EXTRADYNAMITE :Laat verwydering van meer stad-besite paaie, bruge, ens toe: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Maak dit makliker om dorps eiendom en infrastruktuur te verwyder @@ -1176,9 +1194,11 @@ STR_CONFIG_SETTING_INFLATION :Inflasie: {STRI STR_CONFIG_SETTING_INFLATION_HELPTEXT :Aktiveer inflasie in die ekonomie, waar die kostes vinniger styg as betalings STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximum brug lengte: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximum lengte vir die bou van bruë +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimum brughoogte: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimum hoogte om brûe te bou STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximum tonnel lengte: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximum lengte vir die bou van tonnels -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Manual primêre nywerheid konstruksie metode: {STRING} +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Handmatige primêre nywerheid konstruksie metode: {STRING} STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Metode van befondsing van 'n primêre bedryf."Niks" beteken dit nie moontlik is om enige bedryf te finansier, "prospekteer" beteken befondsing is moontlik, maar konstruksie vind plaas in 'n toevallige plek op die kaart en dit kan ook misluk, "ander nywerhede" beteken rou bedrywe kan opgerig word deur ander maatskappye soos verwerking nywerhede. STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Geen STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :As ander nywerhede @@ -1261,7 +1281,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Tyd wat fout bo STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Tydsduur vir die vertoning van foutboodskappe. Kritiese foutboodskappe word nie outomaties toegemaak nie. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekonde{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :wys sleutel-leidraad: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tydsduur voor nutswenke vertoon words as die muis oor koppelvlakelemente gehou word. Nutswenke kan ook aan die regter-muisknoppie verbind word. +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tydsduur voor nutswenke vertoon words as die muis oor koppelvlakelemente gehou word. Alternatiewelik kan die nutswenke ook aan die regter-muisknoppie verbind word indien die stelling na 0 gestel word. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Sweef vir {COMMA} sekonde{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Regsklik STR_CONFIG_SETTING_POPULATION_IN_LABEL :Toon stadsbevolking in die naametiket: {STRING} @@ -1364,8 +1384,8 @@ STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :kort (31-12-200 STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31) STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Outomaties pouse wanneer om te begin 'n nuwe speletjie: {STRING} -STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :As hierdie opsie geaktiveer is, sal die spel gepousseer wees wanneer die spel begin. -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Wanneer gepouseer laat toe: {STRING} +STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :As hierdie opsie geaktiveer is, sal die spel geonderbreek wees wanneer die spel begin. +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Wanneer geonderbreek laat die toe: {STRING} STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Selekteer watter aksies mag gedoen word terwyl die speletjie onderbreek word STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Geen aksies STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Alle nie-konstruksie aksies @@ -1380,7 +1400,7 @@ STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Wys die rystye STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Toon aankoms en vertrek in tydroosters: {STRING} STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Vertoon verwagte aankoms en vertrek tye in tydroosters STR_CONFIG_SETTING_QUICKGOTO :Vinnige skepping van voertuig opdragte: {STRING} -STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Pre-selekteer die "gaan na wyser" wanneer didie bevele venster oop gemaak word +STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Pre-selekteer die "gaan na wyser" wanneer die bevele venster oop gemaak word STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Verstek spoor tipe (na nuwe spel/spel laai): {STRING} STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Spoortipe om te kies wanneer 'n nuwe spel begin. 'Eers beskikbaar' kies die oudste tipe spoor, 'Laas beskikbaar' kies die nuutste tipe spoor, 'Meeste gebruik' kies die spoor wat die meeste in gebruik is. STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :Eers beskikbaar @@ -1445,7 +1465,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Diens pouse is STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Kies of voertuie gediens word gebasseer op tydsduur vanaf vorige diens of as die voertuig se betroubaarheid met 'n sekere persentasie geval het van die maksimum STR_CONFIG_SETTING_SERVINT_TRAINS :Standaard diens interval vir treine: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Kies die standaard diensskedule vir nuwe treine as geen diensskedule aangedui is nie -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} da{P g e}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}da{P g e}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Gedeaktiveer STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Standaard diens interval vir pad voertuie: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Kies die standaard diensskedule vir nuwe padvoertuie as geen diensskedule aangedui is nie @@ -1512,7 +1532,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Bepaal wat gebe STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Outomaties bou semaphores voor: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Stel die jaar wanneer elektriese seine gebruik word vir spore. Voor hierdie jaar word seinpale gebruik (die manier waarop hulle werk is presies dieselfde). STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Aktiveer die sein GUI: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Vertoon 'n venster om sein-tipes te kies eerder as om Ctrl+klik te gebruik om te bepaal watter sein-tipes geplaas word +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Vertoon 'n venster om te kies watter sein-tipes te bou, eerder as vensterlose sein-tipe met Ctrl+klik te gebruik om te sein-tipes gebou word STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Sein tipe om te bou by verstek: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Standaard sein tipe om te gebruik STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Blok seine @@ -1585,9 +1605,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Geen STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Aanvanklike stad grootte multiplier: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Normale stede groote relatief na normale dorpe aan die begin van speletjie -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Herreken die verspreingskaart elke {STRING} da{P 0:2 g e} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Herreken die verspreingskaart elke {STRING}{NBSP}da{P 0:2 g e} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Tyd tussen daaropvolgende herrekeninge van die verspreidingskaart. Elke herrekening is vir een komponent van die hele kaart, so net 'n gedeelte is dan op datum, nie die hele kaart nie. Hoe korter hierdie stelling is, hoe meer verwerkingskrag word benodig, hoe langer hierdie stelling is, hoe langer vat dit vir die vrag om op nuwe roetes te versprei. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Neem {STRING} da{P 0:2 g e} om verspreidingskaart te herreken +STR_CONFIG_SETTING_LINKGRAPH_TIME :Neem {STRING}{NBSP}da{P 0:2 g e} om verspreidingskaart te herreken STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Tyd benodig vir die herrekening van elke komponent van die verspreidingskaart. Elke berekening kan vir hierdie aantal dae hardloop, as hierdie stelling te kort is en die berekening is nie klaar nie, dan kan die spel stop tot die berekening klaar gedoen is. Hoe meer tyd toegelaat word vir hierdie berekeninge, hoe langer vat dit vir die verspreidingskaart om te verander as roetes verander. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :handmatig STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimmetries @@ -1628,19 +1648,19 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metries (t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Volume eenheid: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Wys volume in die eenheid wat gekies is +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Wanneer 'n volume gewys word in die gebruikerskoppelvlak, wys dit in die geselekteerde eenhede STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Empiries (gelling) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metries (I) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Trekkrag eenhede: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Wys trekkrag in die eenheid was gekies is +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Wanneer 'n trekkrag gewys word in die gebruikerskoppelvlak, wys dit in die geselekteerde eenhede STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Empiries (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metries (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Hoogte eenheid: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Wys hoogte in die eenheid wat gekies is +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Wanneer 'n hoogte word in die gebruikerskoppelvlak, wys dit in die geselekteerde eenhede STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Empiries (vt) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metries (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1716,7 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multispe STR_INTRO_GAME_OPTIONS :{BLACK}Spel Opsies STR_INTRO_HIGHSCORE :{BLACK}Hoogste Tellings Tafel -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Gevorderde stellings +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Stellings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Stellings STR_INTRO_ONLINE_CONTENT :{BLACK}Soek aanlyn STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spel Skript Instellings @@ -1736,7 +1756,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Kies 'sp STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Vertoon speletjie opsies STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Vertoon hoogste tellings tafel -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Toon gevorderde stellings +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Vertoon instellings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Wys NewGRF stellings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kyk vir nuwe of bygewerkde inhoud om af te laai STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vertoon AI/Spel skript konfigurasie @@ -1776,6 +1796,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Speel a STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Tower stootskraper (verwyder nywerhede, onbeweegbare voorwerpe): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tonnels mag vir mekaar kruis: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Straalvliegtuie sal nie (dikwels) op klein lughawe bots nie: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Verander die maksimum kaarthoogte: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Verander die maksimum berghoogte STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Matige klimaat STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Sub-artiese landskap STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-tropiese landskap @@ -2146,10 +2168,10 @@ STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Die laas # Network related errors STR_NETWORK_SERVER_MESSAGE :*** {1:STRING} ############ Leave those lines in this order!! -STR_NETWORK_SERVER_MESSAGE_GAME_PAUSED :Spel stilgehou ({STRING}) -STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Spel nog steeds stilgehou ({STRING}) -STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Spel nog steeds stilgehou ({STRING}, {STRING}) -STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Spel nog steeds stilgehou ({STRING}, {STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_PAUSED :Spel geonderbreek ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Spel nog steeds geonderbreek ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Spel nog steeds geonderbreek ({STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Spel nog steeds geonderbreek ({STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :Spel steeds onderbreek ({STRING}, {STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_UNPAUSED :Spel gaan weer aan ({STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :hoeveelheid spelers @@ -2666,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Maatskappy-besi STR_ABOUT_OPENTTD :{WHITE}Oor OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Oorspronklike kopiereg {COPYRIGHT} 1995 Chris Sawyer, Alle regte voorbehou STR_ABOUT_VERSION :{BLACK}OpenTTD uitgawe {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Die OpenTTD span +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Die OpenTTD span # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spaar Spel @@ -2701,6 +2723,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Hoev. dorpe: STR_MAPGEN_DATE :{BLACK}Datum: 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 @@ -2723,13 +2748,14 @@ STR_MAPGEN_BORDER_FREEFORM :{BLACK}Vryeform STR_MAPGEN_BORDER_WATER :{BLACK}Water STR_MAPGEN_BORDER_RANDOM :{BLACK}Lukraak STR_MAPGEN_BORDER_RANDOMIZE :{BLACK}Lukraak -STR_MAPGEN_BORDER_MANUAL :{BLACK}Manual +STR_MAPGEN_BORDER_MANUAL :{BLACK}Handmatig STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Reliëfkaart orientasie: STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Reliëfkaart naam: STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grootte: 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 @@ -2847,10 +2873,13 @@ STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Gaan na STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Gaan na sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gaan na gegewe sprite. As die sprite nie 'n normale sprite is nie, gaan na die volgende normale sprite STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Vorige sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Gaan na vorige normale sprite. ignoreer enige pseudo/her-kleur/font sprite en spring terug na die einde +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Gaan na vorige normale sprite, en ignoreer enige pseudo/her-kleur/font sprite en spring terug na die einde STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Voorstelling van geselekteerde sprite. Die belyning word geignoreer waneer sprite geteken word STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Beweeg die sprite rond, verander die X en Y afwyking -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X afwyking: {NUM}, Y afwyking: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Relatiewe herstel +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Herstel die huidige relatiewe verplasing +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X verplasing: {NUM}, Y verplasing: {NUM} (Werklik) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X verplasing: {NUM}, Y verplasing: {NUM} (Relatief) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Kies sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Kies 'n sprite van enige plek op die skerm @@ -2962,8 +2991,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} afgelewer STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (steeds benodig) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (afgelewer) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Dorp groei elke {ORANGE}{COMMA}{BLACK} da{P g e} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Dorp groei elke {ORANGE}{COMMA}{BLACK} da{P g e} (befonds) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Dorp groei elke {ORANGE}{COMMA}{BLACK}{NBSP}da{P g e} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Dorp groei elke {ORANGE}{COMMA}{BLACK}{NBSP}da{P g e} (befonds) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Dorp groei {RED}nie{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Geraas limiet in dorp: {ORANGE}{COMMA}{BLACK} maks: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Skuif skerm na dorp toe. Ctrl+klik maak 'n nuwe venster vir die dorp oop @@ -3023,7 +3052,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Inligting STR_GOAL_QUESTION_CAPTION_WARNING :Waarskuwing STR_GOAL_QUESTION_CAPTION_ERROR :Fout -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Kanselleer STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nee @@ -3042,6 +3071,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Begin weer STR_GOAL_QUESTION_BUTTON_POSTPONE :Stel uit STR_GOAL_QUESTION_BUTTON_SURRENDER :Gee oor STR_GOAL_QUESTION_BUTTON_CLOSE :Maak toe +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidies @@ -3289,9 +3319,9 @@ STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Vliegtui STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Wins die jaar: {CURRENCY_LONG} (verlede jaar: {CURRENCY_LONG}) STR_VEHICLE_LIST_AVAILABLE_TRAINS :Beskikbare treine -STR_VEHICLE_LIST_AVAILABLE_ROAD_VEHICLES :Beskikbaar Voertuie -STR_VEHICLE_LIST_AVAILABLE_SHIPS :Beskikbaar Skepe -STR_VEHICLE_LIST_AVAILABLE_AIRCRAFT :Beskikbaar Vliegtuie +STR_VEHICLE_LIST_AVAILABLE_ROAD_VEHICLES :Beskikbare Voertuie +STR_VEHICLE_LIST_AVAILABLE_SHIPS :Beskikbare Skepe +STR_VEHICLE_LIST_AVAILABLE_AIRCRAFT :Beskikbare Vliegtuie STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP :{BLACK}Vertoon 'n lys van beskikbare enjins vir hierdie voertiug. STR_VEHICLE_LIST_MANAGE_LIST :{BLACK}Bestuur lys @@ -3366,10 +3396,10 @@ STR_PURCHASE_INFO_ALL_BUT :Alles behalwe { STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. Traktiewe Poging: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Afstand: {GOLD}{COMMA} teëls -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trein kieslys - klik op voertuig vir inligting -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Pad voertuig kieslys - klik op voertuig vir inligting -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Skip kieslys - klik op skip vir inligting -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Vliegtuig kieslys - klik op vliegtuig vir inligting +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trein kieslys - klik op voertuig vir inligting. CTRL+kliek vir wegsteek van die voertuig tipe +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Pad voertuig kieslys - klik op voertuig vir inligting. CTRL+kliek vir wegsteek van die voertuig tipe +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK} Skip keuse lys. Klik op die skip vir inligting. CTRL+klik vir die wegsteek van die skip tipe +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Vliegtuig kieslys - klik op vliegtuig vir inligting. CTRL+kliek vir wegsteek van die vliegtuig tipe STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Koop Voertuig STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Koop Voertuig @@ -3391,6 +3421,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Hernoem STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Hernoem skip tipe STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Hernoem vliegtuig tipe +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Vertoon +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Vertoon +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Vertoon +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Vertoon + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Vertoon +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Vertoon +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Vertoon +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Vertoon + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Skakel die wegsteek/vetrooning van die trein tipe +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Skakel die wegsteek/vetrooning van die voertuig tipe +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Skakel die wegsteek/vetrooning van die skip tipe +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Skakel die wegsteek/vetrooning van die vliegtuig tipe + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Hernoem trein voertuig tipe STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Hernoem pad voertuig tipe STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Hernoem skip tipe @@ -3444,7 +3489,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Kloon Vo STR_DEPOT_CLONE_SHIP :{BLACK}Kloon Skip STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Kloon Vliegtuig -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Klik hier en dan op 'n bestaande trein om 'n spieëlbeeld van die bestaande trein te koop. Shift+klik vir kwotasie +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Klik hier en dan op 'n bestaande trein om 'n spieëlbeeld van die bestaande trein te koop. Ctrl+Klik om die opdragte tel deel. Shift+klik vir kwotasie STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Klik hier en dan op 'n bestaande voertuig om 'n spieëlbeeld van die bestaande voertuig te koop. Shift+klik vir kwotasie STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Klik hier en dan op 'n bestaande skip om 'n spieëlbeeld van die bestaande skip te koop. Shift+klik vir kwotasie STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Klik hier en dan op 'n bestaande vliegtuig om 'n spieëlbeeld van die bestaande vliegtuig te koop. Shift+klik vir kwotasie @@ -3495,6 +3540,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Pad voertuig STR_REPLACE_VEHICLE_SHIP :Skip STR_REPLACE_VEHICLE_AIRCRAFT :Vliegtuig +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Voertuie in gebruik +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolom met voertuie wat jy besit +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Beskikbare voertuie +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolom met voertuie wat beskikbaar is vir vervanging + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Kies die enjin tipe om te vervang STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Kies die nuwe enjin tipe wat jy wil gebruik in plaas van die linker gekose enjin tipe @@ -3619,7 +3669,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Oordragkrediet: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Diens tussentyd: {LTBLUE}{COMMA}dae{BLACK} Laaste diens: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Diens tussentyd: {LTBLUE}{COMMA}{NBSP}dae{BLACK} Laaste diens: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Diens tussentyd: {LTBLUE}{COMMA}%{BLACK} Laaste diens: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Vermeeder diensinterval met 10 dae. Ctrl+klik om interval met 5 dae te vermeerder STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Verminder diensinterval met 10. Ctrl+klik om interval met 5 dae te verminder @@ -3855,8 +3905,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(wag vir {STRIN STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(reis vir {STRING}, nie volgens tydrooster nie) STR_TIMETABLE_STAY_FOR :en bly vir {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :en reis vir {STRING} -STR_TIMETABLE_DAYS :{COMMA} da{P g e} -STR_TIMETABLE_TICKS :{COMMA} tick{P "" e} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}da{P g e} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tik{P "" ke} STR_TIMETABLE_TOTAL_TIME :{BLACK}Die rooster sal {STRING} neem om te voltooi STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Die rooster sal te minste {STRING} vat om te voltooi (nie alles gerooster nie) @@ -3954,7 +4004,7 @@ STR_AI_CONFIG_CONFIGURE :{BLACK}Konfigur STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Konfigureer die parameters van skrif # Available AIs window -STR_AI_LIST_CAPTION :{WHITE}Beskikbaar {STRING} +STR_AI_LIST_CAPTION :{WHITE}Beskikbare {STRING} STR_AI_LIST_CAPTION_AI :AIs STR_AI_LIST_CAPTION_GAMESCRIPT :Speletjie Skrifte STR_AI_LIST_TOOLTIP :{BLACK}Klik om 'n skrip te kies @@ -4014,7 +4064,7 @@ STR_MESSAGE_ESTIMATED_COST :{WHITE}Beraamde STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Beraamde Inkomste: {CURRENCY_LONG} # Saveload messages -STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Spaar nog in vorder, {}wag asb tot dit klaar is! +STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Stoor van speletjie is nog besig, {}wag asb tot dit klaar is! STR_ERROR_AUTOSAVE_FAILED :{WHITE}Outostoor het misluk STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Kan nie skyf lees nie STR_ERROR_GAME_SAVE_FAILED :{WHITE}Speletjie Spaar Misluk{}{STRING} @@ -4094,6 +4144,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Uitgrawi STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... reeds op seevlak STR_ERROR_TOO_HIGH :{WHITE}... te hoog STR_ERROR_ALREADY_LEVELLED :{WHITE}... klaar gelyk +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Die brug bo hierdie een gaan te hoog wees as jy voortgaan # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Maatskappy naam kan nie verander word nie... @@ -4120,7 +4171,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... te n STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... te naby aan 'n ander dorp STR_ERROR_TOO_MANY_TOWNS :{WHITE}... te veel dorpe STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... daar is nie meer spasie oor op die kaart nie -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Die dorp gaan nie paaie bou nie. Gaan na Gevorderde Verstellings->Ekonomie->Dorpe om dit te verander +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE} Die dorp sal nie paaie bou nie. Jy kan dit verander deur die bou van paaie via Stellings-> Omgewings-> Dorpe te aktiveer STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Pad werke in verloop STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kan nie die dorp verwyder nie... {}'n Stasie of depot verwys na die dorp of die blok wat deur die dorp besit word kan nie verwyder word nie. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... daar is geen plek vir 'n standbeeld in die middel van die dorp @@ -4144,6 +4195,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... woud STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kan slegs bo sneeu-lyn gebou word STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kan slegs onder sneeu-lyn gebou word +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Daar was geen geskikte plek vir '{STRING}' nywerhede +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Verander die kaart generasie parameter om 'n beter kaart te kry + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kan nie treinstasie hier bou nie... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kan nie bus stasie hier bou nie... @@ -4280,6 +4334,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Moet eer STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kan nie in die selfde plek begin en eindig nie STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Brug hoofde is nie op die selfde vlak nie STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Brug is te laag vir die terrein +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Die brug is te hoog STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Begin en einde moet in lyn wees STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... albei brug eindes moet op land wees STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... brug te lank @@ -4566,7 +4621,7 @@ STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :'T.I.M.' (Elekt STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :'AsiaStar' (Elektries) STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PASSENGER_CAR :Passasierswa STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_MAIL_VAN :Pos Wa -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COAL_CAR :Kool Wa +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COAL_CAR :Steenkool Wa STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_OIL_TANKER :Olie Tenkwa STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_LIVESTOCK_VAN :Lewende Hawe Wa STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GOODS_VAN :Goedere Wa @@ -4628,7 +4683,7 @@ STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 'Chimaera' STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_WIZZOWOW_ROCKETEER :Wizzowow Rocketeer STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PASSENGER_CAR :Passasierswa STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_MAIL_VAN :Pos Wa -STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COAL_CAR :Kool Trok +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COAL_CAR :Steenkool Trok STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_OIL_TANKER :Olie Tenkwa STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_LIVESTOCK_VAN :Lewende Hawe Wa STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_GOODS_VAN :Goedere Wa @@ -4660,7 +4715,7 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_MKII_SUPERBUS :Foster MkII Sup STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKI_BUS :Ploddyphut MkI Bus STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKII_BUS :Ploddyphut MkII Bus STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKIII_BUS :Ploddyphut MkIII Bus -STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_COAL_TRUCK :Balogh Kool Trok +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_COAL_TRUCK :Balogh Steenkool Trok STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_COAL_TRUCK :Uhl Kool Trok STR_VEHICLE_NAME_ROAD_VEHICLE_DW_COAL_TRUCK :DW Kool Trok STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_MAIL_TRUCK :MPS Pos Trok @@ -4844,6 +4899,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (weggesteek) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4879,8 +4935,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt index 1d354563b1..5c55c860ee 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -199,12 +199,14 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}حصان STR_UNITS_POWER_METRIC :{COMMA}حصان STR_UNITS_POWER_SI :{COMMA}ك واط +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}ت STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}طن STR_UNITS_WEIGHT_SHORT_SI :{COMMA}كجم STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} طن STR_UNITS_WEIGHT_LONG_SI :{COMMA}كجم +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}غال STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}ل STR_UNITS_VOLUME_SHORT_SI :{COMMA}م3 @@ -231,13 +233,16 @@ STR_TOOLTIP_CLOSE_WINDOW :{BLACK}اغلا STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}عنوان الاطار- اسحب لتحريك الاطار STR_TOOLTIP_SHADE :{BLACK}نافذة الظل - تعرض العنوان فقط STR_TOOLTIP_DEBUG :{BLACK}اظهر معلومات صائد اخطاء الاضافات الجديدة. -STR_TOOLTIP_STICKY :{BLACK}خصص هذا الاطار بان يبقى مفتوح عند اغلاق كافة الاطارات +STR_TOOLTIP_STICKY :{BLACK}علم هذه النافذة كغير قابلة للإقفال باستخدام زر إغلاق كل النوافذ, اضغط مع Ctrl لجعل الأمر إفتراضيا STR_TOOLTIP_RESIZE :{BLACK}اضغط واسحب لتعديل حجم الاطار STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}تبديل حجم الاطار كبير / صغير STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}شريط العرض- فوق /تحت STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}عمود التحريك - يمين/يسار STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}هدم المباني و غيرها في مربع من الأرض. +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}افتراضي STR_BUTTON_CANCEL :{BLACK}الغاء @@ -346,7 +351,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :انهاء ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :إعدادات اللعبه -STR_SETTINGS_MENU_CONFIG_SETTINGS :اعدادات متقدمة STR_SETTINGS_MENU_SCRIPT_SETTINGS :الذكاء الصناعي/ اعدادات اللعبة STR_SETTINGS_MENU_NEWGRF_SETTINGS :إعدادات اﻹضافات STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :خيارات الشفافية @@ -808,6 +812,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} لديها امر غير صالح STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} لديها امر مكرر STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} لديها محطة غير صالحة في القائمة +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} لدبها ضمن الطلبات مطارا قصير المدرج STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} اصبحت قديمة STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} اصبحت قديمة جدا @@ -883,10 +888,6 @@ STR_GAME_OPTIONS_CURRENCY_EEK :كرونا اس STR_GAME_OPTIONS_CURRENCY_CUSTOM :مخصص ... ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}العربات البرية STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}اختار الجانب الذي تسير فيه المركبات STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :القيادة على اليسار @@ -940,6 +941,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}دقة STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}اختر دقة الشاشة STR_GAME_OPTIONS_RESOLUTION_OTHER :اخرى + + STR_GAME_OPTIONS_BASE_GRF :{BLACK} الواجهة الرسومية الاساسية STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK} اختر مجموعة الواجهة الرسومية STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} ملف مفقود او غير صالح @@ -954,6 +957,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}اختر STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} ملف غير صالح{P ""} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}معلومات اضافية عن الموسيقى الاساسية +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}فشل في استرداد قائمة الدقة المدعومة STR_ERROR_FULLSCREEN_FAILED :{WHITE}فشل تشغيل نمط الشاشة الكاملة # Custom currency window @@ -1039,11 +1043,12 @@ STR_CITY_APPROVAL_HOSTILE :معاد STR_WARNING_NO_SUITABLE_AI :{WHITE}لايوجد ذكاء اصطناعي متاح ...{}تستطيع تجميل العديد من الذكاء الاصطناعي عن طريق اللانترنت -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}إعدادات متقدمه +# Settings tree window STR_CONFIG_SETTING_EXPAND_ALL :مدد الكل STR_CONFIG_SETTING_COLLAPSE_ALL :إسحب الكل +STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK} فئة: +STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}نوع: STR_CONFIG_SETTING_RESTRICT_BASIC :اﻹعدادات الاساسيه STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}احصر القائمة على انواع اعدادات محددة @@ -1053,6 +1058,8 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :اعدادات STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :اعدادات اللعبة (مخزن في المحفوظات, يؤثر على اللعبة الحالية فقط) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :اعدادات الشركة (مخزن في المحفوظات, يؤثر على الالعاب الجديدة فقط) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :اعدادات الشركة (مخزن في المحفوظات: يؤثر على الشركة الحالية فقط) +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}عرض جميع النتائج بالنسبة للإعداد {}{SILVER} الفئة {BLACK} إلى {WHITE}{STRING} {BLACK}و{SILVER}نوع {BLACK} إلى{WHITE} جميع انواع الإعدادات +STR_CONFIG_SETTINGS_NONE :{WHITE} - بدون - STR_CONFIG_SETTING_OFF :قفل STR_CONFIG_SETTING_ON :فتح @@ -1121,19 +1128,34 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :التجديد STR_CONFIG_SETTING_POPULATION_IN_LABEL :أعرض عدد السكان مع الاسم على العلامة: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :سمك الخطوط في العرض: {STRING} +STR_CONFIG_SETTING_LANDSCAPE :الارض: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR :مولد الأرض: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :المكون الاصلي يعتمد على قواعد الجرفكس,ويشكل اراض ثابته,مكوون تيراجنسس يعتمد على المكون الأساسي مع متحكمات اسلس STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :الأصلي STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :مرتفعات منزلقة +STR_CONFIG_SETTING_TERRAIN_TYPE :نوع الارض: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(TerraGenesis only) مستوى الهضبات في الارض +STR_CONFIG_SETTING_INDUSTRY_DENSITY :الكثافة الصناعية: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :إختر مقدار الصناعات التي يجب تكوينها وعلى اي مستوى يجب ان تكون خلال اللعبة STR_CONFIG_SETTING_SNOWLINE_HEIGHT :ارتفاع خط الثلج: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :خشونة التضاريس (سفر التكوين فقط ) :({STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :تحكم على اي ارتفاع يبدأ نزول الثلج في المناطق القطبية,تؤثر الثلوج على مستوى تطور القطاع الصناعي ونمو المدن +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :خشونة التضاريس (صفر التكوين فقط ) :({STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only)إختر تكرار الهضبات: الاراض المستويه تحتوي على البضع منها,هضبات موزعه عرضيا اكثر,الاراض الوعرة تحتوي الكثير من الهضاب,التي من الممكن ان تكون متكررة STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :ناعم جدا STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :ناعم STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :خشن STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :خشن جدا +STR_CONFIG_SETTING_VARIETY :توزيع منوع: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(TerraGenesis only)التحكم بالخريطة هل تحتوي علىجبال ومناطق مسطحه, لأن هذا الإعداد يجعل الخارطة مستوية, هنالك إعدادات أخرى يجب ان تغير إلى الجبال +STR_CONFIG_SETTING_RIVER_AMOUNT :حجم النهر: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :اختر عدد الأنهر لتكوينها STR_CONFIG_SETTING_TREE_PLACER :طريقة وضع الاشجار: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :إختر توزيع الشجر على الخريطة: 'Original' تبعثر الشجر عشوائيا. 'Improved' زرعهم في مجموعات STR_CONFIG_SETTING_TREE_PLACER_NONE :بدون STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :الأصلي STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :المحسن +STR_CONFIG_SETTING_ROAD_SIDE :السيارات: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :إختر جهة القيادة STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :اتجاة خريطة المرتفعات: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :عكس عقارب الساعة STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :مع عقارب الساعة @@ -1168,6 +1190,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :عدم استخ STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :تصفح بالزر الايسر: {STRING} +STR_CONFIG_SETTING_AUTOSAVE :حفظ تلقائي : {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :اختر الوقت بين كل عملية حفظ اتوماتيكية STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :استخدم {STRING} نمط التاريخ لاسم اللعبة المحفوظة STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :طويل - 31 ديسمبر 2008 @@ -1211,10 +1235,10 @@ STR_CONFIG_SETTING_SOUND_AMBIENT :مؤثرات: { STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :شغل مؤثرات صوتية في المناظر و المصانع و المدن STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :عطل ادوات البناء عند عدم وجود عربات متاحة لها: {STRING} -STR_CONFIG_SETTING_MAX_TRAINS :الحد الأعلى لعدد القطارات لكل لاعب: {STRING} -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :الحد الأعلى لعدد العربات لكل لاعب: {STRING} -STR_CONFIG_SETTING_MAX_AIRCRAFT :الحد الأعلى لعدد الطائرات لكل لاعب: {STRING} -STR_CONFIG_SETTING_MAX_SHIPS :الحد الأعلى لعدد السفن لكل لاعب: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS :الحد الأعلى لعدد القطارات لكل شركة: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :الحد الأعلى لعدد العربات لكل شركة: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT :الحد الأعلى لعدد الطائرات لكل شركة: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS :الحد الأعلى لعدد السفن لكل شركة: {STRING} STR_CONFIG_SETTING_AI_BUILDS_TRAINS :حظر القطارات على الحاسوب: {STRING} STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :حظر العربات على الكمبيوتر: {STRING} @@ -1316,13 +1340,26 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :مضاعف ال +STR_CONFIG_SETTING_GRAPHICS :رسوميات {ORANGE} STR_CONFIG_SETTING_SOUND :{ORANGE}الصوت STR_CONFIG_SETTING_INTERFACE :{ORANGE}النظام البيني +STR_CONFIG_SETTING_INTERFACE_GENERAL :عموم{ORANGE} +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :مجالات رؤية {ORANGE} STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}البناء +STR_CONFIG_SETTING_ADVISORS :{ORANGE}أخبار\ مستشارون +STR_CONFIG_SETTING_COMPANY :شركة{ORANGE} +STR_CONFIG_SETTING_ACCOUNTING :حسابات{ORANGE} STR_CONFIG_SETTING_VEHICLES :{ORANGE}المركبات +STR_CONFIG_SETTING_VEHICLES_PHYSICS :فيزياء{ORANGE} STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE} المسارات +STR_CONFIG_SETTING_LIMITATIONS :حدود {ORANGE} +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE} كوارث\حوادث +STR_CONFIG_SETTING_GENWORLD :تكوين عالم {ORANGE} +STR_CONFIG_SETTING_ENVIRONMENT :بيئة {ORANGE} +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :سلطات {ORANGE} STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE} مدن STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE} مصانع +STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :توزيع البضائع{ORANGE} STR_CONFIG_SETTING_AI :{ORANGE}المتنافسين STR_CONFIG_SETTING_AI_NPC :{ORANGE} لاعبين الحاسوب @@ -1363,7 +1400,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}لعب STR_INTRO_GAME_OPTIONS :{BLACK}إعدادات اللعبه STR_INTRO_HIGHSCORE :{BLACK}قائمه المتفوقين -STR_INTRO_ADVANCED_SETTINGS :{BLACK}الاعدادات المتقدمة STR_INTRO_NEWGRF_SETTINGS :{BLACK} اعدادات NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK} إبحث عن المحتوى عبر الشبكه العنكبوتيه STR_INTRO_SCRIPT_SETTINGS :{BLACK}إعدادات الذكاء الصناعى @@ -1382,7 +1418,6 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}اختي STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}اختيار نمط الألعاب STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}عرض خيارات اللعبة -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}عرض الاعدادات المتقدمة STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}عرض إعدادات اﻹضافات STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK} ابحث عن محتوى جديد او تحديث STR_INTRO_TOOLTIP_QUIT :{BLACK}اغلاق'OpenTTD' @@ -1584,7 +1619,7 @@ STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}ضع ك STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}احم لعبتك برقم سري حتى لا تصبح لعبتك مفتوحة للجميع STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM}عميل -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}اقصى عدد عملاء: +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}اقصى عدد للعملاء: STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}أختر أقصى عدد للعملاء STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM}شركة STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}أقصى عدد شركات: @@ -2178,6 +2213,7 @@ STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}الشحنة المقبولة: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA} /8 {STRING}) STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}حدود سرعة سكة الحديد: {LTBLUE}{VELOCITY} +STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}حدود سرعه الطريق: {LTBLUE}{VELOCITY} # Description of land area of different tiles STR_LAI_CLEAR_DESCRIPTION_ROCKS :صخور @@ -2274,7 +2310,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :ارض مملو STR_ABOUT_OPENTTD :{WHITE}حول النسخة المفتوحة STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}الحقوق الاصلية {COPYRIGHT} كريس سوير 1995 , جميع الحقوق محفوظة STR_ABOUT_VERSION :{BLACK}النسخة المفتوحة رقم {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}النسخة المفتوحة {COPYRIGHT}2002-2014 فريق النسخة المفتوحة +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}النسخة المفتوحة {COPYRIGHT}2002-2015 فريق النسخة المفتوحة # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}حفظ اللعبة @@ -2293,6 +2329,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}حفظ STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}احفظ اللعبة الحالية، بواسطة الاسم المختار STR_SAVELOAD_LOAD_BUTTON :{BLACK}تحميل STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}تحميل اللعبة المختارة +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK} حمل خارطة التضاريس STR_SAVELOAD_DETAIL_CAPTION :{BLACK}تفاصيل اللعبة STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}لا توجد معلومات متاحة STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2389,6 +2426,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}تحري STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}حرك الملف المختار الى الأعلى STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}تحريك للأسفل STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}حرك الملف المختار الى الاسفل في القائمة +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}ترقية +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK} ترقية ملفات NewGRF التي لديك نسخه جديده منها STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}قائمة ملفات NewGRF المركبة. اضغط على الملف لتغييرة. STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}اضبط الاعدادات @@ -2413,6 +2452,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}معطل STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}متعارض مع هذا اللإصدار من Openttd # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{BLACK}حفظ الإعداد المسبق +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}لائحة الإعدادات المسبقة. اختر واحدة لنسخها للإسم المحفوظ بالإسفل +STR_SAVE_PRESET_TITLE :{BLACK}أدخل اسم للإعداد المسبق +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}الإسم المختار لحفظ الإعداد المسبق +STR_SAVE_PRESET_CANCEL :{BLACK}إلغاء +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}لا تغير الإعداد المسبق +STR_SAVE_PRESET_SAVE :{BLACK}إحفظ +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK} احفظ الإعدادات للإسم المختار حاليا # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}غير خصائص الاضافات الجديدة @@ -2444,7 +2491,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}العف STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}نابع للعفريتة الطبيعية التالية، تجاوز اي عفريتة موقوفة/ مصبوغة/مخطوطة و انهي في البداية. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}عرض العفريتة المختارة حاليا. يتم تجاهل الموائمة عند رسم هذا العفريت. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}حرك العفريتة في الجوار، غير الاحداثيات س ، ص. -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}احداث س: {NUM}، احداث ص: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}اختر عفريتة STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}اختر عفريتة من اي مكان في الشاشة. @@ -2507,6 +2553,7 @@ STR_NEWGRF_INVALID_ENGINE :<موديل ا STR_NEWGRF_INVALID_INDUSTRYTYPE :<المصنع غير صالح> # Placeholders for other invalid stuff, e.g. vehicles that have gone (Game Script). +STR_INVALID_VEHICLE :<مركبه غير صالحه> # NewGRF scanning window STR_NEWGRF_SCAN_CAPTION :{WHITE}بحث اضافات جديدة @@ -2597,7 +2644,8 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :معلومات STR_GOAL_QUESTION_CAPTION_WARNING :تحذير STR_GOAL_QUESTION_CAPTION_ERROR :خطا -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}العروض @@ -2821,6 +2869,8 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}أحذف STR_GROUP_RENAME_TOOLTIP :{BLACK}أعد تسمية المجموعة المختارة STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}اضغط لحماية المجموعة من التغيير الكلي للعربات +STR_QUERY_GROUP_DELETE_CAPTION :حذف المجموعه{WHITE} +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}هل انت واثق من حذف هذه المجموعه مع كل أحفادها STR_GROUP_ADD_SHARED_VEHICLE :اضافة عربات مشتركة STR_GROUP_REMOVE_ALL_VEHICLES :أزل جميع المركبات @@ -2883,6 +2933,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK} اعا STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}اعادة تسمية نوع السفينة STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}اعادة تسمية نوع الطائرة + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}اعادة تسمية عربات القطار STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}اعادة تسمية العربة STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}اعادة تسمية نوع السفينة @@ -2985,6 +3038,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :مركبات STR_REPLACE_VEHICLE_SHIP :سفن STR_REPLACE_VEHICLE_AIRCRAFT :طائرات + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK} اختر نوع المحرك لاستبدالة STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK} اختر نوع المحرك المراد إحلاله محل المحرك المختار في القائمة اليسرى @@ -3324,9 +3378,11 @@ STR_TIMETABLE_TOOLTIP :{BLACK}جدول STR_TIMETABLE_NO_TRAVEL :لا رحيل STR_TIMETABLE_NOT_TIMETABLEABLE :المغادرة (ذاتي: بواسطة الامر اليدوي التالي) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :مسافر (غير مجدوله) -STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :سافر بمعدل {2:VELOCITY} (بدون جدوله) +STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :سافر(بدون جدول زمني) مع تقريبا {2:VELOCITY} STR_TIMETABLE_TRAVEL_FOR :مسافر لـ {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :سافر لي {STRING} بمعدل {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :سافر(إلى {STRING}, بدون جدول زمني) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :سافر (إلى {STRING}, بدون الجدول الزمني) مع تقريبا {VELOCITY} STR_TIMETABLE_STAY_FOR :ويبقى لـ {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :ويسافر لـ {STRING} STR_TIMETABLE_DAYS :{COMMA}يوم @@ -3587,6 +3643,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... يم STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}يمكن بنائة فوق خط الثلج فقط STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}يمكن بنائة تحت خط الثلج فقط + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}لا يمكن بناء محطة سكة حديد هنا ... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}تعذر بناء محطه الحافلات... @@ -3749,6 +3806,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}هذه STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}لايمكن إنشاء مجموعة STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}لايمكن حذف المجموعة STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}لايمكن إعادة تسمية المجموعة +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}تعذر ربط المجموعه الرئيسية STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}لايمكن إزالة جميع المركبات من هذه المجموعة STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}لا يمكن اضافة المركبة للمجموعة ... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}لا يمكن اضافة مركبات مشتركة للمجموعة ... @@ -4190,7 +4248,7 @@ STR_VEHICLE_NAME_SHIP_SHIVERSHAKE_PASSENGER_FERRY :شيفرشيك STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :ناقلة ياتي STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :ناقلة باكويل STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :ناقلة مايتي -STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :ناقلة بور +STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Powernaut سفينة شحن STR_VEHICLE_NAME_AIRCRAFT_SAMPSON_U52 :سامسون 52 STR_VEHICLE_NAME_AIRCRAFT_COLEMAN_COUNT :كولمان كونت STR_VEHICLE_NAME_AIRCRAFT_FFP_DART :سهم اف اف بي @@ -4318,8 +4376,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/basque.txt b/src/lang/basque.txt index 9ae41e9daa..e6aa2047da 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Edari Burbuilat # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} bidaiari +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}bidaiari{P "" ak} STR_QUANTITY_COAL :{WEIGHT_LONG} ikatz -STR_QUANTITY_MAIL :{COMMA} posta zaku +STR_QUANTITY_MAIL :{COMMA}{NBSP}posta zaku STR_QUANTITY_OIL :{VOLUME_LONG} petroleo -STR_QUANTITY_LIVESTOCK :{COMMA} abere buru -STR_QUANTITY_GOODS :{COMMA} merkantzia kaxa +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}abere buru +STR_QUANTITY_GOODS :{COMMA}{NBSP}merkantzia kaxa STR_QUANTITY_GRAIN :{WEIGHT_LONG} garau STR_QUANTITY_WOOD :{WEIGHT_LONG} egur STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} burdin mea STR_QUANTITY_STEEL :{WEIGHT_LONG} altzairu -STR_QUANTITY_VALUABLES :{COMMA} baliozko objektu zaku +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}baliozko objektu zaku STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} kobre mea STR_QUANTITY_MAIZE :{WEIGHT_LONG} arto STR_QUANTITY_FRUIT :{WEIGHT_LONG} fruta -STR_QUANTITY_DIAMONDS :{COMMA} diamante zaku +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}diamante zaku STR_QUANTITY_FOOD :{WEIGHT_LONG} janari STR_QUANTITY_PAPER :{WEIGHT_LONG} paper -STR_QUANTITY_GOLD :{COMMA} urre zaku +STR_QUANTITY_GOLD :{COMMA}{NBSP}urre zaku STR_QUANTITY_WATER :{VOLUME_LONG} urarena STR_QUANTITY_WHEAT :{WEIGHT_LONG} gari STR_QUANTITY_RUBBER :{VOLUME_LONG} gomarena STR_QUANTITY_SUGAR :{WEIGHT_LONG} azukre -STR_QUANTITY_TOYS :{COMMA} jostailu -STR_QUANTITY_SWEETS :{COMMA} gozoki zaku +STR_QUANTITY_TOYS :{COMMA}{NBSP}jostailu +STR_QUANTITY_SWEETS :{COMMA}{NBSP}gozoki zaku STR_QUANTITY_COLA :{VOLUME_LONG} kola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} kotoi azukre STR_QUANTITY_BUBBLES :{COMMA} burbuil @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}EZ STR_ABBREV_ALL :{TINY_FONT}DEN # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} bidaiari -STR_BAGS :{COMMA} zaku -STR_TONS :{COMMA} tona -STR_LITERS :{COMMA} litro -STR_ITEMS :{COMMA} elementu -STR_CRATES :{COMMA} kaxa +STR_PASSENGERS :{COMMA}{NBSP}bidaiari{P "" ak} +STR_BAGS :{COMMA}{NBSP}zaku{P "" ak} +STR_TONS :{COMMA}{NBSP}tona{P "" k} +STR_LITERS :{COMMA}{NBSP}litro{P "" ak} +STR_ITEMS :{COMMA}{NBSP}objektu{P "" ak} +STR_CRATES :{COMMA}{NBSP}kaxa{P "" k} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Urdin Iluna @@ -191,35 +191,35 @@ STR_COLOUR_GREY :Grisa STR_COLOUR_WHITE :Zuria # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tona{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tona -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tona{P "" k} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tona{P "" k} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}galoi -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galoi{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litro -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galoi{P "" ak} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" ak} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Lokarri iragazkia: @@ -245,6 +245,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra mu STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra mugitu - zerrendan ezkerra/eskuinera mugitzeko STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Eraikinak etab. edo lur karratu bat eraistea. Ctrl area diagonalki aukeratzen du. Mayus eraikinaren kostu estimatua erakusten du. +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Lehenetsia STR_BUTTON_CANCEL :{BLACK}Ezeztatu @@ -288,10 +291,10 @@ STR_SORT_BY_ENGINE_ID :MotoreID (orden STR_SORT_BY_COST :Kostua STR_SORT_BY_POWER :Potentzia STR_SORT_BY_TRACTIVE_EFFORT :Trakzio indarra -STR_SORT_BY_INTRO_DATE :Introdukzio Data -STR_SORT_BY_RUNNING_COST :Mantenimendu kosteak -STR_SORT_BY_POWER_VS_RUNNING_COST :Potentzia/Mantenimendu kosteak -STR_SORT_BY_CARGO_CAPACITY :Zama Edukiera +STR_SORT_BY_INTRO_DATE :Sarrera data +STR_SORT_BY_RUNNING_COST :Funtzionamendu kostuak +STR_SORT_BY_POWER_VS_RUNNING_COST :Potentzia/Funtzionamendu kostuak +STR_SORT_BY_CARGO_CAPACITY :Zama edukiera STR_SORT_BY_RANGE :Irismena STR_SORT_BY_POPULATION :Biztanleria STR_SORT_BY_RATING :Balorazioa @@ -354,7 +357,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :Irten ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Jokoaren aukerak -STR_SETTINGS_MENU_CONFIG_SETTINGS :Ezarpen aurreratuak STR_SETTINGS_MENU_SCRIPT_SETTINGS :IA/Jokoaren scriptaren ezaugarriak STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF ezarpenak STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparentzia ezarpenak @@ -902,10 +904,6 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :Hego Afrikako R STR_GAME_OPTIONS_CURRENCY_CUSTOM :Pertsonalizatua... ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Errepideko garraioak STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Aukeratu ibilgailuen gidatzeko norabidea STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Ezkerretik gidatu @@ -959,6 +957,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Pantaila STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Pantailaren resulozioa aukeratu STR_GAME_OPTIONS_RESOLUTION_OTHER :besteak + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grafiko basea markatu STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Aukeratu erabili beharreko grafiko paketea STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} galdutako/hautsitako artxiboa{P "" k} @@ -1058,8 +1058,7 @@ STR_CITY_APPROVAL_HOSTILE :Kontrakoa STR_WARNING_NO_SUITABLE_AI :{WHITE}Ez dago IA egokirik aukeratzeko..{}IA asko jaitsi ditzakezu 'Online edukiera' sistemaren bidez -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Konfigurazio aurreratuak +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Lokarri iragazkia: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Guztia haunditu STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Guztia kolapsatu @@ -1075,9 +1074,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Konpainia ezarp STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategoria: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Mota: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Beheko zerrenda laburtu bakarrik aldatutako ezarpenak erakutsiz -STR_CONFIG_SETTING_RESTRICT_BASIC :Oinarrizko ezarpenak -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Ezarpen aurreratuak -STR_CONFIG_SETTING_RESTRICT_ALL :Adituentzako ezarpenak / Ezarpen guztiak +STR_CONFIG_SETTING_RESTRICT_BASIC :Oinarrizkoa (ezarpen garrantzitsuak bakarrik erakutsi) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Aurreratua (ezarpen gehienak erakutsi) +STR_CONFIG_SETTING_RESTRICT_ALL :Aditua (ezarpen guztiak erakutsi, arraroak barne) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Ezarpenak lehenetsitakoen balio ezberdinarekin STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Balio ezberdinak dituzten ezarpenak zure joko berriaren ezarpenekin alderatuta @@ -1246,10 +1245,10 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Grafikoen marre STR_CONFIG_SETTING_LAND_GENERATOR :Lur sortzailea: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Jatorrizkoa STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Petroleo Findegitik maparen ertzera dagoen gehienezko distantzia: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Petroleo findegietatik maparen ertzera dagoen gehienezko distantzia: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Petroleo findegiak bakarrik maparen ertzatik hurbil eraiki daitezke, kostan irla mapetan STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Elur garaiera: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Paisaiaren malkartasun maila (TerraGenesis erabiltzean soilik) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Eremuaren malkartasun maila: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Oso Leuna STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Leuna STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Zakarra @@ -1385,7 +1384,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Mantenimendurak STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Aukeratu ibilgailuen mantenimendua azken zerbitzutik pasatutako denboragatik aktibatzea edo fidegarritasun ehunekoaren gutxiengo jakin batera iristeagatik aktibatzea STR_CONFIG_SETTING_SERVINT_TRAINS :Trenen mantenimendurako lehenetsitako denbora tarteak: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Ezarri tren berrientzako lehenetsiko diren mantenimendu denbora tarteak, ez bada ezartzen denbora tarte esplizituak ezarriko dira -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} egun/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}egun{P 0 "" ak}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Desgaitua STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Errepide ibilgailuen mantenimendurako lehenetsitako denbora tarteak: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Ezarri errepide ibilgailu berrientzako lehenetsiko diren mantenimendu denbora tarteak, ez bada ezartzen denbora tarte esplizituak ezarriko dira @@ -1544,7 +1543,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Kokapena STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafikoak -STR_CONFIG_SETTING_SOUND :{ORANGE}Soinu efektuak +STR_CONFIG_SETTING_SOUND :{ORANGE}Soinua STR_CONFIG_SETTING_INTERFACE :{ORANGE}Interfazea STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Orokorra STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Eraikuntza @@ -1559,7 +1558,7 @@ STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Ingurug STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Agintariak STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Herriak STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industriak -STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Zama Banaketa +STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Zama banaketa STR_CONFIG_SETTING_AI :{ORANGE}Lehiakideak STR_CONFIG_SETTING_AI_NPC :{ORANGE}Ordenagailu jokalariak @@ -1609,7 +1608,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multijok STR_INTRO_GAME_OPTIONS :{BLACK}Jokoaren Aukerak STR_INTRO_HIGHSCORE :{BLACK}Puntuazio taula -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Ezarpen Aurreratuak STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-ren Ezarpenak STR_INTRO_ONLINE_CONTENT :{BLACK}Edukiak Online Kontsultatu STR_INTRO_SCRIPT_SETTINGS :{BLACK}IA/Joko Scripten Ezarpenak @@ -1629,7 +1627,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Aukeratu STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Jokoaren aukerak erakutsi STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Puntuazioen taula erakutsi -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Ezarpen aurreratuak erakutsi STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF ezarpenak erakutsi STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Bilatu eduki berria eta eguneratua deskargatzeko STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}IA/Joko Scripten Ezarpenak @@ -2218,7 +2215,7 @@ STR_STATION_CLASS_WAYP :Bidepuntuak # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Seinale aukerak STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK} Blokeo seinalea (mekanikoa){}Oinarrizkoena den seinale mota, bloke berdinean tren bakarra egotea ahalbidetzen duena -STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Sarrera seinalea (mekanikoa){}Berde egongo da hurrengo sekzioan irteera seinale bat edo bat baino gehiago berde badago. Bestela gorria egongo da +STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Sarrera Seinalea (semaforoa){}Berde egongo da hurrengo sekzioan irteera seinale bat edo bat baino gehiago berde badago. Bestela gorria egongo da STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Irteera seinalea (mekanikoa){} Blokeo seinalea bezala funtzionatzen du, baina beharrezkoa da sarrera seinaleak eta konbo aurre-seinaleak kolore egokia edukitzea STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Konbo seinalea (semaforoa){}Sarrera seinale eta irteera seinale bezala funtzionatzen du. Honek aurre-seinale "zuhaitz" handiak eraikitzea ahalbidetzen du STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Bide seinalea (mekanikoa){}Bide seinalea bloke batean tren bat baino gehiago egotea ahalbidetzen du, trenak gelditzeko bide egokia erreserbatu badezake. Oinarrizko bide seinaleak atzekaldetik pasa daitezke @@ -2551,7 +2548,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Konpainia jabe STR_ABOUT_OPENTTD :{WHITE}OpenTTD-ri buruz STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD bertsioa {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Gordetako jokoa @@ -2724,7 +2721,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Aldez au STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Aurreko grafiko arruntera joan, pseudo/birkoloretu/grafiko tipoak desgaituz STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Orain aukeratutako grafikoaren aurkezpena. Alineazioa ez da kontua hartzen grafiko hau egiterakoan STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}"Sprit"-a mugitu inguruan, X eta Y-ren desplazamenduak aldatuz -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X desplazamendua {NUM}, Y desplazamendua: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}"Sprit"-a aukeratu STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pantaillako edozein lekutatik aukeratu "sprite" bat @@ -2833,8 +2829,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} entregatua STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (beharrezkoa) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (entregatua) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Herria {ORANGE}{COMMA}{BLACK} egunero hazten da -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Herria {ORANGE}{COMMA}{BLACK} egunero hazten da (sortutako eraikuntzak) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Herria {ORANGE}{COMMA}{BLACK}{NBSP}egunetan hazten da +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Herria {ORANGE}{COMMA}{BLACK}{NBSP}egunero hazten da (sortutako eraikuntzak) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Herria {RED}ez da {BLACK} hazten ari STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Gehienezko soinua herrian: {ORANGE}{COMMA}{BLACK} gehienez: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Lehio nagusia herriaren kokapenean zentratzeko. Ktrl+Klik ikuspegi lehio berria irekiko du @@ -2893,7 +2889,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informazioa STR_GOAL_QUESTION_CAPTION_WARNING :Kontuz STR_GOAL_QUESTION_CAPTION_ERROR :Akats -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Ezeztatu STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :EZ @@ -2912,6 +2908,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restart STR_GOAL_QUESTION_BUTTON_POSTPONE :atzeratzeko STR_GOAL_QUESTION_BUTTON_SURRENDER :errendizioaren STR_GOAL_QUESTION_BUTTON_CLOSE :Itxi +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidioak @@ -2945,7 +2942,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Ez dago # Station view window STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG} -STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} {STATION}tik garraiatua) +STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} {STATION}-(e)tik garraiatua) STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Onartu STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Onartzen diren zamen zerrenda @@ -3033,7 +3030,7 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN STR_FINANCES_TOTAL_CAPTION :{WHITE}Guztira: STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Balantzea STR_FINANCES_LOAN_TITLE :{WHITE}Mailegua -STR_FINANCES_MAX_LOAN :{WHITE}Gehienezko mailegua: {BLACK}{CURRENCY_LONG} +STR_FINANCES_MAX_LOAN :{WHITE}Gehienezko Mailegua: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}{CURRENCY_LONG} eskatu STR_FINANCES_BORROW_TOOLTIP :{BLACK}Mailegua handitu. Ktrl+Klik gehienezko mailegua eskatu @@ -3226,7 +3223,7 @@ STR_PURCHASE_INFO_ALL_BUT :Guztia {CARGO_L STR_PURCHASE_INFO_MAX_TE :{BLACK}Gehienezko trakzio indarra: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Irismena: {GOLD}{COMMA} lauki -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trenak aukeratzeko zerrenda - Klik xehetasunak ikusteko +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trenak aukeratzeko zerrenda - Klik xehetasunak ikusteko. Ctrl+Klik ibilgailu motaren ezkutapenaren artean aukeratzeko STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Errepide ibilbideak aukeratzeko zerrenda - Klik xehetasunak ikusteko STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Itsasontzi aukeratzeko zerrenda - Klik xehetasunak ikusteko STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Hegazkinak aukeratzeko zerrenda - Klik xehetasunak ikusteko @@ -3251,6 +3248,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Errepide STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Itsasontzia berrizendatu STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Hegazkina berrizendatu + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Tren ibilgailua berrizendatu STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Errepide ibilgailua berrizendatu STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Itasontzia berrizendatu @@ -3304,7 +3304,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Errepide STR_DEPOT_CLONE_SHIP :{BLACK}Itsasontzia klonatu STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Hegazkina klonatu -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Trena eta bagoiaren kopia erosiko du. Klikatu botoia eta gero gordailu barnean edo kanpoen dagoen tren batean klikatu. Ktrl+klik aginduak konpartitzeko. Shift+Klik gutxi gora behera kostea erakutsi +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Trena eta bagoi guztien kopia erosiko du. Klikatu botoia eta gero gordailu barnean edo kanpoen dagoen tren batean klikatu. Ctrl+klik aginduak konpartitzeko. Mayus+Klik batez besteko kostua erakusten du, erosi gabe STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Errepide ibilgauaren kopia erosiko du. Klikatu botoia eta gero gordailu barnean edo kanpoen dagoen ibilgailu batean klikatu. Ktrl+klik aginduak konpartitzeko. Shift+Klik gutxi gora behera kostea erakutsi STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Itsasontzi kopia erosiko du. Klikatu botoia eta gero gordailu barnean edo kanpoen dagoen itsasontzi batean klikatu. Ktrl+klik aginduak konpartitzeko. Shift+Klik gutxi gora behera kostea erakutsi STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Hegazkinaren kopia erosiko du. Klikatu botoia eta gero hangar barnean edo kanpoan dagoen hegazkin batean klikatu. Ktrl+klik aginduak konpartitzeko. Shift+Klik gutxi gora behera kostea erakutsi @@ -3355,6 +3355,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Errepide ibilga STR_REPLACE_VEHICLE_SHIP :Itsasontzia STR_REPLACE_VEHICLE_AIRCRAFT :Hegazkina + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Aukeratu aldatu beharreko motore mota STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK} Aukeratu motore mota zaharra ordezkatuko duen motore berria @@ -3479,7 +3480,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Edukiera STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transferentzia kredituak: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Mantenimendu tartea: {LTBLUE}{COMMA}days{BLACK} Azken mantenimendua: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Mantenimendu tartea: {LTBLUE}{COMMA}egun{BLACK} Azken mantenimendua: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Mantenimendu tartea: {LTBLUE}{COMMA}%{BLACK} Azken mantenimendua: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Mantenimendu tartea 10 puntutan igo. Ktrl+klik mantenimendu tartea 5 puntutan igo STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Mantenimendu tartea 10 puntutan gutxitu. Ktrl+klik mantenimendu tartea 5 puntutan gutxitu @@ -3671,7 +3672,7 @@ STR_ORDER_NO_UNLOAD_NO_LOAD :(Ez deskargatu STR_ORDER_AUTO_REFIT :(Automatikoki birmoldatu {STRING}-(e)ra) STR_ORDER_FULL_LOAD_REFIT :(Osorik kargatu eta automatikoki birmoldatu {STRING}-(e)ra) STR_ORDER_FULL_LOAD_ANY_REFIT :(Edozein zama osorik kargatu eta automatikoki birmoldatu {STRING}-(e)ra) -STR_ORDER_UNLOAD_REFIT :(Deskargatu eta karga artu automatikoki birmoldatuz {STRING}-(e)ra) +STR_ORDER_UNLOAD_REFIT :(Deskargatu eta karga hartu automatikoki birmoldatuz {STRING}-(e)ra) STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Deskargatu eta osorik kargatu automatikoki birmoldatuz {STRING}-(e)ra) STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Deskargatu eta edozein zama osorik kargatu arte itxaron automatikoki birmoldatuz {STRING}-(e)ra) STR_ORDER_TRANSFER_REFIT :(Transferitu eta kargatu automatikoki birmoldatuz {STRING}-(e)ra) @@ -3710,8 +3711,8 @@ STR_TIMETABLE_TRAVEL_FOR :{STRING} bidaia STR_TIMETABLE_TRAVEL_FOR_SPEED :{STRING}-ra bidaiatu gehienez {VELOCITY}ra STR_TIMETABLE_STAY_FOR :{STRING} gelditu STR_TIMETABLE_AND_TRAVEL_FOR :{STRING} bidaiatu -STR_TIMETABLE_DAYS :{COMMA} egun -STR_TIMETABLE_TICKS :{COMMA} tick +STR_TIMETABLE_DAYS :{COMMA}{NBSP}egun{P "" ak} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" ak} STR_TIMETABLE_TOTAL_TIME :{BLACK}Ordutegi honek {STRING} beharko du betetzeko STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Ordutegi honek gutxienez {STRING} beharko du (ez ordutegi guztiak) @@ -3997,6 +3998,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... Baso STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... bakarrik elur garaieratik gora eraiki daiteke STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... bakarrik elur garaieratik behera eraiki daiteke + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Ezin da tren gordailua hemen eraiki... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Ezin izan da autobus geltokia eraiki... @@ -4723,8 +4725,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt index 29ba6fa242..350fc95768 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -408,30 +408,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.pre :газіроў # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} пасажыр{P "" а аў} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}пасажыр{P "" а аў} STR_QUANTITY_COAL :{WEIGHT_LONG} вугалю -STR_QUANTITY_MAIL :{COMMA} мяш{P ок кi коў} пошты +STR_QUANTITY_MAIL :{COMMA}{NBSP}мяш{P ок кi коў} пошты STR_QUANTITY_OIL :{VOLUME_LONG} нафты -STR_QUANTITY_LIVESTOCK :{COMMA} гал{P ава авы оў} жывёлы -STR_QUANTITY_GOODS :{COMMA} скрын{P ка кi ак} тавараў +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}гал{P ава авы оў} жывёлы +STR_QUANTITY_GOODS :{COMMA}{NBSP}скрын{P ка кi ак} тавараў STR_QUANTITY_GRAIN :{WEIGHT_LONG} зерня STR_QUANTITY_WOOD :{WEIGHT_LONG} драўнiны STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} жалезнай руды STR_QUANTITY_STEEL :{WEIGHT_LONG} сталi -STR_QUANTITY_VALUABLES :{COMMA} мяш{P ок кi коў} каштоўнасьцяў +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}мяш{P ок кi коў} каштоўнасьцяў STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} меднай руды STR_QUANTITY_MAIZE :{WEIGHT_LONG} кукурузы STR_QUANTITY_FRUIT :{WEIGHT_LONG} садавiны -STR_QUANTITY_DIAMONDS :{COMMA} мяш{P ок кi коў} алмазаў +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}мяш{P ок кi коў} алмазаў STR_QUANTITY_FOOD :{WEIGHT_LONG} ежы STR_QUANTITY_PAPER :{WEIGHT_LONG} паперы -STR_QUANTITY_GOLD :{COMMA} мяш{P ок кi коў} золата +STR_QUANTITY_GOLD :{COMMA}{NBSP}мяш{P ок кi коў} золата STR_QUANTITY_WATER :{VOLUME_LONG} вады STR_QUANTITY_WHEAT :{WEIGHT_LONG} пшаніцы STR_QUANTITY_RUBBER :{VOLUME_LONG} каўчуку STR_QUANTITY_SUGAR :{WEIGHT_LONG} цукру -STR_QUANTITY_TOYS :{COMMA} цац{P ка кi ак} -STR_QUANTITY_SWEETS :{COMMA} скрын{P ка кi ак} цукерак +STR_QUANTITY_TOYS :{COMMA}{NBSP}цац{P ка кi ак} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}скрын{P ка кi ак} цукерак STR_QUANTITY_COLA :{VOLUME_LONG} колы STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} цукровай баўны STR_QUANTITY_BUBBLES :{COMMA} бурбал{P ка кi ак} @@ -478,12 +478,12 @@ STR_ABBREV_NONE :{TINY_FONT}НЯ STR_ABBREV_ALL :{TINY_FONT}Усё # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} пасажыр{P "" ы аў} -STR_BAGS :{COMMA} мя{P шок шкi шкоў} -STR_TONS :{COMMA} тон{P а ы ""} -STR_LITERS :{COMMA} лiтр{P "" ы аў} -STR_ITEMS :{COMMA} штук{P а i ""} -STR_CRATES :{COMMA} скрын{P я i яў} +STR_PASSENGERS :{COMMA}{NBSP}пасажыр{P "" ы аў} +STR_BAGS :{COMMA}{NBSP}мяш{P ок кi коў} +STR_TONS :{COMMA}{NBSP}тон{P а ы ""} +STR_LITERS :{COMMA}{NBSP}лiтр{P "" ы аў} +STR_ITEMS :{COMMA}{NBSP}штук{P а i ""} +STR_CRATES :{COMMA}{NBSP}скрын{P я i яў} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Цёмна-сiнi @@ -504,37 +504,37 @@ STR_COLOUR_GREY :Шэры STR_COLOUR_WHITE :Белы # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} мiл{P я i яў}/г -STR_UNITS_VELOCITY_METRIC :{COMMA} км/г -STR_UNITS_VELOCITY_SI :{COMMA} м/с +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}мiл{P я i яў}/г +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}км/г +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}м/с -STR_UNITS_POWER_IMPERIAL :{COMMA} к.с. -STR_UNITS_POWER_METRIC :{COMMA} к.с. -STR_UNITS_POWER_SI :{COMMA} кВт +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}к.с. +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}к.с. +STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA} т -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} т -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} кг +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} тон{P а ы ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} тон{P а ы ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} кг +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}тон{P а ы ""} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}тон{P а ы ""} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}кг -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA} гал. -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} л -STR_UNITS_VOLUME_SHORT_SI :{COMMA} м³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}гал. +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}л +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} галон{P "" а аў} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} лiтр{P "" ы аў} -STR_UNITS_VOLUME_LONG_SI :{COMMA} м³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галон{P "" а аў} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}лiтр{P "" ы аў} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}м³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} фунт{P "" а аў}-сілы -STR_UNITS_FORCE_METRIC :{COMMA} кгс -STR_UNITS_FORCE_SI :{COMMA} кН +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}фунт{P "" а аў}-сілы +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}кгс +STR_UNITS_FORCE_SI :{COMMA}{NBSP}кН -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} фут{P "" ы аў} -STR_UNITS_HEIGHT_METRIC :{COMMA} м -STR_UNITS_HEIGHT_SI :{COMMA} м +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фут{P "" ы аў} +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Фільтар: @@ -561,6 +561,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Прак STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Пракрутка налева/направа STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Поўная ачыстка прамавугольнага ўчастку зямлі. Ctrl — выбар вобласьці па дыяганалі. Пры націснутым Shift — ацэнка кошту ачысткі. +# 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}Калі гэта кнопка націснута, схаваныя мадэлi лакаматываў і вагонаў таксама будуць паказаны +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}Калі гэта кнопка націснута, схаваныя мадэлi паветраных суднаў таксама будуць паказаны + # Query window STR_BUTTON_DEFAULT :{BLACK}Па змоўчаньнi STR_BUTTON_CANCEL :{BLACK}Скасаваць @@ -674,7 +685,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Выхад ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Наладкі гульні -STR_SETTINGS_MENU_CONFIG_SETTINGS :Пашыраныя наладкі +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Наладкі STR_SETTINGS_MENU_SCRIPT_SETTINGS :Наладкі ШІ / скрыпту STR_SETTINGS_MENU_NEWGRF_SETTINGS :Наладкі NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Наладкі празрыстасьці @@ -1229,10 +1240,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Грузінс STR_GAME_OPTIONS_CURRENCY_IRR :Іранскі рыал (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Дарожны рух STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Па якім баку дарогі рухаецца аўтатранспарт STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Езьдзіць леваруч @@ -1286,6 +1293,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Выра STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Выбар вырашэньня экрана STR_GAME_OPTIONS_RESOLUTION_OTHER :Iншае +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Памер элементаў інтэрфейсу +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Выберыце памер элементаў інтэрфейсу + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Звычайны +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Падвоены +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Пачацвяроны + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Набор базавай ґрафікі STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Выбар базавага набору ґрафічных аб'ектаў STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} адсутнічаюч{P ы ых ых}/пашкоджан{P ы ых ых} файл{P "" ы аў} @@ -1379,6 +1393,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Вельмі п STR_TERRAIN_TYPE_FLAT :Раўнінная STR_TERRAIN_TYPE_HILLY :Узгорастая STR_TERRAIN_TYPE_MOUNTAINOUS :Гарыстая +STR_TERRAIN_TYPE_ALPINIST :Выключна горны STR_CITY_APPROVAL_PERMISSIVE :Дазваляючае STR_CITY_APPROVAL_TOLERANT :Памяркоўнае @@ -1386,8 +1401,8 @@ STR_CITY_APPROVAL_HOSTILE :Варожае STR_WARNING_NO_SUITABLE_AI :{WHITE}Модулі штучнага інтэлекту (ШІ/AI) адсутнічаюць.{}Іх можна спампаваць праз сістэму праверкі "анлайн-кантэнту". -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Пашыраныя наладкі +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Наладкі STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Фільтар: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Разгарнуць усё STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Згарнуць усё @@ -1403,9 +1418,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Наладкі STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Катэґорыя: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Тып: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Адлюстроўваць у спісе толькі наладкі, якія адпавядаюць абранай катэгорыі -STR_CONFIG_SETTING_RESTRICT_BASIC :Базавыя наладкі -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Пашыраныя наладкі -STR_CONFIG_SETTING_RESTRICT_ALL :Спэцыяльныя наладкі / усе наладкі +STR_CONFIG_SETTING_RESTRICT_BASIC :Асноўныя наладкі (толькі самыя важныя) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Пашыраныя наладкі (практычна ўсе) +STR_CONFIG_SETTING_RESTRICT_ALL :Спэцыяльныя наладкі (усе, уключаючы самыя незразумелыя) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Наладкі са значэньнямі, якія адрозьніваюцца ад значэньняў па змоўчаньні STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Наладкі са значэньнямі, якія адрозьніваюцца ад наладак новай гульні @@ -1460,6 +1475,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Пераклю STR_CONFIG_SETTING_CITY_APPROVAL :Стаўленьне гарадзкой рады да рэструктурызацыі навакольляў: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Выберыце ўзровень шуму й забруджваньня навакольнага асяроддзя кампаніямі, які ўплывае на іх рэйтынґ у гарадах і магчымасьць далейшага будаўніцтва каля гарадоў +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Максімальная вышыня: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Усталёўка максімальна дапушчальнай вышыні гор на мапе +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Немагчыма зьмяніць максімальную вышыню. На мапе ёсць горы вышэй гэтага значэньня. STR_CONFIG_SETTING_AUTOSLOPE :Дазволіць зьмену ляндшафту пад будынкамі, дарогамі й г. д. (аўтаспускі): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Дазволіць зьмену ляндшафту пад будынкамі й рэйкамi, не выдаляючы іx STR_CONFIG_SETTING_CATCHMENT :Зона пакрыцьця залежыць ад тыпу станцыі: {STRING} @@ -1488,6 +1506,8 @@ STR_CONFIG_SETTING_INFLATION :Уключыц STR_CONFIG_SETTING_INFLATION_HELPTEXT :Уключыць інфляцыю ў эканоміцы, калі кошты растуць нязначна хутчэй за выплаты STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Максымальная даўжыня мастоў: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Максымальная даўжыня мастоў, якія вы можаце пабудаваць +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Максімальная вышыня мастоў: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Максімальная дапушчальная вышыня мастоў STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Максымальная даўжыня тунэляў: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Максымальная даўжыня тунэляў, якія вы можаце пабудаваць STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Мэтад стварэньня сыравінных прадпрыемстваў: {STRING} @@ -1573,8 +1593,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Працягл STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Працялегласьць паказваньня паведамленьняў аб памылках у чырвоным вакне. Зазначце, што некаторыя (крытычныя) паведамленьні ня будуць аўтаматычна зьнікаць пасьля гэтага часу, але мусяць быць закрытымі уручную. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} сэкунд{P а ы аў} STR_CONFIG_SETTING_HOVER_DELAY :Паказваць падказкi: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Затрымка перад тым як паказаць падказку, калі мыш завісае над нейкім элемэнтам інтэрфэйсу. Як альтэрнатыва, падказкі могуць паказвацца адразу пасьля пстрычкі правай кнопкай мышшу. -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :пачакаўшы {COMMA} сэкунд{P у ы аў} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Затрымка паміж навядзеньнем паказальніка мышы на элемент інтэрфейсу і з'яўленьнем падказкі. Калі гэта значэнне роўна 0, падказкі з'яўляюцца па пстрычцы правай кнопкі мышы. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :пры навядзеньні паказальніка на {COMMA} мілісэкунд{P у ы аў} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :па правым кліку STR_CONFIG_SETTING_POPULATION_IN_LABEL :Паказваць колькасьць жыхароў горада ў назьве: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Паказваць у надпісах на мапе колькасьць жыхароў населеных пунктаў адразу пасьля іх назвы. @@ -1757,7 +1777,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Інтэрва STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Выбраць, ці залежыць абслугоўваньне транспарту ад даты апошняга абслугоўваньня або ад падзеньня надзейнасьці на пэўны адсотак ад максымальнай. STR_CONFIG_SETTING_SERVINT_TRAINS :Iнтэрвал абслугоўваньня для цягнiкоў: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Усталяваць міжсэрвісны інтэрвал для новых чыгуначных транспартных сродкаў, калі пэўны інтэрвал ня вызначаны для канкрэтнага цягніка. -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} д{P зень днi дзён}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}д{P зень днi дзён}/% STR_CONFIG_SETTING_SERVINT_DISABLED :адключана STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Iнтэрвал абслугоўваньня для аўтатранспарту: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Усталяваць міжсэрвісны інтэрвал для новага аўтатранспарту, калі пэўны інтэрвал ня вызначаны для канкрэтнай машыны. @@ -1897,9 +1917,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :нiводнае STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Першапачатковы множнік памеру населенага пункта: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Адносная колькасьць гарадоў у параўнаньні з мястэчкамі на пачатку гульні. -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Абнаўляць ґраф размеркаваньня раз у {STRING} д{P 0:2 зень ні зён} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Абнаўляць ґраф размеркаваньня раз у {STRING}{NBSP}д{P 0:2 зень ні зён} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Перыяд пераразьліку ґрафаў размеркаваньня. У кожным цыкле разьлічваецца не ґраф цалкам, а толькі адзін зь яго кампанэнтаў. Чым менш гэта значэньне, тым больш будзе нагрузка на працэсар. Чым больш значэньне, тым больш часу пройдзе перад пачаткам разьліку ґрафаў для новых маршрутаў. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Пералічваць ґраф разьмеркаваньня раз у {STRING} д{P 0:2 зень ні зён} +STR_CONFIG_SETTING_LINKGRAPH_TIME :Пералічваць ґраф разьмеркаваньня раз у {STRING}{NBSP}д{P 0:2 зень ні зён} STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Час, адведзены для пераразьліку кампанэнтаў ґрафа. Разьлік запускаецца асобным патокам і працягваецца на працягу паказанай колькасьці гульнявых дзён. Калі значэньне будзе надта малым, то, магчыма, разьлік не пасьпее завяршыцца, і гульня будзе чакаць завяршэньня (гэта прывядзе да затрымак). Пры вялікіх значэньнях ґрафы размеркаваньня будуць павольней абнаўляцца пры зьменах маршрутаў. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :уручную STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :несымэтрычнае @@ -1909,7 +1929,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :«Сымэтр STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Разьмеркаваньне пошты: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :«Сымэтрычнае» азначае, што прыкладна аднолькавая колькасьць пошты будзе накіроўвацца па прамым і зваротным маршрутам.{}«Несымэтрычнае» азначае, што аб'ёмы пошты ў любых кірунках не будуць залежаць адзін ад аднаго.{}«Уручную» — не выкарыстоўваць аўтаматычнае разьмеркаваньне для пошты. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Разьмеркаваньне каштоўных грузаў: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Каштоўныя грузы — гэта каштоўнасьці, алмазы й золата. Модулі NewGRF могуць зьмяніць вызначэньні грузаў.{}«Сымэтрычнае» азначае, што прыкладна аднолькавая колькасьць грузу будзе накіроўвацца па прамым і зваротным маршрутам.{}«Несымэтрычнае» азначае, што аб'ёмы грузаў у любых кірунках не будуць залежаць адзін ад аднаго.{}«Уручную» — не выкарыстоўваць аўтаматычнае разьмеркаваньне грузаў.{}На субарктычных мапах рэкамендуецца ўсталяваць несымэтрычнае ці ручное разьмеркаваньне, бо банкі не вяртаюць золата ў шахты. Ва ўмераным ці субтрапічным клімаце можна ўсталяваць сымэтрычнае разьмеркаваньне, бо банкі абменьваюцца каштоўнасьцямі паміж сабой. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Каштоўныя грузы - гэта каштоўнасьці, алмазы й золата. Модулі NewGRF могуць змяніць вызначэньні грузаў.{}«Сыметрычнае» азначае, што прыкладна аднолькавая колькасьць грузу будзе накіроўвацца па прамым і зваротным маршрутам.{}«Несыметрычнае» азначае, што аб'ёмы грузаў у любых кірунках ня будуць залежаць адзін ад аднаго.{}«Уручную» - не выкарыстоўваць аўтаматычнае размеркаваньне грузаў.{}На субарктычных мапах рэкамендуецца ўсталяваць несіметрычнае ці ручное разьмеркаваньне, бо банкі не вяртаюць золата ў шахты. Ва ўмераным ці субтрапічным клімаце можна ўсталяваць сіметрычнае разьмеркаваньне, бо банкі абменьваюцца каштоўнасьцямі паміж сабой. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Разьмеркаваньне іншых грузаў: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :«Несымэтрычнае» азначае, што выпадковыя аб'ёмы грузаў могуць быць адпраўлены ў любых кірунках.{}«Уручную» азначае, што ніякага аўтаматычнага разьмеркаваньня для гэтых грузаў ня будзе. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Дакладнасьць разьмеркаваньня: {STRING} @@ -1934,25 +1954,25 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :мэтрычн STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :СІ (кВт) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Сыстэма адзінак для масы: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Паказваць велічыні масы ў абранай сыстэме адзінак +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Паказваць значэньні масы ў абранай сыстэме адзінак STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :ангельская (малая тона) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :мэтрычная (т) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :СІ (кг) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Сыстэма адзінак для аб'ёму: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Паказваць значэньні аб'ёму ў выбранай сыстэме адзінак +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Паказваць значэньні аб'ёму ў абранай сыстэме адзінак STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :ангельская (галон) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :мэтрычная (л) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :СІ (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Сыстэма адзінак для цягавага намаганьня: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Паказваць значэньні цягавага намаганьня ў выбранай сыстэме адзінак +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Паказваць значэньні цягавага намаганьня ў абранай сыстэме адзінак STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :ангельская (фунт-сіла) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :мэтрычная (кгс) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :СІ (кН) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Сыстэма адзінак для вышыні: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Паказваць значэньні вышыні ў выбранай сыстэме адзінак +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Паказваць значэньні вышыні ў абранай сыстэме адзінак STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :ангельская (фут) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :мэтрычная (м) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :СІ (м) @@ -2028,7 +2048,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Сетк STR_INTRO_GAME_OPTIONS :{BLACK}Наладкі гульні STR_INTRO_HIGHSCORE :{BLACK}Табліца рэкордаў -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Пашыраныя наладкі +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Наладкі STR_INTRO_NEWGRF_SETTINGS :{BLACK}Наладкi NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Праверыць анлайн-кантэнт STR_INTRO_SCRIPT_SETTINGS :{BLACK}Наладкі ШІ / скрыпту @@ -2048,7 +2068,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Выбр STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Паказаць наладкі гульні STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Паказаць табліцу рэкордаў -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Паказаць пашыраныя наладкі +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Акно наладак STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Паказаць наладкі NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Праверыць новы й абноўлены кантэнт, каб спампаваць STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Зьмяніць наладкі ШІ ды гульнёвага скрыпту @@ -2088,6 +2108,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Гул STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Чароўны дынамiт (знос УСЯГО): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Тунэлi могуць перасякацца: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Вялікія самалёты радзей разьбіваюцца ў малых аэрапортах: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Зьмяніць макс. вышыню мапы: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Зьмяніць максімальную вышыню гор на мапе STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :умераны ляндшафт STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :субарктычны ляндшафт STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :субтрапічны ляндшафт @@ -2622,7 +2644,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Буда STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Будаўніцтва дэпо (для пакупак і абслугоўваньня цягнікоў). Пры націснутым Shift — ацэнка кошту будаўніцтва. STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Усталяваць на рэйках пункт шляху. Націсьненьне Ctrl дазваляе аб'ядноўваць пункты шляху. Пры націснутым Shift — ацэнка кошту будаўніцтва. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Будаўніцтва чыгуначных станцыяў. Націсьненьне Ctrl дазваляе аб'ядноўваць станцыі. Пры націснутым Shift — ацэнка кошту будаўніцтва. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Усталяваць чыгуначныя сыґналы. Націсьненьне Ctrl пераключае сэмафоры/сьветлафоры.{}Цяганьнем можна будаваць сыґналы на прамым участку каляіны. Ctrl будуе сыґналы да бліжэйшага скрыжаваньня. {}Ctrl+клік пераключае адкрыцьцё мэню выбару сыґналаў. Пры націснутым Shift — ацэнка кошту будаўніцтва. +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Усталёўка сыгналаў. Ctrl пераключае семафоры/святлафоры.{}Перацягваньнем можна будаваць сыгналы на прамым участку шляху. З націснутым Ctrl - будаўніцтва сыгналаў да найблізкага скрыжаваньня ці сыгналу.{}Ctrl+пстрычка пераключае адкрыццё акна выбару сыгналаў. Пры націснутым Shift - ацэнка кошту будаўніцтва. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Будаўніцтва чыгуначных мастоў. Пры націснутым Shift — ацэнка кошту будаўніцтва. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Будаўніцтва чыгуначных тунэляў. Пры націснутым Shift — ацэнка кошту будаўніцтва. STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Пераключэньне паміж будаўніцтвам і выдаленьнем чыгуначных рэйкаў, сыґналаў, станцыяў. Пры націснутым Ctrl станцыі ліквідуюцца разам з рэйкамі. @@ -2998,7 +3020,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Зямля на STR_ABOUT_OPENTTD :{WHITE}Аб OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Арыґінальныя аўтарскія правы {COPYRIGHT} 1995 Chris Sawyer. Усе правы абароненыя. STR_ABOUT_VERSION :{BLACK}OpenTTD вэрсія {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002–2014 Каманда распрацоўнікаў OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002–2015 Каманда распрацоўнікаў OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Захаваць гульню @@ -3033,6 +3055,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Колькасьць гарадоў: STR_MAPGEN_DATE :{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}Апусьціць сьнегавую лінію @@ -3062,6 +3087,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Назв STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Памер: 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}Зьмяніць год пачатку гульні @@ -3175,14 +3201,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Пара # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Выраўноўваньне спрайта {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Наступны спрайт -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Перайсьці да наступнага нармальнага спрайта, прапускаючы псэўдаспрайты, а таксама зьмяненьнi колеру/шрыфтавыя. +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Перайсьці да наступнага звычайнага спрайта, прапускаючы змяняючыя колер, шрыфтавыя, псэўдаспрайты. Пераход з канца сьпісу да першага спрайта. STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Перайсьці да спрайта STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Перайсьці да зададзеных спрайту. Калі спрайт не нармальны, пераход адбудзецца да наступнага нармальнага. STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Папярэдні спрайт -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Перайсьці да папярэдняга нармальнага спрайту, прапускаючы псэўдаспрайты, а таксама зьмяненьнi колеру/шрыфтавыя. +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Перайсьці да папярэдняга звычайнага спрайта, прапускаючы змяняючыя колер, шрыфтавыя, псэўдаспрайты. Пераход з пачатку сьпісу да апошняга спрайта. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Прадстаўленьне выбранага спрайта. Выраўноўваньне не ўлічваецца пры прарысоўцы гэтага спрайта. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Рухайце спрайт, зьмяняючы зрушэньне па X і па Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Зрушэньне па X: {NUM}, зрушэньне па Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Скід зрушэння +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Скінуць значэнні адноснага зрушэння +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Зрушэнне X: {NUM}; зрушэнне Y: {NUM} (абсалютнае) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Зрушэнне X: {NUM}; зрушэнне Y: {NUM} (адноснае) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Выбраць спрайт STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Абярыце любы спрайт на экране @@ -3294,8 +3323,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} дастаўлена STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (недастаткова) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (дастаткова) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Горад расьце раз у {ORANGE}{COMMA}{BLACK} д{P зень нi зён} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Горад расьце раз у {ORANGE}{COMMA}{BLACK} д{P зень нi зён} (прафінансавана) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Горад расьце раз у {ORANGE}{COMMA}{BLACK}{NBSP}д{P зень нi зён} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Горад расьце раз у {ORANGE}{COMMA}{BLACK}{NBSP}д{P зень нi зён} (прафінансавана) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Горад {RED}не{BLACK} разьвіваецца STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Узровень шуму ў горадзе: {ORANGE}{COMMA}{BLACK} Макс: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Паказаць горад у асноўным вакне. Ctrl+клік — паказаць у дадатковым вакне. @@ -3355,7 +3384,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Інфарма STR_GOAL_QUESTION_CAPTION_WARNING :Папярэджаньне STR_GOAL_QUESTION_CAPTION_ERROR :Памылка -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Адмова STR_GOAL_QUESTION_BUTTON_OK :Так STR_GOAL_QUESTION_BUTTON_NO :Не @@ -3374,6 +3403,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Пачаць і STR_GOAL_QUESTION_BUTTON_POSTPONE :Адкласьцi STR_GOAL_QUESTION_BUTTON_SURRENDER :Здацца STR_GOAL_QUESTION_BUTTON_CLOSE :Закрыць +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Субсыдыі: @@ -3698,10 +3728,10 @@ STR_PURCHASE_INFO_ALL_BUT :Усё, акр STR_PURCHASE_INFO_MAX_TE :{BLACK}Макс. цягавае намаганьне: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Далёкасьць: {GOLD}{COMMA} клет{P ка кi ак} -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Выбар ваґонаў: клікніце для даведкі -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Сьпiс аўтатранспарту: націсьніце для атрыманьня даведкі -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Сьпiс караблёў: націсьніце для атрыманьня даведкі -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Сьпіс паветраных судоў: пстрыкніце для атрыманьня інфармацыі +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Сьпіс лакаматываў і вагонаў - пстрыкніце для атрыманьня інфармацыі. Ctrl+пстрычка схавае/пакажа ТС. +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Сьпіс аўтатранспарту - пстрыкніце для атрыманьня інфармацыі. Ctrl+пстрычка схавае/пакажа выбраны аўтамабіль. +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Сьпіс караблёў - пстрыкніце для атрыманьня інфармацыі. Ctrl+пстрычка схавае/пакажа выбраны карабель. +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Сьпіс паветраных судоў: пстрыкніце для атрыманьня інфармацыі. Ctrl+пстрычка схавае/пакажа ТС. STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Купіць STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Купіць @@ -3723,6 +3753,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Зьмя STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Пераключыць скрываньне/адлюстраваньне выбранага лакаматыва/вагона +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Пераключыць скрываньне/адлюстраваньне выбранай мадэлі аўтамабіля +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Пераключыць скрываньне/адлюстраваньне выбранай мадэлі карабля +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Пераключыць скрываньне/адлюстраваньне выбранай мадэлі паветранага судна + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Назва мадэлі цягнiка STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Назва мадэлі аўтамабiля STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Назва мадэлі карабля @@ -3776,7 +3821,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Капі STR_DEPOT_CLONE_SHIP :{BLACK}Капіяваць карабель STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Капіяваць авіятранспарт -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Стварыць копію састава. Націсьніце на кнопку, а затым на цягнік унутры ці звонку дэпо. Ctrl+пстрычка створыць цягнік з агульнымі заданьнямі. Shift+пстрычка — ацэнка кошту набыцьця. +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Стварыць копію састава. Націсьніце на кнопку, а затым на цягнік усярэдзіне ці знадворку дэпо. Ctrl+пстрычка створыць цягнік з агульным маршрутам. Shift+пстрычка - ацэнка кошту куплі. STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Стварыць копію аўтамабіля. Націсьніце на кнопку, а затым на машыну ўнутры ці звонку гаража. Ctrl+пстрычка створыць аўтамабіль з агульнымі заданьнямі. Shift+пстрычка — ацэнка кошту набыцьця. STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Стварыць копію карабля. Націсьніце на кнопку, а затым на карабель унутры ці звонку дока. Ctrl+пстрычка створыць карабель з агульнымі заданьнямі. Shift+пстрычка — ацэнка кошту набыцьця. STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Стварыць копію паветр. судна. Націсьніце на кнопку, а потым на паветр. судна ўнутры ці звонку анґара. Ctrl+пстрычка створыць копію з агульнымі заданьнямі. Shift+пстрычка — ацэнка кошту набыцьця. @@ -3847,6 +3892,11 @@ STR_REPLACE_VEHICLE_AIRCRAFT :{G=m}Павет STR_REPLACE_VEHICLE_AIRCRAFT.gen :паветранага транспарту STR_REPLACE_VEHICLE_AIRCRAFT.acc :паветраны транспарт +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Наяўныя ТС +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Тут пералічаны мадэлі выкарыстоўваемых транспартных сродкаў +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Даступныя ТС +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Тут пералічаны мадэлі транспартных сродкаў, даступныя для замены + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Выбар тыпу транспарту для замены STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Выбар тыпу транспарту, на які варта замяніць @@ -3971,7 +4021,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Ёмiс STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Выручка перавозкі: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Агляд кожныя {LTBLUE}{COMMA} дзён{BLACK} Апошнi раз: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Агляд кожныя {LTBLUE}{COMMA}{NBSP}дзён{BLACK} Апошнi раз: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Агляд кожныя {LTBLUE}{COMMA}%{BLACK} Апошнi раз: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Павялiчыць інтэрвал абслугоўваньня на 10. Ctrl+клік — павялічыць інтэрвал абслугоўваньня на 5. STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Зьменшыць інтэрвал абслугоўваньня на 10. Ctrl+клік — паменшыць інтэрвал абслугоўваньня на 5. @@ -4207,8 +4257,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(чакаць { STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(у дарозе {STRING}, графік не складзены) STR_TIMETABLE_STAY_FOR :і чакаць {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :і рухацца да {STRING} -STR_TIMETABLE_DAYS :{COMMA} д{P зень нi зён} -STR_TIMETABLE_TICKS :{COMMA} цiк{P "" i аў} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}д{P зень нi зён} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}цiк{P "" i аў} STR_TIMETABLE_TOTAL_TIME :{BLACK}Увесь маршрут зойме {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Рух па маршруце зойме {STRING} (ня ўсё ўлічана) @@ -4446,6 +4496,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Земл STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Ужо на ўзроўні мора STR_ERROR_TOO_HIGH :{WHITE}Занадта высока STR_ERROR_ALREADY_LEVELLED :{WHITE}... ужо роўна +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Пасля гэтага вышыня моста будзе недапушчальна вялікай # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Немагчыма зьмяніць назву кампаніі... @@ -4472,7 +4523,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... за STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... занадта блізка да іншага горада STR_ERROR_TOO_MANY_TOWNS :{WHITE}... занадта шмат гарадоў STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... няма месца на мапе -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Гарады ня будуць будаваць дарогі. Вы можаце ўключыць будаўніцтва дарог у мэню: Пашыр. наладкi->Эканоміка->Гарады. +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Гарады ня будуць будаваць дарогі самі. Вы можаце ўключыць будаўніцтва дарог у раздзеле «Наладкі -> Навак.{NBSP}асяроддзе -> Гарады». STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Ідуць дарожныя работы... STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Немагчыма зьнішчыць горад:{}да яго адносіцца станцыя або дэпо, альбо немагчыма ачысьціць адну з занятых ім клетак. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... у цэнтры горада няма месца для статуі @@ -4496,6 +4547,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... ле STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... магчыма пабудаваць толькi вышэй за сьнегавую лiнiю STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... магчыма пабудаваць толькi нiжэй за сьнегавую лiнiю +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Няма прыдатных месцаў для прамысловасьці "{STRING}" +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Змяніце наладкі стварэньня мапы для атрыманьня лепшай мапы + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Тут немагчыма пабудаваць чыгуначную станцыю... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Тут немагчыма пабудаваць аўтобусны прыпынак... @@ -4632,6 +4686,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Спач STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Ня можа пачынацца й заканчвацца ў той жа кропцы STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Апоры моста павінны быць на адным узроўні STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Занадта нізкі мост +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Масты такой вышыні будаваць нельга. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Пачатак і канец павінны быць на адной лініі STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... абодва канца моста павінны абапірацца на зямлю STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... мост занадта доўгі @@ -5316,6 +5371,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (схаван{G 0 "ы" "а" "а" "ыя"}) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -5351,8 +5407,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index a83c080587..166eb32283 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -33,7 +33,7 @@ STR_CARGO_PLURAL_COAL :{G=m}Carvão STR_CARGO_PLURAL_MAIL :{G=f}Correspondências STR_CARGO_PLURAL_OIL :{G=m}Petróleo STR_CARGO_PLURAL_LIVESTOCK :{G=m}Gado -STR_CARGO_PLURAL_GOODS :{G=f}Mercadorias +STR_CARGO_PLURAL_GOODS :{G=f}Bens STR_CARGO_PLURAL_GRAIN :{G=m}Cereais STR_CARGO_PLURAL_WOOD :{G=f}Madeira STR_CARGO_PLURAL_IRON_ORE :{G=m}Minério de Ferro @@ -67,7 +67,7 @@ STR_CARGO_SINGULAR_COAL :{G=m}Carvão STR_CARGO_SINGULAR_MAIL :{G=f}Correspondência STR_CARGO_SINGULAR_OIL :{G=m}Petróleo STR_CARGO_SINGULAR_LIVESTOCK :{G=m}Gado -STR_CARGO_SINGULAR_GOODS :{G=m}Mercadorias +STR_CARGO_SINGULAR_GOODS :{G=m}Bens STR_CARGO_SINGULAR_GRAIN :{G=m}Cereais STR_CARGO_SINGULAR_WOOD :{G=f}Madeira STR_CARGO_SINGULAR_IRON_ORE :{G=m}Minério de Ferro @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :{G=m}Refrigeran # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passageiro{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passageiro{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} de carvão -STR_QUANTITY_MAIL :{COMMA} bolsa{P "" s} de correspondência +STR_QUANTITY_MAIL :{COMMA}{NBSP}bolsa{P "" s} de correspondência STR_QUANTITY_OIL :{VOLUME_LONG} de petróleo -STR_QUANTITY_LIVESTOCK :{COMMA} cabeça{P "" s} de gado -STR_QUANTITY_GOODS :{COMMA} caixa{P "" s} de mercadorias +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}cabeça{P "" s} de gado +STR_QUANTITY_GOODS :{COMMA}{NBSP}caixa{P "" s} de bens STR_QUANTITY_GRAIN :{WEIGHT_LONG} de cereais STR_QUANTITY_WOOD :{WEIGHT_LONG} de madeira STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} de minério de ferro STR_QUANTITY_STEEL :{WEIGHT_LONG} de aço -STR_QUANTITY_VALUABLES :{COMMA} bolsa{P "" s} de objetos de valor +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}bolsa{P "" s} de objetos de valor STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de minério de cobre STR_QUANTITY_MAIZE :{WEIGHT_LONG} de milho STR_QUANTITY_FRUIT :{WEIGHT_LONG} de fruta -STR_QUANTITY_DIAMONDS :{COMMA} bolsa{P "" s} de diamantes +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}bolsa{P "" s} de diamantes STR_QUANTITY_FOOD :{WEIGHT_LONG} de alimentos STR_QUANTITY_PAPER :{WEIGHT_LONG} de papel -STR_QUANTITY_GOLD :{COMMA} bolsa{P "" s} de ouro +STR_QUANTITY_GOLD :{COMMA}{NBSP}bolsa{P "" s} de ouro STR_QUANTITY_WATER :{VOLUME_LONG} de água STR_QUANTITY_WHEAT :{WEIGHT_LONG} de trigo STR_QUANTITY_RUBBER :{VOLUME_LONG} de borracha STR_QUANTITY_SUGAR :{WEIGHT_LONG} de açúcar -STR_QUANTITY_TOYS :{COMMA} brinquedo{P "" s} -STR_QUANTITY_SWEETS :{COMMA} pacote{P "" s} de doces +STR_QUANTITY_TOYS :{COMMA}{NBSP}brinquedo{P "" s} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}pacote{P "" s} de doces STR_QUANTITY_COLA :{VOLUME_LONG} de cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} de algodão doce STR_QUANTITY_BUBBLES :{COMMA} bolha{P "" s} @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}NADA STR_ABBREV_ALL :{TINY_FONT}TUDO # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passageiro{P "" s} -STR_BAGS :{COMMA} bolsa{P "" s} -STR_TONS :{COMMA} tonelada{P "" s} -STR_LITERS :{COMMA} litro{P "" s} -STR_ITEMS :{COMMA} cabeça{P "" s} -STR_CRATES :{COMMA} engradado{P "" s} +STR_PASSENGERS :{COMMA}{NBSP}passageiro{P "" s} +STR_BAGS :{COMMA}{NBSP}bolsa{P "" s} +STR_TONS :{COMMA}{NBSP}tonelada{P "" s} +STR_LITERS :{COMMA}{NBSP}litro{P "" s} +STR_ITEMS :{COMMA}{NBSP}ite{P m ns} +STR_CRATES :{COMMA}{NBSP}engradado{P "" s} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Azul Escuro @@ -192,37 +192,37 @@ STR_COLOUR_GREY :Cinza STR_COLOUR_WHITE :Branco # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}cv -STR_UNITS_POWER_METRIC :{COMMA}cv -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}T +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton. curta{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gal{P ão ões} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litro{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gal{P ão ões} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" s} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} pés -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pés +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtro: @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de rolagem - rola a lista para esquerda/direita STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolir edifícios etc. num quadrado de terreno. Ctrl seleciona a área diagonalmente. Shift alterna construção/mostrar estimativa de preço +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Mostrar ocultos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Mostrar ocultos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Mostrar ocultos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Mostrar ocultos + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ao ativar esse botão, os trens ocultos também serão exibidos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ao ativar esse botão, os automóveis ocultos também serão exibidos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ao ativar esse botão, os navios ocultas também serão exibidos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ao ativar esse botão, as aeronaves ocultas também serão exibidas + # Query window STR_BUTTON_DEFAULT :{BLACK}Padrão STR_BUTTON_CANCEL :{BLACK}Cancelar @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Sair ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opções do jogo -STR_SETTINGS_MENU_CONFIG_SETTINGS :Definições avançadas +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configurações STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configurações de IA /Script do jogo STR_SETTINGS_MENU_NEWGRF_SETTINGS :Definições do NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opções de Transparência @@ -834,6 +845,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} tem uma ordem nula STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} tem ordens duplicadas STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} tem uma estação inválida em suas ordens +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} tem, em suas ordens, um aeroporto com a pista de pouso muito curta STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} está ficando velho STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} está ficando muito velho @@ -916,10 +928,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari da Georgia STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iraniano ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automóveis STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selecionar lado da rodovia para automóveis dirigirem STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Dirigem na esquerda @@ -973,6 +981,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resoluç STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Selecionar a resolução da tela para usar STR_GAME_OPTIONS_RESOLUTION_OTHER :outra +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_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dobro +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quádruplo + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunto de gráficos base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecionar o conjunto de gráficos base para usar STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} arquivo{P "" s} faltando/corrompido{P "" s} @@ -1066,6 +1081,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Muito Plano STR_TERRAIN_TYPE_FLAT :Plano STR_TERRAIN_TYPE_HILLY :Acidentado STR_TERRAIN_TYPE_MOUNTAINOUS :Montanhoso +STR_TERRAIN_TYPE_ALPINIST :Alpinista STR_CITY_APPROVAL_PERMISSIVE :Permissivo STR_CITY_APPROVAL_TOLERANT :Tolerante @@ -1073,8 +1089,8 @@ STR_CITY_APPROVAL_HOSTILE :Hostil STR_WARNING_NO_SUITABLE_AI :{WHITE}Não há IA compatíveis disponíveis...{}Você pode baixar várias IA's pelo sistema de 'Conteúdo Online' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Configurações avançadas +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :[WHITE}Configurações STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtro: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Maximizar tudo STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Minimizar tudo @@ -1090,9 +1106,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Config. da comp STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categoria: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tipo: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Restringe a lista abaixo a mostrar apenas filtros pré-definidos -STR_CONFIG_SETTING_RESTRICT_BASIC :Configs. básicas -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Configs. avançadas -STR_CONFIG_SETTING_RESTRICT_ALL :Configs. expert / todas as configs. +STR_CONFIG_SETTING_RESTRICT_BASIC :Básico (apenas configs. importantes) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avançado (maior parte das configs.) +STR_CONFIG_SETTING_RESTRICT_ALL :Expert (mostra todas as configs. inclusive as estranhas) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Configs. com valor diferente do padrão STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Configs. com um valor diferente das configs. para novos jogos @@ -1147,6 +1163,9 @@ 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_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_MAX_HEIGHTLEVEL_HELPTEXT :Define a altitude máxima para montanhas no mapa +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_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_CATCHMENT :Dimensionamento mais realista das áreas de abrangência: {STRING} @@ -1175,6 +1194,8 @@ STR_CONFIG_SETTING_INFLATION :Inflação: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Ativa inflação na economia, de forma que custos sobem um pouco mais do que recebidos STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Tamanho máximo de pontes: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Tamanho máximo para construção de pontes +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altura máxima de pontes: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Altura máxima para a construção de pontes STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Tamanho máximo de túneis: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Tamanho máximo para construção de túneis STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Método manual de constução de indústria primária: {STRING} @@ -1260,15 +1281,18 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duração da me STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Define quanto tempo as janelas de erro (vermelhas) ficam abertas antes de fecharem automaticamente. Erros críticos devem ser fechados manualmente. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} segundo{P "" s} STR_CONFIG_SETTING_HOVER_DELAY :Exibir dicas: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Intervalo antes das dicas de ferramentas aparecerem ao deixar o mouse sobre algum botão na interface -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Aguardar {COMMA} segundo{P "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Intervalo antes das dicas de ferramentas aparecerem ao deixar o mouse sobre algum botão na interface. Em contrapartida, as dicas são mostradas ao se clicar com o botão direito se esse valor for definido para 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Aguardar {COMMA} milisegundo{P "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Botão direito STR_CONFIG_SETTING_POPULATION_IN_LABEL :Exibir população da cidade na janela da cidade: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Exibe a população das cidades nos nomes, no mapa STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Grossura das linhas nos gráficos: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Grossura da linha nos gráficos. Linhas finas são mais precisas, enquanto linhas grossas são mais fáceis de distinguir. +STR_CONFIG_SETTING_LANDSCAPE :Terreno: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :O terreno define a jogabilidade básica com diferentes cargas e requerimentos para o crescimento das cidades. NewGRF's e Scripts de Jogo permitem um controle mais fino STR_CONFIG_SETTING_LAND_GENERATOR :Gerador de Terreno: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :O gerador original depende do set gráficos base, e cria terrenos de formatos fixos. TerraGenesis é um gerador baseado em ruído Perlin com configurações mais delicadas STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Tipo de terreno: {STRING} @@ -1277,7 +1301,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidade de in STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Define quantas indústrias devem ser geradas e o nível que deve ser mantido durante o jogo 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_SNOWLINE_HEIGHT :Altitude 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_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 @@ -1441,7 +1465,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Os intervalos d STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Define se a manutenção de veículos é ativada pelo tempo passado desde a última manutenção ou quando a confiabilidade alcança um certo valor STR_CONFIG_SETTING_SERVINT_TRAINS :Intervalo padrão de manutenção para trens: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Define o intervalo padrão de manutenção para novos trens, se não for definido individualmente -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dia{P "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dia{P "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Desativado STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Intervalo padrão de manutenção para automóveis: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Define o intervalo padrão de manutenção para novos automóveis, se não for definido individualmente @@ -1581,9 +1605,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nenhum STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador do tamanho inicial da cidade: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Tamanho médio das cidades grandes em relação às cidades no início do jogo -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Atualizar gráfico de distribuição a cada {STRING} dia{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Atualizar gráfico de distribuição a cada {STRING}{NBSP}dia{P 0:2 "" s} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Tempo tomado entre recálculos subsequentes de cada gráfico. Cada recálculo calcula os planos para cada componente do gráfico. Isso significa que um valor X para essa configuração não indica que o gráfico todo será atualizado a cada X dias. Apenas alguns componentes irão. Quanto mais curto você o definir, mais tempo de CPU será necessário para calculá-lo. Quanto mais longo, mais tempo levará até que a distribuição de carga começe em novas rotas. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Demore {STRING} dia{P 0:2 "" s} para recálculo do gráfico de distribuição +STR_CONFIG_SETTING_LINKGRAPH_TIME :Demore {STRING}{NBSP}dia{P 0:2 "" s} para recálculo do gráfico de distribuição STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Tempo tomado para cada recálculo de um componente de um gráfico. Quando um recálculo começa, um processo é criado e é executado por esse número de dias. Quanto menos dias você define, maior a chance do processo não terminar quando era para ter terminado. Nesse caso, o jogo irá parar até ele terminar ("lag"). Quanto maior você definir isso, mais tempo leva para a distribuição ser atualizada quando as rotas mudarem. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manual STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :assimétrico @@ -1613,30 +1637,30 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Unidade de potência veicular: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Sempre que a potência de um veículo for exibida na interface de usuário, será exibida na unidade selecionada -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :IMperial (hp) -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Métrico (hp) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Imperial (hp) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Métrico (cv) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Unidades de peso: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Sempre que pesos forem exibidos na interface de usuário, serão exibidos na unidade selecionada -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (ton. imperial) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Sempre que pesos forem exibidos na interface de usuário, exiba-os na unidade selecionada +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (ton. curta) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Métrico (ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Unidades volumétricas: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Sempre que volumes forem exibidos na interface de usuário, serão exibidos na unidade selecionada +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Sempre que volumes forem exibidos na interface de usuário, exiba-os na unidade selecionada STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Métrico (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Unidade de tração: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Sempre que tração, ou efeito trator, é exibido na interface de usuário, será exibido na unidade selecionada +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Sempre que tração, ou efeito trator, é exibido na interface de usuário, exiba na unidade selecionada STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Métrico (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Unidade de altitude: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Sempre que altitudes são exibidas na interface do usuário, será exibida na unidade selecionada +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Sempre que altitudes são exibidas na interface do usuário, exiba na unidade selecionada STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperial (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Métrico (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1712,7 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multi-jo STR_INTRO_GAME_OPTIONS :{BLACK}Opções do Jogo STR_INTRO_HIGHSCORE :{BLACK}Pontuações -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Configurações avançadas +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configurações STR_INTRO_NEWGRF_SETTINGS :{BLACK}Configurar NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Checar conteúdo on-line STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configurações de IA / Script do jogo @@ -1732,7 +1756,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Selecion STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Exibir opções de jogo STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Exibe as pontuações -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Exibe as configurações avançadas +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Config. de exibição STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Exibir configs. dos NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Checar por conteúdo novo e atualizado para baixar STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Exibe configurações de IA e script do jogo @@ -1772,6 +1796,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Jogando STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Escavadeira mágica (destrói indústrias, objetos estáticos): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Os túneis poderão cruzar-se: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Aeronaves a jato não irão se acidentar (frequentemente) em aeroportos pequenos: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar a altitude máx do mapa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altitude máx das montanhas no mapa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :terreno temperado STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :terreno subártico STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :terreno subtropical @@ -2290,7 +2316,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Construi STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Construir depósito (para compra e manutenção de trens). Shift altera construção/preço estimado STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Converter linha em ponto de controle. Ctrl permite a união de pontos de controle. Shift altera construção/preço estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Construir estação ferroviária. Ctrl permite a união de estações. Shift altera construção/preço estimado -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construir sinais ferroviários. Ctrl alterna a construção de semáforos/sinais{}Clicar e arrastar constroi sinais até a próxima junção{}Ctrl+Clique alterna a janela de seleção de sinais. Shift altera construção/preço estimado +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construir sinais ferroviários. Ctrl alterna a construção de semáforos/sinais{}Clicar e arrastar constroi sinais até a próxima junção ou sinal{}Ctrl+Clique alterna a janela de seleção de sinais. Shift alterna construção/preço estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Construir ponte ferroviária. Shift altera construção/preço estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Construir túnel ferroviário. Shift altera construção/preço estimado STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Alternar construir/remover ferrovias, sinais, pontos de controle e estações. Segure ctrl para remover os trilhos de estações e pontos de controle. @@ -2662,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :O terreno é pr STR_ABOUT_OPENTTD :{WHITE}Sobre o OpenTTD... STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Todos os direitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versão {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 A equipe do OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 A equipe do OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Salvar Jogo @@ -2697,6 +2723,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. de cidades: STR_MAPGEN_DATE :{BLACK}Data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. de indústrias: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altitude máx. do mapa: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Aumenta a altitude máxima das montanhas no mapa em uma unidade +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Diminui a altitude máxima das montanhas no mapa em uma unidade STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Linha da neve STR_MAPGEN_SNOW_LINE_UP :{BLACK}Aumentar a linha da neve em um ponto STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Diminuir a linha da neve em um ponto @@ -2726,6 +2755,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome do STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamanho: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Alterar a altitude máxima do mapa STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Mudar linha da neve STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Mudar data de início @@ -2839,14 +2869,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Variáve # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Alinhando "sprite" {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Próximo "sprite" -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Prossegue ao próximo "sprite" normal, pulando quaisquer "sprites" falsos, recoloridos ou de fontes, e junta tudo no fim +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Prossegue ao próximo "sprite" normal, pulando quaisquer "sprites" falsos, recoloridos ou de fontes, e junta tudo do último pro primeiro STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Ir para o "sprite" STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Vai para o "sprite" determinado. Se o "sprite" não é um "sprite" normal, segue para o próximo "sprite" normal STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}"Sprite" anterior -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Retorna ao "sprite" normal anterior, pulando quaisquer "sprites" falsos, recoloridos ou de fontes, e junta tudo no início +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Retorna ao "sprite" normal anterior, pulando quaisquer "sprites" falsos, recoloridos ou de fontes, e junta tudo do primeiro ao último STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representação do "sprite" atualmente selecionado. O alinhamento é ignorado ao desenhar esse "sprite" STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move o "sprite", alterando os offsets X e Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetar relativo +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reseta os offsets relativos atuais +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Absoluto) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offset: {NUM}, Y offset: {NUM} (Relativo) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Escolher "sprite" STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Escolhe um "sprite" de qualquer lugar na tela @@ -2958,8 +2991,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} entregues STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (ainda necessário) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (entregue{P "" s}) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Cidade cresce a cada {ORANGE}{COMMA}{BLACK} dia{P "" s} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Cidade cresce a cada {ORANGE}{COMMA}{BLACK} dia{P "" s} (patrocinado) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Cidade cresce a cada {ORANGE}{COMMA}{BLACK}{NBSP}dia{P "" s} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Cidade cresce a cada {ORANGE}{COMMA}{BLACK}{NBSP}dia{P "" s} (patrocinado) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}A cidade {RED}não{BLACK} está crescendo STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Limite de ruído na cidade: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centrar visão no local da cidade. Ctrl+Clique abre uma nova janela no local da cidade @@ -3019,7 +3052,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informação STR_GOAL_QUESTION_CAPTION_WARNING :Alerta STR_GOAL_QUESTION_CAPTION_ERROR :Erro -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Cancelar STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Não @@ -3038,6 +3071,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Reiniciar STR_GOAL_QUESTION_BUTTON_POSTPONE :Postergar STR_GOAL_QUESTION_BUTTON_SURRENDER :Desistir STR_GOAL_QUESTION_BUTTON_CLOSE :Fechar +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsídios @@ -3362,10 +3396,10 @@ STR_PURCHASE_INFO_ALL_BUT :Todas menos {CA STR_PURCHASE_INFO_MAX_TE :{BLACK}Tração máx : {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: {GOLD}{COMMA} quadrados -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de trens - clique num trem para informações -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de automóveis - clique num automóvel para informações -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de embarcações - clique numa embarcação para informações -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista de aeronaves - clique numa aeronave para informações +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de trens - clique num trem para informações. Cltr+Clique para alterar a visibilidade do tipo de trem +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de automóveis - clique num automóvel para informações. Cltr+Clique para alterar a visibilidade do tipo de automóvel +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de embarcações - clique numa embarcação para informações. Cltr+Clique para alterar a visibilidade do tipo de navio +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista de aeronaves - clique numa aeronave para informações. Cltr+Clique para alterar a visibilidade do tipo de aeronave STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Comprar Veículo STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Comprar Veículo @@ -3387,6 +3421,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Renomear STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Renomear tipo de embarcação STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Renomear tipo de aeronave +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ocultar +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ocultar +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Ocultar +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Ocultar + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Exibir +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Exibir +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Exibir +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Exibir + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna a exibição do tipo de trem +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna a exibição do tipo de automóvel +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna a exibição do tipo de navio +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna a exibição do tipo de aeronave + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Renomear tipo de veículo ferroviário STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Renomear tipo do automóvel STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Renomear tipo de embarcação @@ -3440,7 +3489,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Clonar A STR_DEPOT_CLONE_SHIP :{BLACK}Clonar Embarcação STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Clonar Aeronave -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Isso irá comprar uma cópia do trem, incluindo todos os vagões. Clique neste botão e depois em um trem dentro ou fora do depósito. Ctrl+Clique compartilhará as ordens. Shift+Clique mostra o preço estimado sem a compra +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Isso irá comprar uma cópia do trem incluindo todos os vagões. Clique neste botão e depois em um trem dentro ou fora do depósito. Ctrl+Clique compartilhará as ordens. Shift+Clique mostra o preço estimado sem a compra STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Isso irá comprar uma cópia do automóvel. Clique neste botão e depois em um automóvel dentro ou fora da garagem. Ctrl+Clique compartilhará as ordens. Shift+Clique mostra o preço estimado sem a compra STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Isso irá comprar uma cópia da embarcação. Clique neste botão e depois em uma embarcação dentro ou fora do depósito naval. Ctrl+Clique irá compartilhar as ordens. Shift+Clique mostra preço estimado sem a compra STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Isso irá comprar uma cópia de uma aeronave. Clique nesse botão e depois em uma aeronave dentro ou fora do hangar. Ctrl+Clique compartilhará as ordens. Shift+Clique mostra o preço estimado sem a compra @@ -3491,6 +3540,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :{G=m}Automóvel STR_REPLACE_VEHICLE_SHIP :{G=m}Embarcação STR_REPLACE_VEHICLE_AIRCRAFT :{G=f}Aeronave +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Veículos em uso +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :[BLACK}Coluna com os veículos que você possui +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Veículos disponíveis +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Coluna com os veículos disponíveis para substituição + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Selecionar o tipo de motor para substituir STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Selecionar o novo tipo de motor para substituir o que selecionou à esquerda @@ -3615,7 +3669,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacida STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transferir Dinheiro: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervalo de serviço: {LTBLUE}{COMMA}dias{BLACK} Último serviço: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}{NBSP}dias{BLACK} Última manutenção: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Intervalo de serviço: {LTBLUE}{COMMA}%{BLACK} Último serviço: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Aumentar intervalo de serviço em 10. Ctrl+Clique aumenta em 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Reduzir intervalo de serviço em 10. Ctrl+Clique reduz em 5 @@ -3840,18 +3894,22 @@ STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Alternar STR_TIMETABLE_TOOLTIP :{BLACK}Horário - clique sobre uma ordem para destaca-la STR_TIMETABLE_NO_TRAVEL :Não viajar -STR_TIMETABLE_NOT_TIMETABLEABLE :Viagem (automático; calendarizada pela próxima ordem manual) -STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Viajar (não calendarizado) -STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Viagem a no máximo {2:VELOCITY} (sem plano de horário) +STR_TIMETABLE_NOT_TIMETABLEABLE :Viagem (automático; com horário marcado pela próxima ordem manual) +STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Viajar (sem horário marcado) +STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Viagem a no máximo {2:VELOCITY} (sem horário marcado) STR_TIMETABLE_TRAVEL_FOR :Viajar para {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :Viaje por {STRING} em até {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Viajar (por {STRING}, sem horário marcado) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Viajar (por {STRING}, sem horário marcado) a no máximo {VELOCITY} +STR_TIMETABLE_STAY_FOR_ESTIMATED :(aguardar por {STRING}, sem horário marcado) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(viajar para {STRING}, sem horário marcado) STR_TIMETABLE_STAY_FOR :e ficar durante {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :e viajar por {STRING} -STR_TIMETABLE_DAYS :{COMMA} dia{P "" s} -STR_TIMETABLE_TICKS :{COMMA} tique{P "" s} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}dia{P "" s} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tique{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}Este horário levará {STRING} para completar -STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Este horário levará no mínimo {STRING} para completar (nem todos calendarizados) +STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Este horário levará no mínimo {STRING} para completar (nem todos com horário marcado) STR_TIMETABLE_STATUS_ON_TIME :{BLACK}Este veículo está atualmente circulando pontualmente STR_TIMETABLE_STATUS_LATE :{BLACK}Este veículo está atualmente circulando {STRING} atrasado @@ -4086,6 +4144,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}A escava STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Já está ao nível do mar STR_ERROR_TOO_HIGH :{WHITE}Muito alto STR_ERROR_ALREADY_LEVELLED :{WHITE}... já está plano +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}A ponte acima ficaria muito alta. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Impossível alterar o nome da empresa... @@ -4112,7 +4171,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... muit STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... muito perto de outra cidade STR_ERROR_TOO_MANY_TOWNS :{WHITE}... cidades demais STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... não há mais espaço no mapa -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}A cidade não irá construir estradas. Você pode ativar essa opção através de Config. Avançadas>Economia>Cidades +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}A cidade não irá construir estradas. Você pode ativar a construção através de Configurações->Ambiente->Cidades STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Recapeamento rodoviário em progresso STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Impossível remover cidade... {}Uma estação ou depósito referente à essa cidade não pode ser removido STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... não há local para uma estátua no centro dessa cidade @@ -4136,6 +4195,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... a fl STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... só pode ser construído acima do nível da neve STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... só pode ser construída abaixo do nível da neve +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Não existe locais aceitáveis para '{STRING}' indústrias +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Mude os parâmetros de geração do mapa para obter um mapa melhor + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Impossível construir estação ferroviária aqui... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Impossível construir estação de ônibus... @@ -4272,6 +4334,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Remova a STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Impossível iniciar e terminar no mesmo ponto STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Extremidades da ponte não estão no mesmo nível STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Ponte é muito baixa para o terreno +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}A ponte está muito alta para esse terreno. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Inicio e fim devem estar alinhados STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... os extremos da ponte devem estar sobre a terra STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... ponte muito longa @@ -4836,6 +4899,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (oculto) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4871,8 +4935,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt index fcc12d25ab..9d88718fb7 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -211,19 +211,19 @@ STR_UNITS_WEIGHT_LONG_SI :{COMMA} кг STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}гал STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} л. -STR_UNITS_VOLUME_SHORT_SI :{COMMA} м³ +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} галон{P "" и} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} лит{P ър ри} -STR_UNITS_VOLUME_LONG_SI :{COMMA} куб. м. +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галон{P "" и} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}лит{P ър ри} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}куб. м. -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} фут -STR_UNITS_HEIGHT_METRIC :{COMMA} м -STR_UNITS_HEIGHT_SI :{COMMA} м +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фут +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Филтриращ низ: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Лент STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Превъртаща ивица - превърта списъка на ляво/дясно STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Разруши постройки и др. върху квадрат от картата. Ctrl маркира по диагонал. Shift показва евентуалната цена на разрушението. +# 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 STR_BUTTON_DEFAULT :{BLACK}По подразбиране STR_BUTTON_CANCEL :{BLACK}Отказ @@ -360,7 +371,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Изход ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Игрови опции -STR_SETTINGS_MENU_CONFIG_SETTINGS :Настройки за напреднали +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Настройки STR_SETTINGS_MENU_SCRIPT_SETTINGS :Настройка на ИИ програмите STR_SETTINGS_MENU_NEWGRF_SETTINGS :Newgrf настройки STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Настройки на прозрачност @@ -907,10 +918,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Грузинс STR_GAME_OPTIONS_CURRENCY_IRR :Ирански Риал (ИРР) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Движение по пътищата STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Избор посоката на движение по пътищата STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :ляво @@ -964,6 +971,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Разм STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Избор размера на екран STR_GAME_OPTIONS_RESOLUTION_OTHER :друго +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Интерфейс размер +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Изберете размера на интерфейс елемент за използване + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Нормално +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Двукратно +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Четирикратно + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Базов графичен набор STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Изберете базов графичен набор STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} липсващи/повредени файлове @@ -978,6 +992,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Избе STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} повреден файл{P "" s} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Допълнителна информация за пакетът базовата музика +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Неуспешно извличане на списък с поддържаните резолюции STR_ERROR_FULLSCREEN_FAILED :{WHITE}Проблем при включване на режим "цял екран" # Custom currency window @@ -1056,6 +1071,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :платови STR_TERRAIN_TYPE_FLAT :равнинен STR_TERRAIN_TYPE_HILLY :хълмист STR_TERRAIN_TYPE_MOUNTAINOUS :планински +STR_TERRAIN_TYPE_ALPINIST :Алпинист STR_CITY_APPROVAL_PERMISSIVE :разрешаващи STR_CITY_APPROVAL_TOLERANT :толерантни @@ -1063,8 +1079,8 @@ STR_CITY_APPROVAL_HOSTILE :враждеб STR_WARNING_NO_SUITABLE_AI :{WHITE}Няма подходящи AI...{}Можете да свалите допълнителни AI чрез системата Online Content (Онлайн Съдържание) -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Настройки за напреднали +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Настройки STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Филтриращ низ: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Разгъни всички STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Сгъни всички @@ -1140,6 +1156,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Включва STR_CONFIG_SETTING_CITY_APPROVAL :Отношението на градския съвет към реструктурирането на района: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Изберете какво количество шум и поражения по околната среда причинени от компаниите афектират техния рейтинг в града и бъдещи конструкции в района. +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Максимална височина на картата: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Определете максималната допустима височина за планини на картата +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Не можете да зададете максималната височина на картата на тази стойност. Поне една планина на карта е по-висока STR_CONFIG_SETTING_AUTOSLOPE :Тераформиране под постройки (autoslope): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Разреши промяна на наклона на терена под постройки и пътища без необходимост от премахване STR_CONFIG_SETTING_CATCHMENT :По-реалистична зона за обслужване: {STRING} @@ -1168,6 +1187,8 @@ STR_CONFIG_SETTING_INFLATION :Инфлаци STR_CONFIG_SETTING_INFLATION_HELPTEXT :Разрешава инфлация на икономиката, при което цените ще се покачват малко по-бързо от заплащането STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Максимална дължина на мост: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Максимална дължина за построяване на мост +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Максимална височина на мост: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Максимална височина за изграждане на мостове STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Максимална дължина на тунел: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Максимална дължина за построяване на тунел STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Ръчен строеж на първични индустрии: {STRING} @@ -1253,7 +1274,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Продълж STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Време през което съобщенията за грешки се показват в червен прозорец. Някой (критичните) съобщения за грешки не се затварят автоматично след това време, а трябва да бъдат затворени ръчно. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} секунд{P 0 а и} STR_CONFIG_SETTING_HOVER_DELAY :Покажи съвети: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Изкачване преди съветът да се покаже, когато мишката е върху елемент от интерфейса. Алтернативно съветите могат да бъдат активирани с десния бутон на мишката +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Изкачване преди съветът да се покаже, когато мишката е върху елемент от интерфейса. Алтернативно съветите могат да бъдат активирани с десния бутон на мишката ако стойността е 0 STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Изчакай за {COMMA} секунд{P 0 а и} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Десен бутон STR_CONFIG_SETTING_POPULATION_IN_LABEL :Население в табелата на града: {STRING.n} @@ -1276,6 +1297,8 @@ STR_CONFIG_SETTING_TREE_PLACER :Алгорит STR_CONFIG_SETTING_TREE_PLACER_NONE :без дървета STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :оригинален STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :подобрен +STR_CONFIG_SETTING_ROAD_SIDE :Пътни превозни средства: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Изберете страна шофиране STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Завъртане на картата: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Обратрно на часовниковата стрелка STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :По часовниковата стрелка @@ -1330,6 +1353,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Изключе STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Скролиране с ляв бутон: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Позволява да "скролнете" картата, чрез влачене на левия бутон на мишката. Това и изключително полезно ако ползвате тъч-скрийн +STR_CONFIG_SETTING_AUTOSAVE :Автоматично запазване: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Изберете интервал между автоматично запаметяване на играта STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Използвай {STRING} формат на датата за имена на записаните игри. STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Формат на датата във файловете за запис на играта @@ -1419,7 +1444,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Интерва STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Изберете дали обслужването на превозните средства е предизвикано от времето изминало от последното им обслужване, или от падането на надеждността им под даден процент от максималната им надеждност STR_CONFIG_SETTING_SERVINT_TRAINS :Интервал на обслужване за влакове: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Задайте интервала за обслужване на новите влакове по подразбиране, ако такъв интервал не е зададен за превозното средство -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} д{P 0 ен ни}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}д{P 0 ен ни}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Изключен STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Интервал на обслужване за автомобили: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Задайте интервала за обслужване на новите пътни превозни средства по подразбиране, ако такъв интервал не е зададен за превозното средство @@ -1653,7 +1678,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Онла STR_INTRO_GAME_OPTIONS :{BLACK}Настройки STR_INTRO_HIGHSCORE :{BLACK}Таблица с най-добрите резултати -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Настройки за напреднали +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Настройки STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF настройки STR_INTRO_ONLINE_CONTENT :{BLACK}Провери онлайн съдържанието STR_INTRO_SCRIPT_SETTINGS :{BLACK}ИИ/Игрови настройки @@ -1673,7 +1698,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Избе STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Покажи параметрите на играта STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Показване на таблицата с най-добри резултати -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Покажи настройките за напреднали +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Настройки на дисплея STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Покажи NewGRF настройки STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Провери за ново съдържание за сваляне STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Показва настройките на ИИ @@ -1713,6 +1738,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Игр STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Магически булдозер (премахва промишленост, неподвижни обекти): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Тунелите може да се пресичат: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Реактивните самолети няма да се разбиват (често) в малки летища: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Редактиране на максималната височина на картата:{ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Редактиране на максималната височина на планините, на картата STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :умерен климат STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Арктичен климат STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Тропически климат @@ -2192,8 +2219,14 @@ STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Вклу STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Направи обектите невидими вместо прозрачни # Linkgraph legend window +STR_LINKGRAPH_LEGEND_ALL :{BLACK}Всички +STR_LINKGRAPH_LEGEND_NONE :{BLACK}Николко +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Изберете компании, който да се показват # Linkgraph legend window and linkgraph legend in smallmap +STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}неизползван +STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLACK}наситен +STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}претоварен # Base for station construction window(s) STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Маркиране на Отбелязаната зона @@ -2593,7 +2626,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Земя, пр STR_ABOUT_OPENTTD :{WHITE}Относно OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Авторски права {COPYRIGHT} 1995 Крис Сойер (Chris Sawyer), Всички права са запазени STR_ABOUT_VERSION :{BLACK}OpenTTD версия {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Запази играта @@ -2627,6 +2660,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Брой градове: STR_MAPGEN_DATE :{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}Преместване снежната линия надолу @@ -2656,6 +2692,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Име STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Размер: 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}Промяна началната година @@ -2710,6 +2747,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Наго STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Премества избрания NewGRF файл нагоре в списъка STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Надолу STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Премества избрания NewGRF файл надолу в списъка +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Ъпгрейд +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Подобрете NewGRF файлове, за които имате по-нова версия инсталирана STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Списък на инсталираните NewGRF файлове STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Настройване на параметрите @@ -2735,6 +2774,12 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Изклю STR_NEWGRF_SETTINGS_INCOMPATIBLE :{G=n}{RED}Несъвместимо с тази версия на OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_TITLE :{BLACK}Въведи име за шаблона +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Текущо избраното име за именуване на шаблона +STR_SAVE_PRESET_CANCEL :Отказ +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Не променяй шаблона +STR_SAVE_PRESET_SAVE :{BLACK}Запис +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Запази шаблона за текущо избраното име # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Промени параметрите на новите графики (NewGRF) @@ -2766,7 +2811,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Пред STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Продължи към предишен нормален sprite, Пропускайки всички псевдо/прерисувани/текстови sprite и ги облечи в края STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Показване на избрания sprite. Подредбата се пренебрегва при рисуването му. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Преместване на sprite, променяйки X и Y координатите -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X координата: {NUM}, Y координата: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Избери sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Избери sprite от целия екран @@ -2877,8 +2921,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} доставено STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (все още трява) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (доставено) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Града нараства всеги {ORANGE}{COMMA}{BLACK} д{P ен ни} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Града нараства всеки {ORANGE}{COMMA}{BLACK} д{P ен ни} (субсидиран) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Града нараства всеги {ORANGE}{COMMA}{BLACK}{NBSP}д{P ен ни} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Града нараства всеки {ORANGE}{COMMA}{BLACK}{NBSP}д{P ен ни} (субсидиран) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Града {RED}не{BLACK} расте STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Лимит на шумът в градът: {ORANGE}{COMMA}{BLACK} най-много: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Фиксиране на главния изглед върху града. Ctrl+Click отваря прозорец на нов изглед върху града. @@ -2921,11 +2965,13 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Пок STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} Подкупването на местната власт за да увеличи рейтинга носи огромен риск ако бъдете хванати.{} Цена: {CURRENCY_LONG} # Goal window +STR_GOALS_CAPTION :{WHITE}{COMPANY} Цели STR_GOALS_SPECTATOR_CAPTION :{WHITE}Глобални цели STR_GOALS_GLOBAL_TITLE :{BLACK}Основни цели: STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_NONE :{ORANGE}- Никакви - STR_GOALS_SPECTATOR_NONE :{ORANGE}- Неприложимо- +STR_GOALS_PROGRESS :{ORANGE}напредък{STRING} STR_GOALS_COMPANY_TITLE :{BLACK}Цели на компанията: STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Кликни на задачата за да центрирате камерата на фабрика/град/плочка. Ctrl+Click отваря нов прозорец центриран на фабрика/град/плочка @@ -2935,8 +2981,8 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Информа STR_GOAL_QUESTION_CAPTION_WARNING :Внимание STR_GOAL_QUESTION_CAPTION_ERROR :Грешка -### Start of Goal Question button list -STR_GOAL_QUESTION_BUTTON_CANCEL :Недобре +############ Start of Goal Question button list +STR_GOAL_QUESTION_BUTTON_CANCEL :Откажи STR_GOAL_QUESTION_BUTTON_OK :Добре STR_GOAL_QUESTION_BUTTON_NO :Не STR_GOAL_QUESTION_BUTTON_YES :Да @@ -2954,6 +3000,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Рестарт STR_GOAL_QUESTION_BUTTON_POSTPONE :Отложи STR_GOAL_QUESTION_BUTTON_SURRENDER :Предай се STR_GOAL_QUESTION_BUTTON_CLOSE :Затвори +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Субсидии @@ -2965,6 +3012,8 @@ STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Натисни върху услугата за да се фокусира върху индустрията/града. Ctrl отваря нов изглед към индустрията/града # Story book window +STR_STORY_BOOK_NEXT_PAGE :{BLACK}Следваща +STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Отиди на следващата страница STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Невалидна цел # Station list window @@ -2993,8 +3042,29 @@ STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPAN STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Рейтинги STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Покажи нивото на обслужване +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Месечни доставки и местен рейтинг: +STR_STATION_VIEW_GROUP :{BLACK}По група +STR_STATION_VIEW_WAITING_STATION :Станция: Изчакване +STR_STATION_VIEW_WAITING_AMOUNT :Сума: Изчакване +STR_STATION_VIEW_PLANNED_STATION :Станция: Планирано +STR_STATION_VIEW_PLANNED_AMOUNT :Количество: Планирано +STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} от {STATION} +STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT} посредством {STATION} +STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} до {STATION} +STR_STATION_VIEW_FROM_ANY :{RED}{CARGO_SHORT} от неизвестна станция +STR_STATION_VIEW_TO_ANY :{RED}{CARGO_SHORT} за която и да е гара +STR_STATION_VIEW_VIA_ANY :{RED}{CARGO_SHORT} посредством която и да е гара +STR_STATION_VIEW_FROM_HERE :{GREEN}{CARGO_SHORT} от тази гара +STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_SHORT} спиране на тази гара +STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} до тази станция +STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} без прекъсване +STR_STATION_VIEW_GROUP_S_V_D :Източник-Чрез-Дестинация +STR_STATION_VIEW_GROUP_S_D_V :Източник-Дестинация-Посредством +STR_STATION_VIEW_GROUP_V_S_D :Посредством-Източник-Дестинация +STR_STATION_VIEW_GROUP_V_D_S :Посредством-Дестинация-Източник +STR_STATION_VIEW_GROUP_D_S_V :Дестинация-Източник-Посредством STR_STATION_VIEW_GROUP_D_V_S :Посока-през-Източника ############ range for rating starts @@ -3270,6 +3340,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Преи STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Превключи показването на типа на локомотива +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Превключи показването на типа на автомобила +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Превключи показването на типа на кораба +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Превключи показването на типа на самолета + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Преименуване на влак STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Преименувай МПС-то STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Промяна името на кораба @@ -3374,6 +3459,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Автобус/ STR_REPLACE_VEHICLE_SHIP :Кораб STR_REPLACE_VEHICLE_AIRCRAFT :Самолет +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Използвани автомобили +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Колона с автомобили, които притежавате +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Готови автомобили +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Колона с готови за подмяна автомобили + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Избор на нов двигател за замяната STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Изберете нов двигател, който бихте желали да поставите на мястото на избрания в ляво двигател @@ -3498,7 +3588,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Капа STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Сума за преместване: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Дни на обслужване: {LTBLUE}{COMMA}дни{BLACK} Последно облужване: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Дни на обслужване: {LTBLUE}{COMMA}{NBSP}дни{BLACK} Последно облужване: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Интервал на сервиз: {LTBLUE}{COMMA}%{BLACK} Последен сервиз: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Удължава периода за сервиз с 10. Ctrl-click удължава периода за сервиз с 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Намалява периода за сервиз с 10. Ctrl-click намалява периода за сервиз с 5 @@ -3730,8 +3820,8 @@ STR_TIMETABLE_TRAVEL_FOR :Пътувай STR_TIMETABLE_TRAVEL_FOR_SPEED :Пътувай за {STRING} с не повече от {VELOCITY} STR_TIMETABLE_STAY_FOR :и остани за {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :и отпътувай към {STRING} -STR_TIMETABLE_DAYS :{COMMA} ден{P "" а} -STR_TIMETABLE_TICKS :{COMMA} щракане{P "" та} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}ден{P "" а} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}щракане{P "" та} STR_TIMETABLE_TOTAL_TIME :{BLACK}Ще трябва {STRING} за това разписание да бъде приключено STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Това разписание ще вземе най-малко {STRING} за да приклучи (не всичко е планирано) @@ -3968,6 +4058,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Изко STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Морското ниво е вече достигнато STR_ERROR_TOO_HIGH :{WHITE}Прекалено високо STR_ERROR_ALREADY_LEVELLED :{WHITE}... вече е равно +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}След моста над него, ще бъде твърде високо. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Не може да бъде променено името на компанията... @@ -4018,6 +4109,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... го STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... може да бъде построено само над снежната линия STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... може да бъде построено само под снежната линия +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Няма подходящо място за '{STRING}' индустрия +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Промяна на параметрите за генериране на карта, за да получите по-добра карта + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Тук не може да бъде построена ЖП гара... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Тук не може да бъде построена автогара... @@ -4154,6 +4248,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Първ STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Не може да започва и да свърша на едно и също място STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Мостни начала не са на същото ниво STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Мостът е ту нисък за теренът +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Мостът е прекалено висок за този терен. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Началото и краят трябва да са на една линия STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... краищата на моста трябва да бъдат на земя STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... мостът е много дълъг @@ -4717,6 +4812,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (скрит) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4752,8 +4848,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index c8ff65790c..b9de63180f 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -36,11 +36,11 @@ STR_CARGO_PLURAL_LIVESTOCK :{G=Masculin}Bes STR_CARGO_PLURAL_GOODS :{G=Femenin}Mercaderies STR_CARGO_PLURAL_GRAIN :{G=Masculin}Gra STR_CARGO_PLURAL_WOOD :{G=Femenin}Fusta -STR_CARGO_PLURAL_IRON_ORE :{G=Masculin}Mineral de Ferro +STR_CARGO_PLURAL_IRON_ORE :{G=Masculin}Mineral de ferro STR_CARGO_PLURAL_STEEL :{G=Masculin}Acer STR_CARGO_PLURAL_VALUABLES :{G=Masculin}Valors -STR_CARGO_PLURAL_COPPER_ORE :{G=Masculin}Mineral de Coure -STR_CARGO_PLURAL_MAIZE :{G=Masculin}Blat de Moro +STR_CARGO_PLURAL_COPPER_ORE :{G=Masculin}Mineral de coure +STR_CARGO_PLURAL_MAIZE :{G=Masculin}Blat de moro STR_CARGO_PLURAL_FRUIT :{G=Femenin}Fruita STR_CARGO_PLURAL_DIAMONDS :{G=Masculin}Diamants STR_CARGO_PLURAL_FOOD :{G=Masculin}Menjar @@ -53,12 +53,12 @@ STR_CARGO_PLURAL_SUGAR :{G=Masculin}Suc STR_CARGO_PLURAL_TOYS :{G=Femenin}Joguines STR_CARGO_PLURAL_CANDY :{G=Masculin}Dolços STR_CARGO_PLURAL_COLA :{G=Masculin}Refrescs -STR_CARGO_PLURAL_COTTON_CANDY :{G=Masculin}Cotó de Sucre +STR_CARGO_PLURAL_COTTON_CANDY :{G=Masculin}Cotó de sucre STR_CARGO_PLURAL_BUBBLES :{G=Femenin}Bombolles STR_CARGO_PLURAL_TOFFEE :{G=Masculin}Caramels STR_CARGO_PLURAL_BATTERIES :{G=Femenin}Bateries STR_CARGO_PLURAL_PLASTIC :{G=Masculin}Plàstic -STR_CARGO_PLURAL_FIZZY_DRINKS :{G=Femenin}Begudes Gasoses +STR_CARGO_PLURAL_FIZZY_DRINKS :{G=Femenin}Begudes gasoses # Singular cargo name STR_CARGO_SINGULAR_NOTHING : @@ -70,11 +70,11 @@ STR_CARGO_SINGULAR_LIVESTOCK :{G=Masculin}Bes STR_CARGO_SINGULAR_GOODS :{G=Femenin}Mercaderia STR_CARGO_SINGULAR_GRAIN :{G=Masculin}Gra STR_CARGO_SINGULAR_WOOD :{G=Femenin}Fusta -STR_CARGO_SINGULAR_IRON_ORE :{G=Masculin}Mineral de Ferro +STR_CARGO_SINGULAR_IRON_ORE :{G=Masculin}Mineral de ferro STR_CARGO_SINGULAR_STEEL :{G=Masculin}Acer STR_CARGO_SINGULAR_VALUABLES :{G=Masculin}Valors -STR_CARGO_SINGULAR_COPPER_ORE :{G=Masculin}Mineral de Coure -STR_CARGO_SINGULAR_MAIZE :{G=Masculin}Blat de Moro +STR_CARGO_SINGULAR_COPPER_ORE :{G=Masculin}Mineral de coure +STR_CARGO_SINGULAR_MAIZE :{G=Masculin}Blat de moro STR_CARGO_SINGULAR_FRUIT :{G=Femenin}Fruita STR_CARGO_SINGULAR_DIAMOND :{G=Masculin}Diamant STR_CARGO_SINGULAR_FOOD :{G=Masculin}Queviures @@ -87,39 +87,39 @@ STR_CARGO_SINGULAR_SUGAR :{G=Masculin}Suc STR_CARGO_SINGULAR_TOY :{G=Femenin}Joguina STR_CARGO_SINGULAR_CANDY :{G=Masculin}Dolç STR_CARGO_SINGULAR_COLA :{G=Masculin}Refresc -STR_CARGO_SINGULAR_COTTON_CANDY :{G=Masculin}Cotó de Sucre +STR_CARGO_SINGULAR_COTTON_CANDY :{G=Masculin}Cotó de sucre STR_CARGO_SINGULAR_BUBBLE :{G=Femenin}Bombolla STR_CARGO_SINGULAR_TOFFEE :{G=Masculin}Caramel STR_CARGO_SINGULAR_BATTERY :{G=Femenin}Pila STR_CARGO_SINGULAR_PLASTIC :{G=Masculin}Plàstic -STR_CARGO_SINGULAR_FIZZY_DRINK :{G=Femenin}Beguda Gasosa +STR_CARGO_SINGULAR_FIZZY_DRINK :{G=Femenin}Beguda gasosa # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{G=Masculin}{COMMA} passatger{P "" s} +STR_QUANTITY_PASSENGERS :{G=Masculin}{COMMA}{NBSP}passatger{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} de carbó -STR_QUANTITY_MAIL :{COMMA} sac{P "" s} de correu +STR_QUANTITY_MAIL :{COMMA}{NBSP}sac{P "" s} de correu STR_QUANTITY_OIL :{VOLUME_LONG} de petroli -STR_QUANTITY_LIVESTOCK :{COMMA} cap{P "" s} de bestiar -STR_QUANTITY_GOODS :{COMMA} palet{P "" s} de mercaderies +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}cap{P "" s} de bestiar +STR_QUANTITY_GOODS :{COMMA}{NBSP}palet{P "" s} de mercaderies STR_QUANTITY_GRAIN :{WEIGHT_LONG} de gra STR_QUANTITY_WOOD :{WEIGHT_LONG} de fusta STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} de mineral de ferro STR_QUANTITY_STEEL :{WEIGHT_LONG} d'acer -STR_QUANTITY_VALUABLES :{G=Masculin}{COMMA} sac{P "" s} de valors +STR_QUANTITY_VALUABLES :{G=Masculin}{COMMA}{NBSP}sac{P "" s} de valors STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de mineral de coure STR_QUANTITY_MAIZE :{WEIGHT_LONG} de blat de moro STR_QUANTITY_FRUIT :{WEIGHT_LONG} de fruita -STR_QUANTITY_DIAMONDS :{COMMA} boss{P a es} de diamants +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}boss{P a es} de diamants STR_QUANTITY_FOOD :{WEIGHT_LONG} de queviures STR_QUANTITY_PAPER :{WEIGHT_LONG} de paper -STR_QUANTITY_GOLD :{G=Femenin}{COMMA} sa{P ca ques} d'or +STR_QUANTITY_GOLD :{G=Femenin}{COMMA}{NBSP}sa{P ca ques} d'or STR_QUANTITY_WATER :{VOLUME_LONG} d'aigua STR_QUANTITY_WHEAT :{WEIGHT_LONG} de blat STR_QUANTITY_RUBBER :{VOLUME_LONG} de cautxú STR_QUANTITY_SUGAR :{WEIGHT_LONG} de sucre -STR_QUANTITY_TOYS :{COMMA} joguin{P a es} -STR_QUANTITY_SWEETS :{G=Femenin}{COMMA} boss{P a es} de dolços +STR_QUANTITY_TOYS :{COMMA}{NBSP}joguin{P a es} +STR_QUANTITY_SWEETS :{G=Femenin}{COMMA}{NBSP}boss{P a es} de dolços STR_QUANTITY_COLA :{VOLUME_LONG} de refrescs STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} de cotó de sucre STR_QUANTITY_BUBBLES :{COMMA} bomboll{P a es} @@ -127,7 +127,7 @@ STR_QUANTITY_TOFFEE :{WEIGHT_LONG} d STR_QUANTITY_BATTERIES :{COMMA} pil{P a es} STR_QUANTITY_PLASTIC :{VOLUME_LONG} de plàstic STR_QUANTITY_FIZZY_DRINKS :{G=Femenin}{COMMA} begud{P a es} gasos{P a es} -STR_QUANTITY_N_A :N/A +STR_QUANTITY_N_A :n/d # Two letter abbreviation of cargo name STR_ABBREV_NOTHING : @@ -157,7 +157,7 @@ STR_ABBREV_TOYS :{TINY_FONT}JO STR_ABBREV_SWEETS :{TINY_FONT}DO STR_ABBREV_COLA :{TINY_FONT}RF STR_ABBREV_CANDYFLOSS :{TINY_FONT}CS -STR_ABBREV_BUBBLES :{TINY_FONT}BM +STR_ABBREV_BUBBLES :{TINY_FONT}BB STR_ABBREV_TOFFEE :{TINY_FONT}CA STR_ABBREV_BATTERIES :{TINY_FONT}BA STR_ABBREV_PLASTIC :{TINY_FONT}PL @@ -166,22 +166,22 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}TOT # 'Mode' of transport for cargoes -STR_PASSENGERS :{G=Masculin}{COMMA} passatger{P "" s} -STR_BAGS :{G=Masculin}{COMMA} sac{P "" s} -STR_TONS :{G=Femenin}{COMMA} ton{P a es} -STR_LITERS :{G=Masculin}{COMMA} litre{P "" s} -STR_ITEMS :{G=Masculin}{COMMA} cap{P "" s} -STR_CRATES :{G=Masculin}{COMMA} palet{P "" s} +STR_PASSENGERS :{G=Masculin}{COMMA}{NBSP}passatger{P "" s} +STR_BAGS :{G=Masculin}{COMMA}{NBSP}sac{P "" s} +STR_TONS :{G=Femenin}{COMMA}{NBSP}ton{P a es} +STR_LITERS :{G=Masculin}{COMMA}{NBSP}litre{P "" s} +STR_ITEMS :{G=Masculin}{COMMA}{NBSP}cap{P "" s} +STR_CRATES :{G=Masculin}{COMMA}{NBSP}palet{P "" s} # Colours, do not shuffle -STR_COLOUR_DARK_BLUE :{G=Masculin}Blau Fosc -STR_COLOUR_PALE_GREEN :{G=Masculin}Verd Pàl·lid +STR_COLOUR_DARK_BLUE :{G=Masculin}Blau fosc +STR_COLOUR_PALE_GREEN :{G=Masculin}Verd pàl·lid STR_COLOUR_PINK :{G=Masculin}Rosa STR_COLOUR_YELLOW :{G=Masculin}Groc STR_COLOUR_RED :{G=Masculin}Vermell -STR_COLOUR_LIGHT_BLUE :{G=Masculin}Blau Cel +STR_COLOUR_LIGHT_BLUE :{G=Masculin}Blau cel STR_COLOUR_GREEN :{G=Masculin}Verd -STR_COLOUR_DARK_GREEN :{G=Masculin}Verd Fosc +STR_COLOUR_DARK_GREEN :{G=Masculin}Verd fosc STR_COLOUR_BLUE :{G=Masculin}Blau STR_COLOUR_CREAM :{G=Masculin}Crema STR_COLOUR_MAUVE :{G=Masculin}Malva @@ -225,34 +225,45 @@ STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m STR_UNITS_HEIGHT_SI :{G=Masculin}{COMMA}{NBSP}m # Common window strings -STR_LIST_FILTER_TITLE :{BLACK}Cadena de filtre: -STR_LIST_FILTER_OSKTITLE :{BLACK}Introdueix una cadena de filtre +STR_LIST_FILTER_TITLE :{BLACK}Cadena de filtrat: +STR_LIST_FILTER_OSKTITLE :{BLACK}Introdueix una cadena de filtrat STR_LIST_FILTER_TOOLTIP :{BLACK}Introdueix una paraula clau per filtrar la llista de -STR_TOOLTIP_GROUP_ORDER :{BLACK}Selecciona ordre d'agrupament -STR_TOOLTIP_SORT_ORDER :{BLACK}Selecciona l'ordre de classificació (descendent/ascendent) -STR_TOOLTIP_SORT_CRITERIA :{BLACK}Selecciona el criteri de classificació -STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Selecciona el criteri de filtratge -STR_BUTTON_SORT_BY :{BLACK}Ordena per +STR_TOOLTIP_GROUP_ORDER :{BLACK}Selecciona l'agrupament de la càrrega +STR_TOOLTIP_SORT_ORDER :{BLACK}Selecciona si l'ordre ha de ser descendent o ascendent +STR_TOOLTIP_SORT_CRITERIA :{BLACK}Selecciona el criteri per ordenar la llista +STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Filtra per tipus de càrrega +STR_BUTTON_SORT_BY :{BLACK}Ordena per: STR_BUTTON_LOCATION :{G=Masculin}{BLACK}Lloc STR_BUTTON_RENAME :{BLACK}Canvia el nom STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Tanca la finestra -STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Títol de la finestra - arrossega això per moure la finestra -STR_TOOLTIP_SHADE :{BLACK}Ombra de la finestra - mostra només la barra de títol +STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Títol de la finestra: arrossegueu el títol per desplaçar la finestra. +STR_TOOLTIP_SHADE :{BLACK}Ombra de la finestra: mostra només la barra de títol. STR_TOOLTIP_DEBUG :{BLACK}Mostra la informació de depuració NewGRF -STR_TOOLTIP_DEFSIZE :{BLACK}Redimensiona la finestra a la mida predeterminada. Ctrl+Clic per desar la mida actual com a predeterminada -STR_TOOLTIP_STICKY :{BLACK}Marca aquesta finestra com a no eliminable per la tecla 'Tanca totes les Finestres' Ctrl+Clic per desar també l'estat predeterminat +STR_TOOLTIP_DEFSIZE :{BLACK}Redimensiona la finestra a la mida predeterminada. Ctrl+Clic desa la mida actual com a predeterminada. +STR_TOOLTIP_STICKY :{BLACK}Marca aquesta finestra com a no eliminable per la tecla «Tanca totes les finestres». Ctrl+Clic per desar també l'estat predeterminat. STR_TOOLTIP_RESIZE :{BLACK}Clica i arrossega per redimensionar aquesta finestra -STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Intercanvia mida gran/petita de finestra -STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de desplaçament - desplaça la llista amunt/avall -STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de desplaçament - desplaça la llista dreta/esquerra -STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Enderroca edificis, etc. en un quadre de terreny. Ctrl selecciona l'àrea en diagonal. Shift commuta construir/mostrar el cost estimat +STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Commuta entre la mida gran i petita de la finestra +STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de desplaçament: desplaça la llista amunt/avall. +STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de desplaçament: desplaça la llista lateralment. +STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Neteja les caselles seleccionades (enderroca edificis, tala arbres...). Per seleccionar l'àrea en diagonal, cliqueu Ctrl. Shift commuta construir/mostrar el cost estimat. + +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Mostra ocultats +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Mostra ocultats +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Mostra ocultats +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Mostra ocultats + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Activant aquest botó, també es mostraran els vehicles ferroviaris ocultats +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Activant aquest botó, també es mostraran els vehicles de carretera ocultats +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Activant aquest botó, també es mostraran els vaixells ocultats +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Activant aquest botó, també es mostraran les aeronaus ocultades # Query window STR_BUTTON_DEFAULT :{BLACK}Predeterminat STR_BUTTON_CANCEL :{BLACK}Cancel·la -STR_BUTTON_OK :{BLACK}Bé +STR_BUTTON_OK :{BLACK}D'acord # On screen keyboard window STR_OSK_KEYBOARD_LAYOUT :`1234567890-=\qwertyuiop[]asdfghjkl;' zxcvbnm,./ . @@ -272,12 +283,12 @@ STR_SORT_BY_CAPTION_DATE :{BLACK}Data STR_SORT_BY_NAME :Nom STR_SORT_BY_PRODUCTION :Producció STR_SORT_BY_TYPE :Tipus -STR_SORT_BY_TRANSPORTED :Transportat +STR_SORT_BY_TRANSPORTED :% transportat STR_SORT_BY_NUMBER :Número STR_SORT_BY_PROFIT_LAST_YEAR :Benefici darrer any STR_SORT_BY_PROFIT_THIS_YEAR :Benefici aquest any STR_SORT_BY_AGE :Antiguitat -STR_SORT_BY_RELIABILITY :Rendibilitat +STR_SORT_BY_RELIABILITY :Fiabilitat STR_SORT_BY_TOTAL_CAPACITY_PER_CARGOTYPE :Capac. total per tipus de càrrega STR_SORT_BY_MAX_SPEED :Velocitat màxima STR_SORT_BY_MODEL :Model @@ -285,12 +296,12 @@ STR_SORT_BY_VALUE :Valor STR_SORT_BY_LENGTH :Llargada STR_SORT_BY_LIFE_TIME :Temps de vida restant STR_SORT_BY_TIMETABLE_DELAY :Retràs de l'horari -STR_SORT_BY_FACILITY :Tipus de estació +STR_SORT_BY_FACILITY :Tipus d'estació STR_SORT_BY_WAITING_TOTAL :Càrrega en espera total STR_SORT_BY_WAITING_AVAILABLE :Càrrega en espera disponible STR_SORT_BY_RATING_MAX :Rati de càrrega més alt STR_SORT_BY_RATING_MIN :Rati de càrrega més baix -STR_SORT_BY_ENGINE_ID :IDModel (ordre clàssic) +STR_SORT_BY_ENGINE_ID :Número de model (ordre clàssic) STR_SORT_BY_COST :Cost STR_SORT_BY_POWER :Potència STR_SORT_BY_TRACTIVE_EFFORT :Esforç de tracció @@ -303,67 +314,67 @@ STR_SORT_BY_POPULATION :Població STR_SORT_BY_RATING :Qualificació # Tooltips for the main toolbar -STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Pausa la partida -STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Avanç ràpid de la partida +STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Posa en pausa o reprèn la partida +STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Avança la partida el més ràpid possible STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Opcions STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Desa la partida, abandona-la o surt del programa -STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Mostra el mapa -STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Mostra el directori de poblacions +STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Mostra el mapa, finestres de visualització o llista de senyals, entre d'altres +STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Mostra la llista de poblacions STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Mostra les subvencions STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Mostra la llista d'estacions de la companyia -STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Mostra informació financera de la companyia -STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Mostra informació general de la companyia -STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Mostra llibre -STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Mostra llista d'objectius -STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Mostra gràfics +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Mostra la informació financera de la companyia +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Mostra la informació general de la companyia +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Mostra el llibre de partida +STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Mostra la llista d'objectius +STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Mostra gràfics de les empreses STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Mostra la taula de la lliga d'empreses STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Finança la construcció d'una nova indústria -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Mostra la llista de trens de la companyia. Ctrl+Clic commuta l'obertura de la llista de grups/vehicles -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Mostra la llista de vehicles de la companyia. Ctrl+Clic commuta l'obertura de la llista de grups/vehicles -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Mostra la llista de vaixells de la companyia. Ctrl+Clic canvia entre l'obertura de la llista de grups/vehicles -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Mostra la llista d'avions de la companyia. Ctrl+Clic commuta l'obertura de la llista de grups/vehicles +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Mostra la llista de trens de la companyia. Ctrl+Clic commuta l'obertura de la llista de grups/vehicles. +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Mostra la llista de vehicles de la companyia. Ctrl+Clic commuta l'obertura de la llista de grups/vehicles. +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Mostra la llista de vaixells de la companyia. Ctrl+Clic canvia entre l'obertura de la llista de grups/vehicles. +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Mostra la llista d'avions de la companyia. Ctrl+Clic commuta l'obertura de la llista de grups/vehicles. STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Apropar-se STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Allunyar-se STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Construeix vies STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Construeix carreteres STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Construeix ports STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Construeix aeroports -STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Obre la barra d'eines del terreny per elevar/rebaixar nivell, plantar arbres, etc. +STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Obre la barra d'eines del terreny per elevar/rebaixar el terreny, plantar arbres, etc. STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Mostra la finestra de so/música -STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Mostra els darrers missatges/notícies, mostra les opcions de missatges -STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Informació del terreny, terminal, depuració d'scripts, captures de pantalla, quant a OpenTTD +STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Mostra els darrers missatges/notícies i l'historial disponible +STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Informació de terreny, consola, depuració d'scripts, captures de pantalla, informació de l'OpenTTD... STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Commuta barres d'eines # Extra tooltips for the scenario editor toolbar -STR_SCENEDIT_TOOLBAR_TOOLTIP_SAVE_SCENARIO_LOAD_SCENARIO :{BLACK}Desa l'escenari, carrega un escenari, abandona l'editor d'escenaris, surt +STR_SCENEDIT_TOOLBAR_TOOLTIP_SAVE_SCENARIO_LOAD_SCENARIO :{BLACK}Desa o carrega un escenari o bé surt de l'editor o de l'OpenTTD STR_SCENEDIT_TOOLBAR_OPENTTD :{YELLOW}OpenTTD -STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Editor d'Escenaris +STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Editor d'escenaris STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Retarda la data d'inici 1 any STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Avança la data d'inici 1 any STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Clica per introduir l'any d'inici -STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Mostra el mapa, directori de poblacions -STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Generació de Paisatges -STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Generació de Poblacions +STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Mostra el mapa o el llistat de poblacions +STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Generació del terreny +STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Generació de poblacions STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Generació d'indústries STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Construcció de carreteres -STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Planta arbres. Shift commuta construeix/mostra el cost estimat +STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Planta arbres. Shift per sols mostrar el cost estimat. STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Situa un senyal -STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Situa objecte. Shift commuta construeix/mostra el cost estimat +STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Situa objecte. Shift per sols mostrar el cost estimat. ############ range for SE file menu starts STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Desa l'escenari STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Carrega un escenari -STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Desa mapa d'alçades -STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Carrega Mapa d'alçades +STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Desa el mapa d'alçades +STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Carrega un mapa d'alçades STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Surt de l'editor d'escenaris STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Surt ############ range for SE file menu starts ############ range for settings menu starts -STR_SETTINGS_MENU_GAME_OPTIONS :Opcions de la Partida -STR_SETTINGS_MENU_CONFIG_SETTINGS :Paràmetres avançats -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Paràmetres de les IA/Script de la partida +STR_SETTINGS_MENU_GAME_OPTIONS :Opcions de la partida +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_NEWGRF_SETTINGS :Extensions NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcions de transparència STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostra els noms de les poblacions @@ -392,7 +403,7 @@ STR_MAP_MENU_LINGRAPH_LEGEND :Llegenda del fl STR_MAP_MENU_SIGN_LIST :Llista de senyals ############ range for town menu starts -STR_TOWN_MENU_TOWN_DIRECTORY :Directori de poblacions +STR_TOWN_MENU_TOWN_DIRECTORY :Llista de poblacions STR_TOWN_MENU_FOUND_TOWN :Funda una població ############ range ends here @@ -401,22 +412,22 @@ STR_SUBSIDIES_MENU_SUBSIDIES :Subvencions ############ range ends here ############ range for graph menu starts -STR_GRAPH_MENU_OPERATING_PROFIT_GRAPH :Gràfic de benefici operatiu +STR_GRAPH_MENU_OPERATING_PROFIT_GRAPH :Gràfic de beneficis operatius STR_GRAPH_MENU_INCOME_GRAPH :Gràfic d'ingressos STR_GRAPH_MENU_DELIVERED_CARGO_GRAPH :Gràfic d'entrega de càrrega STR_GRAPH_MENU_PERFORMANCE_HISTORY_GRAPH :Gràfic històric de rendiment -STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Gràfic de valor de l'empresa +STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Gràfic del valor de les empreses STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Tarifes de pagament per càrrega ############ range ends here ############ range for company league menu starts STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :Taula de la lliga d'empreses STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Detall de ratis de rendiment -STR_GRAPH_MENU_HIGHSCORE :Taula de Puntuacions +STR_GRAPH_MENU_HIGHSCORE :Taula de puntuacions ############ range ends here ############ range for industry menu starts -STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :Directori d'indústries +STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :Llista d'indústries STR_INDUSTRY_MENU_INDUSTRY_CHAIN :Cadenes industrials STR_INDUSTRY_MENU_FUND_NEW_INDUSTRY :Finança una nova indústria ############ range ends here @@ -438,11 +449,11 @@ STR_WATERWAYS_MENU_WATERWAYS_CONSTRUCTION :Construcció de ############ range ends here ############ range for airport construction menu starts -STR_AIRCRAFT_MENU_AIRPORT_CONSTRUCTION :Construcció d'aeroport +STR_AIRCRAFT_MENU_AIRPORT_CONSTRUCTION :Construcció d'aeroports ############ range ends here ############ range for landscaping menu starts -STR_LANDSCAPING_MENU_LANDSCAPING :Paisatges +STR_LANDSCAPING_MENU_LANDSCAPING :Modificació del paisatge STR_LANDSCAPING_MENU_PLANT_TREES :Planta arbres STR_LANDSCAPING_MENU_PLACE_SIGN :Situa un senyal ############ range ends here @@ -457,15 +468,15 @@ STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Historial de mi ############ range ends here ############ range for about menu starts -STR_ABOUT_MENU_LAND_BLOCK_INFO :Informació de l'àrea de terreny +STR_ABOUT_MENU_LAND_BLOCK_INFO :Informació de la casella de terreny STR_ABOUT_MENU_SEPARATOR : -STR_ABOUT_MENU_TOGGLE_CONSOLE :Canvia al terminal -STR_ABOUT_MENU_AI_DEBUG :Depuració de les IA/Script de la partida +STR_ABOUT_MENU_TOGGLE_CONSOLE :Mostra/oculta la consola +STR_ABOUT_MENU_AI_DEBUG :Depuració de les IA i l'script de la partida STR_ABOUT_MENU_SCREENSHOT :Captura de pantalla STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Captura de pantalla amb el zoom màxim STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Captura de pantalla amb el zoom predeterminat STR_ABOUT_MENU_GIANT_SCREENSHOT :Captura de pantalla de tot el mapa -STR_ABOUT_MENU_ABOUT_OPENTTD :Quant a 'OpenTTD' +STR_ABOUT_MENU_ABOUT_OPENTTD :Quant a l'OpenTTD STR_ABOUT_MENU_SPRITE_ALIGNER :Alineador d'sprites STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Commuta les caixes delimitadores STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Commuta el colorejat dels blocs bruts @@ -524,18 +535,18 @@ STR_DAY_NUMBER_31ST :31 ############ range for days ends ############ range for months starts -STR_MONTH_ABBREV_JAN :Gen -STR_MONTH_ABBREV_FEB :Feb -STR_MONTH_ABBREV_MAR :Mar -STR_MONTH_ABBREV_APR :Abr -STR_MONTH_ABBREV_MAY :Mai -STR_MONTH_ABBREV_JUN :Jun -STR_MONTH_ABBREV_JUL :Jul -STR_MONTH_ABBREV_AUG :Ago -STR_MONTH_ABBREV_SEP :Sep -STR_MONTH_ABBREV_OCT :Oct -STR_MONTH_ABBREV_NOV :Nov -STR_MONTH_ABBREV_DEC :Des +STR_MONTH_ABBREV_JAN :gen. +STR_MONTH_ABBREV_FEB :febr. +STR_MONTH_ABBREV_MAR :març +STR_MONTH_ABBREV_APR :abr. +STR_MONTH_ABBREV_MAY :maig +STR_MONTH_ABBREV_JUN :juny +STR_MONTH_ABBREV_JUL :jul. +STR_MONTH_ABBREV_AUG :ag. +STR_MONTH_ABBREV_SEP :set. +STR_MONTH_ABBREV_OCT :oct. +STR_MONTH_ABBREV_NOV :nov. +STR_MONTH_ABBREV_DEC :des. STR_MONTH_JAN :Gener STR_MONTH_FEB :Febrer @@ -553,44 +564,44 @@ STR_MONTH_DEC :Desembre # Graph window STR_GRAPH_KEY_BUTTON :{BLACK}Llegenda -STR_GRAPH_KEY_TOOLTIP :{BLACK}Mostra la llegenda als gràfics +STR_GRAPH_KEY_TOOLTIP :{BLACK}Mostra la llegenda dels gràfics STR_GRAPH_X_LABEL_MONTH :{TINY_FONT}{STRING}{} {STRING} STR_GRAPH_X_LABEL_MONTH_YEAR :{TINY_FONT}{STRING}{} {STRING}{}{NUM} STR_GRAPH_Y_LABEL :{TINY_FONT}{STRING} STR_GRAPH_Y_LABEL_NUMBER :{TINY_FONT}{COMMA} -STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Gràfic de Rendiment d'Operacions -STR_GRAPH_INCOME_CAPTION :{WHITE}Gràfic d'Ingressos +STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Gràfic de rendiment d'operacions +STR_GRAPH_INCOME_CAPTION :{WHITE}Gràfic d'ingressos STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Unitats de càrrega entregada -STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Ratis de rendiment de la companyia (màxim rati=1000) +STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Ratis de rendiment de la companyia (rati màxim: 1000) STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Valors de la companyia -STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Tarifes de Pagament de Càrrega +STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Tarifes de pagament de càrregues STR_GRAPH_CARGO_PAYMENT_RATES_X_LABEL :{TINY_FONT}{BLACK}Dies en trànsit -STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Pagament per entregar 10 unitats (o 10,000 litres) de càrrega a una distància de 20 quadres +STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Pagament per entregar 10 unitats (o 10.000 litres) de càrrega a una distància de 20 caselles STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Activa-ho tot STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Desactiva-ho tot STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Mostra totes les càrregues al gràfic de ratis de pagament de càrregues STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}No mostris càrregues al gràfic de ratis de pagament de càrregues -STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Activa/desactiva gràfic de tipus de càrrega +STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Mostra/amaga el tipus de càrrega al gràfic STR_GRAPH_CARGO_PAYMENT_CARGO :{TINY_FONT}{BLACK}{STRING} STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP :{BLACK}Mostra ratis de rendiment detallats # Graph key window STR_GRAPH_KEY_CAPTION :{WHITE}Llegenda dels gràfics de la companyia -STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}Clica aquí per activar/desactivar l'entrada als gràfics de la companyia +STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}Clica aquí per mostrar/amagar la companyia al gràfic # Company league window -STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}Taula de la Lliga d'Empreses +STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}Taula de la lliga d'empreses STR_COMPANY_LEAGUE_COMPANY_NAME :{ORANGE}{COMPANY} {BLACK}{COMPANY_NUM} '{STRING}' STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ENGINEER :Enginyer -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :Director de Trànsit -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :Coordinador de Transport -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :Supervisor de Ruta +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :Director de trànsit +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :Coordinador de transport +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :Supervisor de ruta STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_DIRECTOR :Director -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :Cap Executiu -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :Conseller Delegat +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :Cap executiu +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :Conseller delegat STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_PRESIDENT :President STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TYCOON :Magnat @@ -604,34 +615,34 @@ STR_PERFORMANCE_DETAIL_SELECT_COMPANY_TOOLTIP :{BLACK}Veure el ############ Those following lines need to be in this order!! STR_PERFORMANCE_DETAIL_VEHICLES :{BLACK}Vehicles: STR_PERFORMANCE_DETAIL_STATIONS :{BLACK}Estacions: -STR_PERFORMANCE_DETAIL_MIN_PROFIT :{BLACK}Mín. benefici: -STR_PERFORMANCE_DETAIL_MIN_INCOME :{BLACK}Mín. ingrés: -STR_PERFORMANCE_DETAIL_MAX_INCOME :{BLACK}Màx. ingrés: +STR_PERFORMANCE_DETAIL_MIN_PROFIT :{BLACK}Benefici menor: +STR_PERFORMANCE_DETAIL_MIN_INCOME :{BLACK}Ingrés mínim: +STR_PERFORMANCE_DETAIL_MAX_INCOME :{BLACK}Ingrés màxim: STR_PERFORMANCE_DETAIL_DELIVERED :{BLACK}Entregat: STR_PERFORMANCE_DETAIL_CARGO :{BLACK}Càrrega: STR_PERFORMANCE_DETAIL_MONEY :{BLACK}Diner: STR_PERFORMANCE_DETAIL_LOAN :{BLACK}Préstec: STR_PERFORMANCE_DETAIL_TOTAL :{BLACK}Total: ############ End of order list -STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP :{BLACK}Quantitat de vehicles que han donat beneficis el darrer any. Inclou els automòbils, trens, vaixells i avions -STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Quantitat d'estacions revisades recentment. Estacions, parades d'autobús, aeroports, etc. es compten separadament, fins i tot si pertanyen a la mateixa estació. -STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP :{BLACK}El benefici del vehicle amb els menors ingressos (només s'han considerat els vehicles més antics de 2 anys) +STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP :{BLACK}Quantitat de vehicles que han donat beneficis el darrer any. Inclou els automòbils, trens, vaixells i avions. +STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Nombre d'estacions visitades recentment per algun vehicle. Estacions, parades d'autobús, aeroports, etc. es compten per separat, fins i tot si pertanyen a la mateixa estació. +STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP :{BLACK}El benefici del vehicle amb els menors ingressos. Només es consideren els vehicles amb més de 2 anys. STR_PERFORMANCE_DETAIL_MIN_INCOME_TOOLTIP :{BLACK}Quantitat de diners guanyats durant el trimestre amb el mínim benefici dels darrers 12 trimestres STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}Quantitat de diners guanyats durant el trimestre amb el màxim benefici dels darrers 12 trimestres -STR_PERFORMANCE_DETAIL_DELIVERED_TOOLTIP :{BLACK}Unitats de càrrega entregades en els darrers quatre trimestres. -STR_PERFORMANCE_DETAIL_CARGO_TOOLTIP :{BLACK}Tipus de càrrega entregada durant el darrer trimestre. -STR_PERFORMANCE_DETAIL_MONEY_TOOLTIP :{BLACK}Quantitat de diners en efectiu d'aquesta companyia -STR_PERFORMANCE_DETAIL_LOAN_TOOLTIP :{BLACK}La quantitat de diners que aquesta companyia té com a préstec +STR_PERFORMANCE_DETAIL_DELIVERED_TOOLTIP :{BLACK}Unitats de càrrega entregades en els darrers quatre trimestres +STR_PERFORMANCE_DETAIL_CARGO_TOOLTIP :{BLACK}Tipus de càrrega entregada durant el darrer trimestre +STR_PERFORMANCE_DETAIL_MONEY_TOOLTIP :{BLACK}Quantitat de diners de què disposa aquesta companyia +STR_PERFORMANCE_DETAIL_LOAN_TOOLTIP :{BLACK}La quantitat de diners que aquesta companyia té en préstec STR_PERFORMANCE_DETAIL_TOTAL_TOOLTIP :{BLACK}Total de punts sobre els punts possibles # Music window -STR_MUSIC_JAZZ_JUKEBOX_CAPTION :{WHITE}Jukebox de Jazz +STR_MUSIC_JAZZ_JUKEBOX_CAPTION :{WHITE}Reproductor de música STR_MUSIC_PLAYLIST_ALL :{TINY_FONT}{BLACK}Tot -STR_MUSIC_PLAYLIST_OLD_STYLE :{TINY_FONT}{BLACK}Estil Antic -STR_MUSIC_PLAYLIST_NEW_STYLE :{TINY_FONT}{BLACK}Nou Estil +STR_MUSIC_PLAYLIST_OLD_STYLE :{TINY_FONT}{BLACK}Estil antic +STR_MUSIC_PLAYLIST_NEW_STYLE :{TINY_FONT}{BLACK}Estil nou STR_MUSIC_PLAYLIST_EZY_STREET :{TINY_FONT}{BLACK}Ezy Street -STR_MUSIC_PLAYLIST_CUSTOM_1 :{TINY_FONT}{BLACK}Opcional 1 -STR_MUSIC_PLAYLIST_CUSTOM_2 :{TINY_FONT}{BLACK}Opcional 2 +STR_MUSIC_PLAYLIST_CUSTOM_1 :{TINY_FONT}{BLACK}Personalitzat 1 +STR_MUSIC_PLAYLIST_CUSTOM_2 :{TINY_FONT}{BLACK}Personalitzat 2 STR_MUSIC_MUSIC_VOLUME :{TINY_FONT}{BLACK}Volum de la música STR_MUSIC_EFFECTS_VOLUME :{TINY_FONT}{BLACK}Volum dels efectes STR_MUSIC_RULER_MIN :{TINY_FONT}{BLACK}MÍN @@ -640,7 +651,7 @@ STR_MUSIC_RULER_MARKER :{TINY_FONT}{BLA STR_MUSIC_TRACK_NONE :{TINY_FONT}{DKGREEN}-- STR_MUSIC_TRACK_DIGIT :{TINY_FONT}{DKGREEN}{ZEROFILL_NUM} STR_MUSIC_TITLE_NONE :{TINY_FONT}{DKGREEN}------ -STR_MUSIC_TITLE_NAME :{TINY_FONT}{DKGREEN}"{STRING}" +STR_MUSIC_TITLE_NAME :{TINY_FONT}{DKGREEN}«{STRING}» STR_MUSIC_TRACK :{TINY_FONT}{BLACK}Pista STR_MUSIC_XTITLE :{TINY_FONT}{BLACK}Títol STR_MUSIC_SHUFFLE :{TINY_FONT}{BLACK}Aleatori @@ -648,47 +659,47 @@ STR_MUSIC_PROGRAM :{TINY_FONT}{BLA STR_MUSIC_TOOLTIP_SKIP_TO_PREVIOUS_TRACK :{BLACK}Salta a la pista anterior de la selecció STR_MUSIC_TOOLTIP_SKIP_TO_NEXT_TRACK_IN_SELECTION :{BLACK}Salta a la pista següent de la selecció STR_MUSIC_TOOLTIP_STOP_PLAYING_MUSIC :{BLACK}Para la música -STR_MUSIC_TOOLTIP_START_PLAYING_MUSIC :{BLACK}Engega la música +STR_MUSIC_TOOLTIP_START_PLAYING_MUSIC :{BLACK}Reprodueix la música STR_MUSIC_TOOLTIP_DRAG_SLIDERS_TO_SET_MUSIC :{BLACK}Arrossega els controls per establir el volum de la música i els efectes de so -STR_MUSIC_TOOLTIP_SELECT_ALL_TRACKS_PROGRAM :{BLACK}Selecciona el programa 'totes les pistes' -STR_MUSIC_TOOLTIP_SELECT_OLD_STYLE_MUSIC :{BLACK}Selecciona el programa 'música estil antic' -STR_MUSIC_TOOLTIP_SELECT_NEW_STYLE_MUSIC :{BLACK}Selecciona el programa 'música de nou estil' -STR_MUSIC_TOOLTIP_SELECT_EZY_STREET_STYLE :{BLACK}Selecciona el programa 'Ezy Street style music' -STR_MUSIC_TOOLTIP_SELECT_CUSTOM_1_USER_DEFINED :{BLACK}Selecciona el programa 'Opcional 1' (definit per l'usuari) -STR_MUSIC_TOOLTIP_SELECT_CUSTOM_2_USER_DEFINED :{BLACK}Selecciona el programa 'Opcional 2' (definit per l'usuari) -STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Commuta el programa aleatori actiu/inactiu -STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Mostra la finestra de selecció de pistes de música +STR_MUSIC_TOOLTIP_SELECT_ALL_TRACKS_PROGRAM :{BLACK}Selecciona una llista que inclou totes les pistes +STR_MUSIC_TOOLTIP_SELECT_OLD_STYLE_MUSIC :{BLACK}Selecciona la llista de peces d'estil antic +STR_MUSIC_TOOLTIP_SELECT_NEW_STYLE_MUSIC :{BLACK}Selecciona la llista de peces d'estil nou +STR_MUSIC_TOOLTIP_SELECT_EZY_STREET_STYLE :{BLACK}Selecciona la llista de peces d'estil «Ezy Street» +STR_MUSIC_TOOLTIP_SELECT_CUSTOM_1_USER_DEFINED :{BLACK}Selecciona la primera llista configurable per l'usuari +STR_MUSIC_TOOLTIP_SELECT_CUSTOM_2_USER_DEFINED :{BLACK}Selecciona la segona llista configurable per l'usuari +STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Habilita/deshabilita la reproducció en ordre aleatori +STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Mostra la finestra de selecció de pistes -STR_ERROR_NO_SONGS :{WHITE}S'ha seleccionat un conjunt de músiques sense cançons. No es reproduiran cançons +STR_ERROR_NO_SONGS :{WHITE}S'ha seleccionat un conjunt de música sense peces. No es reproduirà res. # Playlist window -STR_PLAYLIST_MUSIC_PROGRAM_SELECTION :{WHITE}Selecció del Programa de Música -STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} "{STRING}" -STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Índex de Pistes -STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Programa - '{STRING}' +STR_PLAYLIST_MUSIC_PROGRAM_SELECTION :{WHITE}Selecció de les peces de la llista +STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} «{STRING}» +STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Índex de pistes +STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Llista «{STRING}» STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Esborra -STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Esborra el programa actual (només Opcional 1 o Opcional 2) -STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Clica a la pista de música per afegir-la al programa actual (només Opcional 1 o Opcional 2) -STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Clica a la pista de música per treure-la del programa actual (només Personalitzat 1 o Personalitzat 2) +STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Esborra la llista actual (només les llistes personalitzables) +STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Clica la pista de música per afegir-la a la llista actual (només en les llistes personalitzables) +STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Clica la pista de música per treure-la de la llista actual (només en llistes personalitzables) # Highscore window -STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Principals empreses en aconseguir el Nivell {NUM} -STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Taula de Lliga d'Empreses a {NUM} +STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Principals empreses en arribar al {NUM} +STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Taula de la lliga d'empreses a {NUM} STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}. STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :Empresari STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :Emprenedor STR_HIGHSCORE_PERFORMANCE_TITLE_INDUSTRIALIST :Industrial STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Capitalista STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnat -STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Gran Magnat -STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Magnat del Segle +STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Gran magnat +STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Magnat del segle STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY} STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA}) STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} assoleix l'estat '{STRING}' ! STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} assoleix l'estat '{STRING}' ! # Smallmap window -STR_SMALLMAP_CAPTION :{WHITE}Mapa - {STRING} +STR_SMALLMAP_CAPTION :{WHITE}Minimapa: {STRING} STR_SMALLMAP_TYPE_CONTOURS :Límits STR_SMALLMAP_TYPE_VEHICLES :Vehicles @@ -697,30 +708,30 @@ STR_SMALLMAP_TYPE_ROUTEMAP :Flux de càrreg STR_SMALLMAP_TYPE_ROUTES :Rutes STR_SMALLMAP_TYPE_VEGETATION :Vegetació STR_SMALLMAP_TYPE_OWNERS :Propietaris -STR_SMALLMAP_TOOLTIP_SHOW_LAND_CONTOURS_ON_MAP :{BLACK}Mostra els límits de terreny al mapa -STR_SMALLMAP_TOOLTIP_SHOW_VEHICLES_ON_MAP :{BLACK}Mostra els vehicles al mapa -STR_SMALLMAP_TOOLTIP_SHOW_INDUSTRIES_ON_MAP :{BLACK}Mostra les indústries al mapa -STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Mostra el flux de càrregues al mapa -STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Mostra les rutes de transport al mapa -STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Mostra la vegetació al mapa -STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Mostra els propietaris del terreny al mapa -STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clica sobre el tipus d'indústria per commutar mostrar-les. Ctrl+Clic desactiva tots els tipus excepte la seleccionada. Ctrl+Clic sobre un altre cop activa tots els tipus d'indústria -STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Clica sobre la companyia per commutar mostrar les seves propietats. Ctrl+Clic desactiva totes les companyies excepte la seleccionada. Ctrl+Clic sobre un altre cop per activar totes les companyies -STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Clica sobre una càrrega per commutar la visualització. Ctrl+Clic desactiva totes les càrregues excepte la seleccionada. Ctrl+Clic sobre ella una altra vegada activa totes les càrregues +STR_SMALLMAP_TOOLTIP_SHOW_LAND_CONTOURS_ON_MAP :{BLACK}Mostra l'alçada del terreny +STR_SMALLMAP_TOOLTIP_SHOW_VEHICLES_ON_MAP :{BLACK}Mostra els vehicles al minimapa +STR_SMALLMAP_TOOLTIP_SHOW_INDUSTRIES_ON_MAP :{BLACK}Mostra les indústries al minimapa +STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Mostra el flux de càrregues al minimapa +STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Mostra les estacions i rutes de transport al minimapa +STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Mostra la vegetació al minimapa +STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Mostra els propietaris del terreny al minimapa +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clica sobre el tipus d'indústria per mostrar-les o ocultar-les. Ctrl+Clic desactiva tots els tipus excepte la seleccionada. Ctrl+Clic a sobre d'ella un altre cop activa tots els tipus d'indústria. +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Clica sobre la companyia per mostrar o amagar les seves propietats. Ctrl+Clic desactiva totes les companyies excepte la seleccionada. Ctrl+Clic a sobre d'ella un altre cop per activar totes les companyies. +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Clica sobre una càrrega per commutar la visualització. Ctrl+Clic desactiva totes les càrregues excepte la seleccionada. Ctrl+Clic a sobre d'ella una altra vegada activa totes les càrregues. STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Carreteres STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Vies -STR_SMALLMAP_LEGENDA_STATIONS_AIRPORTS_DOCKS :{TINY_FONT}{BLACK}Estacions/Aeroports/Ports -STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES :{TINY_FONT}{BLACK}Edificis/Indústries +STR_SMALLMAP_LEGENDA_STATIONS_AIRPORTS_DOCKS :{TINY_FONT}{BLACK}Estacions, aeroports i ports +STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES :{TINY_FONT}{BLACK}Edificis i indústries STR_SMALLMAP_LEGENDA_VEHICLES :{TINY_FONT}{BLACK}Vehicles STR_SMALLMAP_LEGENDA_TRAINS :{TINY_FONT}{BLACK}Trens STR_SMALLMAP_LEGENDA_ROAD_VEHICLES :{TINY_FONT}{BLACK}Automòbils STR_SMALLMAP_LEGENDA_SHIPS :{TINY_FONT}{BLACK}Vaixells STR_SMALLMAP_LEGENDA_AIRCRAFT :{TINY_FONT}{BLACK}Avions -STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES :{TINY_FONT}{BLACK}Rutes de Transport +STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES :{TINY_FONT}{BLACK}Rutes de transport STR_SMALLMAP_LEGENDA_FOREST :{TINY_FONT}{BLACK}Bosc -STR_SMALLMAP_LEGENDA_RAILROAD_STATION :{TINY_FONT}{BLACK}Estació de Ferrocarril -STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{TINY_FONT}{BLACK}Moll de Càrrega de Camions +STR_SMALLMAP_LEGENDA_RAILROAD_STATION :{TINY_FONT}{BLACK}Estació de ferrocarril +STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{TINY_FONT}{BLACK}Moll de càrrega de camions STR_SMALLMAP_LEGENDA_BUS_STATION :{TINY_FONT}{BLACK}Parada d'autobús STR_SMALLMAP_LEGENDA_AIRPORT_HELIPORT :{TINY_FONT}{BLACK}Aeroport/Heliport STR_SMALLMAP_LEGENDA_DOCK :{TINY_FONT}{BLACK}Moll @@ -731,13 +742,13 @@ STR_SMALLMAP_LEGENDA_FIELDS :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_TREES :{TINY_FONT}{BLACK}Arbres STR_SMALLMAP_LEGENDA_ROCKS :{TINY_FONT}{BLACK}Roques STR_SMALLMAP_LEGENDA_WATER :{TINY_FONT}{BLACK}Aigua -STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Sense Propietari +STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Sense propietari STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Poblacions STR_SMALLMAP_LEGENDA_INDUSTRIES :{TINY_FONT}{BLACK}Indústries STR_SMALLMAP_LEGENDA_DESERT :{TINY_FONT}{BLACK}Desert STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLACK}Neu -STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Activa/desactiva noms de poblacions al mapa +STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Mostra/amaga el nom de les poblacions al mapa STR_SMALLMAP_CENTER :{BLACK}Centra el mapa petit a la posició actual STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STRING} ({NUM}) STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING} @@ -745,13 +756,13 @@ STR_SMALLMAP_COMPANY :{TINY_FONT}{COM STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} STR_SMALLMAP_DISABLE_ALL :{BLACK}Desactiva-ho tot STR_SMALLMAP_ENABLE_ALL :{BLACK}Activa-ho tot -STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Mostra alçada -STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}No mostris les indústries al mapa +STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Mostra l'alçada +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}No mostris cap indústria al mapa STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Mostra totes les indústries al mapa -STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Commuta mostrar els mapes d'alçades +STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Mostra o amaga l'alçada del terreny al minimapa STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}No mostris cap propietat de la companyia al mapa STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Mostra totes les propietats de la companyia al mapa -STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}No mostris càrregues al mapa +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}No mostris cap càrrega al mapa STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Mostra totes les càrregues al mapa # Status bar messages @@ -762,67 +773,67 @@ STR_STATUSBAR_AUTOSAVE :{RED}DESADA AUT STR_STATUSBAR_SAVING_GAME :{RED}* * DESANT PARTIDA * * # News message history -STR_MESSAGE_HISTORY :{WHITE}Historial de Missatges +STR_MESSAGE_HISTORY :{WHITE}Historial de missatges STR_MESSAGE_HISTORY_TOOLTIP :{BLACK}Llista de les notícies més recents STR_MESSAGE_NEWS_FORMAT :{STRING} - {STRING} STR_NEWS_MESSAGE_CAPTION :{WHITE}Missatge STR_NEWS_CUSTOM_ITEM :{BIG_FONT}{BLACK}{STRING} -STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular...{}El primer tren arriba a {STATION}! -STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular...{}El primer autobús arriba a {STATION}! -STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular...{}El primer camió arriba a {STATION}! -STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Els ciutadans celebren . . .{}El primer tramvia de passatgers arriba a {STATION}! -STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Els ciutadans celebren . . .{}El primer tramvia de mercaderies arriba a {STATION}! -STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular...{}El primer vaixell arriba a {STATION}! -STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular...{}El primer avió arriba a {STATION}! +STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular{}El primer tren arriba a {STATION}! +STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular{}El primer autobús arriba a {STATION}! +STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular{}El primer camió arriba a {STATION}! +STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular{}El primer tramvia de passatgers arriba a {STATION}! +STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular{}El primer tramvia de mercaderies arriba a {STATION}! +STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular{}El primer vaixell arriba a {STATION}! +STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Celebració popular{}El primer avió arriba a {STATION}! -STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Accident de tren!{}{COMMA} moren en una bola de foc després de la col·lisió -STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Accident d'automòbil!{}El conductor mor en una bola de foc després de la col·lisió amb un tren -STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Accident d'automòbil!{}{COMMA} moren en una bola de foc després d'una col·lisió amb un tren -STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Accident d'avió!{}{COMMA} moren en una bola de foc a {STATION} -STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Accident d'aviació!{}L'avió s'ha quedat sense combustible, {COMMA} morts en l'accident! +STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Accident de tren!{}{COMMA} mort{P "" s} en el foc de la col·lisió +STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Accident d'automòbil!{}El conductor mor en la col·lisió amb un tren +STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Accident d'automòbil!{}{COMMA} mort{P "" s} en l'explosió després de la col·lisió amb un tren +STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Accident d'avió!{}{COMMA} mort{P "" s} en el tràgic accident a {STATION} +STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Accident d'aviació!{}L'aeronau s'ha quedat sense combustible:{}{COMMA} mort{P "" s} en l'accident! STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}Desastre amb un zepelí a {STATION}! STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}Automòbil destruït en col·lisionar amb un ovni! -STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}Explosió de refineria de petroli prop de {TOWN}! +STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}Explosió de la refineria de petroli prop de {TOWN}! STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}Fàbrica destruïda en estranyes circumstàncies prop de {TOWN}! STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}Ovni aterra prop de {TOWN}! STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}L'enfonsament d'una mina de carbó deixa un rastre de destrucció prop de {TOWN}! -STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Inundacions!{}Almenys {COMMA} presumptament desapareguts o morts després de les inundacions! +STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Inundacions{}Almenys {COMMA} desapareguts, possiblement morts, després de les inundacions! STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Empresa de transport en dificultats! -STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} ha de ser venuda o declarar-se en fallida a menys que el seu rendiment s'incrementi aviat! -STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Fusió d'Empreses de Transport! +STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} ha de ser venuda o declarar-se en fallida a menys que el seu rendiment incrementi aviat! +STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Fusió d'empreses de transport STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} s'ha venut a {STRING} per {CURRENCY_LONG}! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Fallida! -STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} ha estat tancada pels creditors i tots els seus actius han estat venuts! -STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Creada nova companyia de transports! -STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} comença la construcció prop de {TOWN}! -STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} ha estat absorbida per {STRING}! +STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} ha estat tancada pels creditors i s'han venut tots els seus actius +STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Creada una nova companyia de transports +STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} comença a treballar prop de {TOWN} +STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} ha estat absorbida per {STRING} STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(President) -STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} ha patrocinat la construcció d'una nova població, anomenada {TOWN}! +STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} ha patrocinat la construcció d'una nova població, anomenada {TOWN} -STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}No{G u va} {STRING} en construcció prop de {TOWN}! -STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}S'està implantant {G un una} {G nou nova} {STRING} prop de {TOWN}! +STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}No{G u va} {STRING} en construcció prop de {TOWN} +STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}S'està plantant {G un una} {G nou nova} {STRING} prop de {TOWN} -STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLACK}{STRING} anuncia el seu imminent tancament! -STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}Problemes de subministrament fan que {STRING} anunciï el seu imminent tancament! -STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK}La falta d'arbres propers fa que {STRING} anunciï el seu imminent tancament! +STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLACK}{STRING} anuncia el seu tancament imminent +STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}Problemes de subministrament fan que {STRING} anunciï el seu imminent tancament +STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK}L'escassedat d'arbres propers fa que {STRING} anunciï el seu imminent tancament -STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}Unió Monetària Europea!{}{}S'introdueix l'Euro com a moneda única per les transaccions diàries del teu país! -STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLACK}Recessió Mundial!{}{}Economistes experts temen que l'economia es desplomi! -STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}S'ha acabat la recessió!{}{}La millora als negocis dóna confiança a les indústries i l'economia s'enforteix! +STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}Unió Monetària Europea{}{}S'introdueix l'euro com a moneda única per les transaccions diàries del país +STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLACK}Recessió Mundial!{}{}Economistes experts temen que l'economia es desplomi +STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}S'acaba la recessió{}{}La millora dels negocis dóna confiança a les indústries i l'economia s'enforteix -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} incrementa la producció! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}Nova veta de carbó trobada a {INDUSTRY}!{}Es preveu doblar la producció! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}Noves reserves de petroli trobades a {INDUSTRY}!{}Es preveu doblar la producció! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}Sistemes de conreu millorats a {INDUSTRY} fan preveure doblar la producció! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_SMOOTH :{BIG_FONT}{BLACK}La producció de {STRING} a {INDUSTRY} creix un {COMMA}%! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} incrementa la producció +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}Nova veta de carbó trobada a {INDUSTRY}{}Es preveu doblar la producció +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}Noves reserves de petroli trobades a {INDUSTRY}{}Es preveu doblar la producció +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}Sistemes de conreu millorats a {INDUSTRY} fan preveure que es doblarà la producció +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_SMOOTH :{BIG_FONT}{BLACK}La producció de {STRING} a {INDUSTRY} creix un {COMMA}% STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_GENERAL :{BIG_FONT}{BLACK}La producció de {INDUSTRY} descendeix un 50% -STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLACK}Una plaga d'insectes provoca el caos a {INDUSTRY}!{}La producció baixa a un 50% -STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLACK}La producció de {STRING} a {INDUSTRY} es redueix un {COMMA}%! +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLACK}Una plaga d'insectes provoca el caos a {INDUSTRY}{}La producció baixa un 50% +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLACK}La producció de {STRING} a {INDUSTRY} es redueix un {COMMA}% STR_NEWS_TRAIN_IS_WAITING :{WHITE}{VEHICLE} està esperant a la cotxera STR_NEWS_ROAD_VEHICLE_IS_WAITING :{WHITE}{VEHICLE} està esperant a la cotxera @@ -830,7 +841,7 @@ STR_NEWS_SHIP_IS_WAITING :{WHITE}{VEHICLE STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}{VEHICLE} està esperant a l'hangar # Order review system / warnings -STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE} té massa poques ordres a l'agenda +STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE} té poques ordres a l'agenda STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} té una ordre buida STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} té ordres duplicades STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} té una estació invàlida en les seves ordres @@ -856,86 +867,82 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} ara accepta {STRING} STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} ara accepta {STRING} i {STRING} -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subvenció expirada: {}{}El transport de {STRING} des de {STRING} fins a {STRING} no tindrà subvenció +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subvenció caducada: {}{}El transport de {STRING} des de {STRING} fins a {STRING} no tindrà subvenció STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subvenció retirada:{}{}El transport de {STRING} des de {STRING} fins a {STRING} ja no està subvencionat -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Oferta de subvenció per a un servei:{}{} El primer servei de {STRING} des de {STRING} fins a {STRING} tindrà una subvenció d'un any per part de l'autoritat local! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subvenció per a un servei concedida a {STRING}!{}{} El transport de {STRING} des de {STRING} fins a {STRING} rebrà un 50% addicional durant el pròxim any! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subvenció per a un servei concedida a {STRING}!{}{} El transport de {STRING} des de {STRING} fins a {STRING} pagarà el doble de la tarifa durant el pròxim any! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subvenció per a un servei concedida a {STRING}!{}{} El transport de {STRING} des de {STRING} fins a {STRING} pagarà el triple de la tarifa durant el pròxim any! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Subvenció per a un servei concedida a {STRING}!{}{} El transport de {STRING} des de {STRING} fins a {STRING} pagarà el quàdruple de la tarifa durant el pròxim any! +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Oferta de subvenció per a un servei:{}{}La primera companyia en transportar {STRING} des de {STRING} fins a {STRING} tindrà una subvenció d'un any per part de l'autoritat local +STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subvenció concedida a {STRING}{}{}El transport de {STRING} des de {STRING} fins a {STRING} rebrà uns ingressos addicionals del 50% durant el pròxim any +STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subvenció concedida a {STRING}{}{}El transport de {STRING} des de {STRING} fins a {STRING} ingressarà el doble de la tarifa habitual durant el pròxim any +STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subvenció concedida a {STRING}{}{}El transport de {STRING} des de {STRING} fins a {STRING} ingressarà el triple de la tarifa habitual durant el pròxim any +STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Subvenció concedida a {STRING}{}{}El transport de {STRING} des de {STRING} fins a {STRING} ingressarà el quàdruple de la tarifa habitual durant el pròxim any -STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Caos de trànsit a {TOWN}!{}{}El programa de reconstrucció dels carrers patrocinat per {STRING} porta 6 mesos de misèria als automobilistes! -STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Monopoli de transport! -STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}L'autoritat local de {TOWN} signa un contracte amb {STRING} per l'exclusiva dels drets de transport durant un any! +STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Trànsit caòtic a {TOWN}{}{}El programa de reconstrucció dels carrers patrocinat per {STRING} porta 6 mesos de misèria als automobilistes +STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Monopoli de transports +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}L'autoritat local de {TOWN} signa un contracte amb {STRING} per l'explotació en exclusiva dels drets de transport durant un any # Extra view window STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Vista {COMMA} STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Copia a la vista -STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Copia el lloc de la vista principal a aquesta vista +STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Mou aquesta vista on està la vista principal STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Vés a la vista -STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Enganxa el lloc d'aquesta vista a la vista principal +STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Mou la vista principal on està aquesta vista # Game options window -STR_GAME_OPTIONS_CAPTION :{WHITE}Opcions de la Partida +STR_GAME_OPTIONS_CAPTION :{WHITE}Opcions de la partida STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Moneda -STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Selecció d'unitats de moneda +STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Selecció de la unitat monetària ############ start of currency region -STR_GAME_OPTIONS_CURRENCY_GBP :Lliura Esterlina (GBP) -STR_GAME_OPTIONS_CURRENCY_USD :Dòlar Americà (USD) +STR_GAME_OPTIONS_CURRENCY_GBP :Lliura esterlina (GBP) +STR_GAME_OPTIONS_CURRENCY_USD :Dòlar americà (USD) STR_GAME_OPTIONS_CURRENCY_EUR :Euro (EUR) -STR_GAME_OPTIONS_CURRENCY_JPY :Ien Japonès (JPY) -STR_GAME_OPTIONS_CURRENCY_ATS :Shillings Austríacs (ATS) -STR_GAME_OPTIONS_CURRENCY_BEF :Francs Belgues (BEF) -STR_GAME_OPTIONS_CURRENCY_CHF :Francs Suïssos (CHF) -STR_GAME_OPTIONS_CURRENCY_CZK :Corones Txeques (CZK) -STR_GAME_OPTIONS_CURRENCY_DEM :Marcs Alemanys (DEM) -STR_GAME_OPTIONS_CURRENCY_DKK :Corones Daneses (DKK) -STR_GAME_OPTIONS_CURRENCY_ESP :Pesseta Espanyola (ESP) -STR_GAME_OPTIONS_CURRENCY_FIM :Marcs Finesos (FIM) -STR_GAME_OPTIONS_CURRENCY_FRF :Franc Francès (FRF) -STR_GAME_OPTIONS_CURRENCY_GRD :Dracmes Gregues (GRD) -STR_GAME_OPTIONS_CURRENCY_HUF :Florí Hongarès (HUF) -STR_GAME_OPTIONS_CURRENCY_ISK :Corones Islandeses (ISK) -STR_GAME_OPTIONS_CURRENCY_ITL :Lires Italianes (ITL) -STR_GAME_OPTIONS_CURRENCY_NLG :Florins Holandesos (NLG) -STR_GAME_OPTIONS_CURRENCY_NOK :Corones Noruegues (NOK) -STR_GAME_OPTIONS_CURRENCY_PLN :Zloty Polonès (PLN) -STR_GAME_OPTIONS_CURRENCY_RON :Leu Romanès (RON) -STR_GAME_OPTIONS_CURRENCY_RUR :Rubles Russos (RUR) -STR_GAME_OPTIONS_CURRENCY_SIT :Tòlar Eslovè (SIT) -STR_GAME_OPTIONS_CURRENCY_SEK :Corones Sueques (SEK) -STR_GAME_OPTIONS_CURRENCY_TRY :Lira Turca (TRY) -STR_GAME_OPTIONS_CURRENCY_SKK :Corona Eslovaca (SKK) -STR_GAME_OPTIONS_CURRENCY_BRL :Real Brasiler (BRL) -STR_GAME_OPTIONS_CURRENCY_EEK :Corona Estoniana (EEK) -STR_GAME_OPTIONS_CURRENCY_LTL :Lites Lituanes (LTL) -STR_GAME_OPTIONS_CURRENCY_KRW :Won Sud-coreà (KRW) -STR_GAME_OPTIONS_CURRENCY_ZAR :Rand Sud-africà (ZAR) -STR_GAME_OPTIONS_CURRENCY_CUSTOM :Personalitzat... -STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgià(GEL) -STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iranià(IRR) +STR_GAME_OPTIONS_CURRENCY_JPY :Ien japonès (JPY) +STR_GAME_OPTIONS_CURRENCY_ATS :Xíling austríac (ATS) +STR_GAME_OPTIONS_CURRENCY_BEF :Franc belga (BEF) +STR_GAME_OPTIONS_CURRENCY_CHF :Franc suís (CHF) +STR_GAME_OPTIONS_CURRENCY_CZK :Corona txeca (CZK) +STR_GAME_OPTIONS_CURRENCY_DEM :Marc alemany (DEM) +STR_GAME_OPTIONS_CURRENCY_DKK :Corona danesa (DKK) +STR_GAME_OPTIONS_CURRENCY_ESP :Pesseta espanyola (ESP) +STR_GAME_OPTIONS_CURRENCY_FIM :Marc finlandès (FIM) +STR_GAME_OPTIONS_CURRENCY_FRF :Franc francès (FRF) +STR_GAME_OPTIONS_CURRENCY_GRD :Dracma grega (GRD) +STR_GAME_OPTIONS_CURRENCY_HUF :Florí hongarès (HUF) +STR_GAME_OPTIONS_CURRENCY_ISK :Corona islandesa (ISK) +STR_GAME_OPTIONS_CURRENCY_ITL :Lira italiana (ITL) +STR_GAME_OPTIONS_CURRENCY_NLG :Florí neerlandès (NLG) +STR_GAME_OPTIONS_CURRENCY_NOK :Corona noruega (NOK) +STR_GAME_OPTIONS_CURRENCY_PLN :Zloty polonès (PLN) +STR_GAME_OPTIONS_CURRENCY_RON :Leu romanès (RON) +STR_GAME_OPTIONS_CURRENCY_RUR :Ruble rus (RUR) +STR_GAME_OPTIONS_CURRENCY_SIT :Tolar eslovè (SIT) +STR_GAME_OPTIONS_CURRENCY_SEK :Corona sueca (SEK) +STR_GAME_OPTIONS_CURRENCY_TRY :Lira turca (TRY) +STR_GAME_OPTIONS_CURRENCY_SKK :Corona eslovaca (SKK) +STR_GAME_OPTIONS_CURRENCY_BRL :Real brasiler (BRL) +STR_GAME_OPTIONS_CURRENCY_EEK :Corona estoniana (EEK) +STR_GAME_OPTIONS_CURRENCY_LTL :Litas lituà (LTL) +STR_GAME_OPTIONS_CURRENCY_KRW :Won sud-coreà (KRW) +STR_GAME_OPTIONS_CURRENCY_ZAR :Rand sud-africà (ZAR) +STR_GAME_OPTIONS_CURRENCY_CUSTOM :Personalitzada +STR_GAME_OPTIONS_CURRENCY_GEL :Lari georgià (GEL) +STR_GAME_OPTIONS_CURRENCY_IRR :Rial iranià (IRR) ############ end of currency region +STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehicles de carretera +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Escull el sentit de circulació dels automòbils +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conducció per l'esquerra +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Conducció per la dreta -############ start of measuring units region -############ end of measuring units region - -STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automòbils -STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selecciona el sentit de circulació dels automòbils -STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Condueix per l'esquerra -STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Condueix per la dreta - -STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Noms de Poblacions -STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Selecciona l'estil des noms de poblacions +STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Estil dels noms de poblacions +STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Selecciona l'estil dels noms de poblacions ############ start of townname region STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Anglès STR_GAME_OPTIONS_TOWN_NAME_FRENCH :Francès STR_GAME_OPTIONS_TOWN_NAME_GERMAN :Alemany -STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Anglès (Addicional) +STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Anglès (addicional) STR_GAME_OPTIONS_TOWN_NAME_LATIN_AMERICAN :Llatinoamericà -STR_GAME_OPTIONS_TOWN_NAME_SILLY :Tonto +STR_GAME_OPTIONS_TOWN_NAME_SILLY :Graciós STR_GAME_OPTIONS_TOWN_NAME_SWEDISH :Suec STR_GAME_OPTIONS_TOWN_NAME_DUTCH :Holandès STR_GAME_OPTIONS_TOWN_NAME_FINNISH :Finès @@ -954,7 +961,7 @@ STR_GAME_OPTIONS_TOWN_NAME_CATALAN :Català ############ end of townname region STR_GAME_OPTIONS_AUTOSAVE_FRAME :{BLACK}Desa automàticament -STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Selecciona l'interval entre desades automàtiques de les partides +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Selecciona l'interval de desada automàtica de la partida ############ start of autosave dropdown STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_OFF :Inactiu @@ -967,62 +974,69 @@ STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_12_MONTHS :Cada 12 mesos STR_GAME_OPTIONS_LANGUAGE :{BLACK}Idioma STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Selecciona l'idioma de la interfície -STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Pantalla Completa +STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Pantalla completa STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Marca la casella per tenir l'OpenTTD en pantalla completa -STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resolució de Pantalla +STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resolució de pantalla STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Selecciona la resolució de pantalla STR_GAME_OPTIONS_RESOLUTION_OTHER :altres +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Mida de la interfície +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Escull la mida dels elements de la interfície + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Doble +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quàdruple + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunt de gràfics base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecciona el conjunt de gràfics base a utilitzar -STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} arxiu{P "" s} faltant{P "" s}/corromput{P "" s} +STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} arxiu{P "" s} absent{P "" s}/corromput{P "" s} STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Informació addicional sobre el conjunt de gràfics base STR_GAME_OPTIONS_BASE_SFX :{BLACK}Conjunt de sons base STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Selecciona un conjunt de sons base a utilitzar -STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Informació additional sobre el joc de sons base +STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Informació addicional sobre el joc de sons base -STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Conjunt de músiques base -STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Selecciona el conjunt de músiques base a utilitzar +STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Conjunt de peces de música base +STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Selecciona el conjunt de peces de música base a utilitzar STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} fitxer{P "" s} corromput{P "" s} -STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Informació adicional sobre el conjunt de músiques base +STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Informació addicional sobre el conjunt de peces de música base -STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}No s'ha pogut obtenir la llista de resolucions suportades -STR_ERROR_FULLSCREEN_FAILED :{WHITE}El mode en pantalla completa ha fallat +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}No s'ha pogut obtenir la llista de resolucions permeses +STR_ERROR_FULLSCREEN_FAILED :{WHITE}Ha fallat el mode pantalla completa # Custom currency window STR_CURRENCY_WINDOW :{WHITE}Moneda personalitzada STR_CURRENCY_EXCHANGE_RATE :{LTBLUE}Canvi de moneda: {ORANGE}{CURRENCY_LONG} = £ {COMMA} -STR_CURRENCY_DECREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Disminueix la quantitat de moneda per cada Lliura (£) -STR_CURRENCY_INCREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Augmenta la quantitat de moneda per cada Lliura (£) +STR_CURRENCY_DECREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Disminueix la quantitat de moneda per cada lliura (£) +STR_CURRENCY_INCREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Augmenta la quantitat de moneda per cada lliura (£) STR_CURRENCY_SET_EXCHANGE_RATE_TOOLTIP :{BLACK}Estableix el tipus de canvi de la moneda per cada Lliura (£) STR_CURRENCY_SEPARATOR :{LTBLUE}Separador: {ORANGE}{STRING} -STR_CURRENCY_SET_CUSTOM_CURRENCY_SEPARATOR_TOOLTIP :{BLACK}Estableix el separador per a la moneda +STR_CURRENCY_SET_CUSTOM_CURRENCY_SEPARATOR_TOOLTIP :{BLACK}Estableix el separador per la moneda STR_CURRENCY_PREFIX :{LTBLUE}Prefix: {ORANGE}{STRING} STR_CURRENCY_SET_CUSTOM_CURRENCY_PREFIX_TOOLTIP :{BLACK}Estableix el prefix de text per a la moneda STR_CURRENCY_SUFFIX :{LTBLUE}Sufix: {ORANGE}{STRING} -STR_CURRENCY_SET_CUSTOM_CURRENCY_SUFFIX_TOOLTIP :{BLACK}Estableix el sufix de text per a la moneda +STR_CURRENCY_SET_CUSTOM_CURRENCY_SUFFIX_TOOLTIP :{BLACK}Estableix el sufix de text per la moneda -STR_CURRENCY_SWITCH_TO_EURO :{LTBLUE}Canvia a l'Euro: {ORANGE}{NUM} -STR_CURRENCY_SWITCH_TO_EURO_NEVER :{LTBLUE}Canvia a l'Euro: {ORANGE}mai -STR_CURRENCY_SET_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Estableix l'any d'introducció de l'Euro -STR_CURRENCY_DECREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Canvia a l'Euro més aviat -STR_CURRENCY_INCREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Canvia a l'Euro més tard +STR_CURRENCY_SWITCH_TO_EURO :{LTBLUE}Canvia a l'euro: {ORANGE}{NUM} +STR_CURRENCY_SWITCH_TO_EURO_NEVER :{LTBLUE}Canvia a l'euro: {ORANGE}mai +STR_CURRENCY_SET_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Estableix l'any d'introducció de l'euro +STR_CURRENCY_DECREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Introdueix l'euro més aviat +STR_CURRENCY_INCREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Introdueix l'euro més tard STR_CURRENCY_PREVIEW :{LTBLUE}Vista prèvia: {ORANGE}{CURRENCY_LONG} -STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}10000 Lliures (£) en aquesta moneda +STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}10.000 lliures (£) en aquesta moneda STR_CURRENCY_CHANGE_PARAMETER :{BLACK}Canvia el paràmetre de la moneda personalitzada -STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Màxim núm. de competidors: {ORANGE}{COMMA} +STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Nombre màxim de competidors: {ORANGE}{COMMA} STR_NONE :Cap -STR_FUNDING_ONLY :Només finança +STR_FUNDING_ONLY :Cap, excepte finançades STR_MINIMAL :Mínim -STR_NUM_VERY_LOW :Molt Baix +STR_NUM_VERY_LOW :Molt baix STR_NUM_LOW :Baix STR_NUM_NORMAL :Normal STR_NUM_HIGH :Alt @@ -1030,19 +1044,19 @@ STR_NUM_CUSTOM :Personalitzat STR_NUM_CUSTOM_NUMBER :Personalitzat ({NUM}) STR_VARIETY_NONE :Cap -STR_VARIETY_VERY_LOW :Molt Baix -STR_VARIETY_LOW :Baix -STR_VARIETY_MEDIUM :Mitjà -STR_VARIETY_HIGH :Alt -STR_VARIETY_VERY_HIGH :Molt Alt +STR_VARIETY_VERY_LOW :Molt baixa +STR_VARIETY_LOW :Baixa +STR_VARIETY_MEDIUM :Mitjana +STR_VARIETY_HIGH :Alta +STR_VARIETY_VERY_HIGH :Molt alta -STR_AI_SPEED_VERY_SLOW :Molt Lent +STR_AI_SPEED_VERY_SLOW :Molt lent STR_AI_SPEED_SLOW :Lent STR_AI_SPEED_MEDIUM :Mitjà STR_AI_SPEED_FAST :Ràpid -STR_AI_SPEED_VERY_FAST :Molt Ràpid +STR_AI_SPEED_VERY_FAST :Molt ràpid -STR_SEA_LEVEL_VERY_LOW :Molt Baix +STR_SEA_LEVEL_VERY_LOW :Molt baix STR_SEA_LEVEL_LOW :Baix STR_SEA_LEVEL_MEDIUM :Mitjà STR_SEA_LEVEL_HIGH :Alt @@ -1051,7 +1065,7 @@ STR_SEA_LEVEL_CUSTOM_PERCENTAGE :Personalitzat ( STR_RIVERS_NONE :Cap STR_RIVERS_FEW :Pocs -STR_RIVERS_MODERATE :Mitjà +STR_RIVERS_MODERATE :Normal STR_RIVERS_LOT :Molts STR_DISASTER_NONE :Cap @@ -1063,23 +1077,24 @@ STR_SUBSIDY_X2 :x2 STR_SUBSIDY_X3 :x3 STR_SUBSIDY_X4 :x4 -STR_TERRAIN_TYPE_VERY_FLAT :Molt Pla +STR_TERRAIN_TYPE_VERY_FLAT :Molt pla STR_TERRAIN_TYPE_FLAT :Pla STR_TERRAIN_TYPE_HILLY :Accidentat STR_TERRAIN_TYPE_MOUNTAINOUS :Muntanyós +STR_TERRAIN_TYPE_ALPINIST :Escarpat -STR_CITY_APPROVAL_PERMISSIVE :Permissiu +STR_CITY_APPROVAL_PERMISSIVE :Permissiva STR_CITY_APPROVAL_TOLERANT :Tolerant STR_CITY_APPROVAL_HOSTILE :Hostil -STR_WARNING_NO_SUITABLE_AI :{WHITE}No hi ha cap IA disponible...{}Podeu descarregar-ne a través del 'Contingut en línia' +STR_WARNING_NO_SUITABLE_AI :{WHITE}No hi ha cap IA disponible...{}Podeu descarregar-ne a través del «Contingut en línia». -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Paràmetres avançats -STR_CONFIG_SETTING_FILTER_TITLE :{G=Femenin}{BLACK}Cadena filtrant: +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Configuració +STR_CONFIG_SETTING_FILTER_TITLE :{G=Femenin}{BLACK}Cadena de filtrat: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Desplega-ho tot STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Plega-ho tot -STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(Cap explicació disponible) +STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(cap explicació disponible) STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Valor per defecte: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE :{LTBLUE}Tipus de paràmetre: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE_CLIENT :Paràmetre del client (no s'emmagatzema a les partides; afecta a totes les partides) @@ -1091,22 +1106,22 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Paràmetre de l STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categoria: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tipus: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Restringeix la llista de sota usant els filtres predefinits -STR_CONFIG_SETTING_RESTRICT_BASIC :Paràmetres bàsics -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Paràmetres avançats -STR_CONFIG_SETTING_RESTRICT_ALL :Paràmetres per experts / tots els paràmetres +STR_CONFIG_SETTING_RESTRICT_BASIC :Paràmetres bàsics (mostra només els paràmetres importants) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Paràmetres avançats (mostra la majoria dels paràmetres) +STR_CONFIG_SETTING_RESTRICT_ALL :Paràmetres per experts (mostra tots els paràmetres, fins i tot els rars) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Paràmetres amb un valor diferent del predeterminat STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Paràmetres amb un valor diferent dels paràmetres de partida nova STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Restringeix la llista de sota a certs tipus de paràmetres STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Tots els paràmetres STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Paràmetres del client (no s'emmagatzemen a les partides; afecten a totes les partides) -STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Paràmetres de la partida (emmagatzemats a les partides; només afectaran a les noves partides) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Paràmetres de la partida (emmagatzemats a les partides; només afectaran les noves partides) STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Paràmetres de la partida (emmagatzemats a la partida actual; només afecten la partida actual) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Paràmetres de la companyia (emmagatzemats a les partides desades; només afectaran les partides noves) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Paràmetres de la companyia (emmagatzemats a la partida actual; només afecten la companyia actual) -STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Mostra tots els resultats de la cerca ajustant{}{SILVER}Categoria {BLACK}a {WHITE}{STRING} -STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Mostrar tots els resultats per opció de configuració{}{SILVER}Tipus {BLACK}a {WHITE}Tots els tipus d'opció -STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Mostra tots els resultats de la cerca ajustant{}{SILVER}Categoria {BLACK}a {WHITE}{STRING} {BLACK}i {SILVER}Tipus {BLACK}a {WHITE}Tots els tipus d'ajustaments +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Mostra tots els resultats de la cerca filtrada de {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Mostrar tots els resultats de la cerca filtrada amb {WHITE}tots els tipus de paràmetres +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Mostra tots els resultats de la cerca filtrada de {WHITE}{STRING} {BLACK}i {WHITE}tots els tipus d'ajustaments STR_CONFIG_SETTINGS_NONE :{WHITE}- Cap - STR_CONFIG_SETTING_OFF :Inactiu @@ -1119,50 +1134,53 @@ STR_CONFIG_SETTING_COMPANIES_ALL :Totes les compa STR_CONFIG_SETTING_NONE :Cap STR_CONFIG_SETTING_ORIGINAL :Original -STR_CONFIG_SETTING_REALISTIC :Realístic +STR_CONFIG_SETTING_REALISTIC :Realista STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT :Esquerra STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Centre STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Dreta STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Préstec inicial màxim: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Quantitat màxima de préstec que pot demanar una companyia (sense tenir en compte l'inflació) +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Quantitat màxima del préstec que pot demanar una companyia (sense tenir en compte la inflació) STR_CONFIG_SETTING_INTEREST_RATE :Taxa d'interès: {STRING} STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Tipus d'interès dels préstecs; també controla la inflació, si està activada STR_CONFIG_SETTING_RUNNING_COSTS :Costos d'utilització: {STRING} STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Fixa el nivell de manteniment i els costos d'utilització dels vehicles i infraestructures -STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocitat de construcció: {STRING} +STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Ritme de construcció: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limita la quantitat d'accions de construcció per part de les IA -STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Avaries de vehicles: {STRING} +STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Nombre d'avaries de vehicles: {STRING} STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Controla cada quan els vehicles revisats inadequadament s'espatllen STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Multiplicador del subsidi: {STRING} -STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Fixa quant es paga per les connexions subsidiades +STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Fixa quant es paga pels transports subsidiats STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Costos de construcció: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Fixa el nivell de construcció i els preus de compra STR_CONFIG_SETTING_RECESSIONS :Recessions: {STRING} -STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Si està actiu les recessions poden passar cada pocs anys. Durant una recessió tota la producció és significativament baixa (torna al nivell previ quan la recessió s'acaba) -STR_CONFIG_SETTING_TRAIN_REVERSING :No permet que els trens canviïn de sentit a les estacions: {STRING} -STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si està actiu els trens no canviaran de sentit a les estacions no-finals, inclús si hi ha un camí més curt al seu proper destí en cas de canviar de sentit -STR_CONFIG_SETTING_DISASTERS :Desastres: {STRING} -STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Commuta els desastres que poden bloquejar o destruir ocasionalment vehicles o infraestructures +STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Si està actiu, les recessions poden passar cada pocs anys. Durant una recessió, tota la producció és significativament baixa, tornant al nivell previ quan la recessió s'acabi. +STR_CONFIG_SETTING_TRAIN_REVERSING :No permetis que els trens canviïn de sentit a les estacions: {STRING} +STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si està actiu, els trens no canviaran de sentit a les estacions no-finals, inclús si hi ha un camí més curt al seu proper destí en cas de canviar de sentit. +STR_CONFIG_SETTING_DISASTERS :Catàstrofes: {STRING} +STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Permet o no que passin catàstrofes que puguin bloquejar o destruir ocasionalment vehicles o infraestructures STR_CONFIG_SETTING_CITY_APPROVAL :Actitud de l'alcaldia de la població davant de reestructuracions a la zona: {STRING} -STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Escull quin nivell de soroll i de danys ambientals fets per les companyies afecten al seu prestigi a la població i a futures accions de construcció a la zona +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Estableix quin nivell de soroll i de danys ambientals fets per les companyies afecten al seu prestigi davant de la població i futures accions de construcció a la zona -STR_CONFIG_SETTING_AUTOSLOPE :Permet modificar el terreny sota edificis, rails, etc.: {STRING} -STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permetre modelar el terreny sota edificis i rails, sense eliminar-los -STR_CONFIG_SETTING_CATCHMENT :Permet una mida més real de l'àrea d'influència: {STRING} -STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Tenir diferents mides de zones de captació per a diferents tipus d'estacions i aeroports +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :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_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_AUTOSLOPE :Permet la modificació del terreny sota edificis, rails, etc.: {STRING} +STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permet modelar el terreny sota edificis i rails, sense eliminar-los +STR_CONFIG_SETTING_CATCHMENT :Estableix una mida més real de l'àrea d'influència: {STRING} +STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Permet tenir diferents mides de zones de captació per a diferents tipus d'estacions i aeroports STR_CONFIG_SETTING_EXTRADYNAMITE :Permet l'esborrat de carreteres, ponts i túnels propietat de les poblacions: {STRING} -STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Que sigui més fàcil esborrar infraesctuctures i construccions propietat de la població +STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Aquesta opció permet fer més fàcil l'esborrat d'infraestructures i construccions propietat de la població STR_CONFIG_SETTING_TRAIN_LENGTH :Longitud màxima dels trens: {STRING} -STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Establir la longitud màxima dels trens -STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} cel·l{P 0 a es} +STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Estableix la longitud màxima dels trens +STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} cel·l{P a es} STR_CONFIG_SETTING_SMOKE_AMOUNT :Quantitat de fum i espurnes dels vehicles: {STRING} -STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Establir la quantitat de fums o quantes espurnes són emeses pels vehicles +STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Estableix la quantitat de fum o quantes espurnes són emeses pels vehicles STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL :Model d'acceleració dels trens: {STRING} -STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Seleccioneu el model físic per a l'acceleració del tren. El model "original" penalitza les pujades per igual a tots els vehicles. El model "realístic" penalitza les pujades i les corbes en funció de diverses propietats del compost, al igual que la longitud i la força de tracció +STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Seleccioneu el model físic per l'acceleració de trens. El model «original» penalitza les pujades per igual a tots els vehicles. El model «realista» penalitza les pujades i les corbes en funció de diverses propietats del tren, com ara la longitud i la força de tracció STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL :Model d'acceleració per als vehicles: {STRING} -STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT :Seleccioneu el model físic per a l'acceleració dels automòbils. El model "original" penalitza les pujades per igual a tots els vehicles. El model "realista" penalitza les pendents en funció de les diferents propietats de la màquina, com per exemple "l'esforç de tracció" +STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT :Seleccioneu el model físic per l'acceleració d'automòbils. El model «original» penalitza les pujades per igual a tots els vehicles. El model «realista» penalitza els pendents en funció de les diferents propietats de la màquina, com per exemple l'esforç de tracció. STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS :Pendent d'inclinació per als trens: {STRING} STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :La inclinació d'una cel·la en pendent per a un tren. Els valors més alts fan que sigui més difícil escalar un turó STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% @@ -1176,8 +1194,10 @@ STR_CONFIG_SETTING_INFLATION :Inflació: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Habilita la inflació a l'economia, on l'augment dels costos són una mica més ràpids que els dels pagaments STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Màxima longitud dels ponts: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Longitud màxima per a la construcció de ponts +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Alçada màxima dels ponts: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Alçada màxima de construcció dels ponts STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Màxima longitud dels túnels: {STRING} -STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Longitud màxima per a construir tunels +STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Longitud màxima per a la construcció de túnels STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Mètode de construcció de la indústria primària manual: {STRING} STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Mètode de finançament d'indústria primària. 'cap' significa que no serà possible fundar-ne cap, 'prospecció' significa que serà possible fundar-ne, però la construcció succeirà en un lloc aleatori del mapa i també podria passar que fracassi, 'com les altre indústries' significa que les indústries de matèries primeres poden ser construides a qualsevol lloc per les companyies igual que les indústries manufactureres STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Cap @@ -1196,7 +1216,7 @@ STR_CONFIG_SETTING_SHOWFINANCES :Mostra la fines STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Si està activat, la finestra de finances apareix al final de cada any per permetre una inspecció fàcil de l'estat financer de la companyia STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Les noves ordres predeterminades són 'sense parada': {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normalment, un vehicle pararà a cada estació que passi. Activant aquest paràmetre no pararà a cap estació fins arribar a la seu destí. Nota, aquest paràmetre només defineix el valor predeterminat per les noves ordres. De totes maneres les ordres individuals poden establir explícitament qualsevol dels comportaments -STR_CONFIG_SETTING_STOP_LOCATION :Noves ordres del tren parar per defecte a {STRING} de la plataforma +STR_CONFIG_SETTING_STOP_LOCATION :Noves ordres del tren: parar per defecte {STRING} de la plataforma STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Situa en quin lloc de la plataforma el tren pararà per defecte. 'Extrem més proper' significa a prop del punt d'entrada, 'al mig' significa al mig de la plataforma, i 'extrem més llunyà' significa lluny del punt d'entrada. Nota, aquest paràmetre només defineix el valor predeterminat per les noves ordres. De totes maneres les ordres individuals poden establir explícitament qualsevol dels comportaments STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :a l'extrem més proper STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :a la meitat @@ -1223,7 +1243,7 @@ STR_CONFIG_SETTING_PLANE_SPEED :Factor de veloc STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Estableix la velocitat relativa dels avions en comparació amb els altres tipus de vehicles, per reduir la quantitat de guanys de transport dels avions STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_CRASHES :Nombre d'accidents d'avió: {STRING} -STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Estableix les probabilitats de que succeeixi un accident d'avió +STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Estableix la probabilitat amb què succeeixen els accidents d'avió STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Cap STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reduït STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal @@ -1232,25 +1252,25 @@ STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Permet la const STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Permet circular a través de les parades en carreteres propietat de competidors: {STRING} STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Permet la construcció de passos a nivell en els carrers propietat d'altres companyies STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}No es pot canviar aquest ajustament quan hi ha vehicles -STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Manteniment d'infrastructures: {STRING} -STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Quan està activat, la infrastructura provoca costos de manteniment. El cost creix proporcionalment al tamany de la xarxa de transport, afectant en conseqüència més a les companyies grosses que a les petites +STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Manteniment de la infraestructura: {STRING} +STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Quan està activat, la infraestructura provoca costos de manteniment. El cost creix proporcionalment al tamany de la xarxa de transport, afectant en conseqüència més a les companyies grosses que a les petites STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Els aeroports mai caduquen: {STRING} -STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Activant aquesta opció fa que cada tipus aeroport estigui disponible per sempre després de la seva introducció +STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Activant aquesta opció fa que cada tipus d'aeroport estigui disponible per sempre després de la seva introducció STR_CONFIG_SETTING_WARN_LOST_VEHICLE :Avisa si el vehicle es perd: {STRING} STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Alerta amb missatges quan els vehicles no siguin capaços de trobar el camí al seu destí indicat STR_CONFIG_SETTING_ORDER_REVIEW :Revisa ordres dels vehicles: {STRING} -STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Quan està activat, les ordres dels vehicles són verificades periòdicament, i alguns problemes evidents seran informats amb missatges de noticia quan siguin detectats +STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Quan està activat, les ordres dels vehicles són verificades periòdicament, i alguns problemes evidents seran informats amb missatges de notícia quan siguin detectats STR_CONFIG_SETTING_ORDER_REVIEW_OFF :No STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Sí, excepte vehicles parats STR_CONFIG_SETTING_ORDER_REVIEW_ON :De tots els vehicles STR_CONFIG_SETTING_WARN_INCOME_LESS :Avisa si el benefici del vehicle és negatiu: {STRING} -STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Quan està activat, un missatge de noticia és enviat quan un vehicle no ha tingut beneficis durant l'any +STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Quan està activat, un missatge de notícia és enviat quan un vehicle no ha tingut beneficis durant l'any STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Els vehicles mai caduquen: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Quan està activat, tots els models de vehicles continuen disponibles per sempre després de la seva introducció STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Autorenova el vehicle quan sigui vell: {STRING} -STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Quan està activat, un vehicle que arriba al seu final de vida útil és automàticament substituït quan es compleixen les condicions d'autorenovació +STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Quan està activat, un vehicle que arriba al final de la seva vida útil és automàticament substituït quan es compleixen les condicions d'autorenovació STR_CONFIG_SETTING_AUTORENEW_MONTHS :Autorenova el vehicle {STRING} de la seva edat màxima STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Edat relativa a partir de la qual s'ha de considerar l'autorenovació del vehicle STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} mes{P 0 "" os} abans @@ -1261,8 +1281,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duració del mi STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duració dels missatges d'error mostrats en finestres vermelles. Alguns missatges d'error (crítics) no es tanquen automàticament i s'han de tancar manualment STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} segon{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Mostra descripcions emergents: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Retard abans que les descripcions emergents siguin mostrades quan el ratolí sigui sobre algun element de l'interfície. Alternativament les descripcions emergents poden ser vinculades al botó dret del ratolí -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Manté durant {COMMA} segon{P 0 "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Retard abans que les descripcions emergents siguin mostrades quan el ratolí sigui sobre algun element de la interfície. Alternativament, les descripcions emergents poden ser vinculades al botó dret del ratolí si aquest paràmetre s'estableix en 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Manté durant {COMMA} milisegon{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Botó dret STR_CONFIG_SETTING_POPULATION_IN_LABEL :Mostra els habitants a l'etiqueta del nom de la població: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Mostra els habitants a les etiquetes dels noms de les poblacions al mapa @@ -1276,12 +1296,12 @@ STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :L'algorisme gen STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Tipus de terreny: {STRING} -STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Només TerraGenesis) Escollir el tipus de terreny: des de molt pla fins a muntanyós +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Només TerraGenesis) Escollir el tipus de terreny: des de molt pla fins a escarpat STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densitat d'indústries: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Fixa el nombre d'indústries que s'haurien de generar i mantenir durant la partida STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distància màxima des de la vora a les refineries de petroli: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Les refineries de petroli només es construeixen a prop de les vores del mapa, això és a la costa en els mapes d'illes -STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Alçada de la cota de 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_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 @@ -1303,7 +1323,7 @@ STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Escollir el cos STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotació del mapa d'alçades: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Antihorari STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Horari -STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Alçada que un escenari pla pren: {STRING} +STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Alçada que pren un escenari pla: {STRING} STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Una o més cel·les al vèrtex nord no està buit STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Una o més cel·les en una de les vores no és aigua @@ -1321,7 +1341,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Violat STR_CONFIG_SETTING_REVERSE_SCROLLING :En desplaçar la pantalla amb el ratolí mou la vista en la direcció contrària: {STRING} STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Comportament quan es desplaci el mapa amb el botó dret del ratolí. Quan està desactivat, el ratolí mou la càmera. Quan està activat, el ratolí mou el mapa STR_CONFIG_SETTING_SMOOTH_SCROLLING :Desplaçament suau de la vista: {STRING} -STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Controla com la vista principal es desplaça a una posició específica quan es clica al mapa petit o quan s'envia una ordre de desplaçar-se a un objecte específic al mapa. Si està activat, la vista es desplaça suaument, si està desactivat salta directament al punt assenyalat +STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Controla com la vista principal es desplaça a una posició específica quan es clica al mapa petit o quan s'envia una ordre de desplaçar-se a un objecte específic al mapa. Si està activat, la vista es desplaça suaument; si està desactivat, salta directament al punt assenyalat STR_CONFIG_SETTING_MEASURE_TOOLTIP :Mostra un cartell de mesura quan estiguis utilitzant vàries eines de construcció: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Mostra les distàncies-cel·la i les diferències d'alçada quan s'arrossegui durant la construcció STR_CONFIG_SETTING_LIVERIES :Mostra la decoració específica del tipus de vehicle: {STRING} @@ -1359,14 +1379,14 @@ STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Selecciona l'in STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Utilitza el format de data {STRING} per a guardar partides STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Format de la data en els noms dels arxius de les partides que es guardin -STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :llarga (31 Dec 2008) +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :llarga (31 Des 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_PAUSE_ON_NEW_GAME :Pausa automàticament en començar una nova partida: {STRING} -STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Quan està activat, el joc es pausarà 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 :Posa en pausa automàticament quan comenci una nova partida: {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_COMMAND_PAUSE_LEVEL :Quan s'estigui en pausa permet: {STRING} -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Selecciona quines accions poden fer-se quan la partida està pausada +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Selecciona quines accions poden fer-se quan la partida està en pausa STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Sense accions STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Totes les accions no-constructores STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Tot menys les accions modificadores del paisatge @@ -1380,7 +1400,7 @@ STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Mostra els temp STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Mostra l'arribada i la sortida als horaris: {STRING} 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_HELPTEXT :Pre-selecciona el 'cursor ves 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_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 @@ -1410,8 +1430,8 @@ STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Reprodueix els STR_CONFIG_SETTING_SOUND_AMBIENT :Ambient: {STRING} STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Reprodueix efectes de so ambient del paisatge, les indústries i les poblacions -STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Desactiva la construcció d'infrastructures quan no hi hagi disponibles vehicles adequats: {STRING} -STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Quan està activat, la infrastructura només està disponible si hi ha també vehicles disponibles, prevenint perdre temps i diners en infraestructures no utilitzables +STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Desactiva la construcció d'infraestructures quan no hi hagi disponibles vehicles adequats: {STRING} +STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Quan està activat, la infraestructura només està disponible si hi ha també vehicles disponibles, prevenint perdre temps i diners en infraestructures no utilitzables STR_CONFIG_SETTING_MAX_TRAINS :Màxim nombre de trens per companyia: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Màxim nombre de trens que pot tenir una companyia STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Màxim nombre d'automòbils per companyia: {STRING} @@ -1445,7 +1465,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Els intervals d STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Escull si les revisions dels vehicles depenen del temps passat des de la darrera revisió o de la caiguda d'un cert percentatge de la fiabilitat màxima STR_CONFIG_SETTING_SERVINT_TRAINS :Interval per defecte de servei per als trens: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Estableix l'interval de revisió predeterminat pels nous ferrocarrils, si no hi ha un interval de revisió explícit pel vehicle -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} 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_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 @@ -1512,7 +1532,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Selecciona el c STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Construir semàfors mecànics automàticament abans de: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Estableix l'any per utilitzar semàfors elèctrics. Abans d'aquest any s'utilitzaran senyals mecànics (que tenen exactament la mateixa funció, però amb diferent aspecte) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Activa la interfície de senyals: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Mostra una finestra per escollir els tipus de senyals a construir, en lloc de només la rotació sense finestra de tipus de senyals amb Ctrl+clic sobre els senyals +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Mostra una finestra per escollir els tipus de senyals a construir, en lloc de només la rotació de tipus de senyals sense finestra amb Ctrl+clic sobre els senyals STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Tipus de senyal a construir predeterminada: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Tipus de senyal predeterminat a utilitzar STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Normal @@ -1585,9 +1605,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Cap STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador de mida inicial de ciutats: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :La grandària mitjana de les ciutats en relació als pobles a l'inici de la partida -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Actualitza el graf de distribució cada {STRING} di{P 0 a es} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Actualitza el graf de distribució cada {STRING}{NBSP}di{P 0:2 a es} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Temps entre recàlculs successius del graf de distribució. Cada recàlcul calcula els plans per un component del graf. Això significa que un valor X per aquest paràmetre no implica que tot el graf serà actualitzat cada X dies. Només alguns components ho seran. Com més curt el valor, més temps de processador es requerirà per calcular-ho. Com més llarg, més temps passarà fins que la distribució de càrregues comenci en noves rutes. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Empra {STRING} di{P 0 a es} per al recàlcul del graf de distribució +STR_CONFIG_SETTING_LINKGRAPH_TIME :Empra {STRING}{NBSP}di{P 0:2 a es} per al recàlcul del graf de distribució STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Temps dedicat a cada recàlcul d'un component del graf de connexions. Quan un recàlcul s'inicia, el programa crea un fil que pot executar-se durant aquest nombre de dies. Com més curt el valor, més probable que el fil no hagi acabat quan s'espera. Aleshores el programa s'atura fins que el fil acaba ("ralentització"). Com més llarg el valor, més temps requereix l'actualització de la distribució quan les rutes canvien. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manual STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimètric @@ -1597,7 +1617,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"simètric" vol STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Mode de distribució pel correu: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"simètric" vol dir que aproximadament la mateixa quantitat de correu serà enviada des de l'estació A a la B que de B a A. "asimètric" significa que una quantitat arbitrària de correu pot ser enviada en qualsevol dels dos sentits. "manual" vol dir que no s'aplicarà una distribució automàtica pel correu. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Mode de distribució per la classe de càrrega BLINDADA: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :La classe de càrrega BLINDADA conté objectes de valor a la zona temperada, diamants a la subtropical o or al clima subàrtic. Els NewGRF poden canviar això. "simètric" significa que aproximadament la mateixa quantitat d'aquesta càrrega s'enviarà de l'estació A a la B que de B a A. "asimètric" vol dir que quantitats arbitràries d'aquesta càrrega poden ser enviades en qualsevol sentit. "manual" significa que no s'aplicarà cap distribució automàtica a aquesta càrrega. Es recomana indicar asimètric o manual en clima subàrtic, doncs els bancs no enviaran or de tornada a les mines. Pels climes temperat i subtropical podeu també seleccionar simètric, doncs els bancs enviaran objectes de valor de tornada al banc d'origen de certa quantitat d'aquests. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :La classe de càrrega BLINDADA conté objectes de valor a la zona temperada, diamants a la subtropical o or al clima subàrtic. Els NewGRF poden canviar això. "simètric" significa que aproximadament la mateixa quantitat d'aquesta càrrega s'enviarà de l'estació A a la B que de B a A. "asimètric" vol dir que quantitats arbitràries d'aquesta càrrega poden ser enviades en qualsevol sentit. "manual" significa que no s'aplicarà cap distribució automàtica a aquesta càrrega. Es recomana indicar asimètric o manual en clima subàrtic, doncs els bancs no enviaran or de tornada a les mines. Pels climes temperat i subtropical podeu també seleccionar simètric, doncs els bancs enviaran objectes de valor de tornada al banc d'origen. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Mode de distribució per altres classes de càrrega: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"asimètric" vol dir que quantitats arbitràries de càrrega poden ser enviades en qualsevol sentit. "manual" significa que no s'aplicarà cap distribució automàtica a aquestes càrregues. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Precisió de la distribució: {STRING} @@ -1634,7 +1654,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Mètric (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Unitats de força de tracció: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Quan es mostri força de tracció a la interfície d'usuari, presenta-la en les unitats seleccionades +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Quan es mostrin forces de tracció a la interfície d'usuari, presenta-les en les unitats seleccionades STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Mètric (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) @@ -1716,7 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multijug STR_INTRO_GAME_OPTIONS :{BLACK}Opcions del Joc STR_INTRO_HIGHSCORE :{BLACK}Taula de rècords -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Paràmetres Avançats +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configuració STR_INTRO_NEWGRF_SETTINGS :{BLACK}Extensions NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Contingut en Línia STR_INTRO_SCRIPT_SETTINGS :{BLACK}Paràmetres de les IA/Script de la Partida @@ -1736,7 +1756,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Seleccio STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Mostra les opcions del joc STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostra la taula de rècords -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Mostra paràmetres avançats +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_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 @@ -1776,6 +1796,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Jugant STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Eruga màgica (treu indústries, objectes inamovibles): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Els túnels es poden creuar: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Els avions a reacció no tindran accidents (freqüents) en els aeroports petits: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Edita l'alçada màxima del mapa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Edita l'alçada màxima del terreny en el mapa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Paisatge temperat STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Paisatge subàrtic STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Paisatge subtropical @@ -1838,15 +1860,15 @@ STR_FACE_SIMPLE :{BLACK}Simple STR_FACE_SIMPLE_TOOLTIP :{BLACK}Selecció de cara simple STR_FACE_LOAD :{BLACK}Carrega STR_FACE_LOAD_TOOLTIP :{BLACK}Carrega la cara preferida -STR_FACE_LOAD_DONE :{WHITE}La teva cara preferida ha estat carregada des de l'arxiu de configuració d'OpenTTD -STR_FACE_FACECODE :{BLACK}Cara jugador nu. +STR_FACE_LOAD_DONE :{WHITE}S'ha carregat la cara personalitzada des de l'arxiu de configuració de l'OpenTTD +STR_FACE_FACECODE :{BLACK}Número de la cara STR_FACE_FACECODE_TOOLTIP :{BLACK}Veure i/o assigna el número de la cara del president STR_FACE_FACECODE_CAPTION :{WHITE}Veure i/o assigna el número de la cara del president STR_FACE_FACECODE_SET :{WHITE}El número de la nova cara ha estat assignat STR_FACE_FACECODE_ERR :{WHITE}No s'ha pogut assignar el número de cara del president - ha de ser un nombre entre 0 i 4,294,967,295! STR_FACE_SAVE :{BLACK}Desa STR_FACE_SAVE_TOOLTIP :{BLACK}Desa la cara preferida -STR_FACE_SAVE_DONE :{WHITE}Aquesta cara serà desada com la preferida a l'arxiu de configuració d'OpenTTD. +STR_FACE_SAVE_DONE :{WHITE}Es desarà aquesta cara personalitzada a l'arxiu de configuració de l'OpenTTD STR_FACE_EUROPEAN :{BLACK}Europea STR_FACE_SELECT_EUROPEAN :{BLACK}Selecciona cares europees STR_FACE_AFRICAN :{BLACK}Africana @@ -1856,7 +1878,7 @@ STR_FACE_NO :No STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Activa el bigoti o les arracades STR_FACE_HAIR :Cabell: STR_FACE_HAIR_TOOLTIP :{BLACK}Canvia el cabell -STR_FACE_EYEBROWS :Celles +STR_FACE_EYEBROWS :Celles: STR_FACE_EYEBROWS_TOOLTIP :{BLACK}Canvia les celles STR_FACE_EYECOLOUR :Color dels ulls: STR_FACE_EYECOLOUR_TOOLTIP :{BLACK}Canvia el color dels ulls @@ -2082,15 +2104,15 @@ STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}Establei # Network chat STR_NETWORK_CHAT_SEND :{BLACK}Envia -STR_NETWORK_CHAT_COMPANY_CAPTION :[Team] : +STR_NETWORK_CHAT_COMPANY_CAPTION :[Equip] : STR_NETWORK_CHAT_CLIENT_CAPTION :[Privat] {STRING}: -STR_NETWORK_CHAT_ALL_CAPTION :[All] : +STR_NETWORK_CHAT_ALL_CAPTION :[Tothom] : -STR_NETWORK_CHAT_COMPANY :[Team] {STRING}: {WHITE}{STRING} -STR_NETWORK_CHAT_TO_COMPANY :[Team] a {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_COMPANY :[Equip] {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_TO_COMPANY :[Equip] a {STRING}: {WHITE}{STRING} STR_NETWORK_CHAT_CLIENT :[Privat] {STRING}: {WHITE}{STRING} -STR_NETWORK_CHAT_TO_CLIENT :[Privat] A {STRING}: {WHITE}{STRING} -STR_NETWORK_CHAT_ALL :[All] {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_TO_CLIENT :[Privat] a {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_ALL :[Tothom] {STRING}: {WHITE}{STRING} STR_NETWORK_CHAT_OSKTITLE :{BLACK}Posa el text pel xat de xarxa # Network messages @@ -2146,11 +2168,11 @@ STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Durant e # Network related errors STR_NETWORK_SERVER_MESSAGE :*** {1:STRING} ############ Leave those lines in this order!! -STR_NETWORK_SERVER_MESSAGE_GAME_PAUSED :Partida pausada ({STRING}) -STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Partida encara pausada ({STRING}) -STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Partida encara pausada ({STRING}, {STRING}) -STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Partida encara pausada ({STRING}, {STRING}, {STRING}) -STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :La partida encara està pausada ({STRING}, {STRING}, {STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_PAUSED :Partida en pausa ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Partida encara en pausa ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Partida encara en pausa ({STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Partida encara en pausa ({STRING}, {STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :La partida encara està en pausa ({STRING}, {STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_UNPAUSED :Partida represa ({STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :nombre de jugadors STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :connectant clients @@ -2198,7 +2220,7 @@ STR_CONTENT_DETAIL_SUBTITLE_UNSELECTED :{SILVER}No has STR_CONTENT_DETAIL_SUBTITLE_SELECTED :{SILVER}Has seleccionat això per a ser descarregat STR_CONTENT_DETAIL_SUBTITLE_AUTOSELECTED :{SILVER}Aquesta dependència ha estat seleccionada per a ser descarregada STR_CONTENT_DETAIL_SUBTITLE_ALREADY_HERE :{SILVER}Actualment instal·lat -STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Aquest contingut és desconegut i no pot ser descarregat a OpenTTD +STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Aquest contingut és desconegut i no pot ser descarregat a l'OpenTTD STR_CONTENT_DETAIL_UPDATE :{SILVER}Això és un substitut per a l'existent {STRING} STR_CONTENT_DETAIL_NAME :{SILVER}Nom: {WHITE}{STRING} STR_CONTENT_DETAIL_VERSION :{SILVER}Versió: {WHITE}{STRING} @@ -2209,7 +2231,7 @@ STR_CONTENT_DETAIL_FILESIZE :{SILVER}Mida de STR_CONTENT_DETAIL_SELECTED_BECAUSE_OF :{SILVER}Seleccionat a causa de: {WHITE}{STRING} STR_CONTENT_DETAIL_DEPENDENCIES :{SILVER}Dependències: {WHITE}{STRING} STR_CONTENT_DETAIL_TAGS :{SILVER}Etiquetes: {WHITE}{STRING} -STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD està compilat sense suport "zlib"... +STR_CONTENT_NO_ZLIB :{WHITE}L'OpenTTD s'ha compilat sense compatibilitat «zlib»... STR_CONTENT_NO_ZLIB_SUB :{WHITE}... no és possible descarregar continguts! # Order of these is important! @@ -2227,9 +2249,9 @@ STR_CONTENT_TYPE_GS_LIBRARY :Llibreria GS # Content downloading progress window STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Descarregant contingut... STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Demanant arxius... -STR_CONTENT_DOWNLOAD_FILE :{WHITE}Actualment descarregant {STRING} ({NUM} of {NUM}) +STR_CONTENT_DOWNLOAD_FILE :{WHITE}Actualment descarregant {STRING} ({NUM}{NBSP}de{NBSP}{NUM}) STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Descàrrega completa -STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} of {BYTES} descarregats ({NUM} %) +STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES}{NBSP}de{NBSP}{BYTES}{NBSP}descarregats ({NUM}{NBSP}%) # Content downloading error messages STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}No s'ha pogut connectar amb el servidor de continguts... @@ -2294,7 +2316,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Construe STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Construeix unes cotxeres (per construir i revisar trens). Shift commuta construeix/mostra el cost estimat STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Converteix una via en un punt de control. Ctrl permet ajuntar punts de control. Shift commuta construeix/mostra el cost estimat STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Construeix una estació de tren. Ctrl permet ajuntar estacions. Shift commuta construeix/mostra el cost estimat -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construeix senyals de tren. Ctrl commuta entre semàfors mecànics i elèctrics{}Arrossegant es construeixen senyals al llarg d'un tros recte de rail. Ctrl construeix senyals fins a la propera intersecció{}Ctrl+Clic commuta l'obertura de la finestra de detecció de senyals. Shift commuta construir/mostrar el cost estimat +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construeix senyals de tren. Ctrl commuta entre semàfors mecànics i elèctrics{}Arrossegant es construeixen senyals al llarg d'un tros recte de rail. Ctrl construeix senyals fins a la propera intersecció o senyal{}Ctrl+Clic commuta l'obertura de la finestra de detecció de senyals. Shift commuta construir/mostrar el cost estimat STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Construeix un pont de tren. Shift commuta construeix/mostra el cost estimat STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Construeix un túnel per a trens. Shift commuta construeix/mostra el cost estimat STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Commuta construeix/treu per vies de tren, senyals, punts de control i estacions. Mantingueu Ctrl per treure també les vies dels punts de control i de les estacions @@ -2411,7 +2433,7 @@ STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Construe STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Construeix un port. Ctrl permet ajuntar estacions. Shift commuta construeix/mostra el cost estimat STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Situa una boia que pot ser útil per fer punts de control addicionals. Shift commuta construeix/mostra el cost estimat STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK} Construeix aqüeducte. Shift commuta construeix/mostra el cost estimat -STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Defineix l'àrea d'aigua.{}Fa un canal, excepte si CTRL està polsat al nivell del mar, llavors s'inundaran els voltants +STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Defineix l'àrea d'aigua.{}Fa un canal, excepte si CTRL està polsat al nivell de mar, llavors s'inundaran els voltants STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Situa rius # Ship depot construction window @@ -2484,7 +2506,7 @@ STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Crear no STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Restableix paisatge STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Treure totes les propietats pertanyents a companyies del mapa -STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Restablir 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? # Town generation window (SE) @@ -2666,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :terreny propiet STR_ABOUT_OPENTTD :{WHITE}Quant a OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Tots els drets reservats STR_ABOUT_VERSION :{BLACK}OpenTTD versió {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 L'equip d'OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 L'equip de l'OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Desa la Partida @@ -2701,24 +2723,27 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nombre de poblacions: STR_MAPGEN_DATE :{BLACK}Data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nombre d'indústries: -STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Alçada de la neu: -STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mou la línia de neu un pas amunt -STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mou la línia de neu un pas avall +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Alçada màxima del mapa: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Augmenta l'alçada màxima del terreny en el mapa en una unitat +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Disminueix l'alçada màxima del mapa en una unitat +STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Alçada dels estatges amb neu: +STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mou els estatges amb neu un pas amunt +STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mou els estatges amb neu un pas avall STR_MAPGEN_LAND_GENERATOR :{BLACK}Generació de terrenys: STR_MAPGEN_TREE_PLACER :{BLACK}Algoritme d'arbres: STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipus de terreny: -STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivell del mar: -STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rius: +STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivell de mar: +STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Quantitat de rius: STR_MAPGEN_SMOOTHNESS :{BLACK}Suavitat: STR_MAPGEN_VARIETY :{BLACK}Varietat: STR_MAPGEN_GENERATE :{WHITE}Genera # Strings for map borders at game generation STR_MAPGEN_BORDER_TYPE :{BLACK}Vores del mapa: -STR_MAPGEN_NORTHWEST :{BLACK}Nordoest -STR_MAPGEN_NORTHEAST :{BLACK}Nordest -STR_MAPGEN_SOUTHEAST :{BLACK}Sudest -STR_MAPGEN_SOUTHWEST :{BLACK}Sudoest +STR_MAPGEN_NORTHWEST :{BLACK}Nord-oest +STR_MAPGEN_NORTHEAST :{BLACK}Nord-est +STR_MAPGEN_SOUTHEAST :{BLACK}Sud-est +STR_MAPGEN_SOUTHWEST :{BLACK}Sud-oest STR_MAPGEN_BORDER_FREEFORM :{BLACK}Forma lliure STR_MAPGEN_BORDER_WATER :{BLACK}Aigua STR_MAPGEN_BORDER_RANDOM :{BLACK}Aleatori @@ -2730,7 +2755,8 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nom del STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Mida: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} -STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Canviar alçada de la línia de neu +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Canvia l'alçada màxima del mapa +STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Canvia l'alçada d'inici d'estatges amb neu STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Canviar l'any inicial # SE Map generation @@ -2742,7 +2768,7 @@ STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Alçada STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Mou l'alçada del terreny pla un pas avall STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Mou l'alçada del terreny pla un pas amunt -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Canvia alçada del terreny pla +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Canvia l'alçada del terreny pla # Map generation progress STR_GENERATION_WORLD :{WHITE}Generant món... @@ -2798,9 +2824,9 @@ STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Cerca co STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Comprova si el contingut que falta pot ser trobat en línia STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Nom d'arxiu: {SILVER}{STRING} -STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}Id de GRF: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}ID de GRF: {SILVER}{STRING} STR_NEWGRF_SETTINGS_VERSION :{BLACK}Versió: {SILVER}{NUM} -STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Min. versió compatible: {SILVER}{NUM} +STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Mín. versió compatible: {SILVER}{NUM} STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5sum: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Paleta: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Paràmetres: {SILVER}{STRING} @@ -2823,7 +2849,7 @@ STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Guarda l # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Canvia els paràmetres NewGRF STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Tanca -STR_NEWGRF_PARAMETERS_RESET :{BLACK}Reseteja +STR_NEWGRF_PARAMETERS_RESET :{BLACK}Restableix STR_NEWGRF_PARAMETERS_RESET_TOOLTIP :{BLACK}Estableix tots els paràmetres al seu valor predeterminat STR_NEWGRF_PARAMETERS_DEFAULT_NAME :Paràmetre {NUM} STR_NEWGRF_PARAMETERS_SETTING :{STRING}: {ORANGE}{STRING} @@ -2843,32 +2869,35 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Paràmet # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Alineant sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Sprite següent -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Procedeix cap al següent sprite normal, saltant qualsevol sprite pseudo/recolor/font i ajustant el voltant al final -STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Anar a l'sprite -STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Anar cap a l'sprite donat. Si l'sprite no és un sprite normal, procedir cap al següent sprite normal +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Procedeix cap al següent sprite normal, saltant qualsevol sprite pseudo/recolor/font i passant de l'últim sprite al primer +STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Vés a l'sprite +STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Va cap a l'sprite donat. Si l'sprite no és un sprite normal, procedir cap al següent sprite normal STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite anterior -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Procedeix cap a l'sprite normal anterior, saltant qualsevol sprite pseudo/recolor/font i ajustant el voltant al començament +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Procedeix cap a l'sprite normal anterior, saltant qualsevol sprite pseudo/recolor/font i passant del primer sprite a l'últim STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representació de l'sprite seleccionat actualment. L'alineació s'ignora quan es dibuixa aquest sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mou l'sprite al voltant, canviant els desplaçaments en X i Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Desplaçament X: {NUM}, Desplaçament Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Restableix relatius +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Restableix els desplaçaments relatius actuals +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Desplaçament X: {NUM}, Desplaçament Y: {NUM} (Absolut) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Desplaçament X: {NUM}, Desplaçament Y: {NUM} (Relatiu) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Agafa un sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Agafa un sprite de qualsevol lloc de la pantalla -STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}Anar a l'sprite +STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}Vés a l'sprite # NewGRF (self) generated warnings/errors STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING} STR_NEWGRF_ERROR_MSG_WARNING :{RED}Alerta: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ha passat un error fatal de NewGRF: {}{STRING} -STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} no funcionarà amb la versió de TTDPatch informada per OpenTTD +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}S'ha produït un error fatal de NewGRF: {}{STRING} +STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} no funcionarà amb la versió TTDPatch informada per l'OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} és per la versió {STRING} de TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} està dissenyat per ser utilitzat amb {STRING} STR_NEWGRF_ERROR_INVALID_PARAMETER :Paràmetre invàlid per {1:STRING}: paràmetre {STRING} ({NUM}) STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} ha de ser carregat abans de {STRING} STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} ha de ser carregat després de {STRING} -STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} necessita OpenTTD versió {STRING} o més modern +STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} necessita l'OpenTTD versió {STRING} o superior STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :l'arxiu GRF dissenyat està pendent de traduir STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Hi ha massa arxius NewGRF carregats STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Carregant {1:STRING} com a NewGRF estàtic amb {STRING} podria causar desincronitzacions @@ -2886,7 +2915,7 @@ STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Format de dispo # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Alerta! -STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Estàs a punt de fer canvis en una partida activa. Això pot fer que OpenTTD es pengi. No enviis cap informe d'error sobre això.{}Estàs completament segur que vols fer-los? +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Esteu a punt de fer canvis en una partida activa. Això pot fer que l'OpenTTD falli. No envieu cap informe d'error sobre això.{}Esteu completament segur que voleu fer-los? STR_NEWGRF_DUPLICATE_GRFID :{WHITE}No es pot afegir l'arxiu: ID GRF duplicada STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}No s'ha trobat un arxiu coincident (els GRF compatibles s'han carregat) @@ -2895,7 +2924,7 @@ STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}No es po STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}S'han carregat els GRF compatibles pels arxius faltants STR_NEWGRF_DISABLED_WARNING :{WHITE}Els fitxers GRF faltants han estat desactivats STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}Falten fitxers GRF -STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Treure la pausa pot provocar fallades d'OpenTTD. No informis d'errors a causa de fallades subseqüents.{}Estàs segur de voler treure la pausa? +STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Reprendre la partida pot provocar errors de l'OpenTTD. No informeu errors de fallades posteriors d'aquesta partida.{}Esteu segur de reprendre la partida? # NewGRF status STR_NEWGRF_LIST_NONE :Cap @@ -2927,7 +2956,7 @@ STR_INVALID_VEHICLE :Economia->Poblacions +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}La població no construirà carrers. Pots activar la construcció de carrers via Configuració->Interacció amb l'entorn->Poblacions STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Obres en progrés STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}No es pot eliminar aquesta població...{}Hi ha una estació, un dipòsit o una cel·la pertanyent a la població que no pot ser eliminada STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... no hi ha un lloc adequat per situar l'estàtua al centre d'aquesta població @@ -4140,9 +4191,12 @@ STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... nom STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... només es pot construir prop del centre de les poblacions STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... només pot ser construït en zones baixes STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... només es pot situar prop dels límits del mapa -STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... els boscos només es poden plantar sota la cota de neu -STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... només es pot construir per sobre la cota de neu -STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... només es pot construir per sota la cota de neu +STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... el bosc només es pot plantar en estatges amb neu +STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... només es pot construir en estatges amb neu +STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... només es pot construir en estatges sense neu + +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}No hi havia llocs adequats per a indústries '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Canvia els paràmetres de generació de mapa per a obtenir-ne un de millor # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Aquí no es pot construir una estació de tren... @@ -4163,7 +4217,7 @@ STR_ERROR_TOO_CLOSE_TO_ANOTHER_STATION :{WHITE}Massa pr STR_ERROR_TOO_CLOSE_TO_ANOTHER_DOCK :{WHITE}Massa prop d'un altre moll STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Massa prop d'un altre aeroport STR_ERROR_CAN_T_RENAME_STATION :{WHITE}No es pot canviar el nom de l'estació... -STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... aquesta carretera es propietat de la població +STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... aquesta carretera és propietat de la població STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... sentit de la carretera en la direcció incorrecta STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... les estacions d'autobús de pas no poden tenir cantonades STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... les estacions d'autobús de pas no poden tenir interseccions @@ -4280,6 +4334,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Primer h STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}No es pot començar i acabar a la mateixa posició STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Les capçaleres del pont no són al mateix nivell STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}El pont és massa baix pel terreny +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}El pont és massa alt per a aquest terreny. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Inici i final han d'estar en línia recta STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... els extrems del pont han d'estar tots dos a terra STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... el pont és massa llarg @@ -4594,7 +4649,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PLASTIC_TRUCK :{G=Masculin}Vag STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :'X2001' (Elèctrica) STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :'Millennium Z1' (Elèctrica) STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_WIZZOWOW_Z99 :Wizzowow Z99 -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PASSENGER_CAR :{G=Masculin}Vagó per Passatgers +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PASSENGER_CAR :{G=Masculin}Vagó de Passatgers STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_MAIL_VAN :{G=Masculin}Vagó per Correu STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COAL_CAR :{G=Masculin}Vagó per Carbó STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_OIL_TANKER :{G=Masculin}Tanc de Petroli @@ -4626,7 +4681,7 @@ STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 'Cíclope' STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 'Pegasus' (Elèctrica) STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 'Quimera' (Elèctrica) STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_WIZZOWOW_ROCKETEER :Wizzowow Rocketeer -STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PASSENGER_CAR :{G=Masculin}Vagó per Passatgers +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PASSENGER_CAR :{G=Masculin}Vagó de Passatgers STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_MAIL_VAN :{G=Masculin}Vagó per Correu STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COAL_CAR :{G=Masculin}Vagó per Carbó STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_OIL_TANKER :{G=Masculin}Tanc de Petroli @@ -4714,9 +4769,9 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_RMT_RUBBER_TRUCK :{G=Masculin}Cam STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_SUGAR_TRUCK :{G=Masculin}Camió per Sucre MightyMover STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_SUGAR_TRUCK :{G=Masculin}Camió per Sucre Powernaught STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_SUGAR_TRUCK :{G=Masculin}Camió per Sucre Wizzowow -STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COLA_TRUCK :{G=Masculin}Camió per Refresc MightyMover -STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COLA_TRUCK :{G=Masculin}Camió per Refresc Powernaught -STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COLA_TRUCK :{G=Masculin}Camió per Refresc Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COLA_TRUCK :{G=Masculin}Camió per Refrescs MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COLA_TRUCK :{G=Masculin}Camió per Refrescs Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COLA_TRUCK :{G=Masculin}Camió per Refrescs Wizzowow STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COTTON_CANDY :{G=Masculin}Camió per Cotó de Sucre MightyMover STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COTTON_CANDY :{G=Masculin}Camió per Cotó de Sucre Powernaught STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COTTON_CANDY_TRUCK :{G=Masculin}Camió per Cotó de Sucre Wizzowow @@ -4844,6 +4899,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (ocultat) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4879,8 +4935,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt index 267b3895ae..993a7600ee 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -190,30 +190,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.aku :gazirano piće # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} putnik{P "" a a} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}putnik{P "" a a} STR_QUANTITY_COAL :{WEIGHT_LONG} ugljena -STR_QUANTITY_MAIL :{COMMA} poštansk{P a e ih} vreć{P a e a} +STR_QUANTITY_MAIL :{COMMA}{NBSP}poštansk{P a e ih} vreć{P a e a} STR_QUANTITY_OIL :{VOLUME_LONG} nafte -STR_QUANTITY_LIVESTOCK :{COMMA} grl{P o a a} domaćih životinja -STR_QUANTITY_GOODS :{COMMA} sanduk{P "" a a} robe +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}grl{P o a a} stoke +STR_QUANTITY_GOODS :{COMMA}{NBSP}sanduk{P "" a a} robe STR_QUANTITY_GRAIN :{WEIGHT_LONG} žita STR_QUANTITY_WOOD :{WEIGHT_LONG} drveta STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} željezne rude STR_QUANTITY_STEEL :{WEIGHT_LONG} čelika -STR_QUANTITY_VALUABLES :{COMMA} vreć{P a e a} s vrijednostima +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}vreć{P a e a} s vrijednosnicama STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} bakrene rude STR_QUANTITY_MAIZE :{WEIGHT_LONG} kukuruza STR_QUANTITY_FRUIT :{WEIGHT_LONG} voća -STR_QUANTITY_DIAMONDS :{COMMA} vreć{P a e a} dijamanata +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}vreć{P a e a} dijamanata STR_QUANTITY_FOOD :{WEIGHT_LONG} hrane STR_QUANTITY_PAPER :{WEIGHT_LONG} papira -STR_QUANTITY_GOLD :{COMMA} vreć{P a e a} zlata +STR_QUANTITY_GOLD :{COMMA}{NBSP}vreć{P a e a} zlata STR_QUANTITY_WATER :{VOLUME_LONG} vode STR_QUANTITY_WHEAT :{WEIGHT_LONG} pšenice STR_QUANTITY_RUBBER :{VOLUME_LONG} gume STR_QUANTITY_SUGAR :{WEIGHT_LONG} šećera -STR_QUANTITY_TOYS :{COMMA} igrač{P ka ke aka} -STR_QUANTITY_SWEETS :{COMMA} vreć{P a e a} slatkiša +STR_QUANTITY_TOYS :{COMMA}{NBSP}igrač{P ka ke aka} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}vreć{P a e a} slatkiša STR_QUANTITY_COLA :{VOLUME_LONG} cole STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} šećerne vune STR_QUANTITY_BUBBLES :{COMMA} balon{P "" a a} @@ -260,13 +260,13 @@ STR_ABBREV_NONE :{TINY_FONT}NI STR_ABBREV_ALL :{TINY_FONT}SVE # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} putnici +STR_PASSENGERS :{COMMA}{NBSP}putnik{P "" a ""} STR_PASSENGERS.gen :{COMMA} putnika -STR_BAGS :{COMMA} vreća -STR_TONS :{COMMA} tona -STR_LITERS :{COMMA} litra -STR_ITEMS :{COMMA} predmet -STR_CRATES :{COMMA} sanduk +STR_BAGS :{COMMA}{NBSP}vreć{P a e a} +STR_TONS :{COMMA}{NBSP}ton{P a e e} +STR_LITERS :{COMMA}{NBSP}lit{P ra re ara} +STR_ITEMS :{COMMA}{NBSP}predmet{P "" a a} +STR_CRATES :{COMMA}{NBSP}sanduk{P "" a a} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Tamnoplava @@ -287,37 +287,37 @@ STR_COLOUR_GREY :Siva STR_COLOUR_WHITE :Bijela # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}KS -STR_UNITS_POWER_METRIC :{COMMA}KS -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}KS +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}KS +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P a e e} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P a e a} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P a e e} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P a e a} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon{P "" "" i} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lit{P ra re ara} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P "" a a} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}lit{P ra re ara} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtriraj niz: @@ -344,6 +344,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Klizna t STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Klizna traka - lista lijevo/desno STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Sruši građevine itd. na kvadratu zemlje. Ctrl selektira područje dijagonalno. Shift mijenja prikaz građenje/procjena troškova. +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Prikaži sakrivene +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Prikaži sakrivene +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Prikaži sakrivene +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Prikaži sakrivene + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Uključivanjem ove opcije, prikazani su i sakriveni vlakovi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Uključivanjem ove opcije, prikazana su i sakrivena cestovna vozila +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Uključivanjem ove opcije, prikazani su i sakriveni brodovi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Uključivanjem ove opcije, prikazani su i sakriveni zrakoplovi + # Query window STR_BUTTON_DEFAULT :{BLACK}Zadano STR_BUTTON_CANCEL :{BLACK}Odustani @@ -380,7 +391,7 @@ STR_SORT_BY_VALUE :Vrijednost STR_SORT_BY_LENGTH :Dužina STR_SORT_BY_LIFE_TIME :Preostali životni vijek STR_SORT_BY_TIMETABLE_DELAY :Kašnjenje voznog reda -STR_SORT_BY_FACILITY :Vrsta stanice +STR_SORT_BY_FACILITY :Vrsta postaje STR_SORT_BY_WAITING_TOTAL :Ukupni teret na čekanju STR_SORT_BY_WAITING_AVAILABLE :Dostupni teret na čekanju STR_SORT_BY_RATING_MAX :Najviša ocjena tereta @@ -457,7 +468,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Izlaz ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Postavke igre -STR_SETTINGS_MENU_CONFIG_SETTINGS :Napredne postavke +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Postavke STR_SETTINGS_MENU_SCRIPT_SETTINGS :Postavke UI-ja/Skripte igre STR_SETTINGS_MENU_NEWGRF_SETTINGS :Postavke za NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Postavke prozirnosti @@ -695,7 +706,7 @@ STR_PERFORMANCE_DETAIL_KEY :{BLACK}Detalji STR_PERFORMANCE_DETAIL_AMOUNT_CURRENCY :{BLACK}({CURRENCY_SHORT}/{CURRENCY_SHORT}) STR_PERFORMANCE_DETAIL_AMOUNT_INT :{BLACK}({COMMA}/{COMMA}) STR_PERFORMANCE_DETAIL_PERCENT :{WHITE}{NUM}% -STR_PERFORMANCE_DETAIL_SELECT_COMPANY_TOOLTIP :{BLACK}Pogledaj detalje za ovu kompaniju +STR_PERFORMANCE_DETAIL_SELECT_COMPANY_TOOLTIP :{BLACK}Pogledaj detalje za ovu tvrtku ############ Those following lines need to be in this order!! STR_PERFORMANCE_DETAIL_VEHICLES :{BLACK}Vozila: STR_PERFORMANCE_DETAIL_STATIONS :{BLACK}Postaje: @@ -800,7 +811,7 @@ STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Pokaži STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Pokaži vegetaciju na karti STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Pokaži vlasnike zemlje na karti STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Klikni na tip industrije za njen prikaz. Ctrl+Klik isključuje sve tipove industrije osim odabrane. Ponovni Ctrl+Klik uključuje sve tipove industrije. -STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Klikni na kompaniju za prikaz njenog vlasništva. Ctrl+Klik isključuje sve kompanije osim odabrane. Ponovni Ctrl+Klik uključuje sve kompanije. +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Klikni na tvrtku za prikaz njenog vlasništva. Ctrl+Klik isključuje sve tvrtke osim odabrane. Ponovni Ctrl+Klik uključuje sve tvrtke. STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Klikni na teret za odabir prikaza njegovih svojstava. Ctrl+Klik isključuje sve terete osim odabranog. Ponovljeni Ctrl+Klik opet uključuje sve terete. STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Ceste @@ -844,8 +855,8 @@ STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Pokaži STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}Ne prikazuj industrije na karti STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Prikaži sve industrije na karti STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Aktiviraj prikaz visinske karte -STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Prikaži sve što nije vlasništvo kompanije na mapi -STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Prikaži sve vlasništvo kompanije na mapi +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Prikaži sve što nije vlasništvo tvrtke na karti +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Prikaži sve vlasništvo tvrtke na karti STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Prikaži bez tereta na mapi STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Prikaži sve terete na mapi @@ -929,7 +940,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} ima nevažeće naredbe STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} ima duplicirane naredbe STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} ima neispravnu postaju u svojim naredbama -STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} ima u naredbama aerodrom sa prekratkom sletnom stazom +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} ima u naredbama zračunu luku s prekratkom pistom STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} postaje star STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} postaje vrlo star @@ -1012,10 +1023,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzijski Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iranski Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cestovna vozila STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Odaberi na kojoj će strani ceste vozila prometovati STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vozi na lijevoj strani @@ -1069,6 +1076,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Razluči STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Izaberi razlučivost ekrana STR_GAME_OPTIONS_RESOLUTION_OTHER :ostalo +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_NORMAL :Normalno +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dvostruka veličina +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Četvorostruka veličina + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Osnovni set grafike STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Odaberi osnovni grafički set za igru STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} datotek{P a e a} nedostaj{P e u e}/korumpiran{P a e o} @@ -1162,6 +1176,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Vrlo ravno STR_TERRAIN_TYPE_FLAT :Ravno STR_TERRAIN_TYPE_HILLY :Brežuljkasto STR_TERRAIN_TYPE_MOUNTAINOUS :Brdovito +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Dopustiv STR_CITY_APPROVAL_TOLERANT :Tolerantan @@ -1169,8 +1184,8 @@ STR_CITY_APPROVAL_HOSTILE :Agresivan STR_WARNING_NO_SUITABLE_AI :{WHITE}Odgovarajuća UI nije dostupna...{}Možete preuzeti nekoliko UI pomoću sustava 'Online sadržaja' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Napredne postavke +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Postavke STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtriraj slijed: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Otvori sve STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Zatvori sve @@ -1180,15 +1195,15 @@ STR_CONFIG_SETTING_TYPE :{LTBLUE}Vrsta p STR_CONFIG_SETTING_TYPE_CLIENT :Postavke klijenta (nisu pohranjene u snimljenoj datoteci; utječu na sve igre) STR_CONFIG_SETTING_TYPE_GAME_MENU :Postavke igre (pohranjene u snimljenoj datoteci; utječu samo na nove igre) STR_CONFIG_SETTING_TYPE_GAME_INGAME :Postavke igre (pohranjene u snimljenoj datoteci; utječu samo na trenutnu igru) -STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Postavke kompanije (pohranjene u snimljenoj datoteci; utječu samo na nove igre) -STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Postavke kompanije (pohranjene u snimljenoj datoteci; utječu samo na trenutnu kompaniju) +STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Postavke tvrtke (pohranjene u snimljenoj datoteci; utječu samo na nove igre) +STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Postavke tvrtke (pohranjene u snimljenoj datoteci; utječu samo na trenutnu tvrtku) STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorija: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tip: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Sužava doljnju listu koristeći samo predpostavljene filtere -STR_CONFIG_SETTING_RESTRICT_BASIC :Osnovne postavke -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Napredne postavke -STR_CONFIG_SETTING_RESTRICT_ALL :Postavke za napredne korisnike / sve postavke +STR_CONFIG_SETTING_RESTRICT_BASIC :Osnovno (prikaži samo važne postavke) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Napredno (prikaži većinu postavki) +STR_CONFIG_SETTING_RESTRICT_ALL :Stručno (prikaži sve postavke, uključujući i one neobične) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Postavke sa drugačijim vrijednostima od osnovnih STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Postavke sa drugačijim vrijednostima od postavki vaše nove igre @@ -1197,8 +1212,8 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Sve vrste posta STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Postavke klijenta (nisu spremljene prilikom snimanja; utječu na sve igre) STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Postavke igre (spremljene prilikom snimanja; utječu samo na nove igre) STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Postavke igre (spremljene prilikom snimanja; utječu samo na tekuću igru) -STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Postavke kompanije (spremljene prilikom snimanja; utječu samo na nove igre) -STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Postavke kompanije (spremljene prilikom snimanja; utječu samo na trenutnu kompaniju) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Postavke tvrtke (spremljene prilikom snimanja; utječu samo na nove igre) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Postavke tvrtke (spremljene prilikom snimanja; utječu samo na trenutnu tvrtku) STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Prikaži sve rezultate pretraga po postavkama{}{SILVER}Kategorija {BLACK}do {WHITE}{STRING} STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Prikaži sve rezultate pretraga po postavkama{}{SILVER}Tip {BLACK}do {WHITE}Svi tipovi postavki STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Prikaži sve rezultate pretrage po postavkama{}{SILVER}Kategorija {BLACK}do {WHITE}{STRING} {BLACK}i {SILVER}Tip {BLACK}do {WHITE}Svi tipovi postavki @@ -1221,7 +1236,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Sredina STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Desno STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Najveći početni zajam: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Najveći iznos koji kompanija može pozajmiti (bez uzimanja inflacije u obzir) +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Najveći iznos koji tvrtka može pozajmiti (ne uzimajući inflaciju u obzir) STR_CONFIG_SETTING_INTEREST_RATE :Kamatna stopa: {STRING} STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Kamatna stopa zajmova; također kontrolira i inflaciju ako je uključena STR_CONFIG_SETTING_RUNNING_COSTS :Troškovi korištenja: {STRING} @@ -1241,10 +1256,13 @@ STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Ukoliko je uklj STR_CONFIG_SETTING_DISASTERS :Nesreće: {STRING} STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Uključivanje nesreća koje mogu povremeno blokirati ili uništiti vozila ili infrastrukturu 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 kompanije 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 :Maksimalna visina mape: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Postavi maksimalnu dozvoljenu visinu planina na mapi +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Ne možete postavini maksimalnu visinu mape na ovu vijednost. Barem jedna planina na mapi je viša. STR_CONFIG_SETTING_AUTOSLOPE :Dopusti modeliranje zemlje ispod građevina, tračnica, itd.: {STRING} -STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dozvoli uređivanje terena ispod građevina i pruga bez njihovog uklanjanja +STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dopusti uređivanje terena ispod građevina i pruga bez njihovog uklanjanja STR_CONFIG_SETTING_CATCHMENT :Dopusti realističnije veličine područja zahvaćanja: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Različiti dohvati za različite vrste stanica i zračnih luka STR_CONFIG_SETTING_EXTRADYNAMITE :Dopusti rušenje više cesta, mostova i tunela u vlasništvu grada: {STRING} @@ -1259,18 +1277,20 @@ STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Odaberi fizikal STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL :Model ubrzavanja za cestovna vozila: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT :Odaberi fizikalni model za ubrzanje cestovnih vozila. "Originalni" model penalizira nagibe jednako za sva vozila. "Realistični" model penalizira nagibe ovisno o raznim karakteristikama vozila, npr. vučna sila. STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS :Strmina nagiba za vlakove: {STRING} -STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba pločice za vlak. Više vrijednosti čine nagib težim za penjanje +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba polja za vlak. Više vrijednosti čine nagib težim za penjanje STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Strmina nagiba za cestovna vozila: {STRING} -STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba pločice za cestovna vozila. Veće vrijednosti čine nagib težim za penjanje +STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba polja za cestovna vozila. Veće vrijednosti čine nagib težim za penjanje STR_CONFIG_SETTING_FORBID_90_DEG :Zabrani vlakovima i brodovima skretanja pod 90 stupnjeva: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Okreti za 90 stupnjeva se događaju kada vodoravni dio pruge odmah nastavlja okomiti dio pruge na sljedećoj pločici, dakle čineći zaokret vlaka od 90 stupnjeva prelaskom ruba pločice umjesto uobičajenih 45 stupnjeva kod drugih kombinacija pruge. Ovo se primjenjuje i na radijus okretanja brodova +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Okreti za 90 stupnjeva se događaju kada vodoravni dio pruge odmah nastavlja okomiti dio pruge na sljedećem polju, dakle čineći zaokret vlaka od 90 stupnjeva prelaskom ruba polja umjesto uobičajenih 45 stupnjeva kod drugih kombinacija pruge. Ovo se primjenjuje i na radijus okretanja brodova STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Dopusti spajanje postaja koje nisu izravno jedna do druge {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Dozvoli dodavanje dijelova stanice bez direktog dodira s postojećim dijelovima. Potrebno pritisnuti Ctrl+Klik dok se dodaju novi dijelovi STR_CONFIG_SETTING_INFLATION :Inflacija: {STRING} STR_CONFIG_SETTING_INFLATION_HELPTEXT :Uključi inflaciju u ekonomiji, gdje troškovi rastu malo brže od plaćanja STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Najveća dužina mostova: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Najveća dužina za izgradnju mostova +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimalna visina mostova: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimalna visina za gradnju mostova STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Najveća dužina tunela: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Najveća dužina za izgradnju tunela STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Ručna metoda izgradnje primarne industrije: {STRING} @@ -1305,13 +1325,13 @@ STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Svako prikazno STR_CONFIG_SETTING_BRIBE :Dopusti potkupljivanje lokalne samouprave: {STRING} STR_CONFIG_SETTING_BRIBE_HELPTEXT :Omogućiti tvrtkama pokušavanje podmićivanja lokalne gradske vlasti. Ako mito je primjećeno od strane inspektora, tvrtka neće biti u mogućnosti djelovati u gradu na šest mjeseci STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Dopusti kupovinu ekskluzivnih prijevoznih prava: {STRING} -STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Ako kompanije kupi eksluzivna prava transporta za neki grad, protivničke stanice (putničke i teretne) neće dobivati ništa tereta tijekom cijele godine -STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Dozvoli financiranje zgrada: {STRING} -STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Dozvoli kompanijama davanje novca gradovima za financiranje novih kuća -STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Dozvoli financiranje rekonstrukcije lokalnih cesta: {STRING} -STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Dozvoli kompanijama davanje novca gradovima za cestovnu rekonstrukciju radi sabotiranja cestovnog prijevoza u gradu +STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Ako tvrtka kupi eksluzivna prava prijevoza za neki grad, protivničke postaje (putničke i teretne) neće dobivati ništa tereta tijekom cijele godine +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Dopusti financiranje zgrada: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Dopusti tvrtkama davanje novca gradovima za financiranje novih kuća +STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Dopusti financiranje rekonstrukcije lokalnih cesta: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Dopusti tvrtkama davanje novca gradovima za cestovnu rekonstrukciju radi sabotiranja cestovnog prijevoza u gradu STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Dopusti slanje novca drugim tvrtkama: {STRING} -STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Dozvoli transfere novca između kompanija u načinu igre za više igrača +STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Dopusti prijenose novca između tvrtki u načinu igre za više igrača STR_CONFIG_SETTING_FREIGHT_TRAINS :Težinski množitelj za teret za simulaciju teških vlakova: {STRING} STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Odredi utjecaj prijevoza tereta u vlakovima. Veća vrijednost čini prijevoz tereta zahtjevnijim za vlakove, pogotovo na brdima STR_CONFIG_SETTING_PLANE_SPEED :Faktor brzine zrakoplova: {STRING} @@ -1323,15 +1343,15 @@ STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ništa STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Smanjeno STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normalno STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Dopusti prolazne postaje na cestama u vlasništvu gradova: {STRING} -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Dozvoli izgradnju prolaznih stanica za cestama u vlasništvu grada +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Dopusti izgradnju prolaznih postaja na cestama u vlasništvu grada STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Dopusti prolazne postaje na cestama koje su u vlasništvu konkurencije: {STRING} -STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Dozvoli izgradnju prolaznih stanica na cestama u vlasništvu drugih kompanija +STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Dopusti izgradnju prolaznih postaja na cestama u vlasništvu drugih tvrtki STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Mijenjanje ovih postavki nije moguće kada postoje vozila STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Održavanje infrastrukture: {STRING} STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Kada je omogućeno, infrastruktura uzrokuje troškove održavanja. Cijena raste više nego proporcionalno s veličinom mreže, čime utječe veće tvrtke više od manjih STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Zračne luke nikad ne ističu: {STRING} -STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Uključivanjem ove postavke čini svaku vrstu aerodroma dostupnom zauvijek nakon uvođenja +STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Uključivanjem ove postavke čini svaku vrstu zračne luke dostupnom zauvijek nakon uvođenja STR_CONFIG_SETTING_WARN_LOST_VEHICLE :Upozori ako je vozilo izgubljeno: {STRING} STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Uključi poruke o vozilima koje ne mogu naći put do svog odredišta @@ -1356,8 +1376,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Trajanje poruke STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Trajanje prikaza poruke s greškom u crvenom prozoru. Uzmite u obzir da se neke (kritične) poruke s greškom ne zatvaraju automatski nakon isteka ovog vremena, nego ih je potrebno zatvoriti ručno STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekundi STR_CONFIG_SETTING_HOVER_DELAY :Prikaži pojašnjenja alata: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Odgoda prije prikaza objašnjenja alata kada se miš postavi iznad nekog elementa sučelja. Alternativno, objašnjena alata se mogu vezati uz desnu tipku na mišu -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Lebdi na {COMMA} sekundi +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Odgoda prije prikaza objašnjenja alata kada se miš postavi iznad nekog elementa sučelja. Alternativno, objašnjena alata se mogu vezati uz desnu tipku na mišu kada je ova vrijednost postavljena na 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Lebdi na {COMMA} milisekund{P 0 u i i} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Desni klik STR_CONFIG_SETTING_POPULATION_IN_LABEL :Pokaži broj stanovnika u oznaci imena grada: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Prikaži populaciju gradova u njihovim oznakama na mapi @@ -1399,13 +1419,13 @@ STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotacija visins STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Obrnuto od smjera kazaljke na satu STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :U smjeru kazaljke na satu STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Visinski nivo koji ravna mapa u scenariju dobiva: {STRING} -STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Jedna ili više pločica na sjevernom rubu nisu prazne -STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Jedna ili više pločica na jednom od rubova nije voda +STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Jedno ili više polja na sjevernom rubu nisu prazne +STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Jedno ili više polja na jednom od rubova nije voda -STR_CONFIG_SETTING_STATION_SPREAD :Najveći raspon stanice: {STRING} +STR_CONFIG_SETTING_STATION_SPREAD :Najveći raspon postaje: {STRING} STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Najveća površina na kojoj mogu biti dijelovi jedne stanice. Uzmite u obzir da visoke vrijednosti mogu usporiti igru STR_CONFIG_SETTING_SERVICEATHELIPAD :Automatski servisiraj helikoptere na heliodromima: {STRING} -STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Servisiraj helikoptere nakon svakog slijetanja, čak i ako nema depoa na aerodromu +STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Servisiraj helikoptere nakon svakog slijetanja, čak i ako nema spremišta u zračnoj luci STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Poveži alatnu traku za krajolik s alatnim trakama za željeznicu/ceste/vodu/zračne luke: {STRING} STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Kada se otvara alatna traka za građenje neke vrste transporta, istodobno se otvara i alatna traka za uređivanje terena STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Boja polja korištena na maloj karti: {STRING} @@ -1418,14 +1438,14 @@ STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Ponašanje kod STR_CONFIG_SETTING_SMOOTH_SCROLLING :Glatko klizanje kroz mini pogled: {STRING} STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Kontroliraj kako se glavni prikaz pomiče na neku lokaciju kada se klikne na malu mapu ili kada se izda naredba za pomicanje na određeni objekt na mapi. Ako je uključeno, prikaz se pomiče glatko, ako je isključeno, prikaz odmah preskoči na ciljnu lokaciju STR_CONFIG_SETTING_MEASURE_TOOLTIP :Pokaži mjerni naputak prilikom korištenja raznih alata za izgradnju: {STRING} -STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Prikaži udaljenosu u pločicama i visinsku razliku kod povlačenja prilikom operacija gradnje +STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Prikaži udaljenost u poljima i visinsku razliku kod povlačenja prilikom gradnje STR_CONFIG_SETTING_LIVERIES :Pokaži specifične livreje prema tipu vozila: {STRING} -STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Kontroliraj korištenje shema boja tipa vozila za određena vozila (u suprotnosti sa shemama boja kompanija) +STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Kontroliraj korištenje shema boja tipa vozila za određena vozila (u suprotnosti sa shemama boja tvrtke) STR_CONFIG_SETTING_LIVERIES_NONE :Nijedna STR_CONFIG_SETTING_LIVERIES_OWN :Vlastita tvrtka STR_CONFIG_SETTING_LIVERIES_ALL :Sve tvrtke STR_CONFIG_SETTING_PREFER_TEAMCHAT :Preferiraj ekipni razgovor s :{STRING} -STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Prebacivanje vezivanja kompanijskog internog i javnog razgovota na odnosno +STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Prebacivanje vezivanja tvrtkinog internog i javnog razgovora na odnosno STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING :Funkcija kotačića za klizanje: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Uključi pomicanje sa dvodimenzionalnim kotačićima miša STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM :Zumiraj kartu @@ -1459,8 +1479,8 @@ STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :kratko (31-12-2 STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31) STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Automatski pauziraj prilikom pokretanja nove igre: {STRING} -STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Kada je uključeno, igra će se automatski pauzirati priliko pokretanja nove igre, dozvoljavajući bolje proučavanje mape -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Kod pauze dozvoli: {STRING} +STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Kada je uključeno, igra će se automatski pauzirati prilikom pokretanja nove igre, dopuštajući bolje proučavanje karte +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Kod pauze dopusti: {STRING} STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Odaberi koje se akcije mogu koristiti dok je igra pauzirana STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Nijedna akcija STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Sve ne-konstrukcijske akcije @@ -1485,15 +1505,15 @@ STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Pokaži rezervi STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Prikaži rezervirane pruge u drugoj boji kako bi se olakšalo rješavanje problema sa vlakovima koji ne žele ući u određenu dionicu puta STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Zadrži alate za izradu aktivnima nakon upotrebe: {STRING} STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Zadrži otvorenim alate za mostove, tunele itd. i nakon upotrebe -STR_CONFIG_SETTING_EXPENSES_LAYOUT :Grupiraj troškove u financijskom prozoru tvrtke: {STRING} -STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Odredi izgled prozora troškova kompanije +STR_CONFIG_SETTING_EXPENSES_LAYOUT :Grupiraj rashode u financijskom prozoru tvrtke: {STRING} +STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Odredi izgled prozora rashoda tvrtke STR_CONFIG_SETTING_SOUND_TICKER :Skraćene novosti: {STRING} STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Sviraj zvuk kod skraćenih poruka novosti STR_CONFIG_SETTING_SOUND_NEWS :Novine: {STRING} STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Sviraj zvuk kod prikaza novina STR_CONFIG_SETTING_SOUND_NEW_YEAR :Kraj godine: {STRING} -STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Sviraj zvučne efekte na kraju godine sumirajući uspjeh kompanije tijekom godine uspoređujući ga sa prethodnom godinom +STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Sviraj zvučne efekte na kraju godine sumirajući uspjeh tvrtke tijekom godine uspoređujući ga s prethodnom godinom STR_CONFIG_SETTING_SOUND_CONFIRM :Gradnja: {STRING} STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Sviraj zvučne efekte kod uspješne gradnje ili drugih akcija STR_CONFIG_SETTING_SOUND_CLICK :Klik na dugmadi: {STRING} @@ -1507,14 +1527,14 @@ STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Sviraj zvučne STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Isključi gradnju infrastrukture kada odgovarajuća vozila nisu dostupna: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Kada je uključeno, infrastruktura je dostupna samo ako su dostupna i vozila za nju, sprečavajući trošenje vremena i novca na neupotrebljivu infrastrukturu -STR_CONFIG_SETTING_MAX_TRAINS :Maksimalni broj vlakova po kompaniji: {STRING} -STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Najveći broj vlakova koje može imati kompanija -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maksimalni broj cestovnih vozila po kompaniji: {STRING} -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Najveći broj cestovnih vozila koje može imati kompanija -STR_CONFIG_SETTING_MAX_AIRCRAFT :Maksimalni broj zrakoplova po kompaniji: {STRING} -STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Najveći broj zrakoplova koje može imati kompanija -STR_CONFIG_SETTING_MAX_SHIPS :Maksimalni broj brodova po kompaniji: {STRING} -STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Najveći broj brodova koje može imati kompanija +STR_CONFIG_SETTING_MAX_TRAINS :Maksimalni broj vlakova po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Najveći broj vlakova koje tvrtka može imati +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maksimalni broj cestovnih vozila po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Najveći broj cestovnih vozila koje tvrtka može imati +STR_CONFIG_SETTING_MAX_AIRCRAFT :Maksimalni broj zrakoplova po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Najveći broj zrakoplova koje tvrtka može imati +STR_CONFIG_SETTING_MAX_SHIPS :Maksimalni broj brodova po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Najveći broj brodova koje tvrtka može imati STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Isključi vlakove za računalo: {STRING} STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Uključivanjem ove postavke, računalo-igrač neće moći koristiti vlakove @@ -1532,7 +1552,7 @@ STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Srednje STR_CONFIG_SETTING_AI_PROFILE_HARD :Teško STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Dopusti UI u mrežnoj igri: {STRING} -STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Dozvoli UI računalnim-igračima da sudjeluju u igrama za više igrača +STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Dopusti UI računalnim-igračima da sudjeluju u igrama za više igrača STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#op-kodova prije suspendiranja skripti: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Najveći broj računalnih koraka koje skripta može poduzeti u jednom krugu @@ -1540,7 +1560,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Servisni su int STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Odaberi da li će se servisiranje vozila pokrenuti nakon isteka vremena od zadnjeg servisa ili padom pouzdanosti za određenu vrijednost od najveće pouzdanosti STR_CONFIG_SETTING_SERVINT_TRAINS :Zadani interval servisiranja za vlakove: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Postavi osnovni interval servisa za nova pružna vozila, ako nije postavljen drugi specifični interval za određeno vozilo -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dana/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dan{P 0 "" a a}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Isključeno STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Zadani interval servisiranja za cestovna vozila: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Postavi osnovni interval servisa za nova cestovna vozila, ako nije postavljen drugi specifični interval za određeno vozilo @@ -1562,7 +1582,7 @@ STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Prikaži novine STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Nesreće / katastrofe: {STRING} STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Prikaži novine kod nesreća ili katastrofa STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Podaci vezani za tvrtku: {STRING} -STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Prikai novine kada se pojavi nova kompanije ili kada kompanije riskiraju bankrot +STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Prikaži novine kada se pojavi nova tvrtka ili kada tvrtke riskiraju bankrot STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Otvaranje industrije: {STRING} STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT :Prikaži novine kada se nove industrije otvaraju STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE :Zatvaranje industrije: {STRING} @@ -1570,11 +1590,11 @@ STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :Prikaži novine STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :Promjene u gospodarstvu: {STRING} STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :Prikaži novine vezano za globalne promjene u ekonomiji STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :Promjene u proizvodnji industrija koje opslužuje tvrtka: {STRING} -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Prikaži novine kod promjene proizvodnih nivoa industrija koje servisira kompanija +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Prikaži novine kod promjene proizvodnih razina industrija koje tvrtka opslužuje STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :Promjene u proizvodnji industrija koje opslužuju suparnici: {STRING} STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :Prikaži novine kod promjene proizvodnih nivoa industrija koje servisiraju suparnici STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Ostale izmjene u proizvodnji industrija: {STRING} -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Prikaži novine kod promjene proizvodnih nivoa industrija koje ne servisira kompanija ili suparnici +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Prikaži novine kod promjene proizvodnih razina industrija koje tvrtka ili suparnici ne opslužuju STR_CONFIG_SETTING_NEWS_ADVICE :Savjeti / informacije o vozilima tvrtke: {STRING} STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Prikaži poruke o vozilima koje trebaju pozornost STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Nova vozila: {STRING} @@ -1596,18 +1616,18 @@ STR_CONFIG_SETTING_STARTING_YEAR :Početna godina STR_CONFIG_SETTING_SMOOTH_ECONOMY :Uključi tečnu ekonomiju (više manjih izazova): {STRING} STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Kada je uključeno, promjene u industrijskoj proizvodnji su češće ali u manjim rasponima. Ova postavka obično nema efekta ukoliko su industrije postavljene iz nekog NewGRF-a STR_CONFIG_SETTING_ALLOW_SHARES :Dopusti kupovanje udjela u drugim tvrtkama: {STRING} -STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Kada je uključeno, dozvoljava se kupnja i prodaja dionica kompanija. Dionice će postati dostupne samo za kompanije određene starosti +STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Kada je uključeno, dopušta se kupnja i prodaja dionica tvrtki. Dionice će postati dostupne samo za tvrtke određene starosti STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Postotak profita za dionicu koji se plaća kod sistema feeder-a: {STRING} STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Postotak prihoda koji će biti predan srednjim dionicama prijevoza feeder sustavima, daje više kontrole nad prihodima STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Kod povlačenja, postavi signale svakih: {STRING} STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Postavi razmak između signala koji će se graditi do sljedeće prepreke (signal, raskrižje), ukoliko se signali povlače STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} polje STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Prilikom povlačenja, zadrži odabrani razmak između signala: {STRING} -STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Odabire ponašanje kod postavljanja signala putem Ctrl+povlačenja. Ukoliko je isključeno, signali se postavljaju oko tunela i mostova kako bi se izbjegla veća područja bez signala. Ukoliko je uključeno, signali se postavljaju svakih N pločica, olakšavajući poravnanje signala kod paralelnih pruga +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Odabire ponašanje kod postavljanja signala putem Ctrl+povlačenja. Ukoliko je isključeno, signali se postavljaju oko tunela i mostova kako bi se izbjegla veća područja bez signala. Ukoliko je uključeno, signali se postavljaju svakih N polja, olakšavajući poravnanje signala kod paralelnih pruga STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Automatski izgradi semafore prije: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Postavi godinu kada će se koristiti električni signali za pruge. Prije ove godine, koristiti će se ne-električni signali (imaju iste funkcije samo izgledaju drugačije) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Omogući signalni GUI: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Prikaži prozor za odabir tipova signala za gradnju, umjesto samo prikaza tipa signala bez prozora sa Ctrl+klikanjem kod gradnje +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Prikaži prozor za odabir tipova signala za gradnju, umjesto samo rotacije tipa signala bez prozora sa Ctrl+klik na sagrađenim signalima STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Predodređeni signal za izgradnju: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Osnovni tip signala za korištenje STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Blokirajući signali @@ -1631,7 +1651,7 @@ STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Dozvoli gradovi STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Gradovi smiju graditi pružne prijelaze: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Uključivanje ove postavke dozvoljava se gradovima da grade cestovno-pružne prijelaze STR_CONFIG_SETTING_NOISE_LEVEL :Omogući određivanje razine buke za zračne luke od strane gradova: {STRING} -STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Kada je ova postavka isključena, mogu postojati dva aerodroma u svakom gradu. Kada je ova postavka uključena, broj aerodroma u nekom gradu je limitirana količinom dozvoljene buke u gradu, koja ovisi o populaciji i udaljenosti i veličini aerodroma +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Kada je ova postavka isključena, mogu postojati dvije zračne luke u svakom gradu. Kada je ova postavka uključena, broj zračnih luka u nekom gradu je ograničen količinom dopuštene buke u gradu, koja ovisi o broju stanovnika i udaljenosti i veličini zračne luke STR_CONFIG_SETTING_TOWN_FOUNDING :Osnivanje gradova tijekom igre: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Uklučivanje ove postavke dozvoljava igračima osnivanje novih gradova tijekom igre STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Zabranjeno @@ -1680,9 +1700,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nijedan STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Početni množitelj veličine grada: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Prosječna veličina gradova u donosu na naselja kod početka igre -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Ažuriraj povezni grafikon svakih {STRING} dan{P 0:2 a a a} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Ažuriraj povezni grafikon svakih {STRING}{NBSP}dan{P 0:2 a a a} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Vrijeme između slijedećih rekalkulacija poveznog grafikona. Svaka rekalkulacija izračunava planove za jednu komponentu grafikona. To znači da vrijednost X za ovu postavku ne mora značiti i ažuriranje kompletnog grafikona unutar X dana. Samo neke komponente će biti ažurirane. Čim kraće vrijeme odredite, više će biti potrebno resursa CPU-a za izračun. Čim duže vrijeme odredite, trebati će više vremena za pokretanje distribucije po novim rutama. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Uzmi {STRING} dan{P 0:2 a a a} za rekalkulaciju poveznog grafikona +STR_CONFIG_SETTING_LINKGRAPH_TIME :Uzmi {STRING}{NBSP}dan{P 0:2 a a a} za rekalkulaciju poveznog grafikona STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Vrijeme potrebno za rekalkulaciju komponente poveznog grafikona. Kada se rekalkulacija pokrene, stvara se slijed koji može raditi broj dana koliko ovdje odredite. Čim kraće vrijeme odredite, postoji mogućnost da slijed neće biti gotov kada bi trebao. Tada se igra usporava odnosno zaustavlja dok ne bude gotovo. Čim duže vrijeme odredite, potrebno je duže da se distribucija ažurira kad se izmijene rute. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :ručno STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimetrično @@ -1692,7 +1712,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Simetrično" z STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Način distribucije poštu: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Simetrično" znači da će se otprilike ista količina pošte slati od stanice A prema stanici B ako od B prema A. "Asimetrično" znači da će se proizvoljne količine pošte slati u oba smjera. "Ručno" znači da se distribucija neće vršiti automatski. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Način distribucije za OKLOPLJENU klasu tereta: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :OKLOPLJENA klasa tereta sadrži vrijednosnice u umjerenoj klimi, dijamante u subtropskoj klimi ili zlato u subarktičkoj klimi. NewGFR-ovi bi mogli ovo izmijeniti. "Simetrično" znači da će se otprilike ista količina tereta slati od stanice A prema stanici B ako od B prema A. "Asimetrično" znači da će se proizvoljne količine tereta slati u oba smjera. "Ručno" znači da se distribucija tih tereta neće vršiti automatski. Preporučljivo je namjestiti ovu postavku na "asimetrično" ili "ručno" kod subarktičke klime jer banke neće slati zlato natrag prema rudnicima zlata. Za umjerenu i subtropsku klimu možete namjestiti i "simetrično" jer će banke slati neke vrijednosnice natrag prema izvorišnoj banci. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :OKLOPLJENA klasa tereta sadrži vrijednosnice u umjerenoj klimi, dijamante u subtropskoj klimi ili zlato u subarktičkoj klimi. NewGFR-ovi bi mogli ovo izmijeniti. "Simetrično" znači da će se otprilike ista količina tereta slati od stanice A prema stanici B kao od B prema A. "Asimetrično" znači da će se proizvoljne količine tereta slati u oba smjera. "Ručno" znači da se distribucija tih tereta neće vršiti automatski. Preporučljivo je namjestiti ovu postavku na "asimetrično" ili "ručno" kod subarktičke klime jer banke neće slati zlato natrag prema rudnicima zlata. Za umjerenu i subtropsku klimu možete namjestiti i "simetrično" jer će banke slati neke vrijednosnice natrag prema izvorišnoj banci. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Način distribucije za ostale klase tereta: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Asimetrično" znači da će se proizvoljna količina tereta slati u bilo kojem smjeru. "Ručno" znači da neće biti nikakve automatske distribucije za te terete. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Točnost distribucije: {STRING} @@ -1717,13 +1737,13 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrički (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Jedinice mase: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Uvijek kada su mase prikazane u korisničkom sučelju, prikaži ih u odabranim jedinicama +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Uvijek kada je masa prikazana u korisničkom sučelju, prikaži je u odabranim jedinicama STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperijalni (short t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrički (t/tonne) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Jedinice volumena: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Uvijek kada su volumeni prikazani u korisničkom sučelju, prikaži ih u odabranim jedinicama +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Uvijek kada je volumen prikazan u korisničkom sučelju, prikaži ga u odabranim jedinicama STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperijalni (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrički (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) @@ -1735,7 +1755,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrički (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Jedinice visine: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Uvijek kada su visine prikazane u korisničkom sučelju, prikaži ih u odabranim jedinicama +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Uvijek kada je visina prikazana u korisničkom sučelju, prikaži je u odabranim jedinicama STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperijalni (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrički (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1748,7 +1768,7 @@ STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Opće STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Pogledi STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Izgradnja STR_CONFIG_SETTING_ADVISORS :{ORANGE}Novosti / savjetnici -STR_CONFIG_SETTING_COMPANY :{ORANGE}Kompanija +STR_CONFIG_SETTING_COMPANY :{ORANGE}Tvrtka STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Računovodstvo STR_CONFIG_SETTING_VEHICLES :{ORANGE}Vozila STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Fizika @@ -1811,7 +1831,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Više ig STR_INTRO_GAME_OPTIONS :{BLACK}Postavke igre STR_INTRO_HIGHSCORE :{BLACK}Tablica najboljih rezultata -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Napredne postavke +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Postavke STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Postavke STR_INTRO_ONLINE_CONTENT :{BLACK}Provjeri online sadržaj STR_INTRO_SCRIPT_SETTINGS :{BLACK}Postavke UI-ja/Skripte igre @@ -1831,7 +1851,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Odaberi STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Prikaži postavke igre STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Prikaži tablicu najboljih rezultata -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Prikaži napredne postavke +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Prikaži postavke STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Prikaži postavke NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Provjeri novi i nadograđeni sadržaj za preuzimanje STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Prikaži postavke UI-ja/Skripte igre @@ -1871,6 +1891,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Igraj k STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magični buldožer (uklanja industrije, nepokretne objekte): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tuneli se mogu ukrštavati međusobno: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Veliki avioni se ne će rušiti (često) na malim zračnim lukama: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Uredi maksimalnu visinu mape: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Uredi maksimalnu visinu planina na mapi STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Blagi krajolik STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subarktički krajolik STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Suptropski krajolik @@ -1935,7 +1957,7 @@ STR_FACE_LOAD :{BLACK}Učitaj STR_FACE_LOAD_TOOLTIP :{BLACK}Učitaj omiljeno lice STR_FACE_LOAD_DONE :{WHITE}Tvoje omiljeno lice je učitano iz OpenTTD konfiguracijske datoteke. STR_FACE_FACECODE :{BLACK}Broj igračevog lica -STR_FACE_FACECODE_TOOLTIP :{BLACK}Pogledaj i/ili postavi broj lica predsjednika kompanije +STR_FACE_FACECODE_TOOLTIP :{BLACK}Pogledaj i/ili postavi broj lica predsjednika tvrtke STR_FACE_FACECODE_CAPTION :{WHITE}Pogledaj i/ili postavi broj predsjednikovog lica STR_FACE_FACECODE_SET :{WHITE}Novi kod za broj igračevog lica je postavljen STR_FACE_FACECODE_ERR :{WHITE}Nemoguće namjestiti broj predsjednikovog lica - mora biti broj između 0 and 4,294,967,295! @@ -2260,7 +2282,7 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} je osnovao novu tvrtku (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} je izašao iz igre ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} je promijenio/la ime u {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} je dao vašoj kompaniji {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} je dao vašoj tvrtki {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Dao si {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Poslužitelj je zatvorio sesiju STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Poslužitelj se ponovno pokreće...{}Molimo pričekajte... @@ -2344,7 +2366,7 @@ STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Namjesti STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Namjesti prozirnost za drveće. Ctrl+klik za zaključavanje STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Namjesti prozirnost za kuće. Ctrl+klik za zaključavanje STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Namjesti prozirnost za industrije. Ctrl+klik za zaključavanje -STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Namjesti prozirnost za građevine poput stanica, depoa i čvorišta. Ctrl+klik za zaključavanje +STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Namjesti prozirnost za građevine poput postaja, spremiša i čvorišta. Ctrl+klik za zaključavanje STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Namjesti prozirnost za mostove. Ctrl+klik za zaključavanje STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Namjesti prozirnost za strukture poput svjetionika i antena. Ctrl+klik za zaključavanje. STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Aktiviraj prozirnost za viseće žice. Ctrl+klik za zaključavanje @@ -2355,7 +2377,7 @@ STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Učini o STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Legenda protoka tereta STR_LINKGRAPH_LEGEND_ALL :{BLACK}Sve STR_LINKGRAPH_LEGEND_NONE :{BLACK}Ništa -STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Odaberi kompanije koje će se prikazati +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Odaberi tvrtke koje će se prikazati # Linkgraph legend window and linkgraph legend in smallmap STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}nekorišten @@ -2389,7 +2411,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Izgradi STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Izgradi spremište vlakova (za kupnju i servisiranje vlakova). Shift mijenja prikaz građenje/procjena troškova. STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Pretvori prugu u čvorište. Ctrl omogućava spajanje čvorišta. Shift mijenja prikaz građenje/procjena troškova. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Izgradi željezničku postaju. Ctrl omogućava spajanje postaja. Shift mijenja prikaz građenje/procjena troškova. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Izgradi željezničke signale. Ctrl aktivira semafore/svjetlosne signale{}Povlačenjem će se izgraditi signali uzduž ravnog dijela pruge. Ctrl će izgraditi signale do sljedećeg križanja.{}Ctrl+klik aktivira otvaranje prozora za odabir signala. Shift mijenja prikaz građenje/procjena troškova. +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Izgradi željezničke signale. Ctrl aktivira semafore/svjetlosne signale{}Povlačenjem će se izgraditi signali uzduž ravnog dijela pruge. Ctrl će izgraditi signale do sljedećeg križanja ili signala.{}Ctrl+klik aktivira otvaranje prozora za odabir signala. Shift mijenja prikaz građenje/procjena troškova. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Izgradi željeznički most. Shift mijenja prikaz građenje/procjena troškova. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Izgradi željeznički tunel. Shift mijenja prikaz građenje/procjena troškova. STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Aktiviraj izgradnju/uklanjanje željezničke pruge, signala, čvorišta i postaja. Držanjem tipke Ctrl također se uklanjaju tračnice na čvorištima i postajama. @@ -2492,9 +2514,9 @@ STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Smjer au STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Odaberi smjer autobusne postaje STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Smjer kamionskog terminala STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Odaberi smjer kamionskog terminala -STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Orijentacija stanice putničkog tramvaja +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Orijentacija postaje putničkog tramvaja STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Odaberi smjer putničke tramvajske postaje -STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Orijentacija stanice teretnog tramvaja +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Orijentacija postaje teretnog tramvaja STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Odaberi smjer teretne tramvajske postaje # Waterways toolbar (last two for SE only) @@ -2577,10 +2599,10 @@ STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Smanji p STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Napravi nasumično zemljište STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Kreiraj novi scenarij STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Poništi krajolik -STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Obriši sa mape sve u vlasništvu kompanije +STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Obriši s karte sve u vlasništvu tvrtke STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Poništi krajolik -STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Jeste li sigurni da želite obrisati sve u vlasništvu kompanije? +STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Jeste li sigurni da želite obrisati sve u vlasništvu tvrtke? # Town generation window (SE) STR_FOUND_TOWN_CAPTION :{WHITE}Stvaranje gradova @@ -2697,7 +2719,7 @@ STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :{STRING} pruga STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :{STRING} pruga sa kombiniranim i putnim signalima STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :{STRING} pruga sa kombiniranim i jednosmjernim putnim signalima STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :{STRING} pruga sa putnim i jednosmjernim putnim signalima -STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :{STRING} depo vlaka +STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :{STRING} spremište vlaka STR_LAI_ROAD_DESCRIPTION_ROAD :Cesta STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :Cesta s javnom rasvjetom @@ -2761,7 +2783,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Zemlja u posjed STR_ABOUT_OPENTTD :{WHITE}O OpenTTD-u STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Izvorno autorsko pravo {COPYRIGHT} 1995 Chris Sawyer, sva prava pridržana STR_ABOUT_VERSION :{BLACK}OpenTTD verzija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD tim +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD tim # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spremi igru @@ -2796,6 +2818,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Broj gradova: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Broj industrija: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimalna visina mape: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Povećaj maksimalnu visinu planina na mapi za jedan +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Smanji maksimalnu visinu planina na mapi za jedan STR_MAPGEN_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 @@ -2825,6 +2850,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Ime visi STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Veličina: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Promijeni maksimalnu visinu mape STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Promijeni visinu linije snijega STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Promijeni početnu godinu @@ -2938,14 +2964,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF v # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Poravnanje sprite-a {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Sljedeći sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Otiđi na sljedeći normalni sprite, preskačući svaki pseudo/prebojani/font sprite i nakon kraja kreni od početka +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Otiđi na sljedeći normalni sprite, preskačući svaki pseudo/prebojani/font sprite i nakon dolaska na zadnjeg prebaci na prvi STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Otiđi na sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Otiđi na određeni sprite. Ako sprite nije normalni sprite, otiđi na slijedeći normalni sprite STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Prethodni sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Otiđi na prethodni normalni sprite, preskačući svaki pseudo/prebojani/font sprite i kreni od kraja ako se dođe na početak +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Otiđi na prethodni normalni sprite, preskačući svaki pseudo/prebojani/font sprite i {BLACK}Otiđi na sljedeći normalni sprite, preskačući svaki pseudo/prebojani/font sprite i nakon dolaska na prvi prebaci na zadnjeg STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Prikaz trenutno odabranog spritea. Poravnjanje se ignorira kod crtanja ovog spritea. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Pomakni sprite mijenjajući X i Y pomake -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X pomak: {NUM}, Y pomak: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Poništi relativne +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Poništi trenutne relativne pomake +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X pomak: {NUM}, Y pomak: {NUM} (Apsolutni) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X pomak: {NUM}, Y pomak: {NUM} (Relativni) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Odaberi sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Odaberi sprite od bilo gdje na ekranu @@ -3000,9 +3029,9 @@ STR_NEWGRF_LIST_MISSING :{RED}Nedostaju # NewGRF 'it's broken' warnings STR_NEWGRF_BROKEN :{WHITE}Ponašanje NewGRF '{0:STRING}' će vjerojatno uzrokovati deharmonizaciju i/ili rušenje igre -STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Promijenjen status motoriziranog vagona za '{1:ENGINE}' kad vozilo nije u depou. -STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Ovo mijenja dužinu vozila za '{1:ENGINE}' kada vozilo nije unutar depoa -STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Promijenilo je kapacitet vozila za '{1:ENGINE}' kada nije u depou ili se remontira +STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Promijenjen status motoriziranog vagona za '{1:ENGINE}' kad vozilo nije u spremištu. +STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Ovo mijenja dužinu vozila za '{1:ENGINE}' kada vozilo nije unutar spremišta +STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Promijenilo je kapacitet vozila za '{1:ENGINE}' kada nije u spremšta ili se remontira STR_BROKEN_VEHICLE_LENGTH :{WHITE}Vlak'{VEHICLE}' koji pripada tvrtci '{COMPANY}' neispravne je dužine. Uzrok problema je vjerojatno u NewGRF datotekama. Igra će se možda deharmonizirati ili srušiti STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' daje netočne informacije @@ -3057,8 +3086,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} isporučeno STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (još potrebno) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (isporučeno) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Grad raste svaki {ORANGE}{COMMA}{BLACK} dan -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Grad raste svaki {ORANGE}{COMMA}{BLACK} dan (financirano) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Grad raste svaki {ORANGE}{COMMA}{BLACK}{NBSP}dan +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Grad raste svaki {ORANGE}{COMMA}{BLACK}{NBSP}dan (financirano) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Grad {RED}ne{BLACK} raste STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Ograničenje buke u gradu: {ORANGE}{COMMA}{BLACK} maks: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centriraj glavni pogled na lokaciju grada. Ctrl+klik otvara novi prozor sa lokacijom grada @@ -3109,8 +3138,8 @@ STR_GOALS_NONE :{ORANGE}- Nijed STR_GOALS_SPECTATOR_NONE :{ORANGE}- Nije primjenjivo - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} -STR_GOALS_COMPANY_TITLE :{BLACK}Ciljevi kompanije: -STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klikni na cilj za centriranje središnjeg pogleda na industriju/grad/pločicu. Ctrl+Klik otvara novi prozor s pogledom na lokaciju industrije/grada/pločice +STR_GOALS_COMPANY_TITLE :{BLACK}Ciljevi tvrtke: +STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klikni na cilj za centriranje središnjeg pogleda na industriju/grad/polje. Ctrl+Klik otvara novi prozor s pogledom na lokaciju industrije/grada/polja # Goal question window STR_GOAL_QUESTION_CAPTION_QUESTION :Pitanje @@ -3118,7 +3147,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informacija STR_GOAL_QUESTION_CAPTION_WARNING :Upozorenje STR_GOAL_QUESTION_CAPTION_ERROR :Greška -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Poništi STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Ne @@ -3137,6 +3166,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Ponovi od poče STR_GOAL_QUESTION_BUTTON_POSTPONE :Odgodi STR_GOAL_QUESTION_BUTTON_SURRENDER :Odustani STR_GOAL_QUESTION_BUTTON_CLOSE :Zatvori +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subvencije @@ -3232,8 +3262,8 @@ STR_STATION_VIEW_SCHEDULED_SHIPS_TOOLTIP :{BLACK}Pokaži STR_STATION_VIEW_RENAME_STATION_CAPTION :Preimenuj postaju/terminal -STR_STATION_VIEW_CLOSE_AIRPORT :{BLACK}Zatvori aerodrom -STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Spriječi sletanje aviona na ovaj aerodrom +STR_STATION_VIEW_CLOSE_AIRPORT :{BLACK}Zatvori zračnu luku +STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Spriječi slijetanje zrakoplova u ovu zračnu luku # Waypoint/buoy view window STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} @@ -3292,15 +3322,15 @@ STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}Infrastru STR_COMPANY_VIEW_INFRASTRUCTURE_RAIL :{WHITE}{COMMA} dijelovi pruge STR_COMPANY_VIEW_INFRASTRUCTURE_ROAD :{WHITE}{COMMA} dio ceste STR_COMPANY_VIEW_INFRASTRUCTURE_WATER :{WHITE}{COMMA} polje vode -STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} polje stanice -STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} aerodromi +STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} polje postaje +STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} zračne luke STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Ništa STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Izgradi sjedište tvrtke STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Izgradi sjedište tvrtke STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Pogledaj sjedište tvrtke STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Pogledaj sjedište tvrtke -STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Premjesti sjedište kompanije +STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Premjesti sjedište tvrtke STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Izgradi sjedište tvrtke negdje drugdje za 1% troška od cjelokupne vrijednosti tvrtke. Shift+Klik prikazuje trošak bez premještanja sjedišta tvrtke. STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detalji STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Pogledaj detaljne podatke infrastrukture @@ -3331,11 +3361,11 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}Signali STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}Dijelovi ceste: STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD :{WHITE}Cesta STR_COMPANY_INFRASTRUCTURE_VIEW_TRAMWAY :{WHITE}Tramvajska pruga -STR_COMPANY_INFRASTRUCTURE_VIEW_WATER_SECT :{GOLD}Pločice vode: +STR_COMPANY_INFRASTRUCTURE_VIEW_WATER_SECT :{GOLD}Polje s vodom: STR_COMPANY_INFRASTRUCTURE_VIEW_CANALS :{WHITE}Kanali -STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Stanice: -STR_COMPANY_INFRASTRUCTURE_VIEW_STATIONS :{WHITE}Pločice stanice -STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}Aerodromi +STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Postaje: +STR_COMPANY_INFRASTRUCTURE_VIEW_STATIONS :{WHITE}Polje s postajom +STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}Zračne luke STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENCY_LONG}/god # Industry directory @@ -3459,12 +3489,12 @@ STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Prenamje STR_PURCHASE_INFO_ALL_TYPES :Sve vrste tereta STR_PURCHASE_INFO_ALL_BUT :Sve osim {CARGO_LIST} STR_PURCHASE_INFO_MAX_TE :{BLACK} Maks. vučni napor: {GOLD}{FORCE} -STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Domet: {GOLD}{COMMA} pločica +STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Domet: {GOLD}{COMMA} polja -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Popis izabranih vlakova - klikni na vlak za informacije -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Popis izabranih cestovnih vozila - klikni na vozilo za informacije -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Popis izabranih brodova - klikni na brod za informacije -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Popis izabranih zrakoplova - klikni na zrakoplov za informacije +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Popis vlakova za odabir. Klikni na vozilo za informacije. Ctrl+klik za uključivanje ili isključivanje prikaza vrste vozila +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Popis cestovnih vozila za odabir. Klikni na vozilo za informacije. Ctrl+klik za uključivanje ili isključivanje prikaza vrste cestovnog vozila +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Popis brodova za odabir. Klikni na vozilo za informacije. Ctrl+klik za uključivanje ili isključivanje prikaza vrste broda +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Popis zrakoplova za odabir. Klikni na vozilo za informacije. Ctrl+klik za uključivanje ili isključivanje prikaza vrste zrakoplova STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Kupi vozilo STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Kupi vozilo @@ -3486,6 +3516,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Preimenu STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Preimenuj vrstu broda STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Preimenuj vrstu zrakoplova +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Sakrij +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Sakrij +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Sakrij +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Sakrij + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Prikaži +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Prikaži +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Prikaži +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Prikaži + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prebacivanje skrivanja/prikazivanja vrste vlakova +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prebacivanje skrivanja/prikazivanja vrste cestovnog vozila +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prebacivanje skrivanja/prikazivanja vrste broda +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prebacivanje skrivanja/prikazivanja vrste zrakoplova + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Preimenuj vrstu vagona STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Preimenuj vrstu cestovnog vozila STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Preimenuj vrstu broda @@ -3494,8 +3539,8 @@ STR_QUERY_RENAME_AIRCRAFT_TYPE_CAPTION :{WHITE}Preimenu # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} -STR_DEPOT_RENAME_TOOLTIP :{BLACK}Promijeniti ime depoa -STR_DEPOT_RENAME_DEPOT_CAPTION :Preimenovati depo +STR_DEPOT_RENAME_TOOLTIP :{BLACK}Promijeniti ime spremišta +STR_DEPOT_RENAME_DEPOT_CAPTION :Preimenovati spremište STR_DEPOT_NO_ENGINE :{BLACK}- STR_DEPOT_VEHICLE_TOOLTIP :{BLACK}{ENGINE}{STRING} @@ -3539,7 +3584,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Kloniraj STR_DEPOT_CLONE_SHIP :{BLACK}Kloniraj brod STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Kloniraj zrakoplov -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Ovo će kupiti kopiju vlaka uključujući sve vagone. Kliknite na ovaj gumb i onda na vlak unutar ili izvan spremišta. Ctrl+Klik će dijeliti naredbe. Shift+Klik prikazuje trošak bez kupnje. +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Ovo će kupiti kopiju vlaka uključujući sve vagone. Kliknite na ovaj gumb i onda na vlak unutar ili izvan spremišta. Ctrl+Klik će dijeliti naredbe. Shift+Klik prikazuje procijenjeni trošak bez kupnje. STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Ovo će kupiti kopiju cestovnog vozila. Klikni na ovaj gumb i onda na cestovno vozilo unutar ili izvan spremišta. CTRL+Klik će dijeliti naredbe. Shift+Klik prikazuje procijenjeni trošak bez kupnje. STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Ovo će kupiti kopiju broda. Klikni na ovaj gumb i onda na brod unutar ili izvan spremišta. Ctrl+Klik će dijeliti naredbe. Shift+Klik prikazuje trošak bez kupnje. STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Ovo će kupiti kopiju zrakoplova. Klikni ovaj gumb i onda na zrakoplov unutar ili izvan hangara. Control+Klik će dijeliti naredbe. Shift+Klik prikazuje trošak bez kupnje. @@ -3590,6 +3635,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Cestovno vozilo STR_REPLACE_VEHICLE_SHIP :Brod STR_REPLACE_VEHICLE_AIRCRAFT :Zrakoplov +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Vozila u uporabi +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Stupac s vozilima koje posjedujete +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Dostupna vozila +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Stupac sa vozilima dostupnim za zamjenjivanje + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Izaberi vrstu motora koju želiš zamijeniti STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Odaberite novu vrstu lokomotive koji želite koristiti umjesto lijevo odabrane vrste lokomotive @@ -3699,7 +3749,7 @@ STR_VEHICLE_INFO_AGE :{COMMA} godin{P STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} godin{P a e a} ({COMMA}) STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Maks. brzina: {LTBLUE}{VELOCITY} -STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}Maks. brzina: {LTBLUE}{VELOCITY} {BLACK}Domet: {LTBLUE}{COMMA} pločica +STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}Maks. brzina: {LTBLUE}{VELOCITY} {BLACK}Domet: {LTBLUE}{COMMA} polja STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Težina: {LTBLUE}{WEIGHT_SHORT} {BLACK}Snaga: {LTBLUE}{POWER}{BLACK} Maks. brzina: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Težina: {LTBLUE}{WEIGHT_SHORT} {BLACK}Snaga: {LTBLUE}{POWER}{BLACK} Maks. brzina: {LTBLUE}{VELOCITY} {BLACK}Maks. T.E.: {LTBLUE}{FORCE} @@ -3714,7 +3764,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Nosivost STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Prebaci novac: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servisni interval: {LTBLUE}{COMMA}dana{BLACK} Zadnji servis: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servisni interval: {LTBLUE}{COMMA}{NBSP}dana{BLACK} Zadnji servis: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servisni interval: {LTBLUE}{COMMA}%{BLACK} Zadnji servis: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Povećaj servisni interval za 10. Ctrl+klik povećava servisni interval za 5. STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Smanji servisni interval za 10. Ctrl+klik smanjuje servisni interval za 5. @@ -3759,7 +3809,7 @@ STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Nova nos STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Novi kapacitet: {GOLD}{CARGO_LONG}{}{BLACK}Prihod od remonta: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Novi kapacitet: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Trošak remonta: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Novi kapacitet: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Prihod od remonta: {GREEN}{CURRENCY_LONG} -STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Odaberi vozila za remont. Povlačenje mišem dozvoljava odabir više vozila. Klik na prazninu će označiti cijelo vozilo. Ctrl+Klik će označiti vozilo i niz koji slijedi. +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Odaberi vozila za remont. Povlačenje mišem dopušta odabir više vozila. Klik na prazninu će označiti cijelo vozilo. Ctrl+Klik će označiti vozilo i niz koji slijedi. STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Odaberi vrstu tereta koju će vlak prevoziti STR_REFIT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Odaberi vrstu tereta koje će cestovno vozilo prevoziti @@ -3812,7 +3862,7 @@ STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Promijen STR_ORDER_REFIT :{BLACK}Prenamijeni STR_ORDER_REFIT_TOOLTIP :{BLACK}Odaberi vrstu tereta za prenamijenu u ovoj naredbi. Ctrl+klik kako bi uklonio naputak za prenamjenu -STR_ORDER_REFIT_AUTO :{BLACK}Auto-remont na stanici +STR_ORDER_REFIT_AUTO :{BLACK}Auto-remont na postaji STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Odaberi za koji tip tereta odraditi auto-remont. Ctrl+Click za micanje remontnih uputa. Auto-remont će se odraditi samo ako ga vozilo dopušta. STR_ORDER_DROP_REFIT_AUTO :Popravljen teret STR_ORDER_DROP_REFIT_AUTO_ANY :Dostupni teret @@ -3861,7 +3911,7 @@ STR_ORDER_GO_TO_NEAREST_DEPOT :Idi do najbliž STR_ORDER_GO_TO_NEAREST_HANGAR :Idi do najbližeg hangara STR_ORDER_CONDITIONAL :Uvjetovani skok na naredbu STR_ORDER_SHARE :Dijeli naredbe -STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Umetni novu naredbu prije označene naredbe, ili dodaj na kraj liste. Ctrl određuje naredbe stanice 'napuni do kraja bilo koji teret', naredbe prolaznih točki 'non-stop', a naredbe depoa 'servisiraj'. 'Dijeli naredbe' ili Ctrl dozvoljava da ovo vozilo dijeli naredbe sa odabranim vozilom. Klik na vozilo kopira naredbe tog vozila. Naredba depoa isključuje automatsko servisiranje vozila. +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Umetni novu naredbu prije označene naredbe, ili dodaj na kraj liste. Ctrl određuje naredbe postaje 'napuni do kraja bilo koji teret', naredbe prolaznih točki 'non-stop', a naredbe spremišta 'servisiraj'. 'Dijeli naredbe' ili Ctrl dopušta da ovo vozilo dijeli naredbe s odabranim vozilom. Klik na vozilo kopira naredbe tog vozila. Naredba spremišta isključuje automatsko servisiranje vozila. STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Pokaži sva vozila koja dijele ovaj raspored. @@ -3950,8 +4000,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(stajanje za {S STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(putovanje za {STRING}, nije mjereno) STR_TIMETABLE_STAY_FOR :i boravak za {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :i putovanje za {STRING} -STR_TIMETABLE_DAYS :{COMMA} dan{P "" a a} -STR_TIMETABLE_TICKS :{COMMA} otkucaj{P "" a a} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}dan{P "" a a} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}otkucaj{P "" a a} STR_TIMETABLE_TOTAL_TIME :{BLACK}Ovaj vozni red trebat će {STRING} za završetak STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Ovaj vozni red trebat će najmanje {STRING} za završetak (nije sve raspoređeno) @@ -4173,7 +4223,7 @@ STR_ERROR_CLEARING_LIMIT_REACHED :{WHITE}... dose STR_ERROR_TREE_PLANT_LIMIT_REACHED :{WHITE}... dosegnut limit sađenja drveća STR_ERROR_NAME_MUST_BE_UNIQUE :{WHITE}Ime mora biti jedinstveno STR_ERROR_GENERIC_OBJECT_IN_THE_WAY :{WHITE}{1:STRING} na putu -STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Nije dozvoljeno za vrijeme pauze +STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Nije dopušteno za vrijeme pauze # Local authority errors STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}{TOWN} lokalna samouprava odbija to dopustiti @@ -4189,6 +4239,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Iskopava STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Već je na razini mora STR_ERROR_TOO_HIGH :{WHITE}Previsoko STR_ERROR_ALREADY_LEVELLED :{WHITE}... već je sravnjeno +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Nakon toga, most iznad toga bi bio previsok. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Ime tvrtke nije moguće promijeniti... @@ -4215,7 +4266,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... preb STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... preblizu drugome gradu STR_ERROR_TOO_MANY_TOWNS :{WHITE}... previše gradova STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... nema više mjesta na karti -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Grad neće graditi ceste. Možete uključiti gradnju cesta putem Naprednih postavki -> Ekonomija -> Gradovi +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Grad neće graditi ceste. Možete uključiti gradnju cesta putem Postavki->Okolina->Gradovi STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Cestovni radovi u tijeku STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Nije moguće izbrisati ovaj grad...{}Postaja ili spremište se pozivaju na grad ili polja u vlasništvu grada nije moguće ukloniti STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... nema odgovarajućeg mjesta za kip u središtu ovog grada @@ -4239,6 +4290,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... šum STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... moguće graditi samo iznad razine snijega STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... moguće graditi samo ispod razine snijega +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nije bilo odgovarajućih mjesta za '{STRING}' industrije +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Izmijenite parametre za generaciju mape kako bi dobili bolju mapu + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Ovdje nije moguće izgraditi željezničku postaju... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Nije moguće izgraditi autobusnu postaju... @@ -4260,8 +4314,8 @@ STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Preblizu STR_ERROR_CAN_T_RENAME_STATION :{WHITE}Nije moguće preimenovati postaju... STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... ovo je gradska cesta STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... cesta je orijentirana u krivom smjeru -STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... prolazne stanice ne mogu imati zavoje -STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... prolazne stanice ne mogu imati raskrižja +STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... prolazne postaje ne mogu imati zavoje +STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... prolazne postaje ne mogu imati raskrižja # Station destruction related errors STR_ERROR_CAN_T_REMOVE_PART_OF_STATION :{WHITE}Nije moguće ukloniti dio postaje... @@ -4270,8 +4324,8 @@ STR_ERROR_CAN_T_REMOVE_BUS_STATION :{WHITE}Nije mog STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Nije moguće ukloniti kamionsku postaju... STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Nije moguće ukloniti putničku tramvajsku postaju... STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Nije moguće ukloniti teretnu tramvajsku postaju... -STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Najprije je potrebno ukloniti cestovnu stanicu -STR_ERROR_THERE_IS_NO_STATION :{WHITE}...ovdje nema stanice +STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Najprije je potrebno ukloniti cestovnu postaju +STR_ERROR_THERE_IS_NO_STATION :{WHITE}... ovdje nema postaje STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}Najprije je potrebno srušiti željezničku postaju STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}Najprije je potrebno srušiti autobusnu postaju @@ -4292,7 +4346,7 @@ STR_ERROR_CAN_T_CHANGE_WAYPOINT_NAME :{WHITE}Nije mog STR_ERROR_CAN_T_REMOVE_TRAIN_WAYPOINT :{WHITE}Nije moguće ukloniti željezničko čvorište odavde... STR_ERROR_MUST_REMOVE_RAILWAYPOINT_FIRST :{WHITE}Najprije je potrebno ukloniti željezničko čvorište STR_ERROR_BUOY_IN_THE_WAY :{WHITE}... plutača na putu -STR_ERROR_BUOY_IS_IN_USE :{WHITE}... plutača je u uporabi od strane druge kompanije! +STR_ERROR_BUOY_IS_IN_USE :{WHITE}... plutača je u uporabi od strane druge tvrtke! # Depot related errors STR_ERROR_CAN_T_BUILD_TRAIN_DEPOT :{WHITE}Ovdje nije moguće izgraditi spremište vlakova... @@ -4300,7 +4354,7 @@ STR_ERROR_CAN_T_BUILD_ROAD_DEPOT :{WHITE}Ovdje ni STR_ERROR_CAN_T_BUILD_TRAM_DEPOT :{WHITE}Ovdje nije moguće izgraditi tramvajsko spremište... STR_ERROR_CAN_T_BUILD_SHIP_DEPOT :{WHITE}Ovdje nije moguće izgraditi spremište brodova... -STR_ERROR_CAN_T_RENAME_DEPOT :{WHITE}Nije moguće preimenovati depo... +STR_ERROR_CAN_T_RENAME_DEPOT :{WHITE}Nije moguće preimenovati spremište... STR_ERROR_TRAIN_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... mora biti zaustavljen unutar spremišta STR_ERROR_ROAD_VEHICLE_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... mora biti zaustavljen unutar spremišta cestovnih vozila @@ -4375,6 +4429,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Najprije STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Početak i kraj ne mogu biti na istom mjestu STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Glave mosta nisu na istoj razini STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Most je prenizak za teren +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Most je previsok za ovaj teren. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Početak i kraj moraju biti u ravnini STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... oba kraja mosta moraju biti na zemlji STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... predugačak most @@ -4492,7 +4547,7 @@ STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... avio # Timetable related errors STR_ERROR_CAN_T_TIMETABLE_VEHICLE :{WHITE}Nije moguće zadati vozni red za vozilo... -STR_ERROR_TIMETABLE_ONLY_WAIT_AT_STATIONS :{WHITE}Vozila mogu čekati samo na stanicama. +STR_ERROR_TIMETABLE_ONLY_WAIT_AT_STATIONS :{WHITE}Vozila mogu čekati samo na postajama. STR_ERROR_TIMETABLE_NOT_STOPPING_HERE :{WHITE}Ovo vozilo se ne zaustavlja na ovoj postaji. # Sign related errors @@ -4941,12 +4996,12 @@ STR_FORMAT_INDUSTRY_NAME :{TOWN} {STRING} STR_FORMAT_WAYPOINT_NAME :Čvorište {TOWN} STR_FORMAT_WAYPOINT_NAME_SERIAL :Čvorište {TOWN} #{COMMA} -STR_FORMAT_DEPOT_NAME_TRAIN :{TOWN} Depo za vlakove -STR_FORMAT_DEPOT_NAME_TRAIN_SERIAL :{TOWN} Depo za vlakove #{COMMA} -STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE :{TOWN} Depo za cestovna vozila -STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE_SERIAL :{TOWN} Depo za cestovna vozila #{COMMA} -STR_FORMAT_DEPOT_NAME_SHIP :{TOWN} Depo za brodove -STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :{TOWN} Depo za brodove #{COMMA} +STR_FORMAT_DEPOT_NAME_TRAIN :{TOWN} Spremište vlakova +STR_FORMAT_DEPOT_NAME_TRAIN_SERIAL :{TOWN} Spremište vlakova #{COMMA} +STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE :{TOWN} Spremište cestovnih vozila +STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE_SERIAL :{TOWN} Spremište cestovnih vozila #{COMMA} +STR_FORMAT_DEPOT_NAME_SHIP :{TOWN} Spremšte za brodove +STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :{TOWN} Spremište brodova #{COMMA} STR_FORMAT_DEPOT_NAME_AIRCRAFT :{STATION} Hangar STR_UNKNOWN_STATION :nepoznata postaja @@ -4976,6 +5031,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (sakriveno) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -5011,8 +5067,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/czech.txt b/src/lang/czech.txt index 0eb6fefa25..b3e361057c 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -170,30 +170,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :limonád # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} cestující{P "" "" ch} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}cestující{P "" "" ch} STR_QUANTITY_COAL :{WEIGHT_LONG} uhlí -STR_QUANTITY_MAIL :{COMMA} balík{P "" y ů} pošty +STR_QUANTITY_MAIL :{COMMA}{NBSP}balík{P "" y ů} pošty STR_QUANTITY_OIL :{VOLUME_LONG} ropy -STR_QUANTITY_LIVESTOCK :{COMMA} kus{P "" y ů} dobytka -STR_QUANTITY_GOODS :{COMMA} krabic{P e e ""} zboží +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}kus{P "" y ů} dobytka +STR_QUANTITY_GOODS :{COMMA}{NBSP}krabic{P e e ""} zboží STR_QUANTITY_GRAIN :{WEIGHT_LONG} zrní STR_QUANTITY_WOOD :{WEIGHT_LONG} dřeva STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} železné rudy STR_QUANTITY_STEEL :{WEIGHT_LONG} oceli -STR_QUANTITY_VALUABLES :{COMMA} balík{P "" y ů} cenin +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}balík{P "" y ů} cenin STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} měděné rudy STR_QUANTITY_MAIZE :{WEIGHT_LONG} kukuřice STR_QUANTITY_FRUIT :{WEIGHT_LONG} ovoce -STR_QUANTITY_DIAMONDS :{COMMA} pyt{P el le lů} diamantů +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}pyt{P el le lů} diamantů STR_QUANTITY_FOOD :{WEIGHT_LONG} jídla STR_QUANTITY_PAPER :{WEIGHT_LONG} papíru -STR_QUANTITY_GOLD :{COMMA} balík{P "" y ů} zlata +STR_QUANTITY_GOLD :{COMMA}{NBSP}balík{P "" y ů} zlata STR_QUANTITY_WATER :{VOLUME_LONG} vody STR_QUANTITY_WHEAT :{WEIGHT_LONG} pšenice STR_QUANTITY_RUBBER :{VOLUME_LONG} kaučuku STR_QUANTITY_SUGAR :{WEIGHT_LONG} cukru -STR_QUANTITY_TOYS :{COMMA} hrač{P ka ky ek} -STR_QUANTITY_SWEETS :{COMMA} pyt{P el le lů} bonbonů +STR_QUANTITY_TOYS :{COMMA}{NBSP}hrač{P ka ky ek} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}pyt{P el le lů} bonbonů STR_QUANTITY_COLA :{VOLUME_LONG} koly STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} cukrové vaty STR_QUANTITY_BUBBLES :{COMMA} bublin{P a y ""} @@ -240,12 +240,12 @@ STR_ABBREV_NONE :{TINY_FONT}NIC STR_ABBREV_ALL :{TINY_FONT}VŠE # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} cestující{P "" "" ch} -STR_BAGS :{COMMA} balík{P "" y ů} -STR_TONS :{COMMA} tun{P a y ""} -STR_LITERS :{COMMA} litr{P "" y ů} -STR_ITEMS :{COMMA} kus{P "" y ů} -STR_CRATES :{COMMA} krabic{P e e ""} +STR_PASSENGERS :{COMMA}{NBSP}cestující{P "" "" ch} +STR_BAGS :{COMMA}{NBSP}balík{P "" y ů} +STR_TONS :{COMMA}{NBSP}tun{P a y ""} +STR_LITERS :{COMMA}{NBSP}litr{P "" y ů} +STR_ITEMS :{COMMA}{NBSP}kus{P "" y ů} +STR_CRATES :{COMMA}{NBSP}krabic{P e e ""} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Tmavomodrá @@ -266,37 +266,37 @@ STR_COLOUR_GREY :Šedá STR_COLOUR_WHITE :Bílá # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mil/h -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}m{P íle íle il}/h +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA} hp -STR_UNITS_POWER_METRIC :{COMMA} hp -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tun{P a y ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tun{P a y ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tun{P a y ""} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tun{P a y ""} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} l -STR_UNITS_VOLUME_SHORT_SI :{COMMA} m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" "y" "ů"} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr{P "" y ů} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" "y" "ů"} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P "" y ů} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} stop{P a y ""} -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}stop{P a y ""} +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtrovat řetězec: @@ -323,6 +323,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Posuvní STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Posuvník - posouvá výpisem doleva nebo doprava STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolice budov, atd. na čtverečku. Ctrl vybírá diagonální oblast. Shift zobrazí odhad ceny +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Zobrazit skryté +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Zobrazit skryté +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Zobrazit skryté +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Zobrazit skryté + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Zapnutím tohoto přepínače se budou zobrazovat i skryté lokomotivy a vagóny +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Zapnutím tohoto přepínače se budou zobrazovat i skrytá silniční vozidla +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Zapnutím tohoto přepínače se budou zobrazovat i skryté lodě +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Zapnutím tohoto přepínače se budou zobrazovat i skrytá letadla + # Query window STR_BUTTON_DEFAULT :{BLACK}Původní STR_BUTTON_CANCEL :{BLACK}Zrušit @@ -436,7 +447,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Ukončit ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Možnosti hry -STR_SETTINGS_MENU_CONFIG_SETTINGS :Pokročilé nastavení +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Nastavení STR_SETTINGS_MENU_SCRIPT_SETTINGS :Nastavení AI / hry STR_SETTINGS_MENU_NEWGRF_SETTINGS :Nastavení grafik STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Nastavení průhlednosti @@ -1003,10 +1014,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgijské Lar STR_GAME_OPTIONS_CURRENCY_IRR :Íránský Riál (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Silniční vozidla jezdí STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Výběr strany, na které jezdí silnični vozidla STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vlevo @@ -1060,6 +1067,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Rozliše STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Zvolit rozlišení obrazovky STR_GAME_OPTIONS_RESOLUTION_OTHER :jiné +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Velikost rozhraní +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Zvolil velikost prvků uživatelského rozhraní + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normální +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná velikost +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Čtyřnásobná velikost + 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_STATUS :{RED}{NUM} chybějící{P "" "" ch}/poškozen{P ý é ých} soubor{P "" y ů} @@ -1153,6 +1167,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :velmi plochá STR_TERRAIN_TYPE_FLAT :plochá STR_TERRAIN_TYPE_HILLY :kopcovitá STR_TERRAIN_TYPE_MOUNTAINOUS :hornatá +STR_TERRAIN_TYPE_ALPINIST :Alpské STR_CITY_APPROVAL_PERMISSIVE :nezaujatý STR_CITY_APPROVAL_TOLERANT :tolerantní @@ -1160,8 +1175,8 @@ STR_CITY_APPROVAL_HOSTILE :zaujatý STR_WARNING_NO_SUITABLE_AI :{WHITE}Žádná vhodná AI není k dispozici...{}Některé AI lze stáhnout pomocí služby "Stahovat součásti" -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Pokročilé nastavení +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Nastavení STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtrovat podle: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Rozbalit vše STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Sbalit vše @@ -1177,9 +1192,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Nastavení spol STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorie: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Druh: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Omezit nastavení v seznamu níže pomocí předdefinovaných filtrů -STR_CONFIG_SETTING_RESTRICT_BASIC :Základní nastavení -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Pokročilé nastavení -STR_CONFIG_SETTING_RESTRICT_ALL :Expertní nastavení / všechna nastavení +STR_CONFIG_SETTING_RESTRICT_BASIC :Základní (zobrazí pouze důležitá nastavení) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Pokročilé (zobrazí většinu nastavení) +STR_CONFIG_SETTING_RESTRICT_ALL :Expertní (zobrazí všechna nastavení, včetně těch podivných) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Nastavení s jinou než defaultní hodnotou STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Nastavení s jinou hodnotou než tvé nastavení nových her @@ -1234,6 +1249,9 @@ 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_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_MAX_HEIGHTLEVEL_HELPTEXT :Nastavit maximální povolenou výšku hor na mapě +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_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_CATCHMENT :Povolit u oblasti pokrytí realističtější velikost: {STRING} @@ -1242,8 +1260,8 @@ STR_CONFIG_SETTING_EXTRADYNAMITE :Povolit bourán STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Usnadňuje odstranění městských staveb a silnic STR_CONFIG_SETTING_TRAIN_LENGTH :Maximální délka vlaků: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Určuje maximální délku vlaků -STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} pole{P e e í} -STR_CONFIG_SETTING_SMOKE_AMOUNT :množství kouře/jisker u stroje: {STRING} +STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} pol{P e e í} +STR_CONFIG_SETTING_SMOKE_AMOUNT :Množství kouře/jisker u vozidel: {STRING} STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Množštví kouře či jisker emitovaných vozidly STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL :Model akcelerace vlaků: {STRING} STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Zvolit fyzikální model pro zrychlení vlaků. "Originální" model zpomaluje všechny vozidla na svahu stejně. Realistický model zpomaluje na svazích a v zatáčkách podle různých parametrů, například délky a tažné síly. @@ -1262,6 +1280,8 @@ STR_CONFIG_SETTING_INFLATION :Inflace: {STRIN STR_CONFIG_SETTING_INFLATION_HELPTEXT :Povolit inflaci. Ceny se časem zvyšují mírně rychleji než platby. STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximální délka mostu: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Určuje maximální délku mostů +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximální výška mostu: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximální výška pro stavění mostů STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximální délka tunelu: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Určuje maximální délku tunelů STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Způsob manuálního budování primárního průmyslu: {STRING} @@ -1347,8 +1367,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Doba zobrazení STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Doba zobrazení chybových zpráv v červeném okně. Některé zprávy o (kritických) chybách však nejsou zavírány automaticky a musí být zavřeny ručně. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekund STR_CONFIG_SETTING_HOVER_DELAY :Zobrazení kontextové nápovědy: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Prodleva před zobrazením nápovědy, pokud se kurzor vznáší nad nějakým ovládacím prvkem. Nápověda může být rovněž vyvolána pravým tlačítkem myši. -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Podržet kurzor nad {COMMA} sekund +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Prodleva před zobrazením nápovědy, pokud kurzor leží nad nějakým ovládacím prvkem. Nápověda může být rovněž vyvolána pravým tlačítkem myši. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Podržet kurzor po dobu {COMMA} sekund{P y "" ""} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Pravým klikem STR_CONFIG_SETTING_POPULATION_IN_LABEL :Zobrazovat populaci města v jeho popisku: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Zobrazovat městskou populaci u názvu města na mapě @@ -1381,9 +1401,9 @@ STR_CONFIG_SETTING_RIVER_AMOUNT :Množství řek STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Zvol množství řek k vytvoření STR_CONFIG_SETTING_TREE_PLACER :Algoritmus sázení stromového porostu: {STRING} STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Zvol způsob rozmisťování stromů ve světe: "Originální" sází stromy rovnoměrně, "Vylepšené" sází stromy ve skupinách -STR_CONFIG_SETTING_TREE_PLACER_NONE :žádné +STR_CONFIG_SETTING_TREE_PLACER_NONE :žádný STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :původní -STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :vylepšené +STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :vylepšený STR_CONFIG_SETTING_ROAD_SIDE :Silniční vozidla: {STRING} STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Zvol na jaké straně vozovky jezdí vozidla STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Otočení výškové mapy: {STRING} @@ -1531,7 +1551,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Intervaly servi STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Vyber, jestli potřebu návštěvy servisu určuje čas od poslední návštěvy nebo určitý pokles % spolehlivosti od jejího maxima. STR_CONFIG_SETTING_SERVINT_TRAINS :Základní servisní interval pro vlaky: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Nastaví defaultní servisní interval pro vlaky. -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dní/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dní/% STR_CONFIG_SETTING_SERVINT_DISABLED :Vypnuto STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Základní servisní interval pro silniční vozidla: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Nastaví defaultní servisní interval pro silniční vozidla pokud vozidlo nemá nastaveno jiný servisní interval @@ -1540,11 +1560,11 @@ STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Nastaví defaul STR_CONFIG_SETTING_SERVINT_SHIPS :Základní servisní interval pro lodě: {STRING} STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Nastaví defaultní servisní interval pro lodě pokud loď nemá nastaven jiný servisní interval STR_CONFIG_SETTING_NOSERVICE :Vypnout servisy, když jsou vypnuty poruchy: {STRING} -STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Pokud je zapnuto, vozidla nejezdí do servisu pokud se nemohou porouchat, tedy pokud jsou vypnuty poruchy +STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Pokud je zapnuto a zároveň jsou vypnuty poruchy, vozidla nebudou vůbec jezdit do servisu, protože se nemohou nikdy porouchat STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Zapnout omezení rychlosti vagonů: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Pokud zapnuto, použije rychlostní omezení vagónů při stanovení maximální rychlosti vlaku STR_CONFIG_SETTING_DISABLE_ELRAILS :Vypnout elektrickou železnici: {STRING} -STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Zapnutím této možnosti odstraní potřebu elektrifikované trati pro elektrické lokomotivy +STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Zapnutí této možnosti odstraní potřebu elektrifikované trati pro elektrické lokomotivy STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :Příjezd prvního vozidla do hráčovy stanice: {STRING} STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Zobrazovat noviny pokud první vozidlo dorazí do stanice této společnosti @@ -1598,7 +1618,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Zvol chování STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Semafory automaticky stavět do roku: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Nastav rok, ve kterém budou používány elektrické semafory. Před tímto rokem jsou používány mechanické, které fungují stejně ale mají jiný vzhled STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Okno pro stavbu návěstidel: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Zobrazovat okno pro vybrání typu semaforů místo "bezokeního" měnění pomocí ctrl+kliku při jejich stavbě. +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Zobrazovat okno pro vybrání typu semaforů místo "bezokeního" měnění pomocí ctrl+klikání na existující semafor STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Výchozí typ návěstidla: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Výchozí typ semaforu k použití STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :obyčejné @@ -1671,17 +1691,17 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Žádné STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Činitel základní velikosti města: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Průměrná velikost větších měst v porovnání s ostatními městy na začátku hry -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aktualizovat distribuční graf každých {STRING} {P den dny dnů} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aktualizovat distribuční graf po {STRING}{P 0:2 dni dnech dnech} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Čas mezi přepočítáváním částí grafu spojení. Každý přepočet přepočítává plány jedné části grafu. To znamená, že hodnota X u toho nastavení nezpůsobí, že se každých X dní přepočítá celý graf, ale pouze určité části. Čím kratší interval nastavíš, tím více času CPU bude potřeba ke spočítání. Čím delší nastavíš, tím déle bude trvat dokud si distribuce nákladu najde nové trasy. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Zaber si {STRING} {P "den" "dny" "dnů"} na přepočet grafu spojení +STR_CONFIG_SETTING_LINKGRAPH_TIME :Zaber si {STRING}{NBSP}{P 0:2 "den" "dny" "dní"} na přepočet grafu spojení STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Čas vyhrazený pro každý přepočet části grafu spojení. Pokud přepočet začne, je vytvořeno nové vlákno, které má dovoleno běžet po zvolený počet dnů. Čím nižší hodnotu nastavíš tím je pravděpodobnější, že vlákno nebude dokončeno kdy má. Pokud se tak stane, hra se zastaví ("lagne") dokud dokončeno nebude. Čím vyšší hodnotu nastavíš, tím déle bude trvat aktualizace grafu pokud se trasy změní. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuální STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :nerovnoměrný STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :rovnoměrný STR_CONFIG_SETTING_DISTRIBUTION_PAX :Mód distribuce pro cestující: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Rovnoměrný" znamená, že téměř stejné množství cestujících bude chce cestovat ze stanice A do stanice B, jako ze stanice B do A. "Nerovnoměrný znamená", že libovolné množství cestujících může cestovat v jakýchkoliv směrech. "manuální" znamená, že zde nebude žádná automatická distribuce pro cestující. +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Rovnoměrný" znamená, že téměř stejné množství cestujících chce cestovat ze stanice A do stanice B, jako ze stanice B do A. "Nerovnoměrný znamená", že libovolné množství cestujících může cestovat v jakýchkoliv směrech. "manuální" znamená, že zde nebude žádná automatická distribuce pro cestující. STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Mód distribuce pro poštu: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Rovnoměrný" znamená, že téměř stejné množství pošty bude odesláno ze stanice A do stanice B, jako ze stanice B do A. "Nerovnoměrný znamená", že libovolná množství pošty může být odesláno v jakýchkoliv směrech. "manuální" znamená, že zde nebude žádná automatická distribuce pro poštu. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Rovnoměrný" znamená, že téměř stejné množství pošty bude odesláno ze stanice A do stanice B, jako ze stanice B do A. "Nerovnoměrný znamená", že libovolné množství pošty může být odesláno v jakýchkoliv směrech. "manuální" znamená, že zde nebude žádná automatická distribuce pro poštu. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Mód distribuce pro náklady pancéřových vozů: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Pancéřované vozy převážejí ceniny v mírném, diamanty v subtropickém nebo zlato v subarktickém klimatu. Nové grafiky však toho mohou změnit. "Rovnoměrný" znamená, že téměř stejné množství nákladu bude odesláno ze stanice A do stanice B, jako ze stanice B do A. "Nerovnoměrný znamená", že libovolná množství nákladu mohou být odeslána v jakýchkoliv směrech. "manuální" znamená, že zde nebude žádná automatická distribuce pro tyto druhy nákladu. Je doporučeno nastavit "nerovnoměrný" nebo "manuální" při hraní v subarktickém klimatu, neboť banky neposílají do dolů žádné zlato. Pro mírné a subtropické klima můžeš nastavit "rovnoměrné", neboť banky odesílají zpět do původní banky nějaký náklad cenin. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Módy distribuce pro ostatní třídy nákladu: {STRING} @@ -1802,7 +1822,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Více hr STR_INTRO_GAME_OPTIONS :{BLACK}Možnosti hry STR_INTRO_HIGHSCORE :{BLACK}Nejlepší výsledky -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Pokročilé nastavení +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Nastavení STR_INTRO_NEWGRF_SETTINGS :{BLACK}Nastavení grafik STR_INTRO_ONLINE_CONTENT :{BLACK}Stahovat součásti STR_INTRO_SCRIPT_SETTINGS :{BLACK}Nastavení AI / hry @@ -1822,7 +1842,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Země hr STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Zobrazit možnosti hry STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Zobrazit tabulku nejlepších výsledků -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Zobrazit pokročilé nastavení +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Nastavení zobrazení STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Ukázat nastavení NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Ukázat, jaký nový nebo upravený obsah se dá stáhnout STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Zobrazit nastavení AI a hry @@ -1862,6 +1882,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Hrát j STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magický buldozer (odstraní průmysl a další objekty): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunely se mohou křížit: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Letadla nebudou na malých letištích havarovat (tak často): {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Upravit maximální výšku mapy: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{BLACK}Upravit maximální výšku hor na mapě STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :krajina mírného pásma STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :subarktická krajina STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :subtropická kraina @@ -2380,7 +2402,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Pokláda STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Postavit železniční depo (pro nákup a servis vlaků). Shift zobrazí odhad ceny STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Postavit na trati směrování. Stisknutý Shift pro zobrazení odhadu ceny STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Postavit nádraží. Pomocí Ctrl ho připojíš k jinému. Stisknutý Shift pro zobrazení odhadu ceny -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Umístit návěstidla. Pomocí Ctrl vybereš mezi mechanickými a světelnými{}Tažením umístíš návěstidla na rovném úseku tratě a s Ctrl až do dalšího křížení{}Kliknutím na tlačítko s Ctrl otevřeš okno s výběrem návěstidel{}Stisknutý Shift pro zobrazení odhadu ceny +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Umístit návěstidla. Pomocí Ctrl vybereš mezi mechanickými a světelnými{}Tažením umístíš návěstidla na rovném úseku tratě a s přidržením Ctrl až do dalšího křížení{}Kliknutím na tlačítko s Ctrl otevřeš okno s výběrem návěstidel{}Stisknutý Shift pro zobrazení odhadu ceny STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Postavit železniční most. Stisknutý Shift pro zobrazení odhadu ceny STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Postavit železniční tunel. Stisknutý Shift pro zobrazení odhadu ceny STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Přepnout režim stavba/odstranění pro kolejí, semaforů, směrování a stanic. Při stisku Ctrl odebere také koleje ze směrování a stanic @@ -2758,7 +2780,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Půda vlastněn STR_ABOUT_OPENTTD :{WHITE}O OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Původní copyright: {COPYRIGHT} 1995 Chris Sawyer, všechna práva vyhrazena STR_ABOUT_VERSION :{BLACK}OpenTTD verze {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Tým OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Tým OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Uložit hru @@ -2793,6 +2815,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Množství měst: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Množství průmyslu: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximální výška mapy: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Zvýšit maximální výšku hor na mapě o jeden stupeň +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Snížit maximální výšku hor na mapě o jeden stupeň STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Výška sněžné čáry: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Zvýšit sněžnou čáru o jednu úroveň STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Snížit sněžnou čáru o jednu úroveň @@ -2822,6 +2847,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Jméno v STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Velikost: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Změnit maximální výšku mapy STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Změnit výšku sněžne čáry STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Změnit počáteční rok @@ -2942,7 +2968,10 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Předcho STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Jít na předchozí normální sprite (s grafikou), přičemž se přeskakují pseudo-/barvící/znakové sprity a při dosažení začátku se jde na konec STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Zobrazení vybraného spritu. Posun se při jeho vykreslení neuvažoval STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Posouvání spritu změnou souřadnic X a Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Posun X: {NUM}, posun Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetovat +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Resetovat aktuání relativní posunutí +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Posunutí v ose X: {NUM}, Posunutí v ose Y: {NUM} (Absolutní) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Posunutí v ose X: {NUM}, Posunutí v ose Y: {NUM} (Relativní) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Vybrat sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Klikni na sprite kdekoli na obrazovce @@ -3054,8 +3083,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} doručeno STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (ještě požadováno) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (doručeno) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Město se rozrůstá každých {ORANGE}{COMMA}{BLACK} dní -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Město se rozrůstá každý {ORANGE}{COMMA}{BLACK} den (financováno) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Město se rozrůstá co {ORANGE}{COMMA}{BLACK}{NBSP}d{P en ny ní} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Město se rozrůstá každý {ORANGE}{COMMA}.{BLACK}{NBSP}den (financováno) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Město se {RED}nerozrůstá{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Hlukový limit ve městě: {ORANGE}{COMMA}{BLACK} max.: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Vystředit pohled na město. Ctrl+Klik otevře nový pohled @@ -3115,7 +3144,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informace STR_GOAL_QUESTION_CAPTION_WARNING :Varování STR_GOAL_QUESTION_CAPTION_ERROR :Chyba -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Zrušit STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Ne @@ -3134,6 +3163,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restartovat STR_GOAL_QUESTION_BUTTON_POSTPONE :Odložit STR_GOAL_QUESTION_BUTTON_SURRENDER :Vzdát se STR_GOAL_QUESTION_BUTTON_CLOSE :Zavřít +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Dotace @@ -3458,10 +3488,10 @@ STR_PURCHASE_INFO_ALL_BUT :Všechny kromě STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. tažná síla: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Dosah: {GOLD}{COMMA} polí -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Seznam vlaků - pro informace klikni na název vlaku -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Seznam silničních vozidel - klikni na vozidlo pro informace -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Seznam lodí - informace získáš kliknutím na jméno lodi -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Seznam letadel - klikni na letadlo pro informace +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Seznam vlaků - pro informace klikni na vlak. Ctrl+kliknutí způsobí přepínání skrytí typů lokomotiv a vagónů. +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Seznam silničních vozidel - klikni na vozidlo pro informace. Ctrl+kliknutí způsobí přepínání skrytí typu silničního vozidla. +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Seznam lodí - informace získáš kliknutím na loď. Ctrl+kliknutí způsobí přepínání skrytí lodí. +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Seznam letadel - klikni na letadlo pro informace. Ctrl+kliknutí způsobí přepínání skrytí letadel. STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Koupit vozidlo STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Koupit vozidlo @@ -3483,6 +3513,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Přejmen STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Přejmenovat typ lodi STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Přejmenovat typ letadla +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Schovat +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Schovat +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Schovat +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Schovat + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Zobrazit +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Zobrazit +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Zobrazit +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Zobrazit + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Přepnout zobrazení/schování typu vlaku +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Přepnout zobrazení/schování typu silničního vozidla +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Přepnout zobrazení/schování typu lodi +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Přepnout zobrazení/schování typu letadla + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Přejmenovat typ železničního vozidla STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Přejmenovat typ silničního vozidla STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Přejmenovat typ lodi @@ -3536,7 +3581,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Klonovat STR_DEPOT_CLONE_SHIP :{BLACK}Klonovat loď STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Klonovat letadlo -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Vytvoří se kopie vlaku se všemi vagony. Klepni na toto tlačítko a pak na vlak v nebo vně depa. Se stisknutým Ctrl se budou sdílet příkazy. Stisknutý Shift pro zobrazení odhadu ceny +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Vytvoří se kopie vlaku se všemi vagony. Klikni napřed na toto tlačítko a následně na vlak uvnitř nebo vně depa. Se stisknutou klávesou Ctrl při kliku se budou sdílet příkazy. Stisknutý Shift při kliku zobrazí odhad ceny bez provedení nákupu. STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Vytvoří se kopie silničního vozidla. Klepni na toto tlačítko a pak na vozidlo v nebo vně depa. Se stisknutým Ctrl se budou sdílet příkazy. Stisknutý Shift pro zobrazení odhadované ceny STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Vytvoří se kopie lodě. Klepni na toto tlačítko a pak na loď v nebo vně lodního depa. Se stisknutým Ctrl se budou sdílet příkazy. Stisknutý Shift pro zobrazení odhadu ceny STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Vytvoří se kopie letadla. Klepni na toto tlačítko a pak na letadlo v nebo vně hangáru. Se stisknutým Ctrl se budou sdílet příkazy. Stisknutý Shift pro zobrazení odhadu ceny @@ -3593,6 +3638,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Silniční vozi STR_REPLACE_VEHICLE_SHIP :Loď STR_REPLACE_VEHICLE_AIRCRAFT :Letadlo +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Používaná vozidla +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Sloupec s vozidly, které vlastníte +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Dostupná vozidla +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Sloupec s vozidly, které lze nahradit + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Vyber typ lokomotivy na výměnu STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Vyber typ nové lokomotivy, kterou chceš použít místo vybrané v levém seznamu @@ -3717,7 +3767,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapacita STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Podíl za převoz: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Interval servisů: {LTBLUE}{COMMA} d{P en ny ní}{BLACK} Naposledy v servisu: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Interval servisů: {LTBLUE}{COMMA}{NBSP}d{P en ny ní}{BLACK} Naposledy v servisu: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Interval servisů: {LTBLUE}{COMMA}%{BLACK} Naposledy v servisu: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Prodloužit interval servisů o 10. S Ctrl prodloužit o 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Zkrátit interval servisů o 10. S Ctrl zkrátit o 5 @@ -3953,8 +4003,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(zůstaň {STRI STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(jet {STRING}, mimo jízdní řád) STR_TIMETABLE_STAY_FOR :a zůstat {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :a jet {STRING} -STR_TIMETABLE_DAYS :{COMMA} d{P en ny nů} -STR_TIMETABLE_TICKS :{COMMA} cykl{P us y ů} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}d{P en ny ní} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}cykl{P us y ů} STR_TIMETABLE_TOTAL_TIME :{BLACK}Tento jízdní řád bude trvat {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Tento jízdní řád bude trvat nejméně {STRING} (vozidla mimo jízdní řád) @@ -4192,6 +4242,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Úprava STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... již na úrovni moře STR_ERROR_TOO_HIGH :{WHITE}... příliš vysoko STR_ERROR_ALREADY_LEVELLED :{WHITE}... už je plochý +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Most by po této úpravě byl příliš vysoko. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Nelze přejmenovat společnost... @@ -4242,6 +4293,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... les STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... může být postaven pouze nad sněžnou čarou STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... může být postaven pouze pod sněžnou čarou +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Na mapě nebyla žádná vhodná místa pro '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Pro získání lepší mapy změňte parametry jejího generování + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Zde nelze postavit nádraží... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Nelze postavit autobusovou stanici... @@ -4378,6 +4432,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Je nutn STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Nelze začít a skončit na stejném místě STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Nájezdy na most nejsou ve stejné výšce STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Most je pro terén moc nízký +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Most je příliš vysoko na tento terén. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Začátek a konec musí být ve stejné výšce STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... oba konce mostu musí být na zemi STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... most je příliš dlouhý @@ -5064,6 +5119,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (schováno) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_INDUSTRY_NAME.gen :{INDUSTRY.gen} @@ -5101,8 +5157,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/danish.txt b/src/lang/danish.txt index 38bf50679d..4b013f74af 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Scrollba STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll bar - flytter listen mod venstre/højre STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Nedriv bygninger osv. på et stykke land. Ctrl vælger arealet diagonalt. Shift skifter mellem at bygge og vise prisoverslag. +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Vis skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Vis skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Vis skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Vis skjulte + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ved at aktivere denne knap, bliver de skjulte tog også vist +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ved at aktivere denne knap, bliver de skjulte køretøjer også vist +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ved at aktivere denne knap, bliver de skjulte skibe også vist +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ved at aktivere denne knap, bliver de skjulte fly også vist + # Query window STR_BUTTON_DEFAULT :{BLACK}Standard STR_BUTTON_CANCEL :{BLACK}Annuller @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Afslut ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spilvalg -STR_SETTINGS_MENU_CONFIG_SETTINGS :Avancerede indstillinger +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Indstillinger STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/spilscript-indstillinger STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF indstillinger STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gennemsigtighedsvalg @@ -833,6 +844,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} har en ugyldig ordre STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} har dublerede ordrer STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} har en ugyldig station i sine ordrer +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} har i sine ordrer en lufthavn, hvis bane er for kort STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} er gammel STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} er meget gammel @@ -915,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgiske Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iranske Rialer (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vejkøretøjer STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Vælg den side af vejen, køretøjer skal kører i STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Kør i venstre side @@ -972,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skærmop STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Vælg ønsket skærmopløsning STR_GAME_OPTIONS_RESOLUTION_OTHER :andet +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_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dobbelt størrelse +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad (4x) størrelse + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Basis-grafiksæt STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Vælg det basis-grafiksæt der skal bruges STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} forsvund{P en ne}/ødelagt{P "" e} fil{P "" er} @@ -986,6 +1001,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Vælg ba STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} beskadiget fil{P "" s} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Yderligere information om basismusik-sættet +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Det lykkedes ikke at hente en liste over understøttede opløsninger STR_ERROR_FULLSCREEN_FAILED :{WHITE}Fuldskærmstilstand fejlede # Custom currency window @@ -1064,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Meget fladt STR_TERRAIN_TYPE_FLAT :Fladt STR_TERRAIN_TYPE_HILLY :Bakket STR_TERRAIN_TYPE_MOUNTAINOUS :Bjergrigt +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Passiv STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1071,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Fjendtlig STR_WARNING_NO_SUITABLE_AI :{WHITE}Der blev ikke fundet en egnet computer-spiller...{}Du kan downloade flere forskellige computer-spillere gennem 'Online Indhold'. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Avancerede indstillinger +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Indstillinger STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filter streng: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Udvid alle STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Skjul alle @@ -1101,6 +1118,9 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Spil indstillin STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Spil indstilling (lagret i gemt spil, påvirker kun det aktuelt spil) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Firma indstilling (lagret i gemt spil; påvirker kun nye spil) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Firma indstilling (lagret i gemt spil; påvirker kun aktuelt selskab) +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Vis alle søgeresultater ved at sætte{}{SILVER}Kategori {BLACK}to {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Vis alle søgeresultater ved at sætte{}{SILVER}Indtast {BLACK}til {WHITE}Alle Indstillingstyper +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Vis alle søgeresultater ved at sætte {} {SILVER}Kategori {BLACK}til {WHITE} {STRING} {BLACK}og {SILVER} Indtast {BLACK}til {WHITE}Alle Indstillingstyper STR_CONFIG_SETTINGS_NONE :{WHITE}- Ingen - STR_CONFIG_SETTING_OFF :Fra @@ -1142,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Slå katastrofe 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_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_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_CATCHMENT :Tillad mere realistisk størrelse på stationernes opland: {STRING} @@ -1170,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflation: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Aktiver inflation i økonomien, hvor omkostningerne er lidt hurtigere stigende end betalinger STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maksimal bro længde: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maksimal længde af broer +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimal bro højde: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimal højde for at bygge bro STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maksimal tunnel længde: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maksimal længde af tunneler STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Metode til manuel opførsel af primær industri: {STRING} @@ -1255,7 +1280,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Varighed af fej STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Varighed for visning fejlmeddelelser i en rød vindue. Bemærk, at nogle (kritisk) fejlmeddelelser ikke lukkes automatisk efter dette tidspunkt, men skal lukkes manuelt STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekund{P 0 "" er} STR_CONFIG_SETTING_HOVER_DELAY :Vis værktøjstip: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Forsinkelse før tooltips vises, når musen er over et brugerflade element. Alternativt kan tooltips bindes til højre museknap +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Forsinkelse inden tooltips vises, når musen føres over nogle den grænseflade . Alternativt tooltips er bundet til den højre museknap, når denne værdi er sat til 0. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Hold markøren i {COMMA} sekund{P 0 "" er} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Højre klik STR_CONFIG_SETTING_POPULATION_IN_LABEL :Vis byens indbyggertal i bynavnet: {STRING} @@ -1263,21 +1288,37 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Vis befolkninge STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Linjetykkelse i grafer: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Bredde af linjerne i graferne. En tynd linie er mere læsbar, en tykkere linje er nemmere at se og det er lettere at skelne mellem farverne +STR_CONFIG_SETTING_LANDSCAPE :Landskab: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Landskaber definerer grundlæggende gameplay-scenarier med forskellige laster og krav by vækst. NewGRF og spil Scripts tillader finere kontrol selv STR_CONFIG_SETTING_LAND_GENERATOR :Landskabs generator: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Den oprindelige generator afhænger af basen grafik sæt, og komponerer faste landskab former. TerraGenesis er en Perlin baseret generator med finere kontrol indstillinger STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Terræn type: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(TerraGenesis only) Hilliness af landskabet +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Industri tæthed: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Angiv hvor mange industrier skal genereres og hvilket niveau der bevares i løbet af spillet STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Max afstand fra kant til olieraffinaderier: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Olieraffinaderier er kun opføres nær kortets grænse, det er ved kysten for kort med øer STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Snelinjehøjden: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Kontrol med på hvilket højde sneen begynder i sub-arktiske landskab. Sne påvirker også industrien generation og betingelser by vækst STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Tærrenets hårdhed (kun TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis kun) Vælg frekvensen af bakkerne: Glatte landskaber har færre, mere udbredt bakker. Ujævne landskaber har mange bakker, der kan se gentaget ud STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Meget blødt STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Blødt STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Råt STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Meget råt +STR_CONFIG_SETTING_VARIETY :Forskelligheds fordeling: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(TerraGenesis kun) Kontrollere, om kortet indeholder både bjerg- og flade områder. Da dette kun gør kortet fladere bør andre indstillinger sættes til bjergrigt +STR_CONFIG_SETTING_RIVER_AMOUNT :Floder antal: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Vælg, hvor mange floder at skabe STR_CONFIG_SETTING_TREE_PLACER :Algoritme ved placering af træer: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Vælg fordelingen af træer på kortet: "Original" planter træer ensartet spredt, "forbedret" planter dem i grupper STR_CONFIG_SETTING_TREE_PLACER_NONE :Ingen STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Original STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Forbedret +STR_CONFIG_SETTING_ROAD_SIDE :Vejkøretøjer: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Vælg køre side STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotér højdekort: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Mod uret STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Med uret @@ -1332,6 +1373,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Fra STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Venstreklik-scrolling: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Aktiver rulle kortet ved at trække den med venstre museknap. Dette er især nyttigt, når du bruger en touch-screen til at rulle +STR_CONFIG_SETTING_AUTOSAVE :Auto gem: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Vælg interval mellem automatisk gemte spil STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Brug {STRING} datoformat til navne på gemte spil. STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Formatet af datoen i gemte spil filnavne @@ -1488,7 +1531,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Vælg opførsle STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Byg automatisk semaforer før: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Sæt året hvor elektriske signaler vil blive brugt på spor. Før dette år vil ikke-elektriske signaler blive brugt (hvilket har den fuldstændig same funktion, men anderledes udseende) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Vis signalvælgeren som standard: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Vis et vindue til at vælge signal typer at bygge, i stedet for kun vindue-løs signal-type skift med Ctrl+klik på byg-signal +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Vis et vindue til at vælge den signaltype du vil bygge, i stedet for kun vindue-løs signal-type skift med Ctrl+klik på byg-signal STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Signaltype der bygges som standard: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Standard signaltype STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Normal @@ -1551,11 +1594,11 @@ STR_CONFIG_SETTING_TOWN_GROWTH :Byvækst tempo: STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Hastigheden af by vækst STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Ingen STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :Langsom -STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Mængden af byer der vil blive bestragtet som storbyer, og derfor er større og vokser hurtigere +STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Normal STR_CONFIG_SETTING_TOWN_GROWTH_FAST :Hurtig STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :Meget hurtig STR_CONFIG_SETTING_LARGER_TOWNS :Andel af byer der er storbyer: {STRING} -STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Mængden af byer der vil blive bestragtet som storbyer, og derfor er større og vokser hurtigere +STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Mængden af byer der vil blive betragtet som storbyer, og derfor er større og vokser hurtigere STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 ud af {COMMA} STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Ingen STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Startværdi for bystørrelsesfaktor: {STRING} @@ -1598,13 +1641,13 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrisk (hk) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Vægtenheder: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Når vægte er vist i brugergrænsefladen, så vis dem i de valgte enheder +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Når en vægt vises i brugergrænsefladen, vise det i de udvalgte enheder STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperisk (kort t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrisk (t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Rumfangsenheder: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Når rumfang er vist i brugergrænsefladen, så vis dem i de valgte enheder +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Når en volumen vises i brugergrænsefladen, vise det i de udvalgte enheder STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperisk (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrisk (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) @@ -1616,17 +1659,29 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrisk (kp) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Højdeenheder: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Når højder er vist i brugergrænsefladen, så vis dem i de valgte enheder +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Når højde er vist i brugergrænsefladen, så vis dem i de valgte enheder STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperisk (fod) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrisk (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Lokalisering +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafiksæt / Manglende grafik STR_CONFIG_SETTING_SOUND :{ORANGE}Lydeffekter STR_CONFIG_SETTING_INTERFACE :{ORANGE}Brugerflade +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Generelt +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Viewports STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Konstruktion +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Nyheder / Rådgivere +STR_CONFIG_SETTING_COMPANY :{ORANGE}Firma +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Regnskab STR_CONFIG_SETTING_VEHICLES :{ORANGE}Køretøjer +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Fysik / Tilstand STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Ruteplanlægning +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Begrænsninger +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastrofer / Ulykker +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Verden generation +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Miljø +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Myndigheder STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Byer STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industrier STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Fragtdistribution @@ -1680,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Netværk STR_INTRO_GAME_OPTIONS :{BLACK}Spilvalg STR_INTRO_HIGHSCORE :{BLACK} Topresultater -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Avancerede indstillinger +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Indstillinger STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF indstillinger STR_INTRO_ONLINE_CONTENT :{BLACK}Tjek Online Indhold STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spilscript indstillinger @@ -1700,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Vælg 'l STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Vis spilvalg STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Hvis topscoreliste -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Vis avancerede indstillinger +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Skærm indstillinger STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Vis NewGRF-indstillinger STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Tjek for nyt og opdateret indhold til download STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vis computerspiller/spilscript indstillinger @@ -1740,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Spiller STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magisk bulldozer (nedriv ting, som normalt ikke kan fjernes): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunneler kan krydse hinanden: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetfly vil ikke styrte (ofte) i små lufthavne: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Rediger den maksimale map højde: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Rediger den maksimale højde af bjerge på kortet STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Tempereret klima STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Arktisk klima STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Tropisk klima @@ -2630,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Land ejet af se STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, Alle rettigheder reserveret STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Gem spil @@ -2649,6 +2706,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Gem STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Gem det nuværende spil, med det valgte navn STR_SAVELOAD_LOAD_BUTTON :{BLACK}Åbn STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Åbn det markerede spil +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Indlæs valgte højdemap STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Spil Detaljer STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Ingen information til rådighed STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2664,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Antal byer: STR_MAPGEN_DATE :{BLACK}Dato: 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 @@ -2693,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Højdeko STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Størrelse: 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 @@ -2747,6 +2809,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Flyt op STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Flyt det valgte NewGRF sæt op i listen STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Flyt ned STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Flyt det valgte NewGRF sæt ned i listen +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Opgradering +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Opgrader NewGRF filer, som har en nyere version installeret STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}En liste over de NewGRF sæt der er installeret. STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Indstil parameter @@ -2772,6 +2836,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Deaktivere STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Ikke kompatibel med denne version af OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Gem forudindstilling +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK} Liste over tilgængelige presets, skal du vælge en til at kopiere det til gemte navn nedenfor +STR_SAVE_PRESET_TITLE :{BLACK}Indtast et navn til den forudindstillede +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Aktuelt valgte navn til den forudindstillede at gemme +STR_SAVE_PRESET_CANCEL :{BLACK}Annuller +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Du må ikke ændre den forudindstillede +STR_SAVE_PRESET_SAVE :{BLACK}Gem +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Gem forudindstilling til den aktuelle valgte navn # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Ændre NewGRF parameterne @@ -2800,10 +2872,13 @@ STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Fortsæt STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Gå til grafikelement STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gå til det givne grafikelement. Hvis den ikke er et normalt grafikelement, fortsæt til næste normale element STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Tidligere grafikelement -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Gå til forrige normale grafikelement, spring pseudo/omfarvede/skrift-elementer og omsvøb fra begyndelsen. +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fortsæt til den forrige normal sprite, springe over nogen pseudo / recolour / FONT sprites og indpakning rundt fra den første sprite til det sidste STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Repræsentation af den markerede sprite. Justeringen ignoreres når denne sprite tegnes. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flyt spriten rundt for at ændre X- og Y-forskydningen -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X-forskydning: {NUM}, Y-forskydning: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Nulstil relativ +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Nulstil den nuværende relative forskydning +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X-forskydning: {NUM}, Y-forskydning: {NUM} (Absolut) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X-forskydning: {NUM}, Y-forskydning: {NUM} (Relativt) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Vælg grafikelement STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Vælg en sprite fra et vilkårligt sted på skærmen @@ -2860,6 +2935,7 @@ STR_NEWGRF_LIST_MISSING :{RED}Manglende STR_NEWGRF_BROKEN :{WHITE}Denne NewGRFs opførsel '{0:STRING}' vil sandsynligvis forårsage at spillet går ned. STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Den ændrer status for '{1:ENGINE}' når den ikke er i depot STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Den ændrer toglængden for '{1:ENGINE}' mens den ikke er i depot +STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Det ændrede køretøj kapacitet til '{1:ENGINE}' når det ikke er inde i et depot eller genmontering STR_BROKEN_VEHICLE_LENGTH :{WHITE}Toget '{VEHICLE}' fra firmaet '{COMPANY}' har ugyldig længde. Det skyldes sandsynligvis at problem med en NewGRF. Spillet går muligvis ned. STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' indeholder forkert information @@ -2975,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Information STR_GOAL_QUESTION_CAPTION_WARNING :Advarsel STR_GOAL_QUESTION_CAPTION_ERROR :Mål-spørgsmåls-overskriftsfejl -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Annuller STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nej @@ -2994,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Genstart STR_GOAL_QUESTION_BUTTON_POSTPONE :Udskyd STR_GOAL_QUESTION_BUTTON_SURRENDER :Overgiv dig STR_GOAL_QUESTION_BUTTON_CLOSE :Luk +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Tilskudsordninger @@ -3278,6 +3355,8 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Slet den STR_GROUP_RENAME_TOOLTIP :{BLACK}Omdøb den valgte gruppe STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klik for at beskytte denne gruppe mod global auto-udskiftning +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Slet gruppe +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Er du sikker på at du vil slette denne gruppe og eventuelle under grupper? STR_GROUP_ADD_SHARED_VEHICLE :Tilføj delte køretøjer STR_GROUP_REMOVE_ALL_VEHICLES :Fjern alle køretøjer @@ -3318,8 +3397,8 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rækkevi STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Togvalgsliste - klik på et køretøj for mere information STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liste over køretøjstyper - klik på køretøj for information -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Skibstypeliste - klik på skibstype for information -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Flytypeliste - klik på en flytype for mere information +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Skib valgliste. Klik på skib for information. Ctrl + Klik for at skifte skjule skibstypen +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Luftfartøj valgliste. Klik på fly til orientering. Ctrl + Klik for at skifte skjule flytypen STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Køb køretøj STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Køb køretøj @@ -3341,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Omdøb k STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Omdøb skibstypen STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Ømdøb flytypen +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}skjule +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}skjule +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Skjul +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}skjul + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Vis +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Vis +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Vis +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Display + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle skjule / vise af tog type +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle skjule / vise af kørtøjstype +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle skjule / vise af skibstype +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle skjule / vise af flytype + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Omdøb tog-/togvognstypen STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Omdøb køretøjstypen STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Omdøb skibstypen @@ -3445,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Vejkøretøj STR_REPLACE_VEHICLE_SHIP :Skib STR_REPLACE_VEHICLE_AIRCRAFT :Fly +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Køretøjer i brug +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolonne med køretøjer, som du ejer +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Tilgængelige køretøjer +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolonne med køretøjer til rådighed til udskiftning + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Vælg en køretøjstype, som du ønsker udskiftet STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Vælg en køretøjstype, som du ønker benyttet i stedet for den type, du har valgt i venste side @@ -3799,6 +3898,10 @@ STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Rejs (ikke iflg STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Rejs med højst {2:VELOCITY} (ikke skemalagt) STR_TIMETABLE_TRAVEL_FOR :Rejs i {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :Rejs mod {STRING} med højst {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Køreplan (for {STRING}, ikke skemalagt) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Køreplan (for {STRING}, ikke skemalagt) med på de fleste {VELOCITY} +STR_TIMETABLE_STAY_FOR_ESTIMATED :(ophold for {STRING}, ikke skemalagt) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(rejse for {STRING}, ikke skemalagt) STR_TIMETABLE_STAY_FOR :og vent i {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :og rejs i {STRING} STR_TIMETABLE_DAYS :{COMMA} dag{P "" e} @@ -4040,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Udgravni STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... allerede ved havoverfladen STR_ERROR_TOO_HIGH :{WHITE}... for højt STR_ERROR_ALREADY_LEVELLED :{WHITE}... allerede fladt +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Bagefter vil broen over dette ville være for høj. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kan ikke ændre selskabets navn... @@ -4090,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... skov STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE} ... kan kun bygges over snegrænsen STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE} ... kan kun bygges under snegrænsen +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Der var ingen egnede steder for '{STRING}' industrier +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Skift kort generations parametre for at få et bedre kort + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kan ikke bygge en banegård her... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kan ikke bygge rutebilstation... @@ -4226,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Det er n STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kan ikke starte og slutte på samme position STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Brohoveder er ikke i samme niveau STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Broen er for lav til terrænet +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Broen er for høj for dette terræn. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Start- og slutposition skal være på linje STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... begge ender af en bro skal være på land STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... broen er for lang @@ -4252,6 +4360,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... du e STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Kan ikke oprette gruppe... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Kan ikke slette denne gruppe... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Kan ikke omdøbe gruppe... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Kan ikke sætte overordnede gruppe ... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Kan ikke fjerne alle køretøjer fra denne gruppe... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Kan ikke tilføje køretøjet til denne gruppe... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Kan ikke tilføje delte køretøjer til gruppe... @@ -4789,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (skjult) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4824,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index d63bd16a0a..8af6cacc55 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Frisdrank # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passagier{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passagier{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} kolen -STR_QUANTITY_MAIL :{COMMA} zak{P "" ken} post +STR_QUANTITY_MAIL :{COMMA}{NBSP}zak{P "" ken} post STR_QUANTITY_OIL :{VOLUME_LONG} olie -STR_QUANTITY_LIVESTOCK :{COMMA} stuk{P "" s} vee -STR_QUANTITY_GOODS :{COMMA} krat{P "" ten} goederen +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}stuk{P "" s} vee +STR_QUANTITY_GOODS :{COMMA}{NBSP}krat{P "" ten} goederen STR_QUANTITY_GRAIN :{WEIGHT_LONG} graan STR_QUANTITY_WOOD :{WEIGHT_LONG} hout STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} ijzererts STR_QUANTITY_STEEL :{WEIGHT_LONG} staal -STR_QUANTITY_VALUABLES :{COMMA} zak{P "" ken} kostbaarheden +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}zak{P "" ken} kostbaarheden STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} kopererts STR_QUANTITY_MAIZE :{WEIGHT_LONG} mais STR_QUANTITY_FRUIT :{WEIGHT_LONG} fruit -STR_QUANTITY_DIAMONDS :{COMMA} zak{P "" ken} diamanten +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}zak{P "" ken} diamanten STR_QUANTITY_FOOD :{WEIGHT_LONG} voedsel STR_QUANTITY_PAPER :{WEIGHT_LONG} papier -STR_QUANTITY_GOLD :{COMMA} zak{P "" ken} goud +STR_QUANTITY_GOLD :{COMMA}{NBSP}zak{P "" ken} goud STR_QUANTITY_WATER :{VOLUME_LONG} water STR_QUANTITY_WHEAT :{WEIGHT_LONG} tarwe STR_QUANTITY_RUBBER :{VOLUME_LONG} rubber STR_QUANTITY_SUGAR :{WEIGHT_LONG} suiker -STR_QUANTITY_TOYS :{COMMA} stuk{P "" ken} speelgoed -STR_QUANTITY_SWEETS :{COMMA} zak{P "" ken} snoep +STR_QUANTITY_TOYS :{COMMA}{NBSP}stuk{P "" ken} speelgoed +STR_QUANTITY_SWEETS :{COMMA}{NBSP}zak{P "" ken} snoep STR_QUANTITY_COLA :{VOLUME_LONG} cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} suikerspinnen STR_QUANTITY_BUBBLES :{COMMA} bel{P "" len} @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}GEEN STR_ABBREV_ALL :{TINY_FONT}ALLES # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passagier{P "" s} -STR_BAGS :{COMMA} zak{P "" ken} -STR_TONS :{COMMA} ton -STR_LITERS :{COMMA} liter -STR_ITEMS :{COMMA} stuk{P "" s} -STR_CRATES :{COMMA} krat{P "" ten} +STR_PASSENGERS :{COMMA}{NBSP}passagier{P "" s} +STR_BAGS :{COMMA}{NBSP}zak{P "" ken} +STR_TONS :{COMMA}{NBSP}ton +STR_LITERS :{COMMA}{NBSP}liter +STR_ITEMS :{COMMA}{NBSP}stuk{P "" s} +STR_CRATES :{COMMA}{NBSP}krat{P "" ten} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Donkerblauw @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Grijs STR_COLOUR_WHITE :Wit # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/u -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/u +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA} pk -STR_UNITS_POWER_METRIC :{COMMA} pk -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}pk +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}pk +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter tekst: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Schuifba STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Schuifbalk - scroll horizontaal door de lijst STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Sloop gebouwen etc. op een stuk land. Ctrl selecteert het gebied diagonaal. Shift schakelt tussen bouwen/inschatting van de kosten +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Toon verborgen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Toon verborgen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Toon verborgen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Toon verborgen + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Door het inschakelen van deze knop, worden de verborgen treinen ook weergegeven +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :Door het inschakelen van deze knop, worden de verborgen wegvoertuigen ook weergegeven +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Door het inschakelen van deze knop, worden de verborgen schepen ook weergegeven +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Door het inschakelen van deze knop, worden de verborgen vliegtuig ook weergegeven + # Query window STR_BUTTON_DEFAULT :{BLACK}Standaard STR_BUTTON_CANCEL :{BLACK}Annuleren @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Afsluiten ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spelopties -STR_SETTINGS_MENU_CONFIG_SETTINGS :Geavanceerde instellingen +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Instellingen STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Game script instellingen STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF instellingen STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Doorzichtigheidsopties @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgische Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iraanse Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Wegvoertuigen STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Kies aan welke kant de wegvoertuigen moeten rijden STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Links rijden @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Schermre STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Selecteer de schermresolutie STR_GAME_OPTIONS_RESOLUTION_OTHER :Anders +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Menupuntgrootte +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Kies de menupuntgrootte dat moet worden gebruikt + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normaal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dubbele grootte +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4x Grootte + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Basisset voor graphics STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Kies de te gebruiken basisset voor graphics STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} ontbrekend{P "" e}/corrupt{P "" e} bestand{P "" en} @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Zeer Vlak STR_TERRAIN_TYPE_FLAT :Vlak STR_TERRAIN_TYPE_HILLY :Heuvelachtig STR_TERRAIN_TYPE_MOUNTAINOUS :Bergachtig +STR_TERRAIN_TYPE_ALPINIST :Berglandschap STR_CITY_APPROVAL_PERMISSIVE :Toegeeflijk STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Vijandig STR_WARNING_NO_SUITABLE_AI :{WHITE}Geen bruikbare AIs beschikbaar...{}U kunt diverse AI's downloaden via het 'Online Content' systeem -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Geavanceerde instellingen +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Instellingen STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtertekst: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Alles uitvouwen STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Alles inklappen @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Bedrijfsinstell STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categorie: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Type: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Beperkt de onderstaande lijst met vooraf gedefinieerde filters -STR_CONFIG_SETTING_RESTRICT_BASIC :Gewone instellingen -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Geavanceerde instellingen -STR_CONFIG_SETTING_RESTRICT_ALL :Geavanceerde instellingen / Alle instellingen +STR_CONFIG_SETTING_RESTRICT_BASIC :Basis (toon alleen belangrijke instellingen) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Geavanceerd (toon de meeste instellingen) +STR_CONFIG_SETTING_RESTRICT_ALL :Expert (toon alle instellingen, inclusief vreemde) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Instellingen met een andere waarde dan de standaard STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Instellingen met een andere waarde dan je 'nieuw spel' instellingen @@ -1147,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Schakel rampen STR_CONFIG_SETTING_CITY_APPROVAL :Gemeenteraad's houding ten opzichte van herstructurering gebied: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Kies hoeveel lawaai en schade aan het milieu door bedrijven de stadswaardering en hun acties beïnvloeden in hun bouwgebied +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximum kaarthoogte: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Stel de maximum toegestande hoogte voor bergen op de kaart in +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Je kunt de maximum 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_HELPTEXT :Laat het aanpassen van funderingne onder gebouwen en spoor toe zonder deze te verwijderen STR_CONFIG_SETTING_CATCHMENT :Gebruik meer realistische handelsgebieden: {STRING} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflatie: {STRI STR_CONFIG_SETTING_INFLATION_HELPTEXT :Schakel de inflatie in de economie in, waar de kosten iets sneller stijgen dan de betalingen STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximum brug lengte: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximum lengte voor te bouwen bruggen +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximum brughoogte: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximum hoogte ombruggen te bouwen STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximum tunnel lengte: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximum lengte voor te bouwen tunnels STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Handmatige bouwmethode voor primaire industrieën: {STRING} @@ -1260,7 +1280,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duur van foutbe STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duur voor het weergeven van foutmeldingen in een rood venster. Merk op dat sommige (kritische) foutmeldingen niet automatisch wordt gesloten na deze tijd, deze moeten handmatig worden gesloten STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} seconde{P 0 "" n} STR_CONFIG_SETTING_HOVER_DELAY :Toon tooltips: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Vertraging voordat tooltips worden weergegeven wanneer de muis over een interface-element. Als alternatief kunnen tooltips worden gebonden aan de rechter muisknop +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Vertraging voordat tooltips worden weergegeven wanneer de muis over een interface-element. Als alternatief kunnen tooltips worden gebonden aan de rechter muisknop wanneer de waarde 0 is. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Wijs aan voor {COMMA} seconde{P 0 "" n} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Rechtsklik STR_CONFIG_SETTING_POPULATION_IN_LABEL :Geef het inwoneraantal bij een stad weer: {STRING} @@ -1444,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Interval tussen STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Kies of onderhoud van de voertuigen wordt geactiveerd door verstreken tijd sinds het laatste onderhoud of door het zakken van de betrouwbaarheid met een bepaald percentage van de maximale betrouwbaarheid STR_CONFIG_SETTING_SERVINT_TRAINS :Standaard onderhoudsinterval voor treinen: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Stel de standaard service-interval voor nieuwe railvoertuigen, als er geen expliciete service-interval is ingesteld voor het voertuig -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dag{P 0 "" en}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dag{P 0 "" en}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Uitgeschakeld STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Standaard onderhoudsinterval voor wegvoertuigen: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Stel de standaard service-interval voor nieuwe wegvoertuigen, als er geen expliciete service-interval is ingesteld voor het voertuig @@ -1584,9 +1604,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Geen STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Stadsgroei-indicator: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Gemiddelde grootte van steden in vergelijking tot normale steden bij het begin van het spel. -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Bijwerken distributie grafiek elke {STRING} dag{P 0:2 "" en} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Bijwerken distributie grafiek elke {STRING}{NBSP}dag{P 0:2 "" en} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Tijd tussen opeenvolgende herberekeningen van de link grafiek. Elke herberekening berekent de plannen voor een component van de grafiek. Dat betekent dat een waarde X voor deze instelling betekent niet dat de hele grafiek wordt elke X dagen worden bijgewerkt. Slechts een component wil. Hoe korter u instellen hoe meer CPU-tijd nodig is om het te berekenen zal zijn. Hoe langer je instellen hoe langer het zal duren totdat de lading distributie start op nieuwe routes. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Neem {STRING} dag{P 0:2 "" en} voor de herberekening van de distributie grafiek +STR_CONFIG_SETTING_LINKGRAPH_TIME :Neem {STRING}{NBSP}dag{P 0:2 "" en} voor de herberekening van de distributie grafiek STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Tijd gebruikt voor elke herberekening van een link grafiek component. Wanneer een herberekening wordt gestart, wordt een thread voortgebracht die mag lopen voor dit aantal dagen. Hoe korter u dit instelt des te waarschijnlijker het is dat de draad niet is voltooid als het zou moeten. Dan stopt het spel totdat het is ("lag"). Hoe langer je instellen hoe langer het duurt voor de distributie aan te passen wanneer routes te wijzigen. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :handmatig STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetrisch @@ -1621,7 +1641,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrisch (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Gewichten eenheden: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Telkens als gewichten worden weergegeven in de gebruikersinterface, laten dat in de geselecteerde eenheden zien +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Wanneer er gewichten worden weergegeven in de gebruikersinterface, laten dat in de geselecteerde eenheden zien STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (short t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrisch (t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) @@ -1715,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multipla STR_INTRO_GAME_OPTIONS :{BLACK}Spelopties STR_INTRO_HIGHSCORE :{BLACK}Score tabel -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Geavanceerde instellingen +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Instellingen STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-instellingen STR_INTRO_ONLINE_CONTENT :{BLACK}Online inhoud zoeken STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spel script Instellingen @@ -1735,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Kies spe STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Toon spelopties STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Toon score tabel -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Toon geavanceerde instellingen +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Scherminstellingen STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Toon NewGRF-instellingen STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Zoeken naar nieuwe en aangepaste inhoud om te downloaden STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Toon AI/Game script instellingen @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Spelen STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magische bulldozer (industrieën en andere onverplaatsbare objecten verwijderen): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnels mogen elkaar kruisen: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Straalvliegtuigen storten niet (vaak) neer op kleine vliegvelden: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Wijzig de maximum kaarthoogte: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Wijzig de maximum hoogte van bergen op de kaart STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Gematigd landschap STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subarctisch landschap STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Subtropisch landschap @@ -2293,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Bouw spo STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Bouw treindepot (om treinen te kopen en te onderhouden). Shift schakelt tussen bouwen/inschatting van de kosten STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Bouw spoor om naar controlepost. Houd Ctrl ingedrukt om samen te voegen met andere controlepost. Shift schakelt tussen bouwen/inschatting van de kosten STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Bouw treinstation. Houd Ctrl ingedrukt om samen te voegen met ander station. Shift schakelt tussen bouwen/inschatting van de kosten -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Plaats seinen. Ctrl wisselt tussen armseinen en lichtseinen{}Slepen plaatst seinen langs een recht stuk spoor. Ctrl bouwt seinen tot de volgende wissel{}Ctrl+klik schakelt het openen van het keuzescherm voor seinen aan/uit. Shift schakelt tussen bouwen/inschatting van de kosten +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Plaats seinen. Ctrl wisselt tussen armseinen/lichtseinen{}Slepen plaatst seinen langs een recht stuk spoor. Ctrl bouwt seinen tot de volgende wissel{}Ctrl+klik schakelt het openen van het keuzescherm voor seinen aan/uit. Shift schakelt tussen bouwen/inschatting van de kosten STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Bouw spoorbrug. Shift schakelt tussen bouwen/inschatting van de kosten STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Graaf spoortunnel. Shift schakelt tussen bouwen/inschatting van de kosten STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Kies tussen bouwen en verwijderen van sporen, seinen, controleposten en stations. Houd Ctrl ingedrukt om ook het spoor van controleposten en stations te verwijderen @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terrein in bedr STR_ABOUT_OPENTTD :{WHITE}Over OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Originele copyright {COPYRIGHT} 1995 Chris Sawyer, alle rechten voorbehouden STR_ABOUT_VERSION :{BLACK}OpenTTD versie {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Het OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Het OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spel Opslaan @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Aantal steden: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Aantal industrieën: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximum kaarthoogte +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Verhoog de maximum hoogte van bergen op de kaart met één +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Verklein de maximum hoogte van bergen op de kaart met één STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hoogte van sneeuwgrens: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Verschuif de sneeuwgrens één omhoog STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Verschuif de sneeuwgrens één omlaag @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Naam van STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grootte: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Wijzig maximum kaarthoogte STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Verander hoogte van sneeuwgrens STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Verander beginjaar @@ -2849,7 +2875,10 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Vorige a STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Ga naar vorige normale afbeelding, sla alle pseudo/herkleur/lettertype afbeeldingen over en ga naar het einde bij het begin STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Voorbeeld van de huidige afbeelding. De uitlijning wordt genegeerd bij het weergeven van de afbeelding STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Afbeelding verplaatsen, dit verandert X en Y offsets -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Herstel relatief +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Herstel de huidige relative offsets +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Absoluut) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offset: {NUM}, Y offset: {NUM} (Relatief) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Kies afbeelding STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Kies een afbeelding van een willekeurige plaats op het scherm @@ -2961,8 +2990,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} afgeleverd STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (nog nodig) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (afgeleverd) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Stad groeit iedere {ORANGE}{COMMA}{BLACK} dag{P "" en} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Stad groeit iedere {ORANGE}{COMMA}{BLACK} dag{P "" en} (gefinancierd) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Stad groeit iedere {ORANGE}{COMMA}{BLACK}{NBSP}dag{P "" en} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Stad groeit iedere {ORANGE}{COMMA}{BLACK}{NBSP}dag{P "" en} (gefinancierd) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Stad groeit {RED}niet{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Geluidslimiet in stad: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centreer het scherm op de locatie van de stad. Ctrl+klik opent een nieuw kijkvenster op de locatie van de stad @@ -3022,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informatie STR_GOAL_QUESTION_CAPTION_WARNING :Waarschuwing STR_GOAL_QUESTION_CAPTION_ERROR :Fout -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Annuleren STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nee @@ -3041,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Herstart STR_GOAL_QUESTION_BUTTON_POSTPONE :Stel uit STR_GOAL_QUESTION_BUTTON_SURRENDER :Geef op STR_GOAL_QUESTION_BUTTON_CLOSE :Sluiten +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidies @@ -3365,10 +3395,10 @@ STR_PURCHASE_INFO_ALL_BUT :Alles behalve { STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. trekkracht: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Bereik: {GOLD}{COMMA} tegels -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Railvoertuigkeuzelijst - klik op een railvoertuig voor informatie -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Wegvoertuigkeuzelijst - klik op een wegvoertuig voor informatie -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Schipkeuzelijst - klik op een schip voor informatie -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Vliegtuigkeuzelijst - klik op een vliegtuig voor informatie +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Railvoertuigkeuzelijst. Klik op een railvoertuig voor informatie. Ctrl+klik voor wijzigen verbergen voertuig type +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Wegvoertuigkeuzelijst. Klik op een wegvoertuig voor informatie. Ctrl+klik voor wijzigen verbergen voertuig type +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Schipkeuzelijst. Klik op een schip voor informatie. Ctrl+klik voor wijzigen verbergen schip type +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Vliegtuigkeuzelijst. Klik op een vliegtuig voor informatie. Ctrl+clik voor Wijzigen voor verbergenvlieftuig type STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Koop spoorvoertuig STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Koop wegvoertuig @@ -3390,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Hernoem STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Hernoem type van schip STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Hernoem type van vliegtuig +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Verberg +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Verberg +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Verberg +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Verberg + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Toon +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Toon +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Toon +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Toon + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wijzig verberg/toon van treintype +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wijzig verberg/toon van wegvoertuigtype +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wijzig verberg/toon van schiptype +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wijzig verberg/toon van vliegtuigtype + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Hernoem type van railvoertuig STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Hernoem type van wegvoertuig STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Hernoem type van schip @@ -3494,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Wegvoertuig STR_REPLACE_VEHICLE_SHIP :Schip STR_REPLACE_VEHICLE_AIRCRAFT :Vliegtuig +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Voertuigen in gebruik +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolom met voertuigen die je bezig +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Beschikbare voertuigen +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolom met voertuigen beschikbaar voor vervanging + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Kies het type locomotief om te vervangen STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Kies een nieuw type locomotief die je wilt gebruiken om de links geselecteerde type locomotief te vervangen @@ -3618,7 +3668,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Geldoverdracht: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Onderhoudsinterval: {LTBLUE}{COMMA}dagen{BLACK} Laatste onderhoud: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Onderhoudsinterval: {LTBLUE}{COMMA}{NBSP}dagen{BLACK} Laatste onderhoud: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Onderhoudsinterval: {LTBLUE}{COMMA}%{BLACK} Laatste onderhoud: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Vergroot onderhoudsinterval met 10. Ctrl+klik verhoogt interval met 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Verklein onderhoudsinterval met 10. Ctrl+klik verlaagt interval met 5 @@ -3854,8 +3904,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(wacht gedurend STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(reis gedurende {STRING}, geen tijdschema) STR_TIMETABLE_STAY_FOR :en blijf voor {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :en rijd naar {STRING} -STR_TIMETABLE_DAYS :{COMMA} dag{P "" en} -STR_TIMETABLE_TICKS :{COMMA} tik{P "" ken} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}dag{P "" en} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tik{P "" ken} STR_TIMETABLE_TOTAL_TIME :{BLACK}Dit tijdschema duurt {STRING} om te volbrengen STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Dit tijdschema duurt minstens {STRING} om te volbrengen (niet alles geselecteerd) @@ -4093,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Graafwer STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... al op zeeniveau STR_ERROR_TOO_HIGH :{WHITE}... te hoog STR_ERROR_ALREADY_LEVELLED :{WHITE}... al vlak +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Hierna zou de brug hierboven te hoog zijn. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kan bedrijfsnaam niet veranderen... @@ -4119,7 +4170,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... te d STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... te dicht bij een andere plaats STR_ERROR_TOO_MANY_TOWNS :{WHITE}... te veel plaatsen STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... er is geen ruimte meer op de kaart -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}De plaats bouwt geen wegen. Het bouwen van wegen kan aangezet worden via Geavanceerde Instellingen->Economie->Plaatsen +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}De plaats bouwt geen wegen. Het bouwen van wegen kan aangezet worden via Geavanceerde Instellingen->Omgeving->Plaatsen STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Wegwerkzaamheden in uitvoering STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kan deze plaats niet verwijderen...{}Een station of depot verwijst naar deze plaats of een door de plaats beheerde tegel kan niet worden verwijderd STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... er is geen geschikte plaats voor een standbeeld in het centrum van dit dorp @@ -4143,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... boss STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kan alleen boven de sneeuwlijn gebouwd worden STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kan alleen onder de sneeuwlijn gebouwd worden +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Er waren een geschikte locaties voor '{STRING}' industrieën +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Wijzig de kaart-generatie parameters om een betere kaart te krijgen + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kan hier geen treinstation bouwen... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kan hier geen bushalte bouwen... @@ -4279,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Brug moe STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kan niet beginnen en eindigen op dezelfde plaats STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Begin van bruggen niet op hetzelfde niveau STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Brug is te laag voor dit terrein +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Brug is te hoogte voor dit terrein. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Begin en einde moeten op een lijn staan STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... uiteinden van brug moeten beiden op land zijn STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... brug te lang @@ -4843,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (verborgen) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/english.txt b/src/lang/english.txt index 238cde2413..ad29b3d596 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Fizzy Drink # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passenger{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passenger{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} of coal -STR_QUANTITY_MAIL :{COMMA} bag{P "" s} of mail +STR_QUANTITY_MAIL :{COMMA}{NBSP}bag{P "" s} of mail STR_QUANTITY_OIL :{VOLUME_LONG} of oil -STR_QUANTITY_LIVESTOCK :{COMMA} item{P "" s} of livestock -STR_QUANTITY_GOODS :{COMMA} crate{P "" s} of goods +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}item{P "" s} of livestock +STR_QUANTITY_GOODS :{COMMA}{NBSP}crate{P "" s} of goods STR_QUANTITY_GRAIN :{WEIGHT_LONG} of grain STR_QUANTITY_WOOD :{WEIGHT_LONG} of wood STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} of iron ore STR_QUANTITY_STEEL :{WEIGHT_LONG} of steel -STR_QUANTITY_VALUABLES :{COMMA} bag{P "" s} of valuables +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}bag{P "" s} of valuables STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} of copper ore STR_QUANTITY_MAIZE :{WEIGHT_LONG} of maize STR_QUANTITY_FRUIT :{WEIGHT_LONG} of fruit -STR_QUANTITY_DIAMONDS :{COMMA} bag{P "" s} of diamonds +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}bag{P "" s} of diamonds STR_QUANTITY_FOOD :{WEIGHT_LONG} of food STR_QUANTITY_PAPER :{WEIGHT_LONG} of paper -STR_QUANTITY_GOLD :{COMMA} bag{P "" s} of gold +STR_QUANTITY_GOLD :{COMMA}{NBSP}bag{P "" s} of gold STR_QUANTITY_WATER :{VOLUME_LONG} of water STR_QUANTITY_WHEAT :{WEIGHT_LONG} of wheat STR_QUANTITY_RUBBER :{VOLUME_LONG} of rubber STR_QUANTITY_SUGAR :{WEIGHT_LONG} of sugar -STR_QUANTITY_TOYS :{COMMA} toy{P "" s} -STR_QUANTITY_SWEETS :{COMMA} bag{P "" s} of sweets +STR_QUANTITY_TOYS :{COMMA}{NBSP}toy{P "" s} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}bag{P "" s} of sweets STR_QUANTITY_COLA :{VOLUME_LONG} of cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} of candyfloss STR_QUANTITY_BUBBLES :{COMMA} bubble{P "" s} @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}ALL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passenger{P "" s} -STR_BAGS :{COMMA} bag{P "" s} -STR_TONS :{COMMA} tonne{P "" s} -STR_LITERS :{COMMA} litre{P "" s} -STR_ITEMS :{COMMA} item{P "" s} -STR_CRATES :{COMMA} crate{P "" s} +STR_PASSENGERS :{COMMA}{NBSP}passenger{P "" s} +STR_BAGS :{COMMA}{NBSP}bag{P "" s} +STR_TONS :{COMMA}{NBSP}tonne{P "" s} +STR_LITERS :{COMMA}{NBSP}litre{P "" s} +STR_ITEMS :{COMMA}{NBSP}item{P "" s} +STR_CRATES :{COMMA}{NBSP}crate{P "" s} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Dark Blue @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Grey STR_COLOUR_WHITE :White # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonne{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonne{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litre{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter string: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll b STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll bar - scrolls list left/right STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolish buildings etc. on a square of land. Ctrl selects the area diagonally. Shift toggles building/showing cost estimate +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Show hidden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Show hidden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Show hidden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Show hidden + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}By enabling this button, the hidden train vehicles are also displayed +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}By enabling this button, the hidden road vehicles are also displayed +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}By enabling this button, the hidden ships are also displayed +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}By enabling this button, the hidden aircraft are also displayed + # Query window STR_BUTTON_DEFAULT :{BLACK}Default STR_BUTTON_CANCEL :{BLACK}Cancel @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Exit ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Game options -STR_SETTINGS_MENU_CONFIG_SETTINGS :Advanced settings +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Settings STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Game script settings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF settings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency options @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgian Lari ( STR_GAME_OPTIONS_CURRENCY_IRR :Iranian Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Road vehicles STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Select side of road for vehicles to drive on STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Drive on left @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Screen r STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Select the screen resolution to use STR_GAME_OPTIONS_RESOLUTION_OTHER :other +STR_GAME_OPTIONS_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_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Double size +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad size + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base graphics set STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Select the base graphics set to use STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s} @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Very Flat STR_TERRAIN_TYPE_FLAT :Flat STR_TERRAIN_TYPE_HILLY :Hilly STR_TERRAIN_TYPE_MOUNTAINOUS :Mountainous +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Permissive STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Hostile STR_WARNING_NO_SUITABLE_AI :{WHITE}No suitable AIs available...{}You can download several AIs via the 'Online Content' system -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Advanced Settings +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Settings STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filter string: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Expand all STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Collapse all @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Company setting STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Category: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Type: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Restricts the list below using predefined filters -STR_CONFIG_SETTING_RESTRICT_BASIC :Basic settings -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Advanced settings -STR_CONFIG_SETTING_RESTRICT_ALL :Expert settings / all settings +STR_CONFIG_SETTING_RESTRICT_BASIC :Basic (show only important settings) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Advanced (show most settings) +STR_CONFIG_SETTING_RESTRICT_ALL :Expert (show all settings, including weird ones) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Settings with a different value than the default STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Settings with a different value than your new-game settings @@ -1147,6 +1162,9 @@ 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_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_MAX_HEIGHTLEVEL_HELPTEXT :Set the maximum allowed height for mountains on the map +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_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_CATCHMENT :Allow more realistically sized catchment areas: {STRING2} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflation: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Enable inflation in the economy, where costs are slightly faster rising than payments STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximum bridge length: {STRING2} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximum length for building bridges +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximum bridge height: {STRING2} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximum height for building bridges STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximum tunnel length: {STRING2} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximum length for building tunnels STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Manual primary industry construction method: {STRING2} @@ -1260,8 +1280,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duration of err STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duration for displaying error messages in a red window. Note that some (critical) error messages are not closed automatically after this time, but must be closed manually STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} second{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Show tooltips: {STRING2} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Delay before tooltips are displayed when hovering the mouse over some interface element. Alternatively tooltips can be bound to the right mouse button -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Hover for {COMMA} second{P 0 "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Delay before tooltips are displayed when hovering the mouse over some interface element. Alternatively tooltips are bound to the right mouse button when this value is set to 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Hover for {COMMA} millisecond{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Right click STR_CONFIG_SETTING_POPULATION_IN_LABEL :Show town population in the town name label: {STRING2} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Display the population of towns in their label on the map @@ -1444,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Service interva STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Choose whether servicing of vehicles is triggered by the time passed since last service or by reliability dropping by a certain percentage of the maximum reliability STR_CONFIG_SETTING_SERVINT_TRAINS :Default service interval for trains: {STRING2} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Set the default service interval for new rail vehicles, if no explicit service interval is set for the vehicle -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} day{P 0 "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}day{P 0 "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Disabled STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Default service interval for road vehicles: {STRING2} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Set the default service interval for new road vehicles, if no explicit service interval is set for the vehicle @@ -1511,7 +1531,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the beha STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Automatically build semaphores before: {STRING2} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Set the year when electric signals will be used for tracks. Before this year, non-electric signals will be used (which have the exact same function, but different looks) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Enable the signal GUI: {STRING2} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Display a window for choosing signal types to build, instead of only window-less signal-type rotation with Ctrl+clicking on build signals +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Display a window for choosing signal types to build, instead of only window-less signal-type rotation with Ctrl+clicking on built signals STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Signal type to build by default: {STRING2} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Default signal type to use STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Block signals @@ -1584,9 +1604,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :None STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Initial city size multiplier: {STRING2} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Average size of cities relative to normal towns at start of the game -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Update distribution graph every {STRING2} day{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Update distribution graph every {STRING2}{NBSP}day{P 0:2 "" s} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Time between subsequent recalculations of the link graph. Each recalculation calculates the plans for one component of the graph. That means that a value X for this setting does not mean the whole graph will be updated every X days. Only some component will. The shorter you set it the more CPU time will be necessary to calculate it. The longer you set it the longer it will take until the cargo distribution starts on new routes. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Take {STRING2} day{P 0:2 "" s} for recalculation of distribution graph +STR_CONFIG_SETTING_LINKGRAPH_TIME :Take {STRING2}{NBSP}day{P 0:2 "" s} for recalculation of distribution graph STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Time taken for each recalculation of a link graph component. When a recalculation is started, a thread is spawned which is allowed to run for this number of days. The shorter you set this the more likely it is that the thread is not finished when it's supposed to. Then the game stops until it is ("lag"). The longer you set it the longer it takes for the distribution to be updated when routes change. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manual STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetric @@ -1596,7 +1616,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"symmetric" mea STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Distribution mode for mail: {STRING2} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"symmetric" means that roughly the same amount of mail will be sent from a station A to a station B as from B to A. "asymmetric" means that arbitrary amounts of mail can be sent in either direction. "manual" means that no automatic distribution will take place for mail. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Distribution mode for the ARMOURED cargo class: {STRING2} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :The ARMOURED cargo class contains valuables in the temperate, diamonds in the subtropical or gold in subarctic climate. NewGRFs may change that. "symmetric" means that roughly the same amount of that cargo will be sent from a station A to a station B as from B to A. "asymmetric" means that arbitrary of that cargo can be sent in either direction. "manual" means that no automatic distribution will take place for that cargo. It is recommended to set this to asymmetric or manual when playing subarctic, as banks won't send any gold back to gold mines. For temperate and subtropical you can also choose symmetric as banks will send valuables back to the origin bank of some load of valuables. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :The ARMOURED cargo class contains valuables in the temperate, diamonds in the subtropical or gold in subarctic climate. NewGRFs may change that. "symmetric" means that roughly the same amount of that cargo will be sent from a station A to a station B as from B to A. "asymmetric" means that arbitrary amounts of that cargo can be sent in either direction. "manual" means that no automatic distribution will take place for that cargo. It is recommended to set this to asymmetric or manual when playing subarctic, as banks won't send any gold back to gold mines. For temperate and subtropical you can also choose symmetric as banks will send valuables back to the origin bank of some load of valuables. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Distribution mode for other cargo classes: {STRING2} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"asymmetric" means that arbitrary amounts of cargo can be sent in either direction. "manual" means that no automatic distribution will take place for those cargoes. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Distribution accuracy: {STRING2} @@ -1621,25 +1641,25 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metric (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Weights units: {STRING2} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Whenever weights are shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Whenever a weight is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (short t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metric (t/tonne) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Volumes units: {STRING2} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Whenever volumes are shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Whenever a volume is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metric (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Tractive effort units: {STRING2} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Whenever tractive effort, also known as tractive force, is shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Whenever a tractive effort (also known as tractive force) is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metric (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Heights units: {STRING2} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Whenever heights are shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Whenever a height is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperial (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metric (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1715,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multipla STR_INTRO_GAME_OPTIONS :{BLACK}Game Options STR_INTRO_HIGHSCORE :{BLACK}Highscore Table -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Advanced Settings +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Settings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Settings STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Content STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Game Script Settings @@ -1735,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Select ' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Display game options STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Display highscore table -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Display advanced settings +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Display settings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Display NewGRF settings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check for new and updated content to download STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Display AI/Game script settings @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Playing STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magic bulldozer (remove industries, unmovable objects): {ORANGE}{STRING1} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnels may cross each other: {ORANGE}{STRING1} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetplanes will not crash (frequently) on small airports: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Edit the maximum map height: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Edit the maximum height of mountains on the map STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Temperate landscape STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Sub-arctic landscape STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-tropical landscape @@ -2293,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Build ra STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Build train depot (for buying and servicing trains). Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Convert rail to waypoint. Ctrl enables joining waypoints. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Build railway station. Ctrl enables joining stations. Shift toggles building/showing cost estimate -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Build railway signals. Ctrl toggles semaphore/light signals{}Dragging builds signals along a straight stretch of rail. Ctrl builds signals till the next junction{}Ctrl+Click toggles opening the signal selection window. Shift toggles building/showing cost estimate +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Build railway signals. Ctrl toggles semaphore/light signals{}Dragging builds signals along a straight stretch of rail. Ctrl builds signals up to the next junction or signal{}Ctrl+Click toggles opening the signal selection window. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Build railway bridge. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Build railway tunnel. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Toggle build/remove for railway track, signals, waypoints and stations. Hold Ctrl to also remove the rail of waypoints and stations @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Company-owned l STR_ABOUT_OPENTTD :{WHITE}About OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Save Game @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns: STR_MAPGEN_DATE :{BLACK}Date: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximum map height: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Increase the maximum height of mountains on the map by one +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Decrease the maximum height of mountains on the map by one 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 @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Heightma STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Change maximum map height STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Change snow line height STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year @@ -2842,14 +2868,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF v # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Aligning sprite {COMMA} ({RAW_STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Next sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Proceed to the next normal sprite, skipping any pseudo/recolour/font sprites and wrapping around at the end +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Proceed to the next normal sprite, skipping any pseudo/recolour/font sprites and wrapping around from the last sprite to the first STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Go to sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Go to the given sprite. If the sprite is not a normal sprite, proceed to the next normal sprite STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Previous sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolour/font sprites and wrapping around at the begin +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolour/font sprites and wrapping around from the first sprite to the last STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation of the currently selected sprite. The alignment is ignored when drawing this sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move the sprite around, changing the X and Y offsets -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reset relative +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reset the current relative offsets +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Absolute) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offset: {NUM}, Y offset: {NUM} (Relative) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Pick sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pick a sprite from anywhere on the screen @@ -2961,8 +2990,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} delivered STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (still required) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (delivered) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK} day{P "" s} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK} day{P "" s} (funded) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK}{NBSP}day{P "" s} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK}{NBSP}day{P "" s} (funded) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Town is {RED}not{BLACK} growing STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Noise limit in town: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centre the main view on town location. Ctrl+Click opens a new viewport on town location @@ -3022,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Information STR_GOAL_QUESTION_CAPTION_WARNING :Warning STR_GOAL_QUESTION_CAPTION_ERROR :Error -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Cancel STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :No @@ -3041,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restart STR_GOAL_QUESTION_BUTTON_POSTPONE :Postpone STR_GOAL_QUESTION_BUTTON_SURRENDER :Surrender STR_GOAL_QUESTION_BUTTON_CLOSE :Close +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidies @@ -3365,10 +3395,10 @@ STR_PURCHASE_INFO_ALL_BUT :All but {CARGO_ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Tractive Effort: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Range: {GOLD}{COMMA} tiles -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list - click on vehicle for information -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Road vehicle selection list - click on vehicle for information -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Ship selection list - click on ship for information -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aircraft selection list - click on aircraft for information +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list. Click on vehicle for information. Ctrl+Click for toggling hiding of the vehicle type +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Road vehicle selection list. Click on vehicle for information. Ctrl+Click for toggling hiding of the vehicle type +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Ship selection list. Click on ship for information. Ctrl+Click for toggling hiding of the ship type +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aircraft selection list. Click on aircraft for information. Ctrl+Click for toggling hiding of the aircraft type STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Buy Vehicle STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Buy Vehicle @@ -3390,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Rename r STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Rename ship type STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Rename aircraft type +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Hide +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Hide +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Hide +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Hide + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Display +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Display +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Display +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Display + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the train vehicle type +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the road vehicle type +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the ship type +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the aircraft type + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Rename train vehicle type STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Rename road vehicle type STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Rename ship type @@ -3443,7 +3488,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Clone Ve STR_DEPOT_CLONE_SHIP :{BLACK}Clone Ship STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Clone Aircraft -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}This will buy a copy of a train including all cars. Click this button and then on a train inside or outside the depot. Ctrl+Click share the orders. Shift+Click shows estimated cost without purchase +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}This will buy a copy of a train including all cars. Click this button and then on a train inside or outside the depot. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}This will buy a copy of a road vehicle. Click this button and then on a road vehicle inside or outside the depot. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}This will buy a copy of a ship. Click this button and then on a ship inside or outside the depot. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}This will buy a copy of an aircraft. Click this button and then on an aircraft inside or outside the hangar. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase @@ -3494,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Road Vehicle STR_REPLACE_VEHICLE_SHIP :Ship STR_REPLACE_VEHICLE_AIRCRAFT :Aircraft +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Vehicles in use +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Column with vehicles that you own +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Available vehicles +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Column with vehicles available for replacement + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Select the engine type to replace STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Select the new engine type you would like to use in place of the left selected engine type @@ -3618,7 +3668,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacity STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer Credits: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servicing interval: {LTBLUE}{COMMA}days{BLACK} Last service: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}days{BLACK} Last service: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servicing interval: {LTBLUE}{COMMA}%{BLACK} Last service: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Increase servicing interval by 10. Ctrl+Click increases servicing interval by 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Decrease servicing interval by 10. Ctrl+Click decreases servicing interval by 5 @@ -3854,8 +3904,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(stay for {STRI STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(travel for {STRING1}, not timetabled) STR_TIMETABLE_STAY_FOR :and stay for {STRING1} STR_TIMETABLE_AND_TRAVEL_FOR :and travel for {STRING1} -STR_TIMETABLE_DAYS :{COMMA} day{P "" s} -STR_TIMETABLE_TICKS :{COMMA} tick{P "" s} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}day{P "" s} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}This timetable will take {STRING1} to complete STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}This timetable will take at least {STRING1} to complete (not all timetabled) @@ -4093,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Excavati STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... already at sea level STR_ERROR_TOO_HIGH :{WHITE}... too high STR_ERROR_ALREADY_LEVELLED :{WHITE}... already flat +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Afterwards the bridge above it would be too high. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Can't change company name... @@ -4119,7 +4170,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... too STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... too close to another town STR_ERROR_TOO_MANY_TOWNS :{WHITE}... too many towns STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... there is no more space on the map -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}The town will not build roads. You can enable building of roads via Advanced Settings->Economy->Towns +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}The town will not build roads. You can enable building of roads via Settings->Environment->Towns STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Road works in progress STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Can't delete this town...{}A station or depot is referring to the town or a town owned tile can't be removed STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... there is no suitable place for a statue in the centre of this town @@ -4143,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... fore STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... can only be built above the snow-line STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... can only be built below the snow-line +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}There were no suitable places for '{STRING}' industries +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Change the map generation parameters to get a better map + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Can't build railway station here... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Can't build bus station... @@ -4279,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Must dem STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Can't start and end in the same spot STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Bridge heads not at the same level STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Bridge is too low for the terrain +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Bridge is too high for this terrain. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Start and end must be in line STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... ends of bridge must both be on land STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... bridge too long @@ -4843,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (hidden) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index 5aa187f88c..252464a970 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Soft Drink # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passenger{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passenger{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} of coal -STR_QUANTITY_MAIL :{COMMA} bag{P "" s} of mail +STR_QUANTITY_MAIL :{COMMA}{NBSP}bag{P "" s} of mail STR_QUANTITY_OIL :{VOLUME_LONG} of oil -STR_QUANTITY_LIVESTOCK :{COMMA} item{P "" s} of livestock -STR_QUANTITY_GOODS :{COMMA} crate{P "" s} of goods +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}item{P "" s} of livestock +STR_QUANTITY_GOODS :{COMMA}{NBSP}crate{P "" s} of goods STR_QUANTITY_GRAIN :{WEIGHT_LONG} of grain STR_QUANTITY_WOOD :{WEIGHT_LONG} of wood STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} of iron ore STR_QUANTITY_STEEL :{WEIGHT_LONG} of steel -STR_QUANTITY_VALUABLES :{COMMA} bag{P "" s} of valuables +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}bag{P "" s} of valuables STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} of copper ore STR_QUANTITY_MAIZE :{WEIGHT_LONG} of corn STR_QUANTITY_FRUIT :{WEIGHT_LONG} of fruit -STR_QUANTITY_DIAMONDS :{COMMA} bag{P "" s} of diamonds +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}bag{P "" s} of diamonds STR_QUANTITY_FOOD :{WEIGHT_LONG} of food STR_QUANTITY_PAPER :{WEIGHT_LONG} of paper -STR_QUANTITY_GOLD :{COMMA} bag{P "" s} of gold +STR_QUANTITY_GOLD :{COMMA}{NBSP}bag{P "" s} of gold STR_QUANTITY_WATER :{VOLUME_LONG} of water STR_QUANTITY_WHEAT :{WEIGHT_LONG} of wheat STR_QUANTITY_RUBBER :{VOLUME_LONG} of rubber STR_QUANTITY_SUGAR :{WEIGHT_LONG} of sugar -STR_QUANTITY_TOYS :{COMMA} toy{P "" s} -STR_QUANTITY_SWEETS :{COMMA} bag{P "" s} of lollies +STR_QUANTITY_TOYS :{COMMA}{NBSP}toy{P "" s} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}bag{P "" s} of sweets STR_QUANTITY_COLA :{VOLUME_LONG} of cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} of fairy floss STR_QUANTITY_BUBBLES :{COMMA} bubble{P "" s} @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}ALL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passenger{P "" s} -STR_BAGS :{COMMA} bag{P "" s} -STR_TONS :{COMMA} tonne{P "" s} -STR_LITERS :{COMMA} litre{P "" s} -STR_ITEMS :{COMMA} item{P "" s} -STR_CRATES :{COMMA} crate{P "" s} +STR_PASSENGERS :{COMMA}{NBSP}passenger{P "" s} +STR_BAGS :{COMMA}{NBSP}bag{P "" s} +STR_TONS :{COMMA}{NBSP}tonne{P "" s} +STR_LITERS :{COMMA}{NBSP}litre{P "" s} +STR_ITEMS :{COMMA}{NBSP}item{P "" s} +STR_CRATES :{COMMA}{NBSP}crate{P "" s} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Dark Blue @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Grey STR_COLOUR_WHITE :White # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonne{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonne{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litre{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter string: @@ -248,6 +248,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll b STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll bar - scrolls list left/right STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolish buildings etc. on a square of land. Ctrl selects the area diagonally. Shift toggles building/showing cost estimate +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Default STR_BUTTON_CANCEL :{BLACK}Cancel @@ -361,7 +364,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :Exit ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Game options -STR_SETTINGS_MENU_CONFIG_SETTINGS :Advanced settings STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Game script settings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF settings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency options @@ -916,10 +918,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgian Lari ( STR_GAME_OPTIONS_CURRENCY_IRR :Iranian Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Road vehicles STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Select side of road for vehicles to drive on STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Drive on left @@ -973,6 +971,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Screen r STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Select the screen resolution to use STR_GAME_OPTIONS_RESOLUTION_OTHER :other + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base graphics set STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Select the base graphics set to use STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s} @@ -1073,8 +1073,7 @@ STR_CITY_APPROVAL_HOSTILE :Hostile STR_WARNING_NO_SUITABLE_AI :{WHITE}No suitable AIs available...{}You can download several AIs via the 'Online Content' system -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Advanced Settings +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filter string: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Expand all STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Collapse all @@ -1444,7 +1443,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Service interva STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Choose whether servicing of vehicles is triggered by the time passed since last service or by reliability dropping by a certain percentage of the maximum reliability STR_CONFIG_SETTING_SERVINT_TRAINS :Default service interval for trains: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Set the default service interval for new rail vehicles, if no explicit service interval is set for the vehicle -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} day{P 0 "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}day{P 0 "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Disabled STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Default service interval for road vehicles: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Set the default service interval for new road vehicles, if no explicit service interval is set for the vehicle @@ -1584,9 +1583,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :None STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Initial city size multiplier: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Average size of cities relative to normal towns at start of the game -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Update distribution graph every {STRING} day{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Update distribution graph every {STRING}{NBSP}day{P 0:2 "" s} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Time between subsequent recalculations of the link graph. Each recalculation calculates the plans for one component of the graph. That means that a value X for this setting does not mean the whole graph will be updated every X days. Only some component will. The shorter you set it the more CPU time will be necessary to calculate it. The longer you set it the longer it will take until the cargo distribution starts on new routes. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Take {STRING} day{P 0:2 "" s} for recalculation of distribution graph +STR_CONFIG_SETTING_LINKGRAPH_TIME :Take {STRING}{NBSP}day{P 0:2 "" s} for recalculation of distribution graph STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Time taken for each recalculation of a link graph component. When a recalculation is started, a thread is spawned which is allowed to run for this number of days. The shorter you set this the more likely it is that the thread is not finished when it's supposed to. Then the game stops until it is ("lag"). The longer you set it the longer it takes for the distribution to be updated when routes change. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manual STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetric @@ -1715,7 +1714,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multipla STR_INTRO_GAME_OPTIONS :{BLACK}Game Options STR_INTRO_HIGHSCORE :{BLACK}Highscore Table -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Advanced Settings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Settings STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Content STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Game Script Settings @@ -1735,7 +1733,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Select ' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Display game options STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Display highscore table -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Display advanced settings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Display NewGRF settings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check for new and updated content to download STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Display AI/Game script settings @@ -2665,7 +2662,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Company-owned l STR_ABOUT_OPENTTD :{WHITE}About OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Save Game @@ -2849,7 +2846,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Previous STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolour/font sprites and wrapping around at the begin STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation of the currently selected sprite. The alignment is ignored when drawing this sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move the sprite around, changing the X and Y offsets -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Pick sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pick a sprite from anywhere on the screen @@ -2961,8 +2957,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} delivered STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (still required) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (delivered) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK} day{P "" s} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK} day{P "" s} (funded) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK}{NBSP}day{P "" s} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK}{NBSP}day{P "" s} (funded) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Town is {RED}not{BLACK} growing STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Noise limit in town: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centre the main view on town location. Ctrl+Click opens a new viewport on town location @@ -3022,7 +3018,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Information STR_GOAL_QUESTION_CAPTION_WARNING :Warning STR_GOAL_QUESTION_CAPTION_ERROR :Error -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Cancel STR_GOAL_QUESTION_BUTTON_OK :Ok STR_GOAL_QUESTION_BUTTON_NO :No @@ -3041,6 +3037,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restart STR_GOAL_QUESTION_BUTTON_POSTPONE :Postpone STR_GOAL_QUESTION_BUTTON_SURRENDER :Surrender STR_GOAL_QUESTION_BUTTON_CLOSE :Close +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidies @@ -3390,6 +3387,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Rename r STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Rename ship type STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Rename aircraft type + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Rename train vehicle type STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Rename road vehicle type STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Rename ship type @@ -3494,6 +3494,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Road Vehicle STR_REPLACE_VEHICLE_SHIP :Ship STR_REPLACE_VEHICLE_AIRCRAFT :Aircraft + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Select the engine type to replace STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Select the new engine type you would like to use in place of the left selected engine type @@ -3618,7 +3619,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacity STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer Credits: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servicing interval: {LTBLUE}{COMMA}days{BLACK} Last service: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}days{BLACK} Last service: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servicing interval: {LTBLUE}{COMMA}%{BLACK} Last service: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Increase servicing interval by 10. Ctrl+Click increases servicing interval by 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Decrease servicing interval by 10. Ctrl+Click decreases servicing interval by 5 @@ -3854,8 +3855,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(stay for {STRI STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(travel for {STRING}, not timetabled) STR_TIMETABLE_STAY_FOR :and stay for {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :and travel for {STRING} -STR_TIMETABLE_DAYS :{COMMA} day{P "" s} -STR_TIMETABLE_TICKS :{COMMA} tick{P "" s} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}day{P "" s} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}This timetable will take {STRING} to complete STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}This timetable will take at least {STRING} to complete (not all timetabled) @@ -4119,7 +4120,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... too STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... too close to another town STR_ERROR_TOO_MANY_TOWNS :{WHITE}... too many towns STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... there is no more space on the map -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}The town will not build roads. You can enable building of roads via Advanced Settings->Economy->Towns +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}The town will not build roads. You can enable building of roads via Advanced Settings->Environment->Towns STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Road works in progress STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Can't delete this town...{}A station or depot is referring to the town or a town owned tile can't be removed STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... there is no suitable place for a statue in the centre of this town @@ -4143,6 +4144,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... fore STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... can only be built above the snow-line STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... can only be built below the snow-line +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}There were no suitable places for '{STRING}' industries +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Change the map generation parameters to get a better map + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Can't build railway station here... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Can't build bus station... @@ -4878,8 +4882,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 05979921c3..baa4166579 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Fizzy Drink # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passenger{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passenger{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} of coal -STR_QUANTITY_MAIL :{COMMA} bag{P "" s} of mail +STR_QUANTITY_MAIL :{COMMA}{NBSP}bag{P "" s} of mail STR_QUANTITY_OIL :{VOLUME_LONG} of oil -STR_QUANTITY_LIVESTOCK :{COMMA} item{P "" s} of livestock -STR_QUANTITY_GOODS :{COMMA} crate{P "" s} of goods +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}head of livestock +STR_QUANTITY_GOODS :{COMMA}{NBSP}crate{P "" s} of goods STR_QUANTITY_GRAIN :{WEIGHT_LONG} of grain STR_QUANTITY_WOOD :{WEIGHT_LONG} of wood STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} of iron ore STR_QUANTITY_STEEL :{WEIGHT_LONG} of steel -STR_QUANTITY_VALUABLES :{COMMA} bag{P "" s} of valuables +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}bag{P "" s} of valuables STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} of copper ore STR_QUANTITY_MAIZE :{WEIGHT_LONG} of maize STR_QUANTITY_FRUIT :{WEIGHT_LONG} of fruit -STR_QUANTITY_DIAMONDS :{COMMA} bag{P "" s} of diamonds +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}bag{P "" s} of diamonds STR_QUANTITY_FOOD :{WEIGHT_LONG} of food STR_QUANTITY_PAPER :{WEIGHT_LONG} of paper -STR_QUANTITY_GOLD :{COMMA} bag{P "" s} of gold +STR_QUANTITY_GOLD :{COMMA}{NBSP}bag{P "" s} of gold STR_QUANTITY_WATER :{VOLUME_LONG} of water STR_QUANTITY_WHEAT :{WEIGHT_LONG} of wheat STR_QUANTITY_RUBBER :{VOLUME_LONG} of rubber STR_QUANTITY_SUGAR :{WEIGHT_LONG} of sugar -STR_QUANTITY_TOYS :{COMMA} toy{P "" s} -STR_QUANTITY_SWEETS :{COMMA} bag{P "" s} of candy +STR_QUANTITY_TOYS :{COMMA}{NBSP}toy{P "" s} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}bag{P "" s} of candy STR_QUANTITY_COLA :{VOLUME_LONG} of cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} of cotton candy STR_QUANTITY_BUBBLES :{COMMA} bubble{P "" s} @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}ALL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passenger{P "" s} -STR_BAGS :{COMMA} bag{P "" s} -STR_TONS :{COMMA} tonne{P "" s} -STR_LITERS :{COMMA} liter{P "" s} -STR_ITEMS :{COMMA} item{P "" s} -STR_CRATES :{COMMA} crate{P "" s} +STR_PASSENGERS :{COMMA}{NBSP}passenger{P "" s} +STR_BAGS :{COMMA}{NBSP}bag{P "" s} +STR_TONS :{COMMA}{NBSP}tonne{P "" s} +STR_LITERS :{COMMA}{NBSP}liter{P "" s} +STR_ITEMS :{COMMA}{NBSP}item{P "" s} +STR_CRATES :{COMMA}{NBSP}crate{P "" s} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Dark Blue @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Gray STR_COLOUR_WHITE :White # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonne{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonne{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter string: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll b STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll bar - scrolls list left/right STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolish buildings etc. on a square of land. Ctrl selects the area diagonally. Shift toggles building/showing cost estimate +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Show hidden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Show hidden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Show hidden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Show hidden + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}By enabling this button, the hidden train vehicles are also displayed +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}By enabling this button, the hidden road vehicles are also displayed +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}By enabling this button, the hidden ships are also displayed +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}By enabling this button, the hidden aircraft are also displayed + # Query window STR_BUTTON_DEFAULT :{BLACK}Default STR_BUTTON_CANCEL :{BLACK}Cancel @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Quit ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Game options -STR_SETTINGS_MENU_CONFIG_SETTINGS :Advanced settings +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Settings STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Game script settings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF settings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency options @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgian Lari ( STR_GAME_OPTIONS_CURRENCY_IRR :Iranian Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Road vehicles STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Select side of road for vehicles to drive on STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Drive on left @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Screen r STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Select the screen resolution to use STR_GAME_OPTIONS_RESOLUTION_OTHER :other +STR_GAME_OPTIONS_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_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Double size +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad size + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base graphics set STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Select the base graphics set to use STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s} @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Very Flat STR_TERRAIN_TYPE_FLAT :Flat STR_TERRAIN_TYPE_HILLY :Hilly STR_TERRAIN_TYPE_MOUNTAINOUS :Mountainous +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Permissive STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Hostile STR_WARNING_NO_SUITABLE_AI :{WHITE}No suitable AIs available...{}You can download several AIs via the 'Online Content' system -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Advanced Settings +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Settings STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filter string: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Expand all STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Collapse all @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Company setting STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Category: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Type: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Restricts the list below using predefined filters -STR_CONFIG_SETTING_RESTRICT_BASIC :Basic settings -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Advanced settings -STR_CONFIG_SETTING_RESTRICT_ALL :Expert settings / all settings +STR_CONFIG_SETTING_RESTRICT_BASIC :Basic (show only important settings) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Advanced (show most settings) +STR_CONFIG_SETTING_RESTRICT_ALL :Expert (show all settings, including weird ones) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Settings with a different value than the default STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Settings with a different value than your new-game settings @@ -1147,6 +1162,9 @@ 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_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_MAX_HEIGHTLEVEL_HELPTEXT :Set the maximum allowed height for mountains on the map +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_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_CATCHMENT :Allow more realistically sized catchment areas: {STRING} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflation: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Enable inflation in the economy, where costs are slightly faster rising than payments STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximum bridge length: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximum length for building bridges +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximum bridge height: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximum height for building bridges STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximum tunnel length: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximum length for building tunnels STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Manual primary industry construction method: {STRING} @@ -1260,8 +1280,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duration of err STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duration for displaying error messages in a red window. Note that some (critical) error messages are not closed automatically after this time, but must be closed manually STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} second{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Show tooltips: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Delay before tooltips are displayed when hovering the mouse over some interface element. Alternatively tooltips can be bound to the right mouse button -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Hover for {COMMA} second{P 0 "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Delay before tooltips are displayed when hovering the mouse over some interface element. Alternatively tooltips are bound to the right mouse button when this value is set to 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Hover for {COMMA} millisecond{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Right click STR_CONFIG_SETTING_POPULATION_IN_LABEL :Show town population in the town name label: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Display the population of towns in their label on the map @@ -1341,7 +1361,7 @@ STR_CONFIG_SETTING_OSK_ACTIVATION :On screen keybo STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Select the method to open the on screen keyboard for entering text into editboxes only using the pointing device. This is meant for small devices without actual keyboard STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Disabled STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Double click -STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Single click (when focussed) +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Single click (when focused) STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Single click (immediately) STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Right-click emulation: {STRING} @@ -1358,8 +1378,8 @@ STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Select interval STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Use the {STRING} date format for savegame names STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Format of the date in save game filenames -STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :long (31st Dec 2008) -STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :short (31-12-2008) +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :long (Dec 31st, 2008) +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :short (12/31/2008) STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31) STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Automatically pause when starting a new game: {STRING} @@ -1444,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Maintenance int STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Choose whether maintenance of vehicles is triggered by the time passed since last maintenance or by reliability dropping by a certain percentage of the maximum reliability STR_CONFIG_SETTING_SERVINT_TRAINS :Default maintenance interval for trains: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Set the default maintenance interval for new rail vehicles, if no explicit maintenance interval is set for the vehicle -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} day{P 0 "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}day{P 0 "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Disabled STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Default maintenance interval for road vehicles: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Set the default maintenance interval for new road vehicles, if no explicit maintenance interval is set for the vehicle @@ -1511,7 +1531,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the beha STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Automatically build semaphores before: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Set the year when electric signals will be used for tracks. Before this year, non-electric signals will be used (which have the exact same function, but different looks) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Enable the signal GUI: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Display a window for choosing signal types to build, instead of only window-less signal-type rotation with Ctrl+clicking on build signals +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Display a window for choosing signal types to build, instead of only window-less signal-type rotation with Ctrl+clicking on built signals STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Signal type to build by default: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Default signal type to use STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Block signals @@ -1584,9 +1604,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :None STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Initial city size multiplier: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Average size of cities relative to normal towns at start of the game -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Update distribution graph every {STRING} day{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Update distribution graph every {STRING}{NBSP}day{P 0:2 "" s} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Time between subsequent recalculations of the link graph. Each recalculation calculates the plans for one component of the graph. That means that a value X for this setting does not mean the whole graph will be updated every X days. Only some component will. The shorter you set it the more CPU time will be necessary to calculate it. The longer you set it the longer it will take until the cargo distribution starts on new routes. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Take {STRING} day{P 0:2 "" s} for recalculation of distribution graph +STR_CONFIG_SETTING_LINKGRAPH_TIME :Take {STRING}{NBSP}day{P 0:2 "" s} for recalculation of distribution graph STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Time taken for each recalculation of a link graph component. When a recalculation is started, a thread is spawned which is allowed to run for this number of days. The shorter you set this the more likely it is that the thread is not finished when it's supposed to. Then the game stops until it is ("lag"). The longer you set it the longer it takes for the distribution to be updated when routes change. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manual STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetric @@ -1596,7 +1616,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"symmetric" mea STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Distribution mode for mail: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"symmetric" means that roughly the same amount of mail will be sent from a station A to a station B as from B to A. "asymmetric" means that arbitrary amounts of mail can be sent in either direction. "manual" means that no automatic distribution will take place for mail. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Distribution mode for the ARMORED cargo class: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :The ARMORED cargo class contains valuables in the temperate, diamonds in the subtropical or gold in subarctic climate. NewGRFs may change that. "symmetric" means that roughly the same amount of that cargo will be sent from a station A to a station B as from B to A. "asymmetric" means that arbitrary of that cargo can be sent in either direction. "manual" means that no automatic distribution will take place for that cargo. It is recommended to set this to asymmetric or manual when playing subarctic, as banks won't send any gold back to gold mines. For temperate and subtropical you can also choose symmetric as banks will send valuables back to the origin bank of some load of valuables. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :The ARMORED cargo class contains valuables in the temperate, diamonds in the subtropical, or gold in the subarctic climate. NewGRFs may change that. "symmetric" means that roughly the same amount of that cargo will be sent from a station A to a station B as from B to A. "asymmetric" means that arbitrary amounts of that cargo can be sent in either direction. "manual" means that no automatic distribution will take place for that cargo. It is recommended to set this to asymmetric or manual when playing subarctic, as banks won't send any gold back to gold mines. For temperate and subtropical you can also choose symmetric as banks will send valuables back to the origin bank of some load of valuables. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Distribution mode for other cargo classes: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"asymmetric" means that arbitrary amounts of cargo can be sent in either direction. "manual" means that no automatic distribution will take place for those cargos. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Distribution accuracy: {STRING} @@ -1621,25 +1641,25 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metric (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Weights units: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Whenever weights are shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Whenever a weight is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (short t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metric (t/tonne) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Volumes units: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Whenever volumes are shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Whenever a volume is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metric (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Tractive effort units: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Whenever tractive effort, also known as tractive force, is shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Whenever a tractive effort (also known as tractive force) is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metric (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Heights units: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Whenever heights are shown in the user interface, show it in the selected units +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Whenever a height is shown in the user interface, show it in the selected units STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperial (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metric (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1715,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multipla STR_INTRO_GAME_OPTIONS :{BLACK}Game Options STR_INTRO_HIGHSCORE :{BLACK}Highscore Table -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Advanced Settings +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Settings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Settings STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Content STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Game Script Settings @@ -1735,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Select ' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Display game options STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Display highscore table -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Display advanced settings +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Display settings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Display NewGRF settings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check for new and updated content to download STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Display AI/Game script settings @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Playing STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magic bulldozer (remove industries, unmovable objects): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnels may cross each other: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetplanes will not crash (frequently) on small airports: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Edit the maximum map height: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Edit the maximum height of mountains on the map STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Temperate landscape STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Sub-arctic landscape STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-tropical landscape @@ -2248,7 +2270,7 @@ STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Toggle t STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Toggle transparency for trees. Ctrl+Click to lock STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Toggle transparency for houses. Ctrl+Click to lock STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Toggle transparency for industries. Ctrl+Click to lock -STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Toggle transparency for buildables like stations, depots and waypoints. Ctrl+Click to lock +STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Toggle transparency for buildables like stations, depots, and waypoints. Ctrl+Click to lock STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Toggle transparency for bridges. Ctrl+Click to lock STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Toggle transparency for structures like lighthouses and antennas. Ctrl+Click to lock STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Toggle transparency for catenary. Ctrl+Click to lock @@ -2293,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Build ra STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Build train depot (for buying and maintaining trains). Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Convert rail to waypoint. Ctrl enables joining waypoints. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Build railroad station. Ctrl enables joining stations. Shift toggles building/showing cost estimate -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Build railroad signals. Ctrl toggles semaphore/light signals{}Dragging builds signals along a straight stretch of track. Ctrl builds signals until the next junction{}Ctrl+Click toggles opening the signal selection window. Shift toggles building/showing cost estimate +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Build railroad signals. Ctrl toggles semaphore/light signals{}Dragging builds signals along a straight stretch of track. Ctrl builds signals up to the next junction or signal{}Ctrl+Click toggles opening the signal selection window. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Build railroad bridge. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Build railroad tunnel. Shift toggles building/showing cost estimate STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Toggle build/remove for railroad track, signals, waypoints and stations. Hold Ctrl to also remove the rail of waypoints and stations @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Company-owned l STR_ABOUT_OPENTTD :{WHITE}About OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Save Game @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. of towns: STR_MAPGEN_DATE :{BLACK}Date: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. of industries: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximum map height: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Increase the maximum height of mountains on the map by one +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Decrease the maximum height of mountains on the map by one STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snow line height: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Move the snow line height up one STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Move the snow line height down one @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Heightma STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Size: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Change maximum map height STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Change snow line height STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Change starting year @@ -2842,14 +2868,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF v # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Aligning sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Next sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Proceed to the next normal sprite, skipping any pseudo/recolor/font sprites and wrapping around at the end +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Proceed to the next normal sprite, skipping any pseudo/recolour/font sprites and wrapping around from the last sprite to the first STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Go to sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Go to the given sprite. If the sprite is not a normal sprite, proceed to the next normal sprite STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Previous sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolor/font sprites and wrapping around at the begin +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolour/font sprites and wrapping around from the first sprite to the last STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation of the currently selected sprite. The alignment is ignored when drawing this sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move the sprite around, changing the X and Y offsets -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reset relative +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reset the current relative offsets +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Absolute) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offset: {NUM}, Y offset: {NUM} (Relative) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Pick sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pick a sprite from anywhere on the screen @@ -2961,8 +2990,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} delivered STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (still required) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (delivered) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK} day{P "" s} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK} day{P "" s} (funded) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK}{NBSP}day{P "" s} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Town grows every {ORANGE}{COMMA}{BLACK}{NBSP}day{P "" s} (funded) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Town is {RED}not{BLACK} growing STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Noise limit in town: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Center the main view on town location. Ctrl+Click opens a new viewport on town location @@ -3022,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Information STR_GOAL_QUESTION_CAPTION_WARNING :Warning STR_GOAL_QUESTION_CAPTION_ERROR :Error -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Cancel STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :No @@ -3041,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restart STR_GOAL_QUESTION_BUTTON_POSTPONE :Postpone STR_GOAL_QUESTION_BUTTON_SURRENDER :Surrender STR_GOAL_QUESTION_BUTTON_CLOSE :Close +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidies @@ -3365,10 +3395,10 @@ STR_PURCHASE_INFO_ALL_BUT :All but {CARGO_ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Tractive Effort: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Range: {GOLD}{COMMA} tiles -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list - click on vehicle for information -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Road vehicle selection list - click on vehicle for information -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Ship selection list - click on ship for information -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aircraft selection list - click on aircraft for information +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list. Click on vehicle for information. Ctrl+Click to toggle hiding of the vehicle type +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Road vehicle selection list. Click on vehicle for information. Ctrl+Click to toggle hiding of the vehicle type +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Ship selection list. Click on ship for information. Ctrl+Click to toggle hiding of the ship type +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aircraft selection list. Click on aircraft for information. Ctrl+Click to toggle hiding of the aircraft type STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Buy Vehicle STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Buy Vehicle @@ -3390,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Rename r STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Rename ship type STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Rename aircraft type +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Hide +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Hide +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Hide +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Hide + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Display +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Display +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Display +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Display + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the train vehicle type +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the road vehicle type +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the ship type +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toggle hiding/displaying of the aircraft type + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Rename train vehicle type STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Rename road vehicle type STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Rename ship type @@ -3443,7 +3488,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Clone Ve STR_DEPOT_CLONE_SHIP :{BLACK}Clone Ship STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Clone Aircraft -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}This will buy a copy of a train including all cars. Click this button and then on a train inside or outside the depot. Ctrl+Click share the orders. Shift+Click shows estimated cost without purchase +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}This will buy a copy of a train including all cars. Click this button and then on a train inside or outside the depot. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}This will buy a copy of a road vehicle. Click this button and then on a road vehicle inside or outside the depot. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}This will buy a copy of a ship. Click this button and then on a ship inside or outside the depot. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}This will buy a copy of an aircraft. Click this button and then on an aircraft inside or outside the hangar. Ctrl+Click will share the orders. Shift+Click shows estimated cost without purchase @@ -3494,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Road Vehicle STR_REPLACE_VEHICLE_SHIP :Ship STR_REPLACE_VEHICLE_AIRCRAFT :Aircraft +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Vehicles in use +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Column with vehicles that you own +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Available vehicles +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Column with vehicles available for replacement + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Select the engine type to replace STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Select the new engine type you would like to use in place of the left selected engine type @@ -3618,7 +3668,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacity STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer Credits: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Maintenance interval: {LTBLUE}{COMMA}days{BLACK} Last maintenance: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Maintenance interval: {LTBLUE}{COMMA}{NBSP}days{BLACK} Last maintenance: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Maintenance interval: {LTBLUE}{COMMA}%{BLACK} Last maintenance: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Increase maintenance interval by 10. Ctrl+Click increases maintenance interval by 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Decrease maintenance interval by 10. Ctrl+Click decreases maintenance interval by 5 @@ -3765,7 +3815,7 @@ STR_ORDER_GO_TO_NEAREST_DEPOT :Go to nearest d STR_ORDER_GO_TO_NEAREST_HANGAR :Go to nearest hangar STR_ORDER_CONDITIONAL :Conditional order jump STR_ORDER_SHARE :Share orders -STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Insert a new order before the highlighted order, or add to end of list. Ctrl makes station orders 'full load any cargo', waypoint orders 'non-stop' and depot orders 'maintenance'. 'Share orders' or Ctrl lets this vehicle share orders with the selected vehicle. Clicking a vehicle copies the orders from that vehicle. A depot order disables automatic maintenance of the vehicle +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Insert a new order before the highlighted order, or add to end of list. Ctrl makes station orders 'full load any cargo', waypoint orders 'non-stop', and depot orders 'maintenance'. 'Share orders' or Ctrl lets this vehicle share orders with the selected vehicle. Clicking a vehicle copies the orders from that vehicle. A depot order disables automatic maintenance of the vehicle STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Show all vehicles that share this schedule @@ -3854,8 +3904,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(stay for {STRI STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(travel for {STRING}, not timetabled) STR_TIMETABLE_STAY_FOR :and stay for {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :and travel for {STRING} -STR_TIMETABLE_DAYS :{COMMA} day{P "" s} -STR_TIMETABLE_TICKS :{COMMA} tick{P "" s} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}day{P "" s} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}This timetable will take {STRING} to complete STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}This timetable will take at least {STRING} to complete (not all timetabled) @@ -3866,7 +3916,7 @@ STR_TIMETABLE_STATUS_EARLY :{BLACK}This veh STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}This timetable has not yet started STR_TIMETABLE_STATUS_START_AT :{BLACK}This timetable will start at {STRING} -STR_TIMETABLE_STARTING_DATE :{BLACK}Start date +STR_TIMETABLE_STARTING_DATE :{BLACK}Start Date STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}Select a date as starting point of this timetable. Ctrl+Click sets the starting point of this timetable and distributes all vehicles sharing this order evenly based on their relative order, if the order is completely timetabled STR_TIMETABLE_CHANGE_TIME :{BLACK}Change Time @@ -4093,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Excavati STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... already at sea level STR_ERROR_TOO_HIGH :{WHITE}... too high STR_ERROR_ALREADY_LEVELLED :{WHITE}... already flat +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Afterwards the bridge above it would be too high. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Can't change company name... @@ -4119,7 +4170,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... too STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... too close to another town STR_ERROR_TOO_MANY_TOWNS :{WHITE}... too many towns STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... there is no more space on the map -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}The town will not build roads. You can enable building of roads via Advanced Settings->Economy->Towns +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}The town will not build roads. You can enable building of roads via Settings->Environment->Towns STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Road work in progress STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Can't delete this town...{}A station or depot is referring to the town or a town owned tile can't be removed STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... there is no suitable place for a statue in the center of this town @@ -4143,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... fore STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... can only be built above the snow-line STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... can only be built below the snow-line +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}There were no suitable places for '{STRING}' industries +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Change the map generation parameters to get a better map + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Can't build railroad station here... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Can't build bus station... @@ -4279,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Must dem STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Can't start and end in the same spot STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Bridge heads not at the same level STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Bridge is too low for the terrain +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Bridge is too high for this terrain. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Start and end must be in line STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... ends of bridge must both be on land STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... bridge too long @@ -4422,7 +4477,7 @@ STR_BASEMUSIC_NONE_DESCRIPTION :A music pack wi # Town building names STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Tall office block STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_1 :Office block -STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Small block of apartments +STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Small apartment building STR_TOWN_BUILDING_NAME_CHURCH_1 :Church STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :Large office block STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Town houses @@ -4439,7 +4494,7 @@ STR_TOWN_BUILDING_NAME_STADIUM_1 :Stadium STR_TOWN_BUILDING_NAME_OLD_HOUSES_1 :Old houses STR_TOWN_BUILDING_NAME_COTTAGES_1 :Cottages STR_TOWN_BUILDING_NAME_HOUSES_1 :Houses -STR_TOWN_BUILDING_NAME_FLATS_1 :Apartments +STR_TOWN_BUILDING_NAME_FLATS_1 :Apartment Building STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_2 :Tall office block STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_2 :Shops and offices STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_3 :Shops and offices @@ -4457,7 +4512,7 @@ STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Piggy-Bank ##id 0x4800 # industry names STR_INDUSTRY_NAME_COAL_MINE :Coal Mine -STR_INDUSTRY_NAME_POWER_STATION :Power Station +STR_INDUSTRY_NAME_POWER_STATION :Power Plant STR_INDUSTRY_NAME_SAWMILL :Sawmill STR_INDUSTRY_NAME_FOREST :Forest STR_INDUSTRY_NAME_OIL_REFINERY :Oil Refinery @@ -4795,9 +4850,9 @@ STR_VEHICLE_NAME_AIRCRAFT_POWERNAUT_HELICOPTER :Powernaut Helic ##id 0x8800 # Formatting of some strings -STR_FORMAT_DATE_TINY :{STRING}-{STRING}-{NUM} +STR_FORMAT_DATE_TINY :{1:STRING}/{0:STRING}/{2:NUM} STR_FORMAT_DATE_SHORT :{STRING} {NUM} -STR_FORMAT_DATE_LONG :{STRING} {STRING} {NUM} +STR_FORMAT_DATE_LONG :{1:STRING} {0:STRING}, {2:NUM} STR_FORMAT_DATE_ISO :{2:NUM}-{1:STRING}-{0:STRING} STR_FORMAT_BUOY_NAME :{TOWN} Buoy @@ -4843,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (hidden) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt index 13a478ec75..3e2be61c33 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Amuza Trinkaĵo # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} pasaĝero{P "" j} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}pasaĝero{P "" j} STR_QUANTITY_COAL :{WEIGHT_LONG} da karbo -STR_QUANTITY_MAIL :{COMMA} sako{P "" j} da poŝto +STR_QUANTITY_MAIL :{COMMA}{NBSP}sako{P "" j} da poŝto STR_QUANTITY_OIL :{VOLUME_LONG} da oleo -STR_QUANTITY_LIVESTOCK :{COMMA} bruto{P "" j} -STR_QUANTITY_GOODS :{COMMA} kesto{P "" j} da varoj +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}bruto{P "" j} +STR_QUANTITY_GOODS :{COMMA}{NBSP}kesto{P "" j} da varoj STR_QUANTITY_GRAIN :{WEIGHT_LONG} da greno STR_QUANTITY_WOOD :{WEIGHT_LONG} da ligno STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} da fera erco STR_QUANTITY_STEEL :{WEIGHT_LONG} da ŝtalo -STR_QUANTITY_VALUABLES :{COMMA} sako{P "" j} da valoraĵoj +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}sako{P "" j} da valoraĵoj STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} da kupra erco STR_QUANTITY_MAIZE :{WEIGHT_LONG} da maizo STR_QUANTITY_FRUIT :{WEIGHT_LONG} da fruktoj -STR_QUANTITY_DIAMONDS :{COMMA} sako{P "" j} da diamantoj +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}sako{P "" j} da diamantoj STR_QUANTITY_FOOD :{WEIGHT_LONG} da manĝaĵoj STR_QUANTITY_PAPER :{WEIGHT_LONG} da papero -STR_QUANTITY_GOLD :{COMMA} sako{P "" j} da oro +STR_QUANTITY_GOLD :{COMMA}{NBSP}sako{P "" j} da oro STR_QUANTITY_WATER :{VOLUME_LONG} da akvo STR_QUANTITY_WHEAT :{WEIGHT_LONG} da tritiko STR_QUANTITY_RUBBER :{VOLUME_LONG} da kaŭĉuko STR_QUANTITY_SUGAR :{WEIGHT_LONG} da sukero -STR_QUANTITY_TOYS :{COMMA} ludilo{P "" j} -STR_QUANTITY_SWEETS :{COMMA} sako{P "" j} da dolĉaĵoj +STR_QUANTITY_TOYS :{COMMA}{NBSP}ludilo{P "" j} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}sako{P "" j} da dolĉaĵoj STR_QUANTITY_COLA :{VOLUME_LONG} da kolao STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} da sukerŝpinaĵo STR_QUANTITY_BUBBLES :{COMMA} veziko{P "" j} @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}NENI STR_ABBREV_ALL :{TINY_FONT}ĈIU # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} pasaĝero{P "" j} -STR_BAGS :{COMMA} sako{P "" j} -STR_TONS :{COMMA} tuno{P "" j} -STR_LITERS :{COMMA} litro{P "" j} -STR_ITEMS :{COMMA} peco{P "" j} -STR_CRATES :{COMMA} kesto{P "" j} +STR_PASSENGERS :{COMMA}{NBSP}pasaĝero{P "" j} +STR_BAGS :{COMMA}{NBSP}sako{P "" j} +STR_TONS :{COMMA}{NBSP}tuno{P "" j} +STR_LITERS :{COMMA}{NBSP}litro{P "" j} +STR_ITEMS :{COMMA}{NBSP}peco{P "" j} +STR_CRATES :{COMMA}{NBSP}kesto{P "" j} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Malhelblua @@ -192,35 +192,44 @@ STR_COLOUR_GREY :Griza STR_COLOUR_WHITE :Blanka # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}ĉp -STR_UNITS_POWER_METRIC :{COMMA}ĉp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ĉp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ĉp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tuno{P "" j} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tuno{P "" j} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tuno{P "" j} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litro{P "" j} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galono{P "" j} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" j} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings +STR_LIST_FILTER_TITLE :{BLACK}Filtroteksto: STR_LIST_FILTER_OSKTITLE :{BLACK}Entajpu filtrotekston. STR_LIST_FILTER_TOOLTIP :{BLACK}Enigu ŝlosilvorton laŭ kiu filtri la liston +STR_TOOLTIP_GROUP_ORDER :{BLACK}Elektu gruparanĝo STR_TOOLTIP_SORT_ORDER :{BLACK}Elektu vicordo (deira/alira) STR_TOOLTIP_SORT_CRITERIA :{BLACK}Elektu ordigaj kondiĉoj STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Selektu kriteriojn por filtrado @@ -231,13 +240,20 @@ STR_BUTTON_RENAME :{BLACK}Alinomi STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Fermu fenestron STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Fenestra titolo - tiru por movi la fenestron STR_TOOLTIP_SHADE :{BLACK}Minimumigi fenestron - montri nur la titolbreton -STR_TOOLTIP_STICKY :{BLACK}Marku ke ne fermiĝu la fenestro per la 'ĉiujn fenestrojn fermu'-klavo +STR_TOOLTIP_STICKY :{BLACK}Marku ke ne fermiĝu la fenestro per la 'ĉiujn fenestrojn fermu'-klavo. Konservu kiel defaŭlta stato per Ctrl-klavo + alklaki. STR_TOOLTIP_RESIZE :{BLACK}Klaku kaj tiru por reformi la fenestron STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Ŝaltu inter granda kaj malgranda fenestro STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Skrolbreto - skrolas la liston supren/malsupren STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Skrolbreto - skrolas la liston dekstren/maldekstren STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Detruu konstruaĵojn ktp. sur landkvadrato. Stir elektas diagonale la areon. Shift aktivas/malaktivas la konstruaĵon/montraĵon estiman koston +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Montru kaŝita +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Montru kaŝita +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Montru kaŝita +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Montru kaŝita + + # Query window STR_BUTTON_DEFAULT :{BLACK}Normo STR_BUTTON_CANCEL :{BLACK}Nuligu @@ -275,6 +291,8 @@ STR_SORT_BY_LENGTH :Longo STR_SORT_BY_LIFE_TIME :Resta vivo STR_SORT_BY_TIMETABLE_DELAY :Horara malfruo STR_SORT_BY_FACILITY :Stacidoma tipo +STR_SORT_BY_WAITING_TOTAL :Tuta atendata ŝarĝo +STR_SORT_BY_WAITING_AVAILABLE :Disponebla atendata ŝarĝo STR_SORT_BY_RATING_MAX :Plejalta ŝarĝotakso STR_SORT_BY_RATING_MIN :Malplejalta ŝarĝotakso STR_SORT_BY_ENGINE_ID :Maŝina ID (klasika ordigo) @@ -299,6 +317,8 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Montru s STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Montri stacidomoliston de la kompanio. STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Montru kompaniajn financajn informojn STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Montru ĝeneralajn kompaniajn informojn +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Montru rakontolibron +STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Montru celoj-liston STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Montru grafikojn STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Montru kompanian tabelon STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Pagu konstruadon de nova industrio aŭ listigu ĉiujn industriojn @@ -346,7 +366,8 @@ STR_SCENEDIT_FILE_MENU_QUIT :Forlasi ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Ludaj opcioj -STR_SETTINGS_MENU_CONFIG_SETTINGS :Avancitaj agordoj +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Agordoj +STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Ludo skripto agordoj STR_SETTINGS_MENU_NEWGRF_SETTINGS :Agordoj de NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Ebloj por travidebleco STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Urbonomoj montriĝas @@ -371,6 +392,7 @@ STR_FILE_MENU_EXIT :Fermu # map menu STR_MAP_MENU_MAP_OF_WORLD :Mondomapo STR_MAP_MENU_EXTRA_VIEW_PORT :Plia vidujo +STR_MAP_MENU_LINGRAPH_LEGEND :Legendo de ŝarĝfluo STR_MAP_MENU_SIGN_LIST :Afiŝa listo ############ range for town menu starts @@ -448,6 +470,7 @@ STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Pligrandiga ekr STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Ekranfoto defaŭlte zoma STR_ABOUT_MENU_GIANT_SCREENSHOT :Tuta karto ekranfoto STR_ABOUT_MENU_ABOUT_OPENTTD :Pri 'OpenTTD' +STR_ABOUT_MENU_SPRITE_ALIGNER :Bildeto-liniigilo STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Montri/ne montri limigujo ############ range ends here @@ -673,12 +696,14 @@ STR_SMALLMAP_CAPTION :{WHITE}Mapo - { STR_SMALLMAP_TYPE_CONTOURS :Konturoj STR_SMALLMAP_TYPE_VEHICLES :Veturiloj STR_SMALLMAP_TYPE_INDUSTRIES :Industrioj +STR_SMALLMAP_TYPE_ROUTEMAP :Ŝarĝfluo STR_SMALLMAP_TYPE_ROUTES :Vojiroj STR_SMALLMAP_TYPE_VEGETATION :Verdaĵo STR_SMALLMAP_TYPE_OWNERS :Posedantoj STR_SMALLMAP_TOOLTIP_SHOW_LAND_CONTOURS_ON_MAP :{BLACK}Montru landkonturojn sur la mapo STR_SMALLMAP_TOOLTIP_SHOW_VEHICLES_ON_MAP :{BLACK}Montru veturilojn sur la mapo STR_SMALLMAP_TOOLTIP_SHOW_INDUSTRIES_ON_MAP :{BLACK}Montru industriojn sur la mapo +STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK} Montru Ŝarĝfluon en mapo STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Montru transportstratojn sur la mapo STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Montru verdaĵojn sur la mapo STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Montru landposedantojn sur la mapo @@ -716,6 +741,7 @@ STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLA STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Vidu aŭ ne vidu urbonomojn sur la mapo STR_SMALLMAP_CENTER :{BLACK}Centrigi la mapeton al la nuna loko STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STRING} ({NUM}) +STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING} STR_SMALLMAP_COMPANY :{TINY_FONT}{COMPANY} STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} STR_SMALLMAP_DISABLE_ALL :{BLACK}Malaktivigu ĉiujn @@ -884,10 +910,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Kartvela Lario STR_GAME_OPTIONS_CURRENCY_IRR :Irana Rialo (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Stratveturiloj STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Elektu stratflankon kie veturu veturiloj STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Veturu maldekstre @@ -941,6 +963,12 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ekrana m STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Elektu uzotan ekranan montrograndon STR_GAME_OPTIONS_RESOLUTION_OTHER :alia +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interfacgrandeco + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normala +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Duobla grandeco +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Kvaroble grandeco + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Baza grafikaro STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selektu la uzendan bazgrafikaron STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} mankanta{P "" j}/koruptita{P "" j} dosiero{P "" j} @@ -1037,13 +1065,16 @@ STR_CITY_APPROVAL_HOSTILE :Gastige STR_WARNING_NO_SUITABLE_AI :{WHITE}Neniu taŭga AI estas disponebla...{}Kelkaj AI-oj estas elŝuteblaj per la sistemo 'Enreta Enhavo'. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Avancitaj agordoj +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Agordoj +STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtroteksto: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Etendu ĉio STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(neniu ekspliko disponeble) STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Defaŭlta valoro: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE :{LTBLUE}Tipo de agordo: {ORANGE}{STRING} +STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorio: +STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tipo: STR_CONFIG_SETTING_RESTRICT_BASIC :Bazniveloj agordoj STR_CONFIG_SETTING_RESTRICT_ADVANCED :Altnivelaj agordoj STR_CONFIG_SETTING_RESTRICT_ALL :Altnivelaj agordoj / ĉiu agordoj @@ -1051,10 +1082,11 @@ STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :agordoj kiuj ma STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Agordoj kiu malsimilas al via novajuldaj agordoj STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Ĉiuj agordoj -STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Ludo agordojn (stokite en savoj, nur tuŝas novajn ludojn) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Ludo agordojn (stokite en savoj; nur tuŝas novajn ludojn) STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Ludo agordojn (stokite en savo; tuŝas nur kuranta ludo) -STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Kompanio agordojn (stokite en savoj, nur tuŝas novajn ludojn) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Kompanio agordojn (stokite en savoj; nur tuŝas novajn ludojn) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Kompanio agordojn (stokita en savu; tuŝas nur kuranta kompanio) +STR_CONFIG_SETTINGS_NONE :{WHITE}- Neniu - STR_CONFIG_SETTING_OFF :Malaktiva STR_CONFIG_SETTING_ON :Aktiva @@ -1083,7 +1115,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Ŝanĝu nivelon STR_CONFIG_SETTING_RECESSIONS :Recesioj: {STRING} STR_CONFIG_SETTING_DISASTERS :Katastrofoj: {STRING} -STR_CONFIG_SETTING_AUTOSLOPE :Permesu terecigon sub konstruaĵoj, trakoj, ktp. (aŭtodeklivo): {STRING} +STR_CONFIG_SETTING_AUTOSLOPE :Permesu terecigon sub konstruaĵoj, trakoj, ktp.: {STRING} STR_CONFIG_SETTING_CATCHMENT :Permesu pli realgrandaj kaptoregionoj: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Permesu forigon de pli da urbaj stratoj, pontoj ktp: {STRING} STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} kvadrato{P 0 "" j} @@ -1110,6 +1142,8 @@ STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :meza STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :fora fino STR_CONFIG_SETTING_AUTOSCROLL :Ŝovu fenestron se la muso estas ĉe la rando: {STRING} STR_CONFIG_SETTING_AUTOSCROLL_DISABLED :Malaktiva +STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Ĉefa vidujo +STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Ĉiu vidujo STR_CONFIG_SETTING_BRIBE :Permesu subaĉeti la lokajn estrojn: {STRING} STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Permesu aĉeti ekskluzivajn transportrajtojn: {STRING} STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Permesi fondusante lokan stratan rekonstruo: {STRING} @@ -1134,6 +1168,8 @@ STR_CONFIG_SETTING_ORDER_REVIEW_ON :de ĉiuj veturi STR_CONFIG_SETTING_WARN_INCOME_LESS :Avertu se gajno de veturilo negativas: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Veturiloj neniam eluziĝas: {STRING} STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Aŭtomate anstataŭu veturilon se malnoviĝas: {STRING} +STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} monato{P 0 "" j} antaŭe +STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} monato{P 0 "" j} post STR_CONFIG_SETTING_AUTORENEW_MONEY :Minimuma mono por anstataŭado: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL :Montru enloĝantaron en urbnomindikilo: {STRING} @@ -1141,7 +1177,7 @@ STR_CONFIG_SETTING_LAND_GENERATOR :Landgenerilo: { STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Originale STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Neĝregiona alto: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Nereguleco de tereno (nur por TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Nereguleco de tereno: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Tre Regule STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Regule STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Neregule @@ -1165,7 +1201,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Viola STR_CONFIG_SETTING_REVERSE_SCROLLING :Inversigu skroldirekton: {STRING} STR_CONFIG_SETTING_SMOOTH_SCROLLING :Glata rulumado de vidujo: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP :Montru mezuran konsilbalonon ĉe uzo de konstruiloj: {STRING} -STR_CONFIG_SETTING_LIVERIES :Montru kompaniajn liverojn: {STRING} +STR_CONFIG_SETTING_LIVERIES :Montru veturiltipe specifajn liverojn: {STRING} STR_CONFIG_SETTING_LIVERIES_NONE :Neniu STR_CONFIG_SETTING_LIVERIES_OWN :Propra kompanio STR_CONFIG_SETTING_LIVERIES_ALL :Ĉiuj kompanioj @@ -1200,7 +1236,7 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :neniu agoj STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :ĉiuj ne-konstruado agoj STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :ĉiuj sed pejzaĝo ŝanĝanta agoj STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :ĉiuj agoj -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Uzu la avancitan veturilaron: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Uzu grupoj en veturilara listo: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS :Uzu ŝarg-indikilojn: {STRING} STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Montru horaron laŭ tikoj anstataŭ laŭ tagoj: {STRING} STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Montru alvenojn kaj forirojn sur horaroj: {STRING} @@ -1224,10 +1260,10 @@ STR_CONFIG_SETTING_SOUND_AMBIENT :Ĉirkaŭaĵo: { STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Ludu ĉirkaŭaĵa sonefektoj de pejzaĝo, industrioj kaj urboj STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Malaktivu fondan konstruon kiam decaj veturiloj ne estas disponebla: {STRING} -STR_CONFIG_SETTING_MAX_TRAINS :Trajna maksimumo por ĉiu ludanto: {STRING} -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Stratveturila maksimumo por ĉiu ludanto: {STRING} -STR_CONFIG_SETTING_MAX_AIRCRAFT :Aviadila maksimumo por ĉiu ludanto: {STRING} -STR_CONFIG_SETTING_MAX_SHIPS :Ŝipa maksimumo por ĉiu ludanto: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS :Trajna maksimumo por ĉiu kompanio: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Stratveturila maksimumo por ĉiu kompanio: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT :Aviadila maksimumo por ĉiu kompanio: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS :Ŝipa maksimumo por ĉiu kompanio: {STRING} STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Malebligu trajnojn por la komputilo: {STRING} STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :Malebligu stratveturilojn por la komputilo: {STRING} @@ -1356,7 +1392,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Pluraj L STR_INTRO_GAME_OPTIONS :{BLACK}Ludaj Opcioj STR_INTRO_HIGHSCORE :{BLACK}Altpoentara tabelo -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Avancitaj agordoj +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Agordoj STR_INTRO_NEWGRF_SETTINGS :{BLACK}Agordoj de NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Provu Enretan Enhavon STR_INTRO_QUIT :{BLACK}Forlasi @@ -1375,7 +1411,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Elektu ' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Montru ludajn opciojn STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Montru altpoentara tabelo -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Montru avancitajn agordojn +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Montru agordojn STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Montri NewGRF-agordojn STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Serĉi pri nova kaj ĝisdatigita enhavo por elŝuti STR_INTRO_TOOLTIP_QUIT :{BLACK}Fermu 'OpenTTD' @@ -1408,7 +1444,7 @@ STR_ABANDON_SCENARIO_QUERY :{YELLOW}Ĉu vi # Cheat window STR_CHEATS :{WHITE}Filudaĵoj STR_CHEATS_TOOLTIP :{BLACK}La kvadratetoj indikas ĉu vi jam uzis la filudaĵon antaŭe. -STR_CHEATS_WARNING :{BLACK}Atentu! Vi perfidos viajn kunulajn konkurantojn. Memoru ke io tia rememoriĝos eterne. +STR_CHEATS_WARNING :{BLACK}Atentu! Vi preskaŭ perfidos viajn kunulajn konkurantojn. Memoru ke io tia rememoriĝos eterne STR_CHEAT_MONEY :{LTBLUE}Altigu monkvanton per {CURRENCY_LONG} STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Ludanta kiel kompanio: {ORANGE}{COMMA} STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magia forigilo (forviŝu industriojn, nemovebla objektoj): {ORANGE}{STRING} @@ -1430,8 +1466,8 @@ STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Montru t STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Montru stratveturilajn kolorskemojn STR_LIVERY_SHIP_TOOLTIP :{BLACK}Montru ŝipkolorajn skemojn STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Montru aviadilajn kolorskemojn -STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Elektu la unuan koloron por la elektita skemo -STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Elektu la duan koloron por la elektita skemo +STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Elektu la unuan koloron por la elektita skemo. Ctrl+klaki aktivigos tiu koloron je ĉiu skemoj +STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Elektu la duan koloron por la elektita skemo. Ctrl+klaki aktivigos tiu koloron je ĉiu skemoj STR_LIVERY_PANEL_TOOLTIP :{BLACK}Elektu la kolorskemon ŝanĝendan, aŭ plurajn per CTRL+click. Alklaku kvadraton por uzi/ne uzi skemon STR_LIVERY_DEFAULT :Normala Koloro @@ -1471,17 +1507,17 @@ STR_FACE_FEMALE_TOOLTIP :{BLACK}Elektu v STR_FACE_NEW_FACE_BUTTON :{BLACK}Nova Vizaĝo STR_FACE_NEW_FACE_TOOLTIP :{BLACK}Kreu hazardan novan vizaĝon STR_FACE_ADVANCED :{BLACK}Altnivela -STR_FACE_ADVANCED_TOOLTIP :{BLACK}Altnivela elekto de vizaĝo. +STR_FACE_ADVANCED_TOOLTIP :{BLACK}Altnivela elekto de vizaĝo STR_FACE_SIMPLE :{BLACK}Simpla -STR_FACE_SIMPLE_TOOLTIP :{BLACK}Simpla elekto de vizaĝo. +STR_FACE_SIMPLE_TOOLTIP :{BLACK}Simpla elekto de vizaĝo STR_FACE_LOAD :{BLACK}Ŝargi STR_FACE_LOAD_TOOLTIP :{BLACK}Ŝargi favoratan vizaĝon. STR_FACE_LOAD_DONE :{WHITE}Via favorata vizaĝo estis ŝargita de la agord-dosiero de OpenTTD.. STR_FACE_FACECODE :{BLACK}Ludanta vizaĝnumero -STR_FACE_FACECODE_TOOLTIP :{BLACK}Rigardi kaŭ elekti ludantan vizaĝnumeron. -STR_FACE_FACECODE_CAPTION :{WHITE}Rigardi kaŭ elekti ludantan vizaĝnumeron. -STR_FACE_FACECODE_SET :{WHITE}Nova vizaĝnumera kodo estas konservita. -STR_FACE_FACECODE_ERR :{WHITE}Ne povas konservi ludantan vizaĝnumeron - devas esti nombro inter 0 kaj 4,294,967,295! +STR_FACE_FACECODE_TOOLTIP :{BLACK}Rigardi kaj/aŭ elekti vizaĝnumeron kompani-prezidanta +STR_FACE_FACECODE_CAPTION :{WHITE}Rigardi kaj/aŭ elekti vizaĝnumeron presidantan +STR_FACE_FACECODE_SET :{WHITE}Nova vizaĝnumera kodo aktivitas. +STR_FACE_FACECODE_ERR :{WHITE}Ne povas aktivigi ludantan vizaĝnumeron - devas esti nombro inter 0 kaj 4,294,967,295! STR_FACE_SAVE :{BLACK}Konservi STR_FACE_SAVE_TOOLTIP :{BLACK}Konservi favoratan vizaĝon STR_FACE_SAVE_DONE :{WHITE}Tiu ĉi vizaĝo estos konservita kiel via favorata en la agord-dosiero de OpenTTD. @@ -1561,7 +1597,7 @@ STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP :{BLACK}Refreŝi STR_NETWORK_SERVER_LIST_FIND_SERVER :{BLACK}Trovu servilon STR_NETWORK_SERVER_LIST_FIND_SERVER_TOOLTIP :{BLACK}Serĉu reton por servilo STR_NETWORK_SERVER_LIST_ADD_SERVER :{BLACK}Aldonu servilon -STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP :{BLACK}Aldonas servilon al la listo kiu ĉiam estos kontrolata pri kurantaj ludoj. +STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP :{BLACK}Aldonas servilon al la listo kiu ĉiam estos kontrolata pri kurantaj ludoj STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Startu servilon STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP :{BLACK}Startu propran servilon @@ -1583,7 +1619,7 @@ STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} ko STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Kompania maksimumo: STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}Limu la servilon al certa kvanto da kompanioj STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} spektanto{P "" j} -STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Spektanta maksimumo: +STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Maksimumo spektanta: STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS_TOOLTIP :{BLACK}Limigu la servilon al certa kvanto da spektantoj STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Parolata lingvo: STR_NETWORK_START_SERVER_LANGUAGE_TOOLTIP :{BLACK}Aliaj ludantoj scios kiu lingvo paroliĝas en la servilo @@ -1660,14 +1696,14 @@ STR_NETWORK_CONNECTING_CAPTION :{WHITE}Konektan ############ Leave those lines in this order!! STR_NETWORK_CONNECTING_1 :{BLACK}(1/6) Konektante.. -STR_NETWORK_CONNECTING_2 :{BLACK}(2/6) Rajtigante.. -STR_NETWORK_CONNECTING_3 :{BLACK}(3/6) Atendante.. -STR_NETWORK_CONNECTING_4 :{BLACK}(4/6) Elŝutante mapon.. -STR_NETWORK_CONNECTING_5 :{BLACK}(5/6) Procesante datenojn.. -STR_NETWORK_CONNECTING_6 :{BLACK}(6/6) Registante.. +STR_NETWORK_CONNECTING_2 :{BLACK}(2/6) Rajtigante... +STR_NETWORK_CONNECTING_3 :{BLACK}(3/6) Atendante... +STR_NETWORK_CONNECTING_4 :{BLACK}(4/6) Elŝutante mapon... +STR_NETWORK_CONNECTING_5 :{BLACK}(5/6) Procesante datenojn... +STR_NETWORK_CONNECTING_6 :{BLACK}(6/6) Registante... -STR_NETWORK_CONNECTING_SPECIAL_1 :{BLACK}Kaptante ludinformojn.. -STR_NETWORK_CONNECTING_SPECIAL_2 :{BLACK}Kaptante kompaniajn informojn.. +STR_NETWORK_CONNECTING_SPECIAL_1 :{BLACK}Kaptante ludinformojn... +STR_NETWORK_CONNECTING_SPECIAL_2 :{BLACK}Kaptante kompaniajn informojn... ############ End of leave-in-this-order STR_NETWORK_CONNECTING_WAITING :{BLACK}{NUM} kliento{P "" j} antaŭ vi STR_NETWORK_CONNECTING_DOWNLOADING_1 :{BLACK}{BYTES} ĝis nun elŝutiĝis @@ -1708,7 +1744,7 @@ STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}Uzu ĉi STR_COMPANY_VIEW_JOIN :{BLACK}Anigi STR_COMPANY_VIEW_JOIN_TOOLTIP :{BLACK}Anigi kaj ludi kiel ĉi tiu kompanio. STR_COMPANY_VIEW_PASSWORD :{BLACK}Pasvorto -STR_COMPANY_VIEW_PASSWORD_TOOLTIP :{BLACK}Pasvorte protektu vian kompanion por eviti ke eksteruloj aliĝu. +STR_COMPANY_VIEW_PASSWORD_TOOLTIP :{BLACK}Pasvorte protektu vian kompanion por eviti ke eksteruloj aliĝu STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}Agordu kompanian pasvorton # Network chat @@ -1857,15 +1893,15 @@ STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ne, ferm # Transparency settings window STR_TRANSPARENCY_CAPTION :{WHITE}Ebloj por travidebleco -STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Baskuligi travideblecon de staciosignoj. Stir+Klak por ŝlosi. -STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Baskuligi travideblecon de arboj. Stir+Klak por ŝlosi. -STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Baskuligi travideblecon de domoj. Stir+Klak por ŝlosi. -STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Baskuligi travideblecon de industrioj. Stir+Klak por ŝlosi. -STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Baskuligi travideblecon de konstrueblaĵojn kiel stacidomoj, garaĝoj kaj vojpunktoj. Stir+Klak por ŝlosi. -STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Baskuligi travideblecon de pontoj. Stir+Klak por ŝlosi. -STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Baskuligi travideblecon de aĵoj kiel lumturoj kaj antenoj. Stir+Klak por ŝlosi. -STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Baskuligi travideblecon de katenarion. Stir+Klak por ŝlosi. -STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Baskuligi travideblecon de ŝarĝindikiloj. Stir+Klak por ŝlosi. +STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Baskuligi travideblecon de signoj. Ctrl+Klak por ŝlosi +STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Baskuligi travideblecon de arboj. Ctrl+Klak por ŝlosi +STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Baskuligi travideblecon de domoj. Ctrl+Klak por ŝlosi +STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Baskuligi travideblecon de industrioj. Ctrl+Klaku por ŝlosi +STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Baskuligi travideblecon de konstrueblaĵojn kiel stacidomoj, garaĝoj kaj vojpunktoj. Ctrl+Klaku por ŝlosi +STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Baskuligi travideblecon de pontoj. Ctrl+Klaku por ŝlosi +STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Baskuligi travideblecon de aĵoj kiel lumturoj kaj antenoj. Ctrl+Klaku por ŝlosi +STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Baskuligi travideblecon de katenarion. Ctrl+Klaku por ŝlosi +STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Baskuligi travideblecon de ŝarĝindikiloj. Ctrl+Klaku por ŝlosi # Linkgraph legend window @@ -1893,16 +1929,16 @@ STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Konstruado de E STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Konstruado de Unurela Fervojo STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Konstruado de Magleva Fervojo -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Konstrui trakon. Ctrl baskuligas konstrui/forviŝi fervojan konstruon. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Konstrui trakon per Aŭtomata Relreĝimo. Stir baskuligas konstrui/forviŝi fervojan konstruon. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Konstrui trajngaraĝon (por konstrui kaj prizorgi trajnojn) -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Ŝanĝi relon al vojpunkto. Stir-butono permesas ligi vojpunktojn. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Konstrui fervojostacion. Premu Stir-butonon por ligi staciojn. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Konstruu signalojn -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Konstruu fervojan ponton -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Konstruu fervojtunelon +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Konstrui trakon. Ctrl baskuligas konstrui/forviŝi fervojan konstruon. Majuskliga klavo baskuligas konstrui/(kosto)taksi +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Konstrui trakon per Aŭtomata fervoj-reĝimo. Ctrl baskuligas konstrui/forviŝi fervojan konstruon. La majuskliga klavo baskuligas konstrui/(kosto)taksi +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Konstrui trajngaraĝon (pri konstrui kaj prizorgi trajnojn). La majuskliga klavo baskuligas konstrui/(kosto)taksi +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Ŝanĝi relo al vojpunkto. Ctrl-klavo permesas ligi vojpunktojn. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Konstrui fervojostacion. Premu Stir-butonon por ligi staciojn. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Konstruu signalojn. Ctrl baskuligas inter semaforaj/trafiklumaj signoj{}Treni konstruas rektan lineon da fervojaj signoj. Per Ctrl, signoj konstruiĝas ĝis la sekvonta kuniĝo{}Ctrl+Klaki malfermas fenestron por elekti trafiklumojn. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Konstruu fervojan ponton. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Konstruu fervojtunelon. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Elekti inter konstruado/forigado de trako, signaliloj, vojpunktoj kaj stacidomoj. Tenu Stir-klavon por forigi relojn de vojpunktoj kaj stacioj. -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Transigu reltipon +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Transigu/Plibonigi reltipon. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi STR_RAIL_NAME_RAILROAD :Fervojo STR_RAIL_NAME_ELRAIL :Elektrofervojo @@ -1956,18 +1992,18 @@ STR_BRIDGE_TUBULAR_SILICON :Tuba, Silicia # Road construction toolbar STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Vojkonstruado STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Konstruado de tramvojoj -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Konstruu vojeron -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Konstrui stratveturilan garaĝon (por konstrui kaj prizorgi veturilojn) -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Konstrui tramveturilan garaĝon (por konstrui kaj prizorgi veturilojn) -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Konstrui bushaltejon. Premu Stir-butonon por ligi haltejojn. -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Konstrui pasaĝerotraman stacion. Premu Stir-butonon por ligi staciojn. -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Konstrui kamionan ŝarĝejon. Premu Stir-butonon por ligi ŝarĝejojn. -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Konstrui frajttraman stacion. Premu Stir-butonon por ligi staciojn. +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Konstruu vojeron. Ctrl baskuligas inter konstrui/mal-konstrui vojeron. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Konstrui stratveturilan garaĝon (por konstrui kaj prizorgi veturilojn). Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Konstrui tramveturilan garaĝon (por konstrui kaj prizorgi veturilojn). Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Konstrui bushaltejon. Premu Ctrl-klavo por ligi haltejojn. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Konstrui pasaĝerotraman stacion. Premu Ctrl-klavo por ligi staciojn. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Konstrui kamionan ŝarĝejon. Premu Ctrl-klavon por ligi ŝarĝejojn. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Konstrui frajttraman stacion. Premu Ctrl-klavon por ligi staciojn. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Aktivigi/Malaktivigi unudirektajn stratojn -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Konstruu vojponton -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Konstrui tramponton -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Konstruu vojtunelon -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Konstrui tramtunelon. +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Konstruu vojponton. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Konstrui tramponton. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Konstruu vojtunelon. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Konstrui tramtunelon. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Ĉu konstrui ĉu forigi por vojkonstruado # Road depot construction window @@ -1981,22 +2017,22 @@ STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Bushalte STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Elektu bushaltejan direkton STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Ŝarĝstacia Direkto STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Elektu ŝarĝstacian direkton -STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Direkto de Pasaĝera Tramo +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Direkto de Pasaĝera Tramstacio STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Elekti direkton de pasaĝerotramstacio -STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Direkto de Frajttramo +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Direkto de Frajttram-stacio STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Elekti direkton de frajttramstacio # Waterways toolbar (last two for SE only) STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Konstruado de akvovojoj STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Akvovojoj -STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Konstruu kanalojn. -STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Konstruu kluzojn -STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Konstrui ŝipgaraĝon (por aĉeti kaj prizorgi ŝipojn) -STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Konstrui ŝipdokon. Premu Stir-butonon por ligi dokojn. -STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Meti buon kiu povas esti uzata kiel vojpunkto. -STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Kunstrui akvedukton +STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Konstruu kanalojn. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Konstruu kluzojn. Baskuli inter konstrui/(kosto)taksi per maljuskliga klavo +STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Konstrui ŝipgaraĝon (por aĉeti kaj prizorgi ŝipojn). Baskuli inter konstrui/(kosto)taksi per maljuskliga klavo +STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Konstrui ŝipdokon. Premu Stir-butonon por ligi dokojn. Baskuli inter konstrui/(kosto)taksi per maljuskliga klavo +STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Meti buon kiu povas esti uzata kiel vojpunkto. Baskuli inter konstrui/(kosto)taksi per maljuskliga klavo +STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Kunstrui akvedukton. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Difinu akvoregionon.{}Faru kanalon, krom se CTRL estas tenata ĉe marnivelo, kiukaze ĝi anstataŭe transfluas al la ĉirkaŭaĵo -STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Loku riverojn. +STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Metu riverojn # Ship depot construction window STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Direkto de la ŝipgaraĝo @@ -2007,7 +2043,7 @@ STR_STATION_BUILD_DOCK_CAPTION :{WHITE}Haveno # Airport toolbar STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Flughavenoj -STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Konstrui flughavenon. Premu Stir-butonon por ligi flughavenojn. +STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Konstrui flughavenon. Prermu Ctrl-klavon per ligi flughavenojn. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo # Airport construction window STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Elekto de Flughaveno @@ -2034,14 +2070,14 @@ STR_STATION_BUILD_NOISE :{BLACK}Bruon ge # Landscaping toolbar STR_LANDSCAPING_TOOLBAR :{WHITE}Landaspekto -STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Malaltigu landangulon -STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Altigu landangulon -STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Ebenigu landon -STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Aĉetu landon por onta uzo +STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Malaltigu landangulon. Per tiri, la unua angulo malaltigos, kaj la regiono tirata nivelos same. Ctrl-klavo nivelos angule la tiratan regionon. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Altigu landangulon. Per tiri, la unua angulo altigos, kaj la regiono tirata nivelos same. Ctrl-klavo nivelos angule la tiratan regionon. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Ebenigu landon ĝis la nivelo de unua eleka angulo. Per Ctrl+tiri, la regiono tirata nivelos same angule. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo +STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Aĉetu landon por onta uzo. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi # Object construction window STR_OBJECT_BUILD_CAPTION :{WHITE}Elekto de Objekto -STR_OBJECT_BUILD_TOOLTIP :{BLACK}Eletku objekton por konstrui +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Elektu objekton por konstrui. La majuskliga klavo baskuligas inter konstrui/(kosto)taksi STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Elektu klason de la objekto konstrui STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Antaŭvido de la objekto STR_OBJECT_BUILD_SIZE :{BLACK}Grandeco: {GOLD}{NUM} x {NUM} kaheloj @@ -2051,9 +2087,9 @@ STR_OBJECT_CLASS_TRNS :Transigantoj # Tree planting window (last two for SE only) STR_PLANT_TREE_CAPTION :{WHITE}Arboj -STR_PLANT_TREE_TOOLTIP :{BLACK}Elektu arbo-tipon por plant +STR_PLANT_TREE_TOOLTIP :{BLACK}Elektu arbo-tipon por planti. Kiam la regiono jam havas arbojn, aliaj arb-tipoj plantiĝos STR_TREES_RANDOM_TYPE :{BLACK}Arboj de hazardaj tipoj -STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Metu arbojn de hazardaj tipoj +STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Metu arbojn de hazardaj tipoj. Baskulu inter konstrui/(kosto)taksi per maljuskliga klavo STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Hazardaj Arboj STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Hazarde plantu arbojn en la tuta lando @@ -2066,15 +2102,15 @@ STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Malgrand STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Kreu landon hazarde STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Kreu novan scenaron STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Reigu landaspekton -STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Forviŝu ĉiujn posedaĵojn de la ludanto el la mapo +STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Forviŝu ĉiujn posedaĵojn de la kompanio disde la mapo STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Reigu Landaspekton -STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Ĉu vi certas ke vi volas forviŝi ĉiujn posedaĵojn de la ludanto? +STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Ĉu vi certas ke vi volas forviŝi ĉiujn posedaĵojn de la kompanio? # Town generation window (SE) STR_FOUND_TOWN_CAPTION :{WHITE}Urba Generado STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Nova Urbo -STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Fondi novan urbon +STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Fondi novan urbon. Maljuskliga klavo+klaki nur montrigas taksitan koston STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Hazarda Urbo STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Fondi urbon en hazarda loko STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Multaj hazardaj urboj @@ -2226,7 +2262,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Kompanie poseda STR_ABOUT_OPENTTD :{WHITE}Pri OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Origina kopirajto {COPYRIGHT} 1995 Chris Sawyer, Ĉiuj rajtoj rezervitaj STR_ABOUT_VERSION :{BLACK}OpenTTD-versio {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 La teamo de OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 La teamo de OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Konservu Ludon @@ -2246,7 +2282,7 @@ STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Konservu STR_SAVELOAD_LOAD_BUTTON :{BLACK}Ŝarĝu STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Ŝarĝu la elektan ludon STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Detaloj de la Ludo -STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Ne haveblas informoj. +STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Ne disponeblas informoj STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING} @@ -2342,7 +2378,7 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Supren STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Movu la elektitan NewGRF-dosieron supren en la listo STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Malsupren STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Movu la elektitan NewGRF-dosieron malsupren en la listo -STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Listo da instalitaj NewGRF-dosieroj. Alklaku dosieron por ŝanĝi la parametrojn +STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Listo da instalitaj NewGRF-dosieroj STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Agordu parametrojn STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Baskuligi paletron @@ -2391,7 +2427,6 @@ STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Sekvanta STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Iru al bildeto STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Antaŭa bildeto STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Movu ĉirkaŭ la bildeton, ŝanĝante la X kaj Y distancojn -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X distanco: {NUM}, Y distanco: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Elektu bildeto STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Elektu bildeton ie el la ekrano @@ -2412,13 +2447,13 @@ STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} devi STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} bezonas OpenTTD versio {STRING} aŭ pli bona STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :la GRF-dosiero estas farita por traduki STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Tro da NewGRF-oj estas ŝarĝataj -STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} enhavas rompitan bildeton. Ĉiuj rompitaj bildetoj aspektos kiel ruĝaj demandsignoj (?). -STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}La nuntempe uza baza grafikaĵaro estas manka nombro da bildetoj.{} Bonvolu renovigu la baza grafikaĵaro. +STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} enhavas rompitan bildeton. Ĉiuj rompitaj bildetoj aspektos kiel ruĝaj demandsignoj (?) +STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}La nuntempe uza baza grafikaĵaro mankas kelkajn da bildetoj.{}Bonvolu renovigu la baza grafikaĵaro STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} estis malaktivata per {STRING} # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Atentu! -STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Vi ŝanĝos kurantan ludon. Tio povas kraŝigi la ludon OpenTTD.{}Ĉu vi nepre certas, ke vi volas fari tion? +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Vi ŝanĝos kurantan ludon. Tio povas kraŝigi la ludon OpenTTD aŭ povas rompi ludstaton. Ne fajlu cim-raportojn pri iaj posteuloj.{}Ĉu vi nepre certas, ke vi volas fari tion? STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Dosiero ne aldoneblas: duobla GRF ID STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Ne troviĝis apartena dosiero (ŝarĝis taŭgan GRF) @@ -2436,7 +2471,7 @@ STR_NEWGRF_LIST_MISSING :{RED}Mankaj dos # NewGRF 'it's broken' warnings -STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' donas malĝustan informon. +STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' donas malĝustan informon STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}'Revoko' {1:HEX} revenis nekonatan/malvalidan rezulton {2:HEX} # 'User removed essential NewGRFs'-placeholders for stuff without specs @@ -2470,7 +2505,7 @@ STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Enigu no STR_TOWN_DIRECTORY_CAPTION :{WHITE}Urboj STR_TOWN_DIRECTORY_NONE :{ORANGE}-Neniu - STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) -STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Urbonomoj - klaku nomon por centri vidon ĉe la urbo. Stir+Klak por malfermi novan vidujon ĉe la urba loko. +STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Urbonomoj - klaku nomon por centri vidpukto ĉe la urbo. Ctrl+Klak por malfermi novan vidujon ĉe la urba loko STR_TOWN_POPULATION :{BLACK}Monda enloĝantaro: {COMMA} # Town view window @@ -2527,7 +2562,8 @@ STR_GOALS_TEXT :{ORANGE}{STRING # Goal question window -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subvencioj @@ -2536,13 +2572,13 @@ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_NONE :{ORANGE}- Neniu - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Servoj subvenciataj: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} de {STRING} al {STRING}{YELLOW} ({COMPANY}{YELLOW}, ĝis {DATE_SHORT}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klaku servon por centri vidon ĉe la industrio/urbo. Stir+Klak por malfermi novan vidujon ĉe la loko. +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klaku servon por centri vidpunkto ĉe la industrio/urbo. Ctrl+Klak por malfermi novan vidujon ĉe la loko # Story book window # Station list window -STR_STATION_LIST_TOOLTIP :{BLACK}Stacionomoj - klaku nomon por centri vidon ĉe la stacio. Stir+Klak por malfermi novan vidujon ĉe la stacioloko. -STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Tenu la CTRL-klavon por elekti plurajn erojn +STR_STATION_LIST_TOOLTIP :{BLACK}Stacionomoj - klaku nomon por centri vidpunkto ĉe la stacio. Ctrl+Klak por malfermi novan vidujon ĉe la stacioloko +STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Tenu Ctrl-klavon por elekti plurajn erojn STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} Stacio{P "" j} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} @@ -2623,9 +2659,9 @@ STR_FINANCES_LOAN_TITLE :{WHITE}Prunto STR_FINANCES_MAX_LOAN :{WHITE}Maksimuma prunto: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}Pruntu {CURRENCY_LONG} -STR_FINANCES_BORROW_TOOLTIP :{BLACK}Grandigu prunton +STR_FINANCES_BORROW_TOOLTIP :{BLACK}Grandigu prunton. Ctrl+Klak prunteprenas maksimume STR_FINANCES_REPAY_BUTTON :{BLACK}Repagu {CURRENCY_LONG} -STR_FINANCES_REPAY_TOOLTIP :{BLACK}Repagu pruntparton +STR_FINANCES_REPAY_TOOLTIP :{BLACK}Repagu pruntparton. Ctrl+klak malpruntigas maksimume. # Company view STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM} @@ -2647,7 +2683,7 @@ STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Konstrui STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Vidu HQ STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Rigardi kompanian administraciejon STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Relokigu HQ -STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Rekonstruu kompanian ĉefkonstruaĵon aliloke por 1% de kompanivaloro +STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Rekonstruu kompanian ĉefkonstruaĵon aliloke por 1% de kompanivaloro. Tenu maljuskliga klavo + Klak por (kost)taksi sen rekonstrui ĉefkonstruaĵon STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nova Vizaĝo STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Elektu novan vizaĝon por la manaĝanto @@ -2660,8 +2696,8 @@ STR_COMPANY_VIEW_PRESIDENT_NAME_TOOLTIP :{BLACK}Ŝanĝu STR_COMPANY_VIEW_BUY_SHARE_BUTTON :{BLACK}Aĉetu 25%-an dividaĵon STR_COMPANY_VIEW_SELL_SHARE_BUTTON :{BLACK}Vendu 25%-an dividaĵon -STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}Aĉetu 25%-an dividaĵon en ĉi tiu kompanio -STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Vendu 25%-an dividaĵon en ĉi tiu kompanio +STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}Aĉetu 25%-an dividaĵon en ĉi tiu kompanio. Tenu la maljuskliga klavo por (kosto)taksi sen aĉeti dividaĵojn +STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Vendu 25%-an dividaĵon en ĉi tiu kompanio. Tenu la maljuskliga klavo por (enspezo)taksi sen vendi dividaĵojn STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Kompania Nomo STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nomo de la Manaĝanto @@ -2676,7 +2712,7 @@ STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- Neniu STR_INDUSTRY_DIRECTORY_ITEM :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}){YELLOW} ({COMMA}% transportite) STR_INDUSTRY_DIRECTORY_ITEM_TWO :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}/{CARGO_LONG}{STRING}){YELLOW} ({COMMA}%/{COMMA}% transportite) STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY} -STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Industrionomoj - klaku nomon por centri vidon ĉe la industrio. Stir+Klak por malfermi novan vidujon ĉe la loko. +STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Industrionomoj - klaku nomon por centri vidon ĉe la industrio. Ctrl+Klak por malfermi novan vidujon ĉe la loko # Industry view STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY} @@ -2698,7 +2734,7 @@ STR_INDUSTRY_VIEW_PRODUCES_CARGO :{BLACK}Produkta STR_INDUSTRY_VIEW_PRODUCES_CARGO_CARGO :{BLACK}Produktas: {YELLOW}{STRING}{STRING}, {STRING}{STRING} ############ range for produces ends -STR_CONFIG_GAME_PRODUCTION :{WHITE}Ŝanĝu produktadon +STR_CONFIG_GAME_PRODUCTION :{WHITE}Ŝanĝu produktadon (multoble de 8, ĝis 2040) STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Ŝanĝu produktan nivelon (procento, limigo je 800%) # Vehicle lists @@ -2718,7 +2754,7 @@ STR_VEHICLE_LIST_AVAILABLE_TRAINS :Haveblaj Trajno STR_VEHICLE_LIST_AVAILABLE_ROAD_VEHICLES :Haveblaj Veturiloj STR_VEHICLE_LIST_AVAILABLE_SHIPS :Haveblaj Ŝipoj STR_VEHICLE_LIST_AVAILABLE_AIRCRAFT :Haveblaj Aviadiloj -STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP :{BLACK}Vidu liston da ĉiuj haveblaj maŝinoj por ĉi tiu veturilspeco. +STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP :{BLACK}Vidu liston da ĉiuj haveblaj maŝinoj por ĉi tiu veturilspeco STR_VEHICLE_LIST_MANAGE_LIST :{BLACK}Manaĝu liston STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Sendu instrukciojn al ĉiuj veturiloj en la listo @@ -2746,7 +2782,7 @@ STR_GROUP_DEFAULT_ROAD_VEHICLES :Sengrupaj strat STR_GROUP_DEFAULT_SHIPS :Sengrupaj ŝipoj STR_GROUP_DEFAULT_AIRCRAFTS :Sengrupaj aviadiloj -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupoj - klaku grupon por listigi ĉiujn veturilojn de tiu ĉi grupo +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupoj - klaku grupon por listigi ĉiujn veturilojn de tiu ĉi grupo. Trenu/faligu grupojn por ordigi ĝin STR_GROUP_CREATE_TOOLTIP :{BLACK}Klaku por krei grupon STR_GROUP_DELETE_TOOLTIP :{BLACK}Viŝu la selektitan grupon STR_GROUP_RENAME_TOOLTIP :{BLACK}Alinomi la elektitan grupon @@ -2798,10 +2834,10 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Aĉeti V STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Aĉeti Ŝipon STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Aĉeti Aviadilon -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan trajnveturilon -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan stratveturilon -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan ŝipon -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan aviadilon +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan trajnveturilon. Montri taksitaj kostoj sen aĉeti per maljuskliga klavo + Klaki +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan stratveturilon. Montri taksitaj kostoj sen aĉeti per maljuskliga klavo + Klaki +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan ŝipon. Montri taksitaj kostoj sen aĉeti per maljuskliga klavo + Klaki +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Aĉeti la emfazitan aviadilon. Montri taksitaj kostoj sen aĉeti per maljuskliga klavo + Klaki STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Alinomi STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Alinomi @@ -2813,6 +2849,16 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Alinomi STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Alinomi ŝiptipon STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Alinomi aviadiltipon +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Kaŝu +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Kaŝu +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Kaŝu + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Montru +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Montru +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Montru +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Montru + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Alinomi trajnan veturiltipon STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Alinomi stratveturilan tipon STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Alinomi ŝiptipon @@ -2829,7 +2875,7 @@ STR_DEPOT_VEHICLE_TOOLTIP :{BLACK}{ENGINE} STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} veturilo{P "" j}{STRING} STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) -STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Trajnoj - klaku trajnon por scii pli, tiru veturilon por aldoni aŭ forigi de trajno +STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Trajnoj - klaku trajnon maldekstre por scii pli, tiru veturilon por aldoni aŭ /origi (dis)de trajno. Ctrl-premi influas ĉiom da sekvantajn trajnerojn STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Veturiloj - dekstra-alklaku veturilojn por informoj STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Ŝipoj - dekstra-alklaku ŝipon por informoj STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aviadiloj - dekstra-alklaku aviadilon por informoj @@ -2866,10 +2912,10 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Klonu Ve STR_DEPOT_CLONE_SHIP :{BLACK}Klonu Ŝipon STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Klonu aviadilon -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Aĉeti kopion de trajno kun ĉiuj vagonoj. Klaku ĉi tiun butonon kaj poste trajnon en aŭ ekster la garaĝo. Stir+Klak kunhavigas la itineron. -STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Aĉeti kopion de stratveturilo. Klaku ĉi tiun butonon kaj poste veturilon en aŭ ekster la garaĝo. Stir+Klak kunhavigas la itineron. -STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Aĉeti kopion de ŝipo. Klaku ĉi tiun butonon kaj poste ŝipon en aŭ ekster garaĝo. Stir+Klak kunhavigas la itineron. -STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Aĉeti kopion de la aviadilo. Klaku ĉi tiun butonon kaj poste aviadilon en aŭ ekster la hangaro. Stir+Klak kunhavigas la ordonojn. +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Aĉeti kopion de trajno kun ĉiuj vagonoj. Klaku ĉi tiun butonon kaj poste trajnon en aŭ ekster la garaĝo. Ctrl+Klak kunhavigas la itineron. Maljuskliga klavo+klaku montras taksatan koston sen aĉeti +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Aĉeti kopion de stratveturilo. Klaku ĉi tiun butonon kaj poste veturilon en aŭ ekster la garaĝo. Ctrl+Klak kunhavigas la itineron. Maljuskliga klavo+klaku montras taksatan koston sen aĉeti +STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Aĉeti kopion de ŝipo. Klaku ĉi tiun butonon kaj poste ŝipon en aŭ ekster garaĝo. Ctrl+Klak kunhavigas la itineron. Maljuskliga klavo+klaku montras taksatan koston sen aĉeti +STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Aĉeti kopion de la aviadilo. Klaku ĉi tiun butonon kaj poste aviadilon en aŭ ekster la hangaro. Ctrl+Klak kunhavigas la ordonojn. Maljuskliga klavo+klaku montras taksatan koston sen aĉeti STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Centri ĉefvidon ĉe la trajngaraĝon. Stir+Klak por malfermi novan vidujon ĉe la trajngaraĝa loko. STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Centri ĉefvidon ĉe la stratveturilan garaĝon. Stir+Klak por malfermi novan vidujon ĉe la garaĝa loko. @@ -2915,6 +2961,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Stratveturilo STR_REPLACE_VEHICLE_SHIP :Ŝipo STR_REPLACE_VEHICLE_AIRCRAFT :Aviadilo + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Elektu maŝinon por anstataŭi STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Elektu novan maŝinon por uzi anstataŭ la maldekstre elektitan @@ -2943,19 +2990,19 @@ STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Ĉe aŭt # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} -STR_VEHICLE_VIEW_TRAIN_LOCATION_TOOLTIP :{BLACK}Centre vidu trajnan lokon en la ĉefvido -STR_VEHICLE_VIEW_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Centre vidu la veturilon en la ĉefvido -STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Centre vidu ŝipon en ĉefvido -STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Centre vidu aviadilon en la ĉefvido +STR_VEHICLE_VIEW_TRAIN_LOCATION_TOOLTIP :{BLACK}Centre vidu trajnan lokon en la ĉefvido. Ctrl+klak sekvas trajnon en la ĉefvido +STR_VEHICLE_VIEW_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Centre vidu la veturilon en la ĉefvido. Ctrl+klak sekvas veturlilon en la ĉefvido +STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Centre vidu ŝipon en ĉefvido. Ctrl+klak sekvas ŝipon en la ĉefvido +STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Centre vidu aviadilon en la ĉefvido. Ctrl-klak sekvas aviadilon en la ĉefvido STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Sendi trajnon al garaĝo. Stir+Klak nur prizorgos STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Sendi veturilon al garaĝo. Stir+Klak nur prizorgos STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Sendi ŝipon al garaĝo. Stir+Klak nur prizorgos STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Sendi aviadilon al hangaro. Stir+Klak nur prizorgos -STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Aĉeti kopion de la trajno kun ĉiuj vagonoj. Stir+Klak por kunhavigi la itineron. -STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Aĉeti kopion de la stratveturilo. Stir+Klak por kunhavigi la itineron. -STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Aĉeti kopion de la ŝipo. Stir+Klak por kunhavigi la itineron. +STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Aĉeti kopion de la trajno kun ĉiuj vagonoj. Ctrl+Klak por kunhavigi la itineron +STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Aĉeti kopion de la stratveturilo. Stir+Klak por kunhavigi la itineron. Montri taksatan koston sen aĉeti per majuskliga klavo + klak +STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Aĉeti kopion de la ŝipo. Stir+Klak por kunhavigi la itineron. Montri taksatan koston sen aĉeti per majuskliga klavo + klak STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Aĉeti kopion de la aviadilo. Stir+Klak por kunhavigi la itinero. Maj+klak montros la antaŭvidatan koston sen jam aĉetin. STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Igu trajnon iri malgraŭ signalo @@ -2978,10 +3025,10 @@ STR_VEHICLE_VIEW_ROAD_VEHICLE_SHOW_DETAILS_TOOLTIP :{BLACK}Montru s STR_VEHICLE_VIEW_SHIP_SHOW_DETAILS_TOOLTIP :{BLACK}Montru ŝipajn detalojn STR_VEHICLE_VIEW_AIRCRAFT_SHOW_DETAILS_TOOLTIP :{BLACK}Montru aviadilajn detalojn -STR_VEHICLE_VIEW_TRAIN_STATE_START_STOP_TOOLTIP :{BLACK}Nuna trajna ago - klaku por haltigi/starti la trajnon -STR_VEHICLE_VIEW_ROAD_VEHICLE_STATE_START_STOP_TOOLTIP :{BLACK}Nuna veturila ago - klaku ĉi tie por haltigi/starti veturilon -STR_VEHICLE_VIEW_SHIP_STATE_START_STOP_TOOLTIP :{BLACK}Nuna ŝipa ago - klaku ĉi tie por haltigi/starti ŝipon -STR_VEHICLE_VIEW_AIRCRAFT_STATE_START_STOP_TOOLTIP :{BLACK}Nuna aviadila ago - klaku ĉi tie por haltigi/starti aviadilon +STR_VEHICLE_VIEW_TRAIN_STATE_START_STOP_TOOLTIP :{BLACK}Nuna trajna ago - klaku por haltigi/starti la trajnon. Ctrl+klak rulumas al trajncelo +STR_VEHICLE_VIEW_ROAD_VEHICLE_STATE_START_STOP_TOOLTIP :{BLACK}Nuna veturila ago - klaku ĉi tie por haltigi/starti veturilon. Ctrl+klak rulumas al veturilcelo +STR_VEHICLE_VIEW_SHIP_STATE_START_STOP_TOOLTIP :{BLACK}Nuna ŝipa ago - klaku ĉi tie por haltigi/starti ŝipon. Ctrl+klak rulumas al ŝipcelo +STR_VEHICLE_VIEW_AIRCRAFT_STATE_START_STOP_TOOLTIP :{BLACK}Nuna aviadila ago - klaku ĉi tie por haltigi/starti aviadilon. Ctrl+klak rulumas al aviadilcelo # Messages in the start stop button in the vehicle view STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Ŝarĝante / Deŝarĝante @@ -3034,10 +3081,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Enhaveco STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transigaj Kreditoj: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Prizorga intervalo: {LTBLUE}{COMMA}tagoj{BLACK} Lasta prizorgo: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Prizorga intervalo: {LTBLUE}{COMMA}{NBSP}tagoj{BLACK} Plej malfrua prizorgo: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Prizorga intervalo: {LTBLUE}{COMMA}%{BLACK} Lasta prizorgo: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Pliigu prizorgintervalon -STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Malpliigu prizorgintervalon +STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Multoblas prizorgintervalon po 10. Ctrl+klak multoblas prizorgintervalon po 5. +STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Malpliigu prizorgintervalon po 10. Ctrl-klak malpliigas prizorgintervalon po 5 STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Ŝanĝi la tipo de servon intervalon STR_VEHICLE_DETAILS_DEFAULT :Defaŭlto @@ -3098,7 +3145,7 @@ STR_ORDERS_CAPTION :{WHITE}{VEHICLE STR_ORDERS_TIMETABLE_VIEW :{BLACK}Horaro STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Montri horarovidujon -STR_ORDERS_LIST_TOOLTIP :{BLACK}Ordonlisto - klaku ordonon por elekti. Stir+Klak rulumas al la stacio. +STR_ORDERS_LIST_TOOLTIP :{BLACK}Ordonlisto - klaku ordonon por elekti. Ctrl+Klak rulumas al la celstacio STR_ORDER_INDEX :{COMMA}:{NBSP} STR_ORDER_TEXT :{STRING} {STRING} {STRING} @@ -3129,7 +3176,7 @@ STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Ŝanĝi STR_ORDER_REFIT :{BLACK}Transformu STR_ORDER_REFIT_TOOLTIP :{BLACK}Elektu kargospecon por transformo en ĉi tiu ordono. CTRL+klako por forigi transforminstrukcion -STR_ORDER_REFIT_AUTO :{BLACK}Aŭtotransformi +STR_ORDER_REFIT_AUTO :{BLACK}Aŭtotransformi al stacio STR_ORDER_DROP_REFIT_AUTO :Malŝanĝa ŝarĝo STR_ORDER_DROP_REFIT_AUTO_ANY :Haveblaj ŝarĝoj @@ -3174,7 +3221,7 @@ STR_ORDER_GO_TO_NEAREST_DEPOT :Iru al la plej STR_ORDER_GO_TO_NEAREST_HANGAR :Iru al la plej proksima hangaro. STR_ORDER_CONDITIONAL :Kondiĉe transsaltu ordonon STR_ORDER_SHARE :Kunhavu ordonojn -STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Enigi novan ordonon antaŭ la elektita ordono, aŭ aldoni fine de la listo. +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Enigi novan ordonon antaŭ la elektita ordono, aŭ aldoni fine de la listo. Kun Ctrl, trajnordonoj estos 'plenŝargi ia kargo', vojpunkt-ordonoj estos 'ne-halti' kaj depotordono estos 'servado'. Kun 'Komunordonoj'-butono aŭ Ctrl-klaku, ĉi tiu veturilo akiros komunajn ordonojn kun eklekta veturilo. Klaku veturilon por kopii ordonojn de tiu veturilo. Doni ia depotordono maleblas aŭtomatan servadon de ĉi tiu veturilo STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Montru ĉiujn veturilojn kiuj dividas ĉi tiun planon @@ -3218,17 +3265,17 @@ STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Ne malŝarĝu STR_ORDER_NO_UNLOAD_NO_LOAD :(Ne malŝarĝu kaj ne ŝarĝu) STR_ORDER_AUTO_REFIT :(Aŭtotransformi al {STRING}) -STR_ORDER_FULL_LOAD_REFIT :(Plena ŝarĝo kun aŭtotransformi al {STRING}) -STR_ORDER_FULL_LOAD_ANY_REFIT :(Plena ŝarĝo ciu tipo kun aŭtotransformi al {STRING}) +STR_ORDER_FULL_LOAD_REFIT :(Plena ŝarĝi kun aŭtotransformi al {STRING}) +STR_ORDER_FULL_LOAD_ANY_REFIT :(Plena ŝarĝi ia tipo kun aŭtotransformi al {STRING}) STR_ORDER_UNLOAD_REFIT :(Malŝarĝi kaj preni ŝarĝojn kun aŭtotransformi al {STRING}) STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Malŝarĝi kaj atendi por la plena ŝarĝon kun aŭtotransformi al {STRING}) -STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Malŝarĝi kaj atendi por ĉiu plenan ŝarĝon kun aŭtotransformi al {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Malŝarĝi kaj atendi por ian plenan ŝarĝon kun aŭtotransformi al {STRING}) STR_ORDER_TRANSFER_REFIT :(Transigi kaj preni ŝarĝojn kun aŭtotransformi al {STRING}) STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Transigi kaj atendi por la plenan ŝarĝon kun aŭtotransformi al {STRING}) -STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Transigi kaj atendi por ĉiu plenan ŝarĝon kun aŭtotransformi al {STRING}) +STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Transigi kaj atendi por ian plenan ŝarĝon kun aŭtotransformi al {STRING}) STR_ORDER_NO_UNLOAD_REFIT :(Ne malŝarĝi kaj preni ŝarĝojn kun aŭtotransformi al {STRING}) STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Ne malŝarĝi kaj atendi por la plenan ŝarĝon kun aŭtotransformi al {STRING}) -STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Ne malŝarĝi kaj atendi por ĉiu plenan ŝarĝon kun aŭtotransformi al {STRING}) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Ne malŝarĝi kaj atendi por ian plenan ŝarĝon kun aŭtotransformi al {STRING}) STR_ORDER_AUTO_REFIT_ANY :haveblaj ŝarĝoj @@ -3256,8 +3303,8 @@ STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Veturo (ne hora STR_TIMETABLE_TRAVEL_FOR :Veturu por {STRING} STR_TIMETABLE_STAY_FOR :kaj restu por {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :kaj veturu por {STRING} -STR_TIMETABLE_DAYS :{COMMA} tago{P "" j} -STR_TIMETABLE_TICKS :{COMMA} tiko{P "" j} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}tago{P "" j} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tiko{P "" j} STR_TIMETABLE_TOTAL_TIME :{BLACK} {STRING} necesas por plenumigi ĉi tiun horaron. STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Ĉi tio horaro postulos alemnaŭ {STRING} plenigi (ne ĉiu horarita) @@ -3488,7 +3535,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... tro STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... tro proksime al alia urbo STR_ERROR_TOO_MANY_TOWNS :{WHITE}... tro da urboj STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... spaco mankas sur la mapo -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}La urbo ne konstruos stratojn. Vi povas ebligi stratkonstruadon per Avancitaj Agordoj->Ekonomio->Urboj. +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}La urbo ne konstruos stratojn. Vi povas ebligi stratkonstruadon per Avancitaj Agordoj->Ekonomio->Urboj STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Aktivas vojprilaborado STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Ne povas forviŝi ĉi tiun urbon...{}Stacidomo aŭ tenejo rilatas al la urbon aŭ urban kahelon ne povas forviŝigi STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... ne jen estas konvenan lokon por statuo en la centro de ĉi tiu urbo @@ -3512,6 +3559,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... arba STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... nur konstruebla super la neĝlinio STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... nur konstruebla sub la neĝlinio + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Ne povas konstrui stacidomon ĉi tie... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Ne povas konstrui bushaltejon... @@ -4222,6 +4270,7 @@ STR_JUST_DATE_ISO :{DATE_ISO} STR_JUST_STRING :{STRING} STR_JUST_STRING_STRING :{STRING}{STRING} STR_JUST_RAW_STRING :{STRING} +STR_JUST_BIG_RAW_STRING :{BIG_FONT}{STRING} # Slightly 'raw' stringcodes with colour or size STR_BLACK_COMMA :{BLACK}{COMMA} @@ -4233,8 +4282,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt index a9b48cc13a..5c9fa78494 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -152,7 +152,7 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Kihisevad joogi # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} reisija{P "" t} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}reisija{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} kivisütt STR_QUANTITY_MAIL :{COMMA} postipakk{P "" i} STR_QUANTITY_OIL :{VOLUME_LONG} naftat @@ -305,6 +305,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Kerimisr STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Kerimisriba - kerib listi üles/alla STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Ruudul asuvate hoonete jms. lammutamine. Ctrl valib ala diagonaalselt. Shift valib ehitamise/hinna kuvamise režiimi +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Näita peidetud +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Näita peidetud +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Näita peidetud +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Näita peidetud + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Selle nupu lubamisega kuvatakse ka peidetud rongid +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Selle nupu lubamisega kuvatakse ka peidetud sõidukid +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Selle nupu lubamisega kuvatakse ka peidetud laevad +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Selle nupu lubamisega kuvatakse ka peidetud lennukid + # Query window STR_BUTTON_DEFAULT :{BLACK}Esialgne STR_BUTTON_CANCEL :{BLACK}Tühista @@ -418,7 +429,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Välju ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Mängu seadistus -STR_SETTINGS_MENU_CONFIG_SETTINGS :Põhjalik seadistus +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Seaded STR_SETTINGS_MENU_SCRIPT_SETTINGS :Tehismõistuse / Mängu skriptide seaded STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-i seadistus STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Läbipaistvuse seadistus @@ -973,10 +984,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruusia lari (G STR_GAME_OPTIONS_CURRENCY_IRR :Iraani rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Sõidukid STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Vali, kummal pool teed mootorsõidukid liiklevad STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vasakpoolne liiklus @@ -1030,6 +1037,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ekraanil STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Ekraanilahutuse valimine STR_GAME_OPTIONS_RESOLUTION_OTHER :muu +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_NORMAL :Tavaline +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Topeltsuurus +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Ruudu suurus + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Alusgraafika kogu STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Valib kasutatava alusgraafika kogu STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} puuduv{P "" ad}/viga{P ne sed} fail{P "" id} @@ -1123,6 +1137,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Väga tasane STR_TERRAIN_TYPE_FLAT :Tasane STR_TERRAIN_TYPE_HILLY :Künklik STR_TERRAIN_TYPE_MOUNTAINOUS :Mägine +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Soodustav STR_CITY_APPROVAL_TOLERANT :Salliv @@ -1130,8 +1145,8 @@ STR_CITY_APPROVAL_HOSTILE :Vaenulik STR_WARNING_NO_SUITABLE_AI :{WHITE}Sobiv tehismõistus puudub...{}Tehismõistuseid võib laadida Internetisisu laadimise aknast. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Põhjalik seadistus +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Seaded STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtri tekst: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Ava kõik STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Sulge kõik @@ -1147,9 +1162,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Ettevõtte sead STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Rühm: 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_BASIC :Põhilised seaded -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Täpsemad seaded -STR_CONFIG_SETTING_RESTRICT_ALL :Eksperdi seaded / kõik seaded +STR_CONFIG_SETTING_RESTRICT_BASIC :Põhilised (kuva vaid tähtsad seaded) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Edasijõudnud (enim seadeid) +STR_CONFIG_SETTING_RESTRICT_ALL :Ekspert (kuva kõik seaded, isegi veidrad) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Seaded mis erinevad vaikeväärtustest STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Seaded mis erinevad sinu valitud uue mängu seadetest @@ -1204,6 +1219,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Lülita sisse/v STR_CONFIG_SETTING_CITY_APPROVAL :Linnavalitusese suhtumine pinnase restruktureerimisse: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vali kui suurt mõju tekitavad müra ning keskkonna muudatused ettevõtte mainele ja edasistele ehitustoimingutele antud piirkonnas +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimaalne mägede kõrgus: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Sätesta kaardi maksimaalne lubatud mägede kõrgus +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_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_CATCHMENT :Reaalsemad veekogud: {STRING} @@ -1232,6 +1250,8 @@ STR_CONFIG_SETTING_INFLATION :Inflatsioon: {S STR_CONFIG_SETTING_INFLATION_HELPTEXT :Tekitab majandusinflatsiooni, kus hinnad tõusevad pisut kiiremini kui maksed STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maksimaalne silla pikkus: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maksimaalne pikkus ehitatud sildadele +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimaalne silla kõrgus: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimaalne sildade ehitamise kõrgus STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maksimaalne tunneli pikkus: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maksimaalne pikkus ehitatud tunnelitele STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Toorainetööstuse rajamise viis: {STRING} @@ -1328,6 +1348,7 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Graafikutes kas STR_CONFIG_SETTING_LANDSCAPE :Maastik: {STRING} STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Igal maastikul on oma kaubatüübid ja nõuded linnade kasvamiseks. Täpsemaid muudatusi saab teha NewGRFi ja mänguskriptide abil. STR_CONFIG_SETTING_LAND_GENERATOR :Maatekituse meetod: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Originaalne generaator sõltub alusgraafikast ja tekitab kindlaksmääratud maastikuvorme. TerraGenesis on Perlini müral põhinev generaator, mida saab täpsemalt seadistada STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Algupärane STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Maapinna tüüp: {STRING} @@ -1337,15 +1358,24 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Määrab, kui p STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimaalne kaugus kaardi servast naftatöötlustehase jaoks: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Naftatöötlemistehased ehitatakse ainult kaardi piirile, see on rannikul saartega mängitaval kaardil. STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Lumepiiri kõrgus: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Määra, millisel kõrgusel algab sub-arktiline maastik. Lumi mõjutab ka tööstuste loomist ja linna kasvamise tingimusi STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Maastiku järskus (ainult TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Vali mägede tihedus: Laugetel maastikel on vähem, laiema ulatusega mägesid. Mägistel maastikel on palju mägesid, mis võivad näha välja samasugused STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Väga lauge STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Lauge STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Järsk STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Väga järsk +STR_CONFIG_SETTING_VARIETY :Iseärasuste jaotus: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(TerraGenesis only) Määra, kas kaardil on nii mägiseid kui laugeid alasid. Kuna see muudab kaarti ainult laugemaks, peaksid teised sätted olema seadistatud mägisteks +STR_CONFIG_SETTING_RIVER_AMOUNT :Jõgede hulk: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Vali kui palju jõgesid luua STR_CONFIG_SETTING_TREE_PLACER :Puuasetusalgoritm: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Vali puude jaotuvus kaardil: 'Algupärane' paigutab puud vormitult hajutatuna, 'Täiustatud' paigutab need gruppidena STR_CONFIG_SETTING_TREE_PLACER_NONE :Pole STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Algupärane STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Täiustatud +STR_CONFIG_SETTING_ROAD_SIDE :Sõidukid: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Vali liikluse suund STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Kõrgustekaardi pööramine: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Vastu-päevapidi STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Päevapidi @@ -1643,7 +1673,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Kui jaamast A l STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Posti jaotuse viis: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Kui jaamast A viiakse jaama B umbes sama hulk posti, kui jaamast B jaama A, siis jaotus on «sümeetriline». Kui mõlemas suunas viiakse ükskõik, kui palju posti, siis jaotus on «asümeetriline». Kui posti liikumist ei jaotata, siis jaotus on «väljas». STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :SOOMUSTATUD kaubarühma jaotuse viis: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Parasvöötmes on SOOMUSTATUD kaubarühm väärisasjad, lähistroopikas teemantid, ning lähisartikas kuld. Neid saab lisada NewGRF-iga. Kui jaamast A viiakse jaama B umbes sama hulk kaupa, kui jaamast B jaama A, siis jaotus on «sümeetriline». Kui mõlemas suunas viiakse ükskõik, kui palju kaupa, siis jaotus on «asümeetriline». Kui posti liikumist ei jaotata, siis jaotus on «väljas». Lähisartikas valida asümeetriline või väljas, sest pankadest kulda tagasi ei tule. Parasvöötmes ja lähistroopikas on võimalik valida ka sümeetriline, sest pangad saadavad lähtepanka väärisasju tagasi. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Parasvöötmes on SOOMUSTATUD kaubarühm väärisasjad, lähistroopikas teemandid, ning lähisartikas kuld. Neid saab lisada NewGRF-iga. Kui jaamast A viiakse jaama B umbes sama hulk kaupa, kui jaamast B jaama A, siis jaotus on «sümeetriline». Kui mõlemas suunas viiakse ükskõik, kui palju kaupa, siis jaotus on «asümeetriline». Kui posti liikumist ei jaotata, siis jaotus on «väljas». Lähisartikas valida asümeetriline või väljas, sest pankadest kulda tagasi ei tule. Parasvöötmes ja lähistroopikas on võimalik valida ka sümeetriline, sest pangad saadavad lähtepanka väärisasju tagasi. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Teiste kaubarühmade jaotuse viis: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Kui jaamast A viiakse jaama B umbes sama hulk kaupa, kui jaamast B jaama A, siis jaotus on «sümeetriline». Kui mõlemas suunas viiakse ükskõik, kui palju kaupa, siis jaotus on «asümeetriline». Kui posti liikumist ei jaotata, siis jaotus on «väljas». Tavaliselt on head valikud «asümeetriline» ja «väljas». STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Jaotuse täpsus: {STRING} @@ -1692,11 +1722,23 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Meetermõõdust STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI-süsteem (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Kohandused +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Graafika STR_CONFIG_SETTING_SOUND :{ORANGE}Heliefektid STR_CONFIG_SETTING_INTERFACE :{ORANGE}Liides +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Üldine +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Vaateavad STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Ehitus +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Uudised / Nõunikud +STR_CONFIG_SETTING_COMPANY :{ORANGE}Ettevõte +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Raamatupidamine STR_CONFIG_SETTING_VEHICLES :{ORANGE}Sõidukid +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Füüsika STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Marsruutimine +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Piirangud +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastroofid / Õnnetused +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Maailma tekitamine +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Keskkond +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Linnavõimud STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Linnad STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Tööstused STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Kaubajaotus @@ -1750,7 +1792,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Mitmikm STR_INTRO_GAME_OPTIONS :{BLACK}Liidese seadistus STR_INTRO_HIGHSCORE :{BLACK}Punktitabel -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Põhjalik seadistus +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Seaded STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-i seadistus STR_INTRO_ONLINE_CONTENT :{BLACK}Aineste allalaadimine STR_INTRO_SCRIPT_SETTINGS :{BLACK}Arvuti seadistus @@ -1770,7 +1812,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Vali 'm STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Ava liidese seadistamine STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Ava punktitabel -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Ava põhjalik seadistamine +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ava seaded STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Ava NewGRF-i seadistamine STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Otsi allalaadimiseks uusi ja uuendatud aineseid STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Ava arvuti seadistamine @@ -1810,6 +1852,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Mängim STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Võlubuldooser (eemaldab tööstused, paiksed objektid): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnelid võivad üksteist läbida: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Reaktiivlennukid ei kuku (tihti) väikestel lennuväljadel alla: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Muuda maksimaalset kaardi kõrgust {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Muuda kaardi maksimaalset mägede kõrgust STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Parasvöötme maastik STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Arktiline maastik STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Troopiline maastik @@ -2701,7 +2745,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ettevõtte maa STR_ABOUT_OPENTTD :{WHITE}OpenTTD lisainfo STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Algne autorikaitse {COPYRIGHT} 1995 Chris Sawyer, kõik õigused kaitstud STR_ABOUT_VERSION :{BLACK}OpenTTD osa {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 OpenTTD meeskond +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD meeskond # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Mängu salvestamine @@ -2720,6 +2764,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Salvesta STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Salvesta mäng valitud nimega STR_SAVELOAD_LOAD_BUTTON :{BLACK}Jätka STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Jätka valitud mängu +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Laadi valitud kõrguskaart STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Mängust STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Andmed puuduvad STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2735,6 +2780,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Linnade sagedus: STR_MAPGEN_DATE :{BLACK}Algus: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Tööstuste sagedus: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimaalne kaardi kõrgus: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Tõsta maksimaalset kaardi mägede kõrgust ühe võrra +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Langeta maksimaalset kaardi mägede kõrgust ühe võrra STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Lumepiiri kõrgus: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Lumepiiri liigutamine ühe võrra üles STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Lumepiiri liigutamine ühe võrra alla @@ -2764,6 +2812,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Kõrguse STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Suurus: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Muuda maksimaalset kaardi kõrgust STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Muuda lumepiiri kõrgust STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Muuda algusaastat @@ -2818,6 +2867,7 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Liiguta STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}NewGRF-faili liigutamine loendis üles. STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Liiguta alla STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}NewGRF-faili liigutamine loendis alla +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Uuenda STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Uuenda NewGRF faile mille uuema versiooni oled installinud STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Nimekiri installitud NewGRF failidest @@ -2844,6 +2894,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Väljas STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Mitteühilduv selle OpenTTD versiooniga # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Salvesta eelseadistus +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Võimalike eeltöötluste nimekiri, vali üks et see kopeerida allpool asuvasse salvestuse nimesse +STR_SAVE_PRESET_TITLE :{BLACK}Sisesta eelseadistuse nimi +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Hetkel eelseadistusele valitud nimi +STR_SAVE_PRESET_CANCEL :{BLACK}Tühista +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Ära muuda eelseadistust +STR_SAVE_PRESET_SAVE :{BLACK}Salvesta +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Salvesta eelseadistus praegusele valitud nimele # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Muuda NewGRF parameetreid @@ -2875,7 +2933,10 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Eelmine STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolour/font sprites and wrapping around at the begin STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation of the currently selected sprite. The alignment is ignored when drawing this sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Liiguta spraiti , muutes X ja Y tasakaalu -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X tasakaal: {NUM}, Y tasakaal: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Lähtesta suhteline +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Lähtesta praegused suhtelised kõrvalekalded +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X kõrvalekalle: {NUM}, Y kõrvalekalle: {NUM} (Absoluutne) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X kõrvalekalle: {NUM}, Y kõrvalekalle: {NUM} (Suhteline) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Korja sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Korja sprite ükskõik kust ekraanil @@ -3048,7 +3109,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Teave STR_GOAL_QUESTION_CAPTION_WARNING :Hoiatus STR_GOAL_QUESTION_CAPTION_ERROR :Viga -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Tühista STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Ei @@ -3067,6 +3128,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Alusta uuesti STR_GOAL_QUESTION_BUTTON_POSTPONE :Lükka edasi STR_GOAL_QUESTION_BUTTON_SURRENDER :Anna alla STR_GOAL_QUESTION_BUTTON_CLOSE :Sulge +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Toetused @@ -3351,6 +3413,8 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Eemalda STR_GROUP_RENAME_TOOLTIP :{BLACK}Valitud rühma nime vahetamine STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klõpsa, et seda rühma üldise automaatse asenduse eest kaitsta +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Kustuta Grupp +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_REMOVE_ALL_VEHICLES :Eemalda kõik sõidukid @@ -3414,6 +3478,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Muuda mo STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Laeva tüübinime muutmine STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Lennuki tüübinime muutmine +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Peida +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Peida +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Peida +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Peida + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Näita +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Näita +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Näita +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Näita + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Sätesta rongitüübi peitmine/kuvamine +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Sätesta sõidukitüübi peitmine/kuvamine +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Sätesta laevatüübi peitmine/kuvamine +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Sätesta lennukitüübi peitmine/kuvamine + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Vaheta rongivaguni tüübinime STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Vaheta mootorsõiduki tüübinime STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Laeva tüübinime vahetamine @@ -3496,7 +3575,7 @@ STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Sa oled # Engine preview window STR_ENGINE_PREVIEW_CAPTION :{WHITE}Teade veovahendite tootjalt -STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Me töötasime välja uue {STRING}{P "" i}. Kas te oleksite huvitatud selle ainuõiguslikust katsetamisest järgneva aasta jooksul, et me saaksime jälgida kuidas see toimib? +STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Me töötasime välja uue {STRING}. Kas te oleksite huvitatud selle ainuõiguslikust katsetamisest järgneva aasta jooksul, et me saaksime jälgida kuidas see toimib? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :raudteevedur STR_ENGINE_PREVIEW_ROAD_VEHICLE :mootorsõiduk STR_ENGINE_PREVIEW_AIRCRAFT :lennuk @@ -3518,6 +3597,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Sõiduk STR_REPLACE_VEHICLE_SHIP :Laev STR_REPLACE_VEHICLE_AIRCRAFT :Õhusõiduk +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Kasutuses sõidukid +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Tulp sõidukitega, mida omad +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Saadaval sõidukid +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Tulp sõidukitega, mida on võimalik vahetada + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Vali asendatav veduritüüp STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Vali uus vedur, millega sa soovid vasakult valitud vedurit asendada. @@ -4117,6 +4201,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Kaevanda STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Juba jõutud meretasemeni STR_ERROR_TOO_HIGH :{WHITE}Liiga kõrge STR_ERROR_ALREADY_LEVELLED :{WHITE}... juba tasane +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Selle kohal olev sild oleks hiljem liiga kõrge # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Ei saa ettevõtte nime muuta... @@ -4167,6 +4252,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... mets STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... saab ehitada ainult ülespoole lumepiiri STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... saab ehitada ainult allapoole lumepiiri +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE} '{STRING}' tööstuste jaoks polnud sobivaid asukohti +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Muuda kaardigeneratsiooni parameetreid, et saada parem kaart + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Siia ei saa raudteejaama ehitada... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Siia ei saa bussijaama ehitada... @@ -4303,6 +4391,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Sild tul STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Ei saa alata ja lõppeda samas kohas STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Sillaotsad pole samal kõrgusel STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Sild on maastiku suhtes liiga madal +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Sild on selle maastiku jaoks liiga kõrge STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Algus ja lõpp peavad samal joonel olema STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... mõlemad sillaotsad peavad olema maal STR_ERROR_BRIDGE_TOO_LONG :{WHITE}.. sild on liiga pik @@ -4867,6 +4956,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (peidetud) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4902,8 +4992,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt index 49feb5ab71..7fc1313d5a 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -240,6 +240,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Skriðu STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Skriðu bjálki - drag listan til vinstru/høgru STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Ríva bygning niður etc. á einum fýrakanti av jørð. Ctrl velur økji á skrá. Shift skiftur millum at vísa Bygning og hvat tað kostar. +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Vanligt STR_BUTTON_CANCEL :{BLACK}Angra @@ -349,7 +352,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :Gevst ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spæl møguleikar -STR_SETTINGS_MENU_CONFIG_SETTINGS :Víðkaðir innstillingar STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Spæl script innstillingar STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF innstillingar STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gjøgnumskygnis møguleikar @@ -896,10 +898,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgiskur Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iranskur Rial ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Akfør STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Áset hvørja síðu á vegnum akfør skulu koyra á STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vinstrakoyring @@ -953,6 +951,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skerm up STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Vel hvørja skermupploysn tú vil brúka STR_GAME_OPTIONS_RESOLUTION_OTHER :annað + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base grafikk sett STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Vel ta base grafikk setti tú vil brúka STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} vantandi/oyðiløgd fíl{P a ir} @@ -1052,8 +1052,7 @@ STR_CITY_APPROVAL_HOSTILE :Fíggjindaligir STR_WARNING_NO_SUITABLE_AI :{WHITE}Einki hóskandi AI til taks...{}Tú kann heinta niður fleiri ymisk AI gjøgnum 'Online tilfar' kervi -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Víðkaðir innstillingar +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtur strongur: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Víðka alt STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Toga alt saman @@ -1561,7 +1560,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}Hópspæ STR_INTRO_GAME_OPTIONS :{BLACK}Spæli møguleikar STR_INTRO_HIGHSCORE :{BLACK}Hástigs yvirlit -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Víðkaðir innstillingar STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF innstillingar STR_INTRO_ONLINE_CONTENT :{BLACK}Kanna online tilfar STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spæli script innstillingar @@ -1581,7 +1579,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Vel 'toy STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Vís spæli møguleikar STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Vís hástigs yvirlit -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Vís víðkaðar innstillingar STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Vís NewGRF innstillingar STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kanna um nýtt og betra tilfar er klárt at heinta niður STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vís AI/Spæli script innstillingar @@ -2430,7 +2427,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ogn hjá fyrit STR_ABOUT_OPENTTD :{WHITE}Um OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Upprunalig upphavsrættindi {COPYRIGHT} 1995 Chris Sawyer, Øll rættindi umbiðin STR_ABOUT_VERSION :{BLACK}OpenTTD útgáva {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD toymi +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD toymi # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Goym spæl @@ -2717,7 +2714,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Kunning STR_GOAL_QUESTION_CAPTION_WARNING :Ávaring STR_GOAL_QUESTION_CAPTION_ERROR :Villa -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Angra STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nei @@ -2736,6 +2733,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Endurbyrja STR_GOAL_QUESTION_BUTTON_POSTPONE :Útset STR_GOAL_QUESTION_BUTTON_SURRENDER :Gev teg upp STR_GOAL_QUESTION_BUTTON_CLOSE :Lat aftur +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Stuðulsflutningur @@ -3049,6 +3047,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Navngev STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Navngev slagi av skipi STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Navngev slagi av flogfari + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Navngev slagi av tok flutningstóli STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Navngev slagi av akfari STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Navngev slagi av skipi @@ -3153,6 +3154,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :{G=n}Akfar STR_REPLACE_VEHICLE_SHIP :Skip STR_REPLACE_VEHICLE_AIRCRAFT :{G=n}Flogfar + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Vel slagi av motori at býta um STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Vel ta nýggja slagi av motori tú vil nýta ið staðin fyri tann tú valdi til vinstru @@ -3712,6 +3714,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... skó STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kann einans byggjast omanfyri kava-linjuna STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kann einans byggjast niðanfyri kava-linjuna + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kann ikki byggja tok støð her... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kann ikki byggja buss støð... @@ -4433,8 +4436,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index 6a30ebc603..ab87294ea4 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Sihijuoma # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} matkustaja{P "" a} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}matkustaja{P "" a} STR_QUANTITY_COAL :{WEIGHT_LONG} kivihiiltä -STR_QUANTITY_MAIL :{COMMA} säkki{P "" ä} postia +STR_QUANTITY_MAIL :{COMMA}{NBSP}säkki{P "" ä} postia STR_QUANTITY_OIL :{VOLUME_LONG} öljyä -STR_QUANTITY_LIVESTOCK :{COMMA} erä{P "" ä} karjaa -STR_QUANTITY_GOODS :{COMMA} laatikko{P "" a} tavaraa +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}erä{P "" ä} karjaa +STR_QUANTITY_GOODS :{COMMA}{NBSP}laatikko{P "" a} tavaraa STR_QUANTITY_GRAIN :{WEIGHT_LONG} viljaa STR_QUANTITY_WOOD :{WEIGHT_LONG} raakapuuta STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} rautamalmia STR_QUANTITY_STEEL :{WEIGHT_LONG} terästä -STR_QUANTITY_VALUABLES :{COMMA} säkki{P "" ä} arvotavaraa +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}säkki{P "" ä} arvotavaraa STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} kuparimalmia STR_QUANTITY_MAIZE :{WEIGHT_LONG} maissia STR_QUANTITY_FRUIT :{WEIGHT_LONG} hedelmiä -STR_QUANTITY_DIAMONDS :{COMMA} säkki{P "" ä} timantteja +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}säkki{P "" ä} timantteja STR_QUANTITY_FOOD :{WEIGHT_LONG} ruokaa STR_QUANTITY_PAPER :{WEIGHT_LONG} paperia -STR_QUANTITY_GOLD :{COMMA} säkki{P "" ä} kultaa +STR_QUANTITY_GOLD :{COMMA}{NBSP}säkki{P "" ä} kultaa STR_QUANTITY_WATER :{VOLUME_LONG} vettä STR_QUANTITY_WHEAT :{WEIGHT_LONG} vehnää STR_QUANTITY_RUBBER :{VOLUME_LONG} kumia STR_QUANTITY_SUGAR :{WEIGHT_LONG} sokeria -STR_QUANTITY_TOYS :{COMMA} lelu{P "" a} -STR_QUANTITY_SWEETS :{COMMA} säkki{P "" ä} karkkia +STR_QUANTITY_TOYS :{COMMA}{NBSP}lelu{P "" a} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}säkki{P "" ä} karkkia STR_QUANTITY_COLA :{VOLUME_LONG} limsaa STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} hattaraa STR_QUANTITY_BUBBLES :{COMMA} kupla{P "" a} @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}EI STR_ABBREV_ALL :{TINY_FONT}KAIKKI # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} matkustaja{P "" a} -STR_BAGS :{COMMA} säkki{P "" ä} -STR_TONS :{COMMA} tonni{P "" a} -STR_LITERS :{COMMA} litra{P "" a} -STR_ITEMS :{COMMA} erä{P "" ä} -STR_CRATES :{COMMA} laatikko{P "" a} +STR_PASSENGERS :{COMMA}{NBSP}matkustaja{P "" a} +STR_BAGS :{COMMA}{NBSP}säkki{P "" ä} +STR_TONS :{COMMA}{NBSP}tonni{P "" a} +STR_LITERS :{COMMA}{NBSP}litra{P "" a} +STR_ITEMS :{COMMA}{NBSP}erä{P "" ä} +STR_CRATES :{COMMA}{NBSP}laatikko{P "" a} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Tummansininen @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Harmaa STR_COLOUR_WHITE :Valkoinen # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hv -STR_UNITS_POWER_METRIC :{COMMA}hv -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hv +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hv +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonni{P "" a} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonni{P "" a} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonni{P "" a} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonni{P "" a} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallona{P "" a} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litra{P "" a} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallona{P "" a} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litra{P "" a} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Suodatinteksti: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Vieritys STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Vierityspalkki - luettelon vieritys vasemmalle/oikealle. STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Tuhoa rakennuksia jne. ruudulta. Ctrl valitsee alueen vinottain. Shift vaihtaa tuhoamistilan ja kustannearvion välillä +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Näytä piilotetut +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Näytä piilotetut +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Näytä piilotetut +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Näytä piilotetut + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Kun otat tämän käyttöön, myös piilotetut junat näytetään +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Kun otat tämän käyttöön, myös piilotetut ajoneuvot näytetään +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Kun otat tämän käyttöön, myös piilotetut laivat näytetään +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Kun otat tämän käyttöön, myös piilotetut lentokoneet näytetään + # Query window STR_BUTTON_DEFAULT :{BLACK}Oletus STR_BUTTON_CANCEL :{BLACK}Peruuta @@ -360,8 +371,8 @@ STR_SCENEDIT_FILE_MENU_QUIT :Lopeta ############ range for SE file menu starts ############ range for settings menu starts -STR_SETTINGS_MENU_GAME_OPTIONS :Pelin asetukset -STR_SETTINGS_MENU_CONFIG_SETTINGS :Lisäasetukset +STR_SETTINGS_MENU_GAME_OPTIONS :Pelin valinnat +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Asetukset STR_SETTINGS_MENU_SCRIPT_SETTINGS :Tekoälyn/Peliskriptin asetukset STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-asetukset STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Läpinäkyvyysasetukset @@ -875,7 +886,7 @@ STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Liitä n STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Liitä sijainti tästä näkymästä päänäkymään # Game options window -STR_GAME_OPTIONS_CAPTION :{WHITE}Pelin asetukset +STR_GAME_OPTIONS_CAPTION :{WHITE}Pelin valinnat STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Rahayksikkö STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Rahayksikön valinta. @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgian lari ( STR_GAME_OPTIONS_CURRENCY_IRR :Iranin rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Ajoneuvot STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Valitse kummalla puolella tietä ajetaan. STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vasemmalla kaistalla @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Näytön STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Valitse käytettävä näytön tarkkuus STR_GAME_OPTIONS_RESOLUTION_OTHER :muu +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Käyttöliittymän koko +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Valitse käyttöliittymäelementtien koko + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Tavallinen +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Kaksinkertainen +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Nelinkertainen + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Perusgrafiikat STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Valitse käytettävät perusgrafiikat STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} puuttuva/korruptoitunut tiedosto{P "" ja} @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Hyvin tasainen STR_TERRAIN_TYPE_FLAT :Tasainen STR_TERRAIN_TYPE_HILLY :Kukkulainen STR_TERRAIN_TYPE_MOUNTAINOUS :Vuoristoinen +STR_TERRAIN_TYPE_ALPINIST :Vuorikiipeilijä STR_CITY_APPROVAL_PERMISSIVE :Salliva STR_CITY_APPROVAL_TOLERANT :Suvaitseva @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Vihamielinen STR_WARNING_NO_SUITABLE_AI :{WHITE}Ei soveltuvia tekoälyjä saatavilla...{}Voit ladata tekoälyjä 'Online-Sisältö'-palvelulla -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Lisäasetukset +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Asetukset STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Suodatinteksti: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Avaa kaikki STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Sulje kaikki @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Yhtiön asetus STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategoria: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tyyppi: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Rajaa alla olevaa listaa ennalta määritellyillä suodattimilla -STR_CONFIG_SETTING_RESTRICT_BASIC :Perusasetukset -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Lisäasetukset -STR_CONFIG_SETTING_RESTRICT_ALL :Kehittyneet asetukset / kaikki asetukset +STR_CONFIG_SETTING_RESTRICT_BASIC :Perus (näytä vain tärkeät asetukset) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Kehittynyt (näytä useimmat asetukset) +STR_CONFIG_SETTING_RESTRICT_ALL :Edistynyt (näytä kaikki asetukset, oudotkin) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Asetukset, joiden arvo poikkeaa oletusarvosta STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Asetukset, joiden arvo poikkeaa uusille peleille määritellystä arvosta @@ -1147,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Ottaa käyttö STR_CONFIG_SETTING_CITY_APPROVAL :Kaupunginvaltuuston 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_MAX_HEIGHTLEVEL :Kartan suurin sallittu korkeus: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Määritä suurin sallittu korkeus vuorille +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_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_CATCHMENT :Realistisemman kokoiset vaikutusalueet: {STRING} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflaatio: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Ota talouden inflaatio käyttöön. Mikäli käytössä, hinnat nousevat hieman nopeammin kuin kuljetusmaksut STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Suurin sallittu sillan pituus: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Suurin sallittu pituus siltoja rakennettaessa +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Suurin sallittu siltojen korkeus: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Suurin sallittu korkeus siltojen rakentamiselle STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Suurin sallittu tunnelin pituus: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Suurin sallittu pituus tunneleita rakennettaessa STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Manuaalinen raakateollisuuden rakentamistapa: {STRING} @@ -1260,8 +1280,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Virheilmoituste STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Aika virheilmoitusten näyttämiseen punaisessa ikkunassa. Huomaa, että jotkut (kriittiset) virheilmoitukset eivät sulkeudu automaattisesti tämän ajan jälkeen, vaan ne on suljettava käsin STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekunti{P 0 "" a} STR_CONFIG_SETTING_HOVER_DELAY :Näytä työkaluvihjeet: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Viive ennen työkaluvihjeen näyttämistä, kun hiiren kursoria pidetään käyttöliittymäelementin päällä. Vaihtoehtoisesti työkaluvihjeen saa myös näkymiin painamalla hiiren oikeaa näppäintä -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Pidä hiirtä päällä {COMMA} sekunti{P 0 "" a} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Viive ennen työkaluvihjeen näyttämistä, kun hiiren kursoria pidetään käyttöliittymäelementin päällä. Vaihtoehtoisesti työkaluvihjeen saa myös näkymiin painamalla hiiren oikeaa näppäintä jos arvoksi on määritetty 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Pidä hiirtä päällä {COMMA} millisekunti{P 0 "" a} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Hiiren oikea näppäin STR_CONFIG_SETTING_POPULATION_IN_LABEL :Näytä kaupungin asukasluku kaupungin nimessä: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Näytä kaupunkien asukasluku kartalla @@ -1444,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Huoltovälit ov STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Määritä, aiheuttaako edellisestä huollosta kulunut aika vai luotettavuuden laskeminen kulkuneuvon huoltamisen STR_CONFIG_SETTING_SERVINT_TRAINS :Junien huoltoväli oletuksena: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Määritä oletushuoltoväli uusille junille mikäli kulkuneuvolle ei ole määritelty erillistä huoltoväliä -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} päivä{P 0 "" ä}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}päivä{P 0 "" ä}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Pois käytöstä STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Ajoneuvojen huoltoväli oletuksena: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Määritä oletushuoltoväli uusille ajoneuvoille mikäli kulkuneuvolle ei ole määritelty erillistä huoltoväliä @@ -1584,9 +1604,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Ei yhtään STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Kasvukerroin alussa: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Suurkaupunkien keskimääräinen koko suhteessa normaaleihin kaupunkeihin pelin alussa -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Päivitä rahdin jakautuminen {STRING} päivän välein +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Päivitä rahdin jakautuminen {STRING}{NBSP}päivän välein STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Yhteyskuvaajan uudelleenlaskujen välinen aika. Kukin uudelleenlasku laskee yhden kuvaajan komponentin. Tämä tarkoittaa sitä, että koko kuvaajaa ei lasketa uudelleen määrittämäsi ajan välein, vaan ainoastaan yksi komponentti. Mitä lyhyemmäksi määrität asetuksen, sitä enemmän prosessoriaikaa komponentin laskemiseen vaaditaan. Mitä pidemmäksi määrität sen, sitä pidempi aika kuluu, kunnes rahdin jakaminen alkaa uusilla reiteillä. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Käytä {STRING} päivä{P 0:2 "" ä} rahtijakauman päivittämiseen +STR_CONFIG_SETTING_LINKGRAPH_TIME :Käytä {STRING}{NBSP}päivä{P 0:2 "" ä} rahtijakauman päivittämiseen STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Jokaisen yhteyskuvaajan komponentin uudelleenlaskemiseen käytettävä aika. Uudelleenlaskun alkaessa käynnistetään uusi säie, jonka annetaan toimia näin monta päivää. Mitä lyhyemmäksi määrität tämän, sitä todennäköisempää on, että säie ei ole valmis ajoissa. Tällöin peli pysähtyy kunnes lasku on suoritettu loppuun (peli pätkii). Mitä pidemmäksi määrität asetuksen, sitä pitempään rahdin jakauman päivittämiseen kuluu aikaa reittien muuttuessa. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuaalinen STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :epäsymmetrinen @@ -1713,9 +1733,9 @@ STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Lataa ko STR_INTRO_SCENARIO_EDITOR :{BLACK}Skenaariomuokkain STR_INTRO_MULTIPLAYER :{BLACK}Moninpeli -STR_INTRO_GAME_OPTIONS :{BLACK}Pelin asetukset +STR_INTRO_GAME_OPTIONS :{BLACK}Pelin valinnat STR_INTRO_HIGHSCORE :{BLACK}Pistetaulukko -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Lisäasetukset +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Asetukset STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-asetukset STR_INTRO_ONLINE_CONTENT :{BLACK}Tarkista Online-sisältö STR_INTRO_SCRIPT_SETTINGS :{BLACK}Tekoälyn/Peliskriptin asetukset @@ -1733,9 +1753,9 @@ STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Valitse STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Valitse subtrooppinen maastotyyppi. STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Valitse lelumaan maastotyyppi. -STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Näytä peliasetukset. +STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Näytä pelin valinnat STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Näytä pistetaulukko -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Näytä edistyneemmät asetukset +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Näyttöasetukset STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Näytä NewGRF-asetukset STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Tarkista uutta ja päivitettyä sisältöä ladattavaksi STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Näytä tekoäly/peliskriptiasetukset @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Hallinn STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Taikapuskutraktori (poista teollisuutta, liikuttamattomia kohteita): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnelit voivat mennä ristiin: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Suihkukoneet eivät syöksy (usein) pienille lentokentille: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Muuta suurinta sallittua kartan korkeutta: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Muuta suurinta sallittua vuorten korkeutta STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :lauhkea maasto STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :pohjoinen maasto STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :subtrooppinen maasto @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Yhtiön omistam STR_ABOUT_OPENTTD :{WHITE}Tietoja OpenTTD:stä STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Alkuperäiset oikeudet {COPYRIGHT} 1995 Chris Sawyer, kaikki oikeudet pidätetään STR_ABOUT_VERSION :{BLACK}OpenTTD-versio {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Tallenna peli @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}× STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Kaupungit: STR_MAPGEN_DATE :{BLACK}Päivämäärä: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Teollisuus: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Suurin sallittu kartan korkeus: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Kasvata suurinta sallittua vuorten korkeutta yhdellä +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Vähennä suurinta sallittua vuorten korkeutta yhdellä STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Lumirajan korkeus: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Siirrä lumirajaa yksi taso ylöspäin STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Siirrä lumirajaa yksi taso alaspäin @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Korkeusk STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Koko: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Muuta suurinta sallittua kartan korkeutta STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Vaihda lumirajan korkeutta STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Vaihda aloitusvuosi @@ -2842,14 +2868,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF m # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Kohdistetaan spriteä {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Seuraava sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Mene seuraavaan normaaliin spriteen, hypäten yli pseudo/uudelleenväritetyt/fontti spritet ja mene alkuun kun päästään viimeiseen +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Mene seuraavaan tavalliseen spriteen ja hyppää yli pseudo-/uudelleenväritetyt/fontti- spritet ja mene alkuun kun päästään viimeiseen STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Mene spriteen STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Mene valittuun spriteen. Jos sprite ei ole tavallinen, jatka seuraavaan tavalliseen spriteen STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Edelinen sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Jatka edelliseen tavalliseen spriteen, hypäten yli kaikki pseudo/uudelleenväritetyt/fontti spritet ja mene loppuun kun päästään ensimmäiseen. +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Jatka edelliseen tavalliseen spriteen ja hyppää yli kaikki pseudo-/uudelleenväritetyt/fontti- spritet ja mene loppuun kun päästään ensimmäiseen STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Valitun spriten näyttö. Sijaintia ei huomioida spriteä piirrettäessä STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Liikuta spriteä ympäriinsä, muuttaen X- ja Y-sijainteja -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X-sijainti: {NUM}, Y-sijainti: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Nollaa suhteelliset +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Nollaa suhteelliset erotukset +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X-erotus: {NUM}, Y-erotus: {NUM} (Absoluuttinen) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X-erotus: {NUM}, Y-erotus: {NUM} (Suhteellinen) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Valitse sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Valitse sprite ruudulta @@ -2961,8 +2990,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} kuljetettu STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (tarvitaan lisää) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (kuljetettu) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Kaupunki kasvaa {ORANGE}{COMMA}{BLACK} päivän{P "" ""} välein -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Kaupunki kasvaa {ORANGE}{COMMA}{BLACK} päivän{P "" ""} välein (rahoitettu) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Kaupunki kasvaa {ORANGE}{COMMA}{BLACK}{NBSP}päivän{P "" ""} välein +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Kaupunki kasvaa {ORANGE}{COMMA}{BLACK}{NBSP}päivän{P "" ""} välein (rahoitettu) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Kaupunki {RED}ei{BLACK} kasva STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Meluraja kaupungissa: {ORANGE}{COMMA}{BLACK} maks.: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Keskitä näkymä kaupungin sijaintiin. Ctrl+Klik avaa uuden näkymäikkunan kaupungin sijaintiin @@ -3022,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Tietoa STR_GOAL_QUESTION_CAPTION_WARNING :Varoitus STR_GOAL_QUESTION_CAPTION_ERROR :Virhe -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Peruuta STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Ei @@ -3041,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Aloita uudellee STR_GOAL_QUESTION_BUTTON_POSTPONE :Lykkää myöhemmäksi STR_GOAL_QUESTION_BUTTON_SURRENDER :Luovuta STR_GOAL_QUESTION_BUTTON_CLOSE :Sulje +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Tuet @@ -3365,10 +3395,10 @@ STR_PURCHASE_INFO_ALL_BUT :Kaikki paitsi { STR_PURCHASE_INFO_MAX_TE :{BLACK}Suurin vetovoima: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Toimintasäde: {GOLD}{COMMA} ruutua -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Yksikön valintalista - napsauta kohteita saadaksesi tietoja. -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Ajoneuvon valintalista - napsauta ajoneuvoa saadaksesi tietoja. -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Laivan valintalista - napsauta laivaa saadaksesi tietoja. -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lentokonevalintalista - napsauta lentokonetta saadaksesi tietoja. +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Junien valintaluettelo. Lisää tietoja junaa napsauttamalla. Ctrl+Klik näyttää tai piilottaa kulkuneuvon tyypin +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Ajoneuvojen valintaluettelo. Napsauta ajoneuvoa saadaksesi lisää tietoja. Ctrl+Klik näyttää tai piilottaa ajoneuvon tyypin +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Laivojen valintaluettelo. Napsauta laivaa saadaksesi lisää tietoja. Ctrl+Klik näyttää tai piilottaa laivan tyypin +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lentokoneiden valintaluettelo. Napsauta lentokonetta saadaksesi lisää tietoja. Ctrl+Klik näyttää tai piilottaa lentokoneen tyypin STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Osta yksikkö STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Osta ajoneuvo @@ -3390,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Nimeä a STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Nimeä laivatyyppi uudelleen. STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Nimeä lentokonetyyppi uudelleen. +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Piilota +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Piilota +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Piilota +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Piilota + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Näytä +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Näytä +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Näytä +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Näytä + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Näytä tai piilota junan tyyppi +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Näytä tai piilota ajoneuvon tyyppi +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Näytä tai piilota laivan tyyppi +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Näytä tai piilota lentokoneen tyyppi + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Nimeä juna(vaunu)n tyyppi uudelleen. STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Nimeä ajoneuvon tyyppi uudelleen STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Nimeä laivatyyppi uudelleen. @@ -3494,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Ajoneuvo STR_REPLACE_VEHICLE_SHIP :Laiva STR_REPLACE_VEHICLE_AIRCRAFT :Lentokone +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Käytössä olevat kulkuneuvot +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Sarake kulkuneuvoille, jotka omistat +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Saatavilla olevat kulkuneuvot +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Sarake kulkuneuvoille, jotka voidaan uusia + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Valitse korvattava veturityyppi. STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Valitse vasemmalla näkyvän veturityypinn korvaava uusi veturityyppi. @@ -3618,7 +3668,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Siirron arvo: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Huoltoväli: {LTBLUE}{COMMA} päivää{BLACK} Viimeisin huolto: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Huoltoväli: {LTBLUE}{COMMA}{NBSP}päivää{BLACK} Viimeisin huolto: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Huoltoväli: {LTBLUE}{COMMA}%{BLACK} Viime huolto: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Kasvata huoltoväliä kymmenellä. Ctrl+Klik kasvattaa huoltoväliä viidellä STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Pienennä huoltoväliä kymmenellä. Ctrl+Klik vähentää huoltoväliä viidellä @@ -3854,8 +3904,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(pysy {STRING}, STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(matkusta {STRING}, ei aikataulua) STR_TIMETABLE_STAY_FOR :ja odota {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :ja kulje {STRING} -STR_TIMETABLE_DAYS :{COMMA} päivä{P "" ä} -STR_TIMETABLE_TICKS :{COMMA} tunti{P "" a} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}päivä{P "" ä} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" iä} STR_TIMETABLE_TOTAL_TIME :{BLACK}Aikataulun kesto on {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Aikataulun kesto on vähintään {STRING} @@ -4093,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Kaivuual STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Merenpinta on jo saavutettu. STR_ERROR_TOO_HIGH :{WHITE}Liian korkea. STR_ERROR_ALREADY_LEVELLED :{WHITE}... alue on jo litteä +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Yläpuolella olevasta sillasta tulisi liian korkea. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Yhtiön nimeä ei voi muuttaa... @@ -4119,7 +4170,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... liia STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... liian lähellä toista kaupunkia. STR_ERROR_TOO_MANY_TOWNS :{WHITE}... liian monta kaupunkia. STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... kartalla ei ole enää tilaa -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Kaupunki ei rakenna teitä. Voit sallia teiden rakentamisen valikosta Lisäasetukset->Talous->Kaupungit +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Kaupunki ei rakenna teitä. Voit sallia teiden rakentamisen valikosta Asetukset->Ympäristö->Kaupungit STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Tietyöt ovat käynnissä. STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kaupunkia ei voida poistaa...{}Asema tai varikko viittaa kaupunkiin tai kaupungin omistamaa ruutua ei voida poistaa STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... kaupungin keskustassa ei ole sopivaa paikkaa patsaalle @@ -4143,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... mets STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... voidaan rakentaa vain lumirajan yläpuolelle STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... voidaan rakentaa vain lumirajan alapuolelle +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Teollisuudelle '{STRING}' ei löytynyt sopivaa paikkaa +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Muuta kartan parametreja saadaksesi paremman kartan + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Rautatieasemaa ei voi rakentaa. STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Linja-autoasemaa ei voi rakentaa. @@ -4279,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Silta pi STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Ei voi aloittaa ja lopettaa samasta paikkasta. STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Sillan päät eivät ole samalla korkeudella STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Silta on liian matalalla maastoa varten +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Silta on liian korkea tähän maastoon. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Alku- ja päätepisteen pitää olla linjassa. STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... sillan molempien päiden pitää sijaita maalla. STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... silta liian pitkä @@ -4843,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (piilotettu) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/french.txt b/src/lang/french.txt index e549ca2cf0..938b4980ae 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Boisson gazeuse # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passager{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passager{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} de charbon -STR_QUANTITY_MAIL :{COMMA} sac{P "" s} posta{P l ux} +STR_QUANTITY_MAIL :{COMMA}{NBSP}sac{P "" s} posta{P l ux} STR_QUANTITY_OIL :{VOLUME_LONG} de pétrole -STR_QUANTITY_LIVESTOCK :{COMMA} tête{P "" s} de bétail -STR_QUANTITY_GOODS :{COMMA} caisse{P "" s} de biens +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}tête{P "" s} de bétail +STR_QUANTITY_GOODS :{COMMA}{NBSP}caisse{P "" s} de biens STR_QUANTITY_GRAIN :{WEIGHT_LONG} de céréales STR_QUANTITY_WOOD :{WEIGHT_LONG} de bois STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} de minerai de fer STR_QUANTITY_STEEL :{WEIGHT_LONG} d'acier -STR_QUANTITY_VALUABLES :{COMMA} sac{P "" s} d'objets de valeur +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}sac{P "" s} d'objets de valeur STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de cuivre STR_QUANTITY_MAIZE :{WEIGHT_LONG} de maïs STR_QUANTITY_FRUIT :{WEIGHT_LONG} de fruits -STR_QUANTITY_DIAMONDS :{COMMA} sac{P "" s} de diamants +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}sac{P "" s} de diamants STR_QUANTITY_FOOD :{WEIGHT_LONG} de nourriture STR_QUANTITY_PAPER :{WEIGHT_LONG} de papier -STR_QUANTITY_GOLD :{COMMA} sac{P "" s} d'or +STR_QUANTITY_GOLD :{COMMA}{NBSP}sac{P "" s} d'or STR_QUANTITY_WATER :{VOLUME_LONG} d'eau STR_QUANTITY_WHEAT :{WEIGHT_LONG} de blé STR_QUANTITY_RUBBER :{VOLUME_LONG} de caoutchouc STR_QUANTITY_SUGAR :{WEIGHT_LONG} de sucre -STR_QUANTITY_TOYS :{COMMA} jouet{P "" s} -STR_QUANTITY_SWEETS :{COMMA} sac{P "" s} de bonbons +STR_QUANTITY_TOYS :{COMMA}{NBSP}jouet{P "" s} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}sac{P "" s} de bonbons STR_QUANTITY_COLA :{VOLUME_LONG} de cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} de barbe à papa STR_QUANTITY_BUBBLES :{COMMA} bulle{P "" s} @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}ALL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passager{P "" s} -STR_BAGS :{COMMA} sac{P "" s} -STR_TONS :{COMMA} tonne{P "" s} -STR_LITERS :{COMMA} litre{P "" s} -STR_ITEMS :{COMMA} unité{P "" s} -STR_CRATES :{COMMA} caisse{P "" s} +STR_PASSENGERS :{COMMA}{NBSP}passager{P "" s} +STR_BAGS :{COMMA}{NBSP}sac{P "" s} +STR_TONS :{COMMA}{NBSP}tonne{P "" s} +STR_LITERS :{COMMA}{NBSP}litre{P "" s} +STR_ITEMS :{COMMA}{NBSP}unité{P "" s} +STR_CRATES :{COMMA}{NBSP}caisse{P "" s} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Bleu foncé @@ -200,28 +200,28 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ch STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonne{P "" s} courte{P "" s} +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonne{P "" s}{NBSP}courte{P "" s} STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonne{P "" s} STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" s} +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barre de STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barre de défilement - Fait défiler la liste horizontalement STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Démolir les constructions sur un carré de terrain.{}Ctrl pour sélectionner en diagonale.{}Shift pour afficher seulement le coût estimé. +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Montrer les cachés +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Montrer les cachés +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Montrer les cachés +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Montrer les cachés + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}En activant ce bouton, les véhicules ferroviaires cachés sont également affichés +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}En activant ce bouton, les véhicules routiers cachés sont également affichés +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}En activant ce bouton, les navires cachés sont également affichés +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}En activant ce bouton, les aéronefs cachés sont également affichés + # Query window STR_BUTTON_DEFAULT :{BLACK}Défaut STR_BUTTON_CANCEL :{BLACK}Annuler @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Quitter ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Options du Jeu -STR_SETTINGS_MENU_CONFIG_SETTINGS :Configuration avancée +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Paramètres STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configuration des scripts STR_SETTINGS_MENU_NEWGRF_SETTINGS :Paramètres NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Options de transparence @@ -917,10 +928,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Géorgien STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iranien (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Véhicules routiers STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Choisir le côté de la route pour la conduite STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conduite à gauche @@ -974,6 +981,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Résolut STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Sélectionner la résolution d'écran à utiliser STR_GAME_OPTIONS_RESOLUTION_OTHER :autre +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Taille d'interface +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Choisir la taille d'élément d'interface à utiliser + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Taille double +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Taille quadruple + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Graphiques de base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Sélectionner les graphiques de base à utiliser STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fichier{P "" s} manquant{P "" s}/corrompu{P "" s} @@ -1067,6 +1081,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Très plat STR_TERRAIN_TYPE_FLAT :Plat STR_TERRAIN_TYPE_HILLY :Collinaire STR_TERRAIN_TYPE_MOUNTAINOUS :Montagneux +STR_TERRAIN_TYPE_ALPINIST :Alpin STR_CITY_APPROVAL_PERMISSIVE :Laxiste STR_CITY_APPROVAL_TOLERANT :Tolérante @@ -1074,8 +1089,8 @@ STR_CITY_APPROVAL_HOSTILE :Hostile STR_WARNING_NO_SUITABLE_AI :{WHITE}Aucune IA utilisable...{}Vous pouvez télécharger diverses IA via le système de «{NBSP}Contenu en ligne{NBSP}». -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Options avancées +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Paramètres STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtre{NBSP}: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Tout développer STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Tout réduire @@ -1091,9 +1106,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Paramètre de c STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Catégorie{NBSP}: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Type{NBSP}: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Restreint la liste ci-dessous en utilisant des filtres prédéfinis -STR_CONFIG_SETTING_RESTRICT_BASIC :Options de base -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Options avancées -STR_CONFIG_SETTING_RESTRICT_ALL :Paramètres expert / Tous les paramètres +STR_CONFIG_SETTING_RESTRICT_BASIC :Basique (n'afficher que les paramètres importants) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avancé (afficher la plupart des paramètres) +STR_CONFIG_SETTING_RESTRICT_ALL :Expert (afficher tous les paramètres, même les plus bizarres) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Paramètres avec une valeur différente du défaut STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Paramètres avec une valeur différente des paramètres de nouvelle partie @@ -1148,6 +1163,9 @@ 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_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_MAX_HEIGHTLEVEL_HELPTEXT :Définir l'altitude maximum autorisée pour les montagnes sur la carte +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_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_CATCHMENT :Autoriser des zones de desserte plus réalistes{NBSP}: {STRING} @@ -1176,6 +1194,8 @@ STR_CONFIG_SETTING_INFLATION :Inflation{NBSP} STR_CONFIG_SETTING_INFLATION_HELPTEXT :Activer l'inflation dans l'économie, où les coûts augmentent légèrement plus vite que les revenus. STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Longueur maximum des ponts{NBSP}: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Longueur maximum pour la construction des ponts +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altitude maximum des ponts{NBSP}: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Altitude maximum pour construire des ponts STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Longueur maximum des tunnels{NBSP}: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Longueur maximum pour la construction des tunnels STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Méthode de construction manuelle des industries primaires{NBSP}: {STRING} @@ -1261,8 +1281,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Temps d'afficha STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Durée pour l'affichage des messages d'erreur dans une fenêtre rouge. Noter que certains messages d'erreur (critique) ne sont pas fermés automatiquement après ce délai, mais doivent être fermés manuellement STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} seconde{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Affichage des infobulles{NBSP}: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Délai avant que les infobulles soient affichées lorsque la souris survole certains éléments de l'interface. Les infobulles peuvent également être affectées au bouton droit de la souris -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Survoler pendant {COMMA} seconde{P 0 "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Délai avant que les infobulles soient affichées lorsque la souris survole certains éléments de l'interface. Les infobulles peuvent également être affectées au bouton droit de la souris en réglant cette valeur à 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Survoler pendant {COMMA} milliseconde{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Clic droit STR_CONFIG_SETTING_POPULATION_IN_LABEL :Afficher la population d'une ville dans son label{NBSP}: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Afficher la population des villes dans leur label sur la carte @@ -1445,7 +1465,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Les intervalles STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Choisir si l'entretien des véhicule est activé par le temps passé depuis le dernier entretien ou par la fiabilité passant sous un pourcentage de la fiabilité maximum STR_CONFIG_SETTING_SERVINT_TRAINS :Intervalle d'entretien par défaut pour les trains{NBSP}: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Défini l'intervalle d'entretien par défaut des nouveaux véhicules ferroviaires, si aucun intervalle d'entretien n'est définit pour le véhicule -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} jour{P 0 "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}jour{P 0 "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Désactivé STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Intervalle d'entretien par défaut pour les véhicules routiers{NBSP}: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Défini l'intervalle d'entretien par défaut des nouveaux véhicules routiers, si aucun intervalle d'entretien n'est définit pour le véhicule @@ -1585,9 +1605,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Aucune STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicateur initial pour la taille des métropoles{NBSP}: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Taille moyenne des métropoles par rapport aux villes normales au début de la partie -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Réactualiser le graphique de la distribution tous les {STRING} jour{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Réactualiser le graphique de la distribution tous les {STRING}{NBSP}jour{P 0:2 "" s} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Intervalle entre la recalculation des liens du graphique. À chaque itération, une seule composante du graphique est recalculée. Donc, une valeur X pour ce réglage ne signifie pas que le graphique est réactualisé entièrement tous les X jours. Plus l'intervalle est court, plus de temps CPU est nécessaire pour la recalculation. Plus il est long, et plus de temps sera nécessaire pour que la distribution s'effectue sur de nouvelles routes. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Prendre {STRING} jour{P 0:2 "" s} pour recalculer le graphe de distribution +STR_CONFIG_SETTING_LINKGRAPH_TIME :Prendre {STRING}{NBSP}jour{P 0:2 "" s} pour recalculer le graphe de distribution STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Durée maximale (en jours) de la réactualisation d'une composante du graphique. À chaque itération, un thread est initié, qui a une durée maximale définie par ce réglage. Plus celui-ci est court, plus la probabilité que le thread ne termine pas sa tâche à temps est élevée. Le jeu s'interrompt alors jusqu'à la fin de la recalculation ("lag"). Plus le réglage est long, et moins rapidement la distribution sera réactualisée en cas de changement de routes. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuel STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymétrique @@ -1640,7 +1660,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Métrique (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Unité de hauteur{NBSP}: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Quand des hauteurs sont affichées dans l'interface utilisateur, utiliser l'unité sélectionnée +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Quand une hauteur est affichée dans l'interface utilisateur, utiliser l'unité sélectionnée STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Impérial (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Métrique (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1716,7 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Mode mul STR_INTRO_GAME_OPTIONS :{BLACK}Options STR_INTRO_HIGHSCORE :{BLACK}Meilleurs scores -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Options avancées +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Paramètres STR_INTRO_NEWGRF_SETTINGS :{BLACK}Paramètres NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Vérifier le contenu en ligne STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configuration des scripts @@ -1736,7 +1756,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Sélecti STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Afficher les options du jeu STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Afficher le tableau des meilleurs scores -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Afficher les options avancées +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Afficher les paramètres STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Afficher la configuration des NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Vérifier les contenus nouveaux ou mis à jour téléchargeables STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Afficher la configuration des scripts @@ -1776,6 +1796,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Jouer e STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Bulldozer magique (enlèvement des industries et des objets fixes){NBSP}: {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Les tunnels peuvent se croiser{NBSP}: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Les jets ne s'écraseront plus (aussi fréquemment) sur les petits aéroports{NBSP}: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Modifier l'altitude maximum de la carte{NBSP}: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Modifier l'altitude maximum des montagnes sur la carte STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Environnement «{NBSP}Tempéré{NBSP}» STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Environnement «{NBSP}Arctique{NBSP}» STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Environnement «{NBSP}Tropical{NBSP}» @@ -2294,7 +2316,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Construi STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Construire un dépôt ferroviaire (pour acheter et entretenir des trains).{}Shift pour afficher seulement le coût estimé. STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Construire un point de contrôle sur les rails.{}Ctrl pour joindre des points de contrôle entre eux.{}Shift pour afficher seulement le coût estimé. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Construire une gare.{}Ctrl pour joindre des stations entre elles.{}Shift pour afficher seulement le coût estimé. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construire des signaux.{}Ctrl pour inverser le type des signaux (sémaphore/lumineux).{}Faire glisser pour construire le long d'une section de voie linéaire.{}Ctrl-glisser pour construire des signaux jusqu'à la prochaine jonction.{}Ctrl-clic pour inverser le mode d'ouverture de la fenêtre de sélection des signaux.{}Shift pour afficher seulement le coût estimé. +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construire des signaux. Ctrl pour inverser le type des signaux (sémaphore/lumineux).{}Faire glisser pour construire le long d'une section de voie linéaire.{}Ctrl-glisser pour construire des signaux jusqu'à la prochaine jonction ou le prochain signal{}Ctrl-clic pour inverser le mode d'ouverture de la fenêtre de sélection des signaux.{}Shift pour afficher seulement le coût estimé. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Construire un pont ferroviaire.{}Shift pour afficher seulement le coût estimé. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Construire un tunnel ferroviaire.{}Shift pour afficher seulement le coût estimé. STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Alterner entre construire et retirer des voies, des signaux, des points de contrôle et des gares.{}Ctrl pour retirer également la voie lors du retrait des points de contrôle et des gares. @@ -2666,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terrain apparte STR_ABOUT_OPENTTD :{WHITE}À propos de OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Tous droits réservés STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 L'équipe OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 L'équipe OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sauvegarder la partie @@ -2701,6 +2723,9 @@ STR_MAPGEN_BY :{BLACK}{NBSP}× STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nb. de villes{NBSP}: STR_MAPGEN_DATE :{BLACK}Date{NBSP}: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nb. d'industries{NBSP}: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altitude maximum de la carte +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Augmenter l'altitude maximum des montagnes sur la carte de 1 +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Réduire l'altitude maximum des montagne sur la carte de 1 STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Alt. d'enneigement{NBSP}: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Augmenter l'altitude d'enneigement STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Baisser l'altitude d'enneigement @@ -2730,6 +2755,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nom de l STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Taille{NBSP}: 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_SNOW_LINE_QUERY_CAPT :{WHITE}Modifier l'altitude d'enneigement STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Modifier l'année de départ @@ -2843,14 +2869,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Paramèt # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Alignement du sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Sprite suivant -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Se rendre au prochain sprite normal, en ignorant les pseudo-sprites et les sprites de recoloration et de police, et en bouclant +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Se rendre au prochain sprite normal, en ignorant les pseudo-sprites et les sprites de recoloration et de police, et en bouclant du dernier vers le premier STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Aller au sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Se rendre au sprite indiqué. Si ce n'est pas un sprite normal, aller au prochain sprite normal STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite précédent -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Se rendre au précédent sprite normal, en ignorant les pseudo-sprites et les sprites de recoloration et de police, et en bouclant +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Se rendre au précédent sprite normal, en ignorant les pseudo-sprites et les sprites de recoloration et de police, et en bouclant du premier vers le dernier STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation du sprite actuellement séléctionné. L'alignement est ignoré lors de l'affichage de ce sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Déplacer le sprite, en modifiant les décalages X et Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Décalage X{NBSP}: {NUM}, décalage Y{NBSP}: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Réinitialiser les relatifs +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Réinitialiser les décalages relatifs courants +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Décalage X{NBSP}: {NUM}, décalage Y{NBSP}: {NUM} (Absolu) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Décalage X{NBSP}: {NUM}, décalage Y{NBSP}: {NUM} (Relatif) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Choisir un sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Choisir un des sprites affichés sur l'écran @@ -2962,8 +2991,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} livré STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (encore nécessaires) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (livrés) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}La ville croît {P 0 chaque "tous les"} {ORANGE}{COMMA}{BLACK} jour{P "" s} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}La ville croît {P 0 chaque "tous les"} {ORANGE}{COMMA}{BLACK} jour{P "" s} (financé) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}La ville croît {P 0 chaque "tous les"} {ORANGE}{COMMA}{BLACK}{NBSP}jour{P "" s} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}La ville croît {P 0 chaque "tous les"} {ORANGE}{COMMA}{BLACK}{NBSP}jour{P "" s} (financé) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}La ville {RED}ne croît pas{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Nuisances sonores en ville{NBSP}: {ORANGE}{COMMA}{BLACK} − max.{NBSP}: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centrer la vue sur la ville. Ctrl-clic pour ouvrir une nouvelle vue sur la ville. @@ -3023,7 +3052,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informations STR_GOAL_QUESTION_CAPTION_WARNING :Attention STR_GOAL_QUESTION_CAPTION_ERROR :Erreur -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Annuler STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Non @@ -3042,6 +3071,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Redémarrer STR_GOAL_QUESTION_BUTTON_POSTPONE :Reporter STR_GOAL_QUESTION_BUTTON_SURRENDER :Abandonner STR_GOAL_QUESTION_BUTTON_CLOSE :Fermer +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subventions @@ -3366,10 +3396,10 @@ STR_PURCHASE_INFO_ALL_BUT :Tous sauf {CARG STR_PURCHASE_INFO_MAX_TE :{BLACK}Effort de traction max.{NBSP}: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rayon d'action{NBSP}: {GOLD}{COMMA}{NBSP}cases -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Choix du véhicule - Cliquer sur un véhicule pour obtenir des informations -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Choix du véhicule routier - Cliquer sur un véhicule pour obtenir des informations -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Choix du navire - Cliquer sur un navire pour obtenir des informations -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Choix de l'aéronef - Cliquer sur un aéronef pour obtenir des informations +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Choix du véhicule. Cliquer sur un véhicule pour obtenir des informations. Ctrl-clic pour basculer le masquage du type de véhicule +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Choix du véhicule routier. Cliquer sur un véhicule pour obtenir des informations. Ctrl-clic pour basculer le masquage du type de véhicule +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Choix du navire. Cliquer sur un navire pour obtenir des informations. Ctrl-clic pour basculer le masquage du type de navire +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Choix de l'aéronef. Cliquer sur un aéronef pour obtenir des informations. Ctrl-clic pour basculer le masquage du type d'aéronef STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Acheter STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Acheter @@ -3391,6 +3421,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Renommer STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Renommer le type de navire STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Renommer le type d'aéronef +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Cacher +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Cacher +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Cacher +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Cacher + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Afficher +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Afficher +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Afficher +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Afficher + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Basculer cacher/afficher le type de véhicule ferroviaire +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Basculer cacher/afficher le type de véhicule routier +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Basculer cacher/afficher le type de navire +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Basculer cacher/afficher le type d'aéronef + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Renommer le type de véhicule ferroviaire STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Renommer le type de véhicule routier STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Renommer type de navire @@ -3495,6 +3540,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Véhicule routi STR_REPLACE_VEHICLE_SHIP :Navire STR_REPLACE_VEHICLE_AIRCRAFT :Aéronef +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Véhicules utilisés +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Colonne avec les véhicules que vous possédez +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Véhicules disponibles +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Colonne avec les véhicules disponibles pour le remplacement + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Choisir le type de véhicule à remplacer STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Choisir le nouveau type de véhicule devant remplacer celui sélectionné à gauche @@ -3619,7 +3669,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacit STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Crédits de transfert{NBSP}: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervalle d'entretien{NBSP}: {LTBLUE}{COMMA} jours{BLACK} − Dernier entretien{NBSP}: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervalle d'entretien{NBSP}: {LTBLUE}{COMMA}{NBSP}jours{BLACK} Dernier entretien{NBSP}: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Intervalle d'entretien{NBSP}: {LTBLUE}{COMMA}{NBSP}%{BLACK} − Dernier entretien{NBSP}: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Augmenter l'intervalle d'entretien de 10.{}Ctrl-clic pour l'augmenter de 5. STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Diminuer l'intervalle d'entretien de 10.{}Ctrl-clic pour le diminuer de 5. @@ -3855,8 +3905,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(rester pendant STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(voyager pendant {STRING}, non planifié) STR_TIMETABLE_STAY_FOR :et rester pendant {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :et voyager pendant {STRING} -STR_TIMETABLE_DAYS :{COMMA} jour{P "" s} -STR_TIMETABLE_TICKS :{COMMA} tick{P "" s} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}jour{P "" s} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}Cet horaire prendra {STRING} pour s'achever STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Cet horaire prendra au moins {STRING} pour s'achever (horaire incomplet) @@ -4094,6 +4144,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}L'excava STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... déjà au niveau de la mer STR_ERROR_TOO_HIGH :{WHITE}... trop élevé STR_ERROR_ALREADY_LEVELLED :{WHITE}... déjà à niveau +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Le pont au dessus de lui serait ensuite trop haut. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Impossible de changer le nom de compagnie... @@ -4120,7 +4171,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... trop STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... trop près d'une autre ville STR_ERROR_TOO_MANY_TOWNS :{WHITE}... trop de villes STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... il n'y a plus d'emplacement sur la carte -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}La ville ne construira pas de routes. Vous pouvez activer la construction des routes sous Options avancées->Économie->Villes +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}La ville ne construira pas de routes. Vous pouvez activer la construction des routes sous Paramètres->Environnement->Villes STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Route en travaux STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Impossible de supprimer cette ville...{}Une station ou un dépôt fait référence à cette ville ou une propriété municipale ne peut pas être supprimée. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... aucun emplacement convenable disponible pour une statue dans ce centre-ville @@ -4144,6 +4195,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... les STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... peut seulement être construit au dessus de l'altitude d'enneigement STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... peut seulement être construit en dessous de l'altitude d'enneigement +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Il n'y avait pas d'emplacements appropriés pour les industries '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Modifier les paramètres de la génération de la carte pour obtenir une meilleure carte + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Impossible de construire la gare ici... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Impossible de construire un arrêt d'autobus... @@ -4280,6 +4334,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Vous dev STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Impossible de commencer et de terminer au même endroit STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Les extrémités du pont ne sont pas au même niveau STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Le pont est trop bas pour le terrain +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Le pont est trop haut pour ce terrain. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Le début et la fin doivent être alignés STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... les deux extrémités du pont doivent être sur la terre ferme STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... pont trop long @@ -4844,6 +4899,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (caché) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4879,8 +4935,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt index dad7feaf93..e9af51cf68 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -283,30 +283,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.dat :Deoch ghucagach # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} {P taistealach thaistealach taistealaich taistealach} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}{P taistealach thaistealach taistealaich taistealach} STR_QUANTITY_COAL :{WEIGHT_LONG} de ghual -STR_QUANTITY_MAIL :{COMMA} {P bhaga bhaga bagaichean baga} dhe phost +STR_QUANTITY_MAIL :{COMMA}{NBSP}{P bhaga bhaga bagaichean baga} dhe phost STR_QUANTITY_OIL :{VOLUME_LONG} dhe dh'ola -STR_QUANTITY_LIVESTOCK :{COMMA} dhe sprèidh -STR_QUANTITY_GOODS :{COMMA} {P chreata chreata creataichean creata} dhe bhathar +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}dhe sprèidh +STR_QUANTITY_GOODS :{COMMA}{NBSP}{P chreata chreata creataichean creata} dhe bhathar STR_QUANTITY_GRAIN :{WEIGHT_LONG} dhe ghràn STR_QUANTITY_WOOD :{WEIGHT_LONG} dhe dh'fhiodh STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} dhe chlach-iarainn STR_QUANTITY_STEEL :{WEIGHT_LONG} dhe stàilinn -STR_QUANTITY_VALUABLES :{COMMA} {P bhaga bhaga bagaichean baga} dhe sheilbh +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}{P bhaga bhaga bagaichean baga} dhe sheilbh STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} dhe chlach-chopair STR_QUANTITY_MAIZE :{WEIGHT_LONG} dhe chruithneachd Innseanach STR_QUANTITY_FRUIT :{WEIGHT_LONG} dhe mheasan -STR_QUANTITY_DIAMONDS :{COMMA} {P bhaga bhaga bagaichean baga} dhe dhaoimeanan +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}{P bhaga bhaga bagaichean baga} dhe dhaoimeanan STR_QUANTITY_FOOD :{WEIGHT_LONG} dhe bhiadh STR_QUANTITY_PAPER :{WEIGHT_LONG} dhe phàipear -STR_QUANTITY_GOLD :{COMMA} {P bhaga bhaga bagaichean baga} dhe dh'òr +STR_QUANTITY_GOLD :{COMMA}{NBSP}{P bhaga bhaga bagaichean baga} dhe dh'òr STR_QUANTITY_WATER :{VOLUME_LONG} dhe dh'uisge STR_QUANTITY_WHEAT :{WEIGHT_LONG} dhe chruithneachd STR_QUANTITY_RUBBER :{VOLUME_LONG} dhe rubair STR_QUANTITY_SUGAR :{WEIGHT_LONG} dhe shiùcar -STR_QUANTITY_TOYS :{COMMA} {P dèideag dhèideig dèideagan dèideag} -STR_QUANTITY_SWEETS :{COMMA} {P bhaga bhaga bagaichean baga} dhe mhìlseanan +STR_QUANTITY_TOYS :{COMMA}{NBSP}{P dèideag dhèideig dèideagan dèideag} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}{P bhaga bhaga bagaichean baga} dhe mhìlseanan STR_QUANTITY_COLA :{VOLUME_LONG} dhe chola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} dhe chanach-siùcair STR_QUANTITY_BUBBLES :{COMMA} {P bhuilgean bhuilgean builgeanan builgean} @@ -353,12 +353,12 @@ STR_ABBREV_NONE :{TINY_FONT}Gun STR_ABBREV_ALL :{TINY_FONT}Uile # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} {P taistealach thaistealach taistealaich taistealach} -STR_BAGS :{COMMA} {P bhaga bhaga bagaichean baga} -STR_TONS :{COMMA} {P tunna thunna tunnaichean tunna} -STR_LITERS :{COMMA} {P liotair liotair liotairean liotair} -STR_ITEMS :{COMMA} {P nì nì nithean nì} -STR_CRATES :{COMMA} {P chreat chreat creataichean creat} +STR_PASSENGERS :{COMMA}{NBSP}{P taistealach thaistealach taistealaich taistealach} +STR_BAGS :{COMMA}{NBSP}{P bhaga bhaga bagaichean baga} +STR_TONS :{COMMA}{NBSP}{P tunna thunna tunnaichean tunna} +STR_LITERS :{COMMA}{NBSP}{P liotair liotair liotairean liotair} +STR_ITEMS :{COMMA}{NBSP}{P nì nì nithean nì} +STR_CRATES :{COMMA}{NBSP}{P chreat chreat creataichean creat} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Gorm @@ -379,37 +379,37 @@ STR_COLOUR_GREY :Liath STR_COLOUR_WHITE :Geal # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} {P tunna thunna tunnaichean tunna} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} {P tunna thunna tunnaichean tunna} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}{P tunna thunna tunnaichean tunna} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}{P tunna thunna tunnaichean tunna} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} {P ghalan ghalan galanan galan} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} {P liotair liotair liotairean liotair} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}{P ghalan ghalan galanan galan} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}{P liotair liotair liotairean liotair} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Sreang criathraige: @@ -436,6 +436,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Bàr sgr STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Bàr sgrolaidh - sgrolaich gu deas/gu clì air an liosta STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Leag togalaichean agus msaa. air ceàrnag dhe thìr. Taghaidh Ctrl an roinn gu trastanach. Toglaidh Shift togail/sealladh air tuairmse chosgaisean +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Seall an fheadhainn fhalaichte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Seall an fheadhainn fhalaichte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Seall an fheadhainn fhalaichte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Seall an fheadhainn fhalaichte + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ma chuireas tu am putan seo an comas, thèid na carbadan-rèile falaichte a shealltainn cuideachd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ma chuireas tu am putan seo an comas, thèid na carbadan-rathaid falaichte a shealltainn cuideachd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ma chuireas tu am putan seo an comas, thèid na longan falaichte a shealltainn cuideachd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ma chuireas tu am putan seo an comas, thèid na carbadan-adhair falaichte a shealltainn cuideachd + # Query window STR_BUTTON_DEFAULT :{BLACK}Bunaiteach STR_BUTTON_CANCEL :{BLACK}Sguir dheth @@ -549,7 +560,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Fàg an-seo ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Roghainnean a' gheama -STR_SETTINGS_MENU_CONFIG_SETTINGS :Roghainnean adhartach +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Roghainnean STR_SETTINGS_MENU_SCRIPT_SETTINGS :Roghainnean IF/sgriobt geama STR_SETTINGS_MENU_NEWGRF_SETTINGS :Roghainnean NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Roghainnean trìd-shoilleireachd @@ -1118,10 +1129,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Cairtbheil STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iorànach (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Carbadan-rathaid STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Tagh taobh an rathaid air a dhràibheas na carbadan STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Draibheadh air an taobh chlì @@ -1175,6 +1182,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Dùmhlac STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Tagh dùmhlachd-bhreacaidh na sgrìn a chleachdas tu STR_GAME_OPTIONS_RESOLUTION_OTHER :Gnàthaichte +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_NORMAL :Àbhaisteach +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dà uiread a mheud +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Ceithir uiread a mheud + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Seata grafaigeachd bunasach STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Tagh an seata grafaigeachd bunasach a chleachdas tu STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} {P fhaidhle fhaidhle faidhlichean faidhle} a dhìth/coirbte @@ -1268,6 +1282,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Glè rèidh STR_TERRAIN_TYPE_FLAT :Rèidh STR_TERRAIN_TYPE_HILLY :Cnuic STR_TERRAIN_TYPE_MOUNTAINOUS :Beanntan +STR_TERRAIN_TYPE_ALPINIST :Mòr-bheanntan STR_CITY_APPROVAL_PERMISSIVE :Coibhneil STR_CITY_APPROVAL_TOLERANT :Ceadachail @@ -1275,8 +1290,8 @@ STR_CITY_APPROVAL_HOSTILE :Nàimhdeil STR_WARNING_NO_SUITABLE_AI :{WHITE}Chan eil IF freagarrach ri fhaighinn...{}’S urrainn dhut roghainn dhe IFan a luchdadh a-nuas leis an t-siostam “Susbaint air loidhne" -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Roghainnean adhartach +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Roghainnean STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Sreang criathraige: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Leudaich a h-uile STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Co-theannaich a h-uile @@ -1292,9 +1307,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Roghainnean na STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Roinn-seòrsa: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Seòrsa: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Cuingichidh seo an liosta gu h-ìosal le criathradh ro-shocraichte -STR_CONFIG_SETTING_RESTRICT_BASIC :Roghainnean bunasach -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Roghainnean adhartach -STR_CONFIG_SETTING_RESTRICT_ALL :Roghainnean an eòlaiche / na h-uile roghainn +STR_CONFIG_SETTING_RESTRICT_BASIC :Bunasach (na seall ach roghainnean cudromach) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Adhartach (a’ mhòrchuid dhe na roghainnean) +STR_CONFIG_SETTING_RESTRICT_ALL :Eòlaiche (a h-uile roghainn, a’ gabhail a-steach an fheadhainn neònach) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Roghainnean le luach diofraichte bhon luach bhunaiteach STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Roghainnean le luach diofraichte bho luach nan geamannan ùra agad @@ -1349,6 +1364,9 @@ 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_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_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_CATCHMENT :Ceadaich raointean tionail le meud a tha nas fhìor-riochdail: {STRING} @@ -1377,6 +1395,8 @@ STR_CONFIG_SETTING_INFLATION :Atmhorachd: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Cuir atmhorachd an comas san eaconamaidh is bidh cosgaisean a' dìreadh beagan nas luaithe na pàighidhean STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Faide as motha nan drochaidean: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Chan urrainn dhut drochaidean a thogail a tha nas fhaide na seo +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Àirde as motha dhrochaidean: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :An àirde as motha gus drochaidean a thogail STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Faide as motha nan tunailean: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Chan urrainn dhut tunail a thogail a tha nas fhaide na seo STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Modh togail a làimh aig prìomh ghnìomhachasan: {STRING} @@ -1462,8 +1482,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :An ùine a mhai STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :An ùine a mhaireas brath mearachd ann an uinneag dearg. Thoir an aire nach dùin cuid dhe na brathan as cudromaiche leotha fhèin is gum feum thu an toirt air falbh a làimh. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} {P 0 diog dhiog diogan diog} STR_CONFIG_SETTING_HOVER_DELAY :Seall gliocasan-sgrìn: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Dèan dàil mus tèid gliocasan-sgrìn a shealltainn nuair a chumas mi an luchag os cionn eileamaid na h-eadar-aghaidh. Mar roghainn eile, gabhaidh gliocasan-sgrìn nasgadh ri putan deas na luchaige -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Cùm an luchag os a chionn fad {COMMA} {P 0 diog dhiog diogan diog} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Dèan dàil mus tèid gliocasan-sgrìn a shealltainn nuair a chumas mi an luchag os cionn eileamaid na h-eadar-aghaidh. Mar roghainn eile, thèid gliocasan-sgrìn nasgadh ri putan deas na luchaige ma chuireas tu an luach air 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Cùm an luchag os a chionn fad {COMMA} {P 0 mhille-dhiog mhille-dhiog mille-dhiogan mille-dhiog} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Briogadh deas STR_CONFIG_SETTING_POPULATION_IN_LABEL :Seall àireamh-shluaigh ann an leubail a' bhaile: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Seall àireamh-shluaigh aig bailtean san leubail aca air a' mhapa @@ -1646,7 +1666,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Tha tricead a' STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Tagh an tèid carbad a chur gus obair-chàraidh fhaighinn a-rèir an turais mu dheireadh a fhuair iad càradh air no nuair a bhios earbsachd air lùghdachadh le ceudad sònraichte dhen earbsachd as motha STR_CONFIG_SETTING_SERVINT_TRAINS :Tricead bunaiteach na h-obrach-càraidh air trèanaichean: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Tagh dè cho tric ’s a thèid obair-chàraidh a dhèanamh air carbadan-rèile ùra mura deach tricead a’ chàraidh sònraichte a shuidheachadh airson a' charbaid -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} {P 0 latha latha làithean latha}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}{P 0 latha latha làithean latha}/% STR_CONFIG_SETTING_SERVINT_DISABLED :À comas STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Tricead bunaiteach na h-obrach-càraidh air carbadan-rathaid: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Tagh dè cho tric ’s a thèid obair-chàraidh a dhèanamh air carbadan-rathaid ùra mura deach tricead a’ chàraidh sònraichte a shuidheachadh airson a' charbaid @@ -1786,9 +1806,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Chan eil gin STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Iomadaichear meud nam bailtean aig an toiseach: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Am meud cuibheasach dhe mhòr-bhailtean an coimeas ri bailtean àbhaisteach aig toiseach a' gheama -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Ùraich graf an sgaoilidh gach {STRING} {P 0:2 latha latha làithean latha} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Ùraich graf an sgaoilidh gach {STRING}{NBSP}{P 0:2 latha latha làithean latha} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :An ùine eadar dà ath-àireamhachadh dhe ghraf nan ceangal. Àireamhaichidh gach ath-àireamhachadh na planaichean airson co-phàirt dhen ghraf. Is ciall dha seo nach tèid an graf air fad ùrachadh gach X latha nuair a bhios an luach seo suidhichte air X, ach nach tèid ach co-phàirt ath-àireamhachadh. Mar as giorra a shuidhicheas tu e, ’s ann nas motha dhe ùine an CPU a bhios a dhìth airson an àireamhachadh. Mar as fhaide a shuidhicheas tu e, ’s ann nas fhaide a bheir e gus an tòisich sgaoileadh a' charago air slighean ùra. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Thoir {STRING} {P 0:2 latha latha làithean latha} airson graf an sgaoilidh ath-àireamhachadh +STR_CONFIG_SETTING_LINKGRAPH_TIME :Thoir {STRING}{NBSP}{P 0:2 latha latha làithean latha} airson graf an sgaoilidh ath-àireamhachadh STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :An ùine a bheir gach ath-àireamhachadh aig co-phàirt dhe ghraf nan ceangal. Nuair a thòisichear air ath-àireamhachadh, thèid sreath ùr a ghintinn a ruitheas fad na h-àireimh seo dhe làithean. Mar as giorra a shuidhicheas tu seo, ’s ann nas coltaiche a bhios e nach bi sreath deiseil nuair a bu chòir. Stadaidh an geama an uairsin gus am bidh an sreath deiseil (“dàil”). Mas as fhaide a shuidhicheas tu seo, ’s ann nas fhaide a bheir e gus an tèid an sgaoileadh ùrachadh nuair a dh'atharraicheas slighe. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :a làimh STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :neo-chothromach @@ -1798,7 +1818,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Is ciall dha STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Am modh sgaoilidh airson post: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Is ciall dha “co-chothromach” gun tèid cha mhòr an aon uiread dhe phost a chur o stèisean A gu stèisean B ’s a thèid a chur o stèisean B gu stèisean A. Is ciall dha “neo-chothromach” gun tèid uiread air thuaiream dhe phost a chur dhan dà chomhair. Is ciall dha “a làimh” nach tèid sgaoileadh fèin-obrachail sam bith a dhèanamh airson post. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Am modh sgaoilidh airson an t-seòrsa carago ARMAILTE: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Tha an seòrsa carago ARMAILTE a’ gabhail a-steach seilbh fo gnàth-shìde mheasarra, daoimeanan fo gnàth-shìde fho-thropaigeach is òr fo gnàth-shìde fho-artach. Dh’fhaoidte gun atharraich NewGRF seo. Is ciall dha “co-chothromach” gun tèid cha mhòr an aon uiread dhe charago a chur o stèisean A gu stèisean B ’s a thèid a chur o stèisean B gu stèisean A. Is ciall dha “neo-chothromach” gun tèid uiread air thuaiream a chur dhan dà chomhair. Is ciall dha “a làimh” nach tèid sgaoileadh fèin-obrachail sam bith a dhèanamh airson a’ charago ud. Cha chreid sinn nach eil thu airson seo a shuidheachadh air “neo-chothromach” no “a làimh” nuair a bhios tu a’ cluich le cruth-tìre fo-artach on nach cuir bancaichean òr air ais gu mèinnean òir. Le cruth-tìre measarra no fo-thropaigeach, ’s urrainn dhut “co-chothromach” a thaghadh cuideachd on a chuireas bancaichean seilbh air ais dhan bhanca eile. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Tha an seòrsa carago ARMAILTE a’ gabhail a-steach seilbh fo chruth-tìre measarra, daoimeanan fo chruth-tìre fo-thropaigeach is òr fo chruth-tìre fo-artach. Dh’fhaoidte gun atharraich NewGRF seo. Is ciall dha “co-chothromach” gun tèid timcheall an aon uireid dhe charago a chur o stèisean A gu stèisean B ’s a thèid a chur o stèisean B gu stèisean A. Is ciall dha “neo-chothromach” gun tèid uiread air thuaiream a chur dhan dà chomhair. Is ciall dha “a làimh” nach tèid sgaoileadh fèin-obrachail sam bith a dhèanamh airson a’ charago ud. Mholamaid gun suidhich thu seo air “neo-chothromach” no “a làimh” nuair a bhios tu a’ cluich le cruth-tìre fo-artach on nach cuir bancaicean òr air ais gu mèinnean òir. Le cruth-tìre measarra no fo-thropaigeach, ’s urrainn dhut “co-chothromach” a thaghadh cuideachd on a chuireas bancaichean seilbh air ais dhan bhanca eile. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Am modh sgaoilidh airson seòrsaichean eile dhe charago: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Is ciall dha “neo-chothromach” gun tèid uiread air thuaiream a chur dhan dà chomhair. Is ciall dha “a làimh” nach tèid sgaoileadh fèin-obrachail sam bith a dhèanamh airson a' charago ud. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Pongalachd an sgaoilidh: {STRING} @@ -1811,37 +1831,37 @@ STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Lìonadh nan sl STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Gu tric, tha iomadh slighe eadar dà stèisean ann. Lìonaidh an sgaoileadh carago an t-slighe as giorra an toiseach is an dàrna slighe as giorra an uairsin is mar sin air adhart. Thèid a mheasadh a bheil slighe làn gus nach eil le tuairmse air na ghabhas an t-slighe ris is air a' chleachdadh a th' air a' phlana. Nuair a bhios na h-uile slighe air an lìonadh is rum a dhìth fhathast, thèid luchd a bharrachd a chur air gach slighe is an fheadhainn aig a bheil mòran rum a thaghadh an toiseach. Co-dhiù, cha dèan an algairim tuairmse buileach ceart air an rum mar as trice. Leigidh an roghainn seo leat sònrachadh dè an ceudad aig slighe as giorra a thèid a cleachdadh sa chiad dol a-mach mus tèid an ath shlighe as fhaide a thaghadh. Dèan nas lugha na 100% e ach nach bidh na stèiseanan ro làn nuair a thèid rum a mheas ro mhòr. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Aonadan luaiths: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Nuair a thèid luaths a shealltainn san eadar-aghaidh, seall e sna h-aonadan a thagh thu +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Nuair a thèid luaths a shealltainn san eadar-aghaidh, seall e leis na h-aonadan a thagh thu STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Impireil (mph) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Meatrach (km/h) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Aonadan lùth carabaid: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Nuair a thèid lùth carabaid a shealltainn san eadar-aghaidh, seall e sna h-aonadan a thagh thu +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Nuair a thèid lùth carabaid a shealltainn san eadar-aghaidh, seall e leis na h-aonadan a thagh thu STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Impireil (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Meatrach (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Aonadan cuideim: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Nuair a thèid cuideam a shealltainn san eadar-aghaidh, seall e sna h-aonadan a thagh thu +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Nuair a thèid cuideam a shealltainn san eadar-aghaidh, seall e leis na h-aonadan a thagh thu STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Impireil (t ghoirid/tunna) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Meatrach (t/tunna) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Aonadan tomhais-lìonaidh: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Nuair a thèid tomhas-lìonaidh a shealltainn san eadar-aghaidh, seall e sna h-aonadan a thagh thu +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Nuair a thèid tomhas-lìonaidh a shealltainn san eadar-aghaidh, seall e leis na h-aonadan a thagh thu STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Impireil (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Meatrach (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Aonadan spàirn tàirnge: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Nuair a thèid spàirn tàirnge a shealltainn san eadar-aghaidh, seall i sna h-aonadan a thagh thu +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Nuair a thèid spàirn tàirnge a shealltainn san eadar-aghaidh, seall i leis na h-aonadan a thagh thu STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Impireil (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Meatrach (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Aonadan àirde: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Nuair a thèid àirde a shealltainn san eadar-aghaidh, seall i sna h-aonadan a thagh thu +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Nuair a thèid àirde a shealltainn san eadar-aghaidh, seall i leis na h-aonadan a thagh thu STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Impireil (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Meatrach (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1917,7 +1937,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Ioma-chl STR_INTRO_GAME_OPTIONS :{BLACK}Roghainnean a' gheama STR_INTRO_HIGHSCORE :{BLACK}Clàr nan sgòran àrda -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Roghainnean adhartach +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Roghainnean STR_INTRO_NEWGRF_SETTINGS :{BLACK}Roghainnean NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Susbaint air loidhne STR_INTRO_SCRIPT_SETTINGS :{BLACK}Roghainnean sgriobt IF/Geama @@ -1937,7 +1957,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Tagh an STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Seall roghainnean a' gheama STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Seall clàr nan sgòran àrda -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Seall na roghainnean adhartach +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Roghainnean an t-seallaidh STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Seall na roghainnean NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Thoir sùil airson susbainte ùire no air a h-ùrachadh ri luchdadh a-nuas STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Seall roghainnean sgriobt IF/geama @@ -1977,6 +1997,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}A' clui STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Bulldozer draoidheach (thoir air falbh gnìomhachasan, oibseactan do-ghluasad): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Faodaidh tunailean dol tarsainn càch a chèile: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Cha tachair tubaist (gu tric) le steall-phlèan air port-adhair beag: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Deasaich àirde as motha a’ mhapa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{BLACK}Deasaich an àirde as motha dhe bheanntan air a’ mhapa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Cruth-tìre measarra STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Cruth-tìre fo-artach STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Cruth-tìre fo-thropaigeach @@ -2495,7 +2517,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Tog rath STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Tog trèan-lann (gus trèanaichean a cheannach no obair-chàraidh a dhèanamh orra). Toglaidh Shift togail/sealladh air tuairmse chosgaisean STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Dèan puing-thurais dhe rèile. Ceanglaidh Ctrl puingean-turais ri chèile. Toglaidh Shift togail/sealladh air tuairmse chosgaisean STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Tog stèisean. Ceanglaidh Ctrl stèiseanan ri chèile. Toglaidh Shift togail/sealladh air tuairmse chosgaisean -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Tog comharran rèile. Toglaidh Ctrl eadar comharran saimeafoir/solais{}Slaod gus comharran a thogail rè slighe rèile dìrich. Togaidh Ctrl comharran gu ruige an ath ghobhail{}Toglaidh Ctrl+briogadh a bheil uinneag taghadh nan comharran fosgailte. Toglaidh Shift togail/sealladh air tuairmse chosgaisean +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Tog comharran rèile. Toglaidh Ctrl eadar comharran saimeafoir/solais{}Slaod gus comharran a thogail rè slighe rèile dìrich. Togaidh Ctrl comharran gu ruige an ath ghobhail no comharra{}Toglaidh Ctrl+briogadh a bheil uinneag taghadh nan comharran fosgailte. Toglaidh Shift togail/sealladh air tuairmse chosgaisean STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Tog drochaid rèile. Toglaidh Shift togail/sealladh air tuairmse chosgaisean STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Tog tunail rèile. Toglaidh Shift togail/sealladh air tuairmse chosgaisean STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Toglaich togail/toirt air falbh airson slighe-rèile, comharran, puingean-turais is stèiseanan. Cùm Ctrl sìos gus rèile nam puingean-turais is stèiseanan a thoirt air falbh cuideachd @@ -2894,7 +2916,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tìr a' chompan STR_ABOUT_OPENTTD :{WHITE}Mu dheidhinn OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Còir-lethbhreac tùsail {COPYRIGHT} 1995 Chris Sawyer, a h-uile còir glèidhte STR_ABOUT_VERSION :{BLACK}OpenTTD tionndadh {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 An sgioba OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 An sgioba OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sàbhail an geama @@ -2929,6 +2951,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Bailtean: STR_MAPGEN_DATE :{BLACK}Ceann-latha: 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 @@ -2958,6 +2983,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Ainm a' STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Meud: 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 @@ -3071,14 +3097,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Paramada # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}A' co-thaobhachadh sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}An t-ath sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Lean air adhart dhan ath sprite àbhaisteach, a' gearradh leum thairis air sprites mas fhìor/ath-dhathaidh/crutha-chlò is a' pasgadh aig an deireadh +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Lean air adhart dhan ath sprite àbhaisteach, a' gearradh leum thairis air sprites mas fhìor/ath-dhathaidh/crutha-chlò is a' pasgadh aig an deireadh gun chiad sprite STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Rach dhan sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Rach dhan sprite a thagh thu. Mura h-e sprite àbhaisteach a th' ann, lean air adhart dhan ath-sprite àbhaisteach STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}An sprite roimhe -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Lean air adhart dhan sprite àbhaisteach roimhe, a' gearradh leum thairis air sprites mas fhìor/ath-dhathaidh/crutha-chlò is a' pasgadh aig an toiseach +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Lean air adhart dhan sprite àbhaisteach roimhe, a' gearradh leum thairis air sprites mas fhìor/ath-dhathaidh/crutha-chlò is a' pasgadh aig an toiseach gun sprite mu dheireadh STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Riochdachadh air an sprite a thagh thu an-dràsta. Thèid an co-thaobhadh a chur dhan dàrna taobh nuair a thèid an sprite a tharraing STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Gluais an sprite mu thimcheall, ag atharrachadh nam frith-àireamhan aig X is Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Frith-àireamh X: {NUM}, frith-àireamh Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Ath-shuidhich na frith-àireamhean dàimheach +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Ath-shuidhich na frith-àireamhean dàimheach làithreach +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}frith-àireamh X: {NUM}, frith-àireamh Y: {NUM} (absaloideach) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}frith-àireamh X: {NUM}, frith-àireamh Y: {NUM} (dàimheach) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Tagh sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Tagh sprite bho àite sam bith air an sgrìn @@ -3190,8 +3219,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{BLACK}Feum air STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} air a lìbhrigeadh STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (a dhìth fhathast) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (air lìbhrigeadh) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Fàsaidh am baile gach uile {ORANGE}{COMMA}{BLACK} latha -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Fàsaidh am baile gach uile {ORANGE}{COMMA}{BLACK} latha (maoinichte) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Fàsaidh am baile gach uile {ORANGE}{COMMA}{BLACK}{NBSP}latha +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Fàsaidh am baile gach uile {ORANGE}{COMMA}{BLACK}{NBSP}latha (maoinichte) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{RED}Chan eil {BLACK}am baile a' fàs STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Cuingeachaidhean fuaime sa bhaile: {ORANGE}{COMMA}{BLACK} air a char as motha: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Meadhanaich am prìomh-shealladh air a' bhaile. Fosglaidh Ctrl+briogadh port-seallaidh ùr air ionad a' bhaile @@ -3251,7 +3280,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Fiosrachadh STR_GOAL_QUESTION_CAPTION_WARNING :Rabhadh STR_GOAL_QUESTION_CAPTION_ERROR :Mearachd -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Sguir dheth STR_GOAL_QUESTION_BUTTON_OK :Ceart ma-thà STR_GOAL_QUESTION_BUTTON_NO :Chan eil @@ -3270,6 +3299,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Ath-thòisich STR_GOAL_QUESTION_BUTTON_POSTPONE :Cuir na dhàil STR_GOAL_QUESTION_BUTTON_SURRENDER :Gèill STR_GOAL_QUESTION_BUTTON_CLOSE :Dùin +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Tarrailean @@ -3594,10 +3624,10 @@ STR_PURCHASE_INFO_ALL_BUT :Na h-uile ach { STR_PURCHASE_INFO_MAX_TE :{BLACK}Spàirn tàirnge as motha: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Astar: {GOLD}{COMMA} {P leac leac leacan leac} -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Roghainn nan carbadan-rèile - briog air carbad airson fiosrachaidh -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Roghainn nan carbadan-rathaid - briog air carbad airson fiosrachaidh -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Roghainn nan long - briog air long airson fiosrachaidh -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Roghainn nan carbadan-adhair - briog air carbad airson fiosrachaidh +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Liosta airson carbadan-rèile a thaghadh. Briog air carbad airson fiosrachaidh. Ctrl+briog gus toglachadh an tèid seòrsa a’ charbaid fhalach gus nach tèid +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liosta airson carbadan-rathaid a thaghadh. Briog air carbad airson fiosrachaidh. Ctrl+briog gus toglachadh an tèid seòrsa a’ charbaid fhalach gus nach tèid +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Liosta airson longan a thaghadh. Briog air long airson fiosrachaidh. Ctrl+briog gus toglachadh an tèid seòrsa na luinge fhalach gus nach tèid +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Liosta airson carbadan-adhair a thaghadh. Briog air carbad airson fiosrachaidh. Ctrl+briog gus toglachadh an tèid seòrsa a’ charbaid fhalach gus nach tèid STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Ceannaich carbad STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Ceannaich carbad @@ -3619,6 +3649,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Thoir ai STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Thoir ainm ùr air an t-seòrsa dhe long STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Thoir ainm ùr air an t-seòrsa dhe charbad-adhair +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Falaich +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Falaich +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Falaich +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Falaich + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Seall +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Seall +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Seall +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Seall + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglaich falach/sealltainn seòrsa a’ charbaid-rèile +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglaich falach/sealltainn seòrsa a’ charbaid-rathaid +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglaich falach/sealltainn seòrsa na luinge +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglaich falach/sealltainn seòrsa a’ charbaid-adhair + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Thoir ainm ùr air an t-seòrsa dhe charbad-rèile STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Thoir ainm ùr air an t-seòrsa dhe charbad-rathaid STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Thoir ainm ùr air an t-seòrsa dhe long @@ -3723,6 +3768,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Carbad-rathaid STR_REPLACE_VEHICLE_SHIP :{G=f}Long STR_REPLACE_VEHICLE_AIRCRAFT :Carbad-adhair +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Carbadan ’gan cleachdadh +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Colbh le carbadan a tha leatsa +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Carbadan ri làimh +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Colbh le carbadan ri làimh airson cur ’na àite + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Tagh seòrsa an einnsein airson leasachadh STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Tagh an seòrsa ùr dhen einnsean a bu toil leat a chleachdadh an àite an fhir a thagh thu air an taobh chlì @@ -3847,7 +3897,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Tomhas-l STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Creideas tar-aisig: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Tricead na h-obrach-glèidhidh: {LTBLUE}{COMMA} {P latha latha làithean latha}{BLACK} An obair-ghlèidhidh mu dheireadh: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Tricead na h-obrach-glèidhidh: {LTBLUE}{COMMA}{NBSP}{P latha latha làithean latha}{BLACK} An obair-ghlèidhidh mu dheireadh: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Tricead na h-obrach-glèidhidh: {LTBLUE}{COMMA}%{BLACK} An obair-ghlèidhidh mu dheireadh: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Meudaich tricead na h-obrach-glèidhidh le 10. Meudaichidh Ctrl+briogadh tricead na h-obrach-glèidhidh le 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Lùghdaich tricead na h-obrach-glèidhidh le 10. Lùghdaichidh Ctrl+briogadh tricead na h-obrach-glèidhidh le 5 @@ -4083,8 +4133,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(fuirich fad {S STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(siubhail fad {STRING} gun chlàr-ama) STR_TIMETABLE_STAY_FOR :is fuirich fad {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :is siubhail fad {STRING} -STR_TIMETABLE_DAYS :{COMMA} {P latha latha làithean latha} -STR_TIMETABLE_TICKS :{COMMA} {P diog dhiog diogan diog} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}{P latha latha làithean latha} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}{P diog dhiog diogan diog} STR_TIMETABLE_TOTAL_TIME :{BLACK}Bheir an clàr-ama seo {STRING} airson coileanadh STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Bheir an clàr-ama seo {STRING} air a char as lugha airson coileanadh (cuid dheth gun chlàr-ama) @@ -4322,6 +4372,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Bhiodh a STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... air àirde na mara mu thràth STR_ERROR_TOO_HIGH :{WHITE}... ro àrd STR_ERROR_ALREADY_LEVELLED :{WHITE}... rèidh mu thràth +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Bhiodh a drochaid os a chionn ro àird an uairsin. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Cha ghabh ainm na companaidh atharrachadh... @@ -4348,7 +4399,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... ro f STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... ro fhaisg air baile eile STR_ERROR_TOO_MANY_TOWNS :{WHITE}... tha cus bhailtean ann STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... chan eil rum air fhàgail air a' mhapa -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Cha tog am baile rathad sam bith. ’S urrainn dhut togail rathaidean a chur an comas le Roghainnean adhartach->Eaconamaidh->Bailtean +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Cha tog am baile rathad sam bith. ’S urrainn dhut togail rathaidean a chur an comas le Roghainnean->Àrainneachd->Bailtean STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Rathad ga ath-thogail STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Cha ghabh am baile seo sguabadh às...{}Tha stèisean no port no garaids no trèan-lann no cala no hangar a' toirt iomradh air a' bhaile no tha leac ann a tha leis a' bhaile is nach gabh toirt air falbh STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... chan eil ionad freagarrach airson ìomhaigh ann am meadhan a' bhaile seo @@ -4372,6 +4423,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... cha STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... cha ghabh seo togail ach os cionn na loidhne-sneachda STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... cha ghabh seo togail ach fon loidhne-shneachda +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Chan eil àite iomchaidh gus gnìomhachas “{STRING}” a chur ann +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Atharraich na roghainnean aig gineadair a’ mhapa gus mapa nas fhearr fhaighinn + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Cha ghabh stèisean-rèile togail an-seo... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Cha ghabh stèisean bus togail... @@ -4508,6 +4562,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Feumaidh STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Chan urrainn dhut tòiseachadh is crìochnachadh air an aon àite STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Chan eil an dà cheann aig an drochaid air an aon àirde STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Tha an drochaid ro ìosal airson a' chrutha-tìre seo +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Tha an drochaid ro àrd airson a’ chrutha-thìre seo. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Feumaidh an toiseach is a' chrìoch a bhith air an aon loidhne STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... feumaidh an dà cheann aig an drochaid a bhith air tìr STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... tha an drochaid ro fhada @@ -5228,6 +5283,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (falaichte) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -5263,8 +5319,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/galician.txt b/src/lang/galician.txt index ba89bbbdce..026a8fcc53 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de desprazamento - despraza a lista a esquerda/dereita STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demoler edificios, etc. nun cadrado de terreo. Ctrl selecciona a área en diagonal. Shift alterna construir/amosar custo estimado +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Amosar os agochados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Amosar os agochados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Amosar os agochados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Amosar os agochados + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Habilitando este botón, os trens agochados serán tamén amosados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Habilitando este botón, os vehículos rodados ocultos serán tamén amosados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Habilitando este botón, os barcos agochados serán tamén amosados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Habilitando este botón, as aeronaves agochadas serán amosadas + # Query window STR_BUTTON_DEFAULT :{BLACK}Por defecto STR_BUTTON_CANCEL :{BLACK}Cancelar @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Saír ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opcións do xogo -STR_SETTINGS_MENU_CONFIG_SETTINGS :Configuración avanzada +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Opcións STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configuración da IA/scripts STR_SETTINGS_MENU_NEWGRF_SETTINGS :Configuración NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcións de transparencia @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari xeorxiano STR_GAME_OPTIONS_CURRENCY_IRR :Real iraniano (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehículos de estrada STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selecciona o lado da estrada polo que circularán os vehículos STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conducir pola esquerda @@ -973,6 +980,12 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resoluci STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Selecciona a resolución de pantalla a empregar STR_GAME_OPTIONS_RESOLUTION_OTHER :outra +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_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dobre tamaño + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conxunto básico de gráficos STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecciona o conxunto de gráficos básico a empregar STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} arquivo{P "" s} inexistente{P "" s}/erróneo{P "" s} @@ -987,6 +1000,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Seleccio STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} arquivo{P "" s} corrupto{P "" s} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Información adicional sobre o conxunto de música base +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Erro ao obter a lista de resolucións soportadas STR_ERROR_FULLSCREEN_FAILED :{WHITE}O modo de pantalla completa fallou # Custom currency window @@ -1065,6 +1079,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Moi chan STR_TERRAIN_TYPE_FLAT :Chan STR_TERRAIN_TYPE_HILLY :Accidentado STR_TERRAIN_TYPE_MOUNTAINOUS :Montañoso +STR_TERRAIN_TYPE_ALPINIST :Alpinista STR_CITY_APPROVAL_PERMISSIVE :Permisiva STR_CITY_APPROVAL_TOLERANT :Tolerante @@ -1072,8 +1087,8 @@ STR_CITY_APPROVAL_HOSTILE :Hostil STR_WARNING_NO_SUITABLE_AI :{WHITE}Non hai IA adecuada dispoñíbel...{}Podes descargar varias IAs a través do sistema de contidos online -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Configuración avanzada +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Opcións STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtrar texto: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Expandir todos STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Minimizar todos @@ -1140,6 +1155,9 @@ 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_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_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_CATCHMENT :Permitir áreas de captación máis realistas: {STRING} @@ -1168,6 +1186,8 @@ STR_CONFIG_SETTING_INFLATION :Inflación: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Activa a inflación na economía, onde os custos medran sensibelmente máis rápido ca os pagos STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Luz máxima das pontes: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :A máxima lonxitude das pontes +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altura máxima de pontes: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Altura máxima para pontes construídas STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Lonxitude máxima de túnel: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :A máxima lonxitude dos túneis STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Método de construción manual de industrias primarias: {STRING} @@ -1268,14 +1288,22 @@ STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distancia máxi STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :As refinarías de petróleo só se constrúen preto do borde do mapa, isto é na costa para mapas de illas STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Cota de neve: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Desigualdade do terreo (só TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(só TerraGenesis) Escolle a frequencia de montes: Suaviza as paisaxes tendo menos montes e máis espallados. Paisaxes escarpadas teñen moitos outos, que poderían semellar repetitivos STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Moi suave STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Suave STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Escabroso STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Moi escabroso +STR_CONFIG_SETTING_VARIETY :Distribución da variedade: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(só TerraGenesis) Controla se o mapa contén áreas montañosas ou chás. Como isto só fai o mapa máis chán, outras opcións deberan ser establecidas a montañosas +STR_CONFIG_SETTING_RIVER_AMOUNT :Cantidade de ríos: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Escolle cantos ríos xerar STR_CONFIG_SETTING_TREE_PLACER :Algoritmo de colocación de árbores: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Escolle a distribución das árbores no mapa: 'Orixinal' pranta ábores uniformemente espalladas, 'Mellorado' as pranta en grupos STR_CONFIG_SETTING_TREE_PLACER_NONE :Ningún STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Orixinal STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Mellorado +STR_CONFIG_SETTING_ROAD_SIDE :Vehículos rodados: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Escolle o senso de circulación STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotación do mapa de alturas: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Antihorario STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Horario @@ -1330,6 +1358,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Apagado STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Desprazamento con click esquerdo: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Habilitar o desprazamento do mapa arrastrándoo co botón esquerdo do rato. Isto é especialmente útil se se emprega unha pantalla táctil para desprazarse +STR_CONFIG_SETTING_AUTOSAVE :Autogravado: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Selecciona o intervalo entre gravados automáticos das partidas STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Empregar o formato de data {STRING} para os nomes das partidas gravadas STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Formato da data nos nomes das partidas gravadas @@ -1666,7 +1696,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multixog STR_INTRO_GAME_OPTIONS :{BLACK}Opcións da partida STR_INTRO_HIGHSCORE :{BLACK}Táboa das máximas puntuacións -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Configuración avanzada +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Opcións STR_INTRO_NEWGRF_SETTINGS :{BLACK}Configuración NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Comprobar contido online STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configuración dos scripts de IA @@ -1686,7 +1716,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Seleccio STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Mostra-las opcións da partida STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostrar táboa das máximas puntuacións -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Mostrar a configuración avanzada +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Opcións de visualización STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostra-la configuración de NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Buscar contidos novos e actualizados para descargar STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Motra-la configuración dos scripts de IA @@ -1726,6 +1756,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Xogando STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Escavadora máxica (elimina industrias, obxectos non eliminables): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Os túneis poden cruzarse entre eles: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Os avións jet non se estrelarán (frecuentemente) nos aeroportos pequenos: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Trocar a altura máxima do mapa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Trocar a altura máxima dos montes do mapa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Paisaxe temperada STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Paisaxe subártica STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Paisaxe subtropical @@ -2614,7 +2646,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreo propieda STR_ABOUT_OPENTTD :{WHITE}Acerca de OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright orixinal {COPYRIGHT} 1995 Chris Sawyer, Tódolos dereitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versión {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 O equipo de OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 O equipo de OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Gravar partida @@ -2648,6 +2680,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nº de cidades: STR_MAPGEN_DATE :{BLACK}Data: 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 @@ -2677,6 +2712,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome do STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamaño: 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 @@ -2731,6 +2767,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Subir STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Move-lo arquivo NewGRF seleccionado arriba na lista STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Baixar STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Move-lo arquivo NewGRF seleccionado abaixo na lista +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Actualizar +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Actualizar arquivos NewGRF para os cales tes unha versión máis nova instalada STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Unha lista dos arquivos NewGRF instalados. STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Establecer parámetros @@ -2756,6 +2794,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Desactivad STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Incompatible con esta versión de OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Grava os preaxustes +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Lista de preaxustes dispoñibles, selecciona unha para copiala no nome de gravación de embaixo +STR_SAVE_PRESET_TITLE :{BLACK}Engade un nome para o preestablecido +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Nome seleccionado actualmente para o preestablecido a gravar +STR_SAVE_PRESET_CANCEL :{BLACK}Cancelar +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Non troques o preestablecido +STR_SAVE_PRESET_SAVE :{BLACK}Gravar +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Gravar o establecido ao nome seleccionado actualmente # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Cambiar os parámetros de NewGRF @@ -2787,7 +2833,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite a STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Ir ao sprite anterior, ignorando pseudosprites, sprites recoloreados e sprites de fonte, e volvendo a empezar ao chegar ao inicio STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representación do sprite seleccionado. A aliñación ignórase ao debuxar este sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move-lo sprite, cambiando os valores de X e Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Desp. X: {NUM}, Desp. Y: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Seleccionar sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Seleccionar un sprite en calquera parte da pantalla @@ -2892,7 +2937,7 @@ STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Poboaci STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}Pasaxeiros último mes: {ORANGE}{COMMA}{BLACK} máx: {ORANGE}{COMMA} STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}Correo último mes: {ORANGE}{COMMA}{BLACK} máx: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Carga necesaria para o crecemento da cidade: -STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} necesario{P "" s} +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} necesario STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} necesarios en inverno STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} entregados STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (todavía requeridos) @@ -2958,7 +3003,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Información STR_GOAL_QUESTION_CAPTION_WARNING :Aviso STR_GOAL_QUESTION_CAPTION_ERROR :Erro -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Cancelar STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Non @@ -2977,6 +3022,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Reiniciar STR_GOAL_QUESTION_BUTTON_POSTPONE :Pospoñer STR_GOAL_QUESTION_BUTTON_SURRENDER :Renderse STR_GOAL_QUESTION_BUTTON_CLOSE :Pechar +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subvencións @@ -3321,6 +3367,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Renomea- STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Renomear tipo de barco STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Renomea-lo tipo de avión +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Agochar +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Agochar +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Agochar +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Agochar + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Visualización +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Visualización +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Visualización +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Visualización + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Trocar agochar/amosar tipo de tren +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Trocar agochar/amosar tipo de vehículo rodado +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Trocar agochar/amosar tipo de barco +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Tocar agochar/amosar o tipo de aeronave + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Renomea-lo tipo de vehículo de ferrocarril STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Renomea-lo tipo de vehículo de estrada STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Renomear tipo de barco @@ -3425,6 +3486,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Vehículo de es STR_REPLACE_VEHICLE_SHIP :Barco STR_REPLACE_VEHICLE_AIRCRAFT :Aeronave +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Vehículos en uso +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Columna con vehículos que ti posúes +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Vehículos dispoñibles +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Columna con vehículos dispoñibles para reemprazar + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Selecciona o tipo de máquina a substituír STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Selecciona o tipo da nova máquina que queres usar en lugar do tipo de máquina seleccionado á esquerda @@ -4018,6 +4084,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}A excava STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... xa está ao nivel do mar STR_ERROR_TOO_HIGH :{WHITE}... demasiado alto STR_ERROR_ALREADY_LEVELLED :{WHITE}... xa é plana +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Despois a ponte sobre él será demasiado alta. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Non se pode cambia-lo nome da compañía... @@ -4068,6 +4135,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... o bo STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... só se pode construír sobre a cota de neve STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... só se pode construír baixo a cota de neve +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Non habían lugares axeitados para industrias '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Cambia os parámetros de xeración de mapas para obter un mapa mellor + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Non se pode construír a estación de ferrocarril aí... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Non se pode construí-la estación de autobús... @@ -4204,6 +4274,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Debes de STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Non pode empezar e rematar na mesma posición STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Os estribos da ponte non están o mesmo nivel STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}A ponte é demasiado baixa para o terreo +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}A ponte é demasiado alta para este terreo. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}O inicio e o final deben estar aliñados STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... ambos extremos da ponte deben estar en terra STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... ponte demasiado longa @@ -4765,6 +4836,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (agochado) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4800,8 +4872,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/german.txt b/src/lang/german.txt index 25f6d33ce5..d1d0414b53 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :{G=w}Limonade # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} Passagier{P "" e} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}Passagier{P "" e} STR_QUANTITY_COAL :{WEIGHT_LONG} Kohle -STR_QUANTITY_MAIL :{COMMA} Posts{P ack äcke} +STR_QUANTITY_MAIL :{COMMA}{NBSP}Posts{P ack äcke} STR_QUANTITY_OIL :{VOLUME_LONG} Öl -STR_QUANTITY_LIVESTOCK :{COMMA} Stück Vieh -STR_QUANTITY_GOODS :{COMMA} Warenkiste{P "" n} +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}Stück Vieh +STR_QUANTITY_GOODS :{COMMA}{NBSP}Warenkiste{P "" n} STR_QUANTITY_GRAIN :{WEIGHT_LONG} Getreide STR_QUANTITY_WOOD :{WEIGHT_LONG} Holz STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} Eisenerz STR_QUANTITY_STEEL :{WEIGHT_LONG} Stahl -STR_QUANTITY_VALUABLES :{COMMA} {P Sack Säcke} Wertsachen +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}{P Sack Säcke} Wertsachen STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} Kupfererz STR_QUANTITY_MAIZE :{WEIGHT_LONG} Mais STR_QUANTITY_FRUIT :{WEIGHT_LONG} Früchte -STR_QUANTITY_DIAMONDS :{COMMA} {P Sack Säcke} Diamanten +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}{P Sack Säcke} Diamanten STR_QUANTITY_FOOD :{WEIGHT_LONG} Nahrungsmittel STR_QUANTITY_PAPER :{WEIGHT_LONG} Papier -STR_QUANTITY_GOLD :{COMMA} {P Sack Säcke} Gold +STR_QUANTITY_GOLD :{COMMA}{NBSP}{P Sack Säcke} Gold STR_QUANTITY_WATER :{VOLUME_LONG} Wasser STR_QUANTITY_WHEAT :{WEIGHT_LONG} Weizen STR_QUANTITY_RUBBER :{VOLUME_LONG} Kautschuk STR_QUANTITY_SUGAR :{WEIGHT_LONG} Zucker -STR_QUANTITY_TOYS :{COMMA} Spielzeug{P "" e} -STR_QUANTITY_SWEETS :{COMMA} {P Sack Säcke} Bonbons +STR_QUANTITY_TOYS :{COMMA}{NBSP}Spielzeug{P "" e} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}{P Sack Säcke} Bonbons STR_QUANTITY_COLA :{VOLUME_LONG} Cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} Zuckerwatte STR_QUANTITY_BUBBLES :{COMMA} Luftblase{P "" n} @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}KEIN STR_ABBREV_ALL :{TINY_FONT}ALLE # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} Passagier{P "" e} -STR_BAGS :{COMMA} S{P ack äcke} -STR_TONS :{COMMA} Tonne{P "" n} -STR_LITERS :{COMMA} Liter{P "" ""} -STR_ITEMS :{COMMA} Stück{P "" ""} -STR_CRATES :{COMMA} Kiste{P "" n} +STR_PASSENGERS :{COMMA}{NBSP}Passagier{P "" e} +STR_BAGS :{COMMA}{NBSP}S{P ack äcke} +STR_TONS :{COMMA}{NBSP}Tonne{P "" n} +STR_LITERS :{COMMA}{NBSP}Liter{P "" ""} +STR_ITEMS :{COMMA}{NBSP}Stück{P "" ""} +STR_CRATES :{COMMA}{NBSP}Kiste{P "" n} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Dunkelblau @@ -192,37 +192,37 @@ STR_COLOUR_GREY :Grau STR_COLOUR_WHITE :Weiß # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}PS -STR_UNITS_POWER_METRIC :{COMMA}PS -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}PS +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}PS +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} Tonne{P "" n} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} Tonne{P "" n} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}Tonne{P "" n} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}Tonne{P "" n} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} Gallone{P "" n} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} Liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}Gallone{P "" n} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}Liter +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kp +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kp STR_UNITS_FORCE_SI :{COMMA} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} Fuß -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}Fuß +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Auswahl-Text: @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Bildlauf STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Bildlaufleiste: In der Liste nach links und rechts blättern STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Gebäude etc. von einem Planquadrat abreißen. Strg wählt ein diagonales Gebiet aus. Shift schaltet zwischen Bauen und Kostenvoranschlag um +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Alle einblenden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Alle einblenden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Alle einblenden +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Alle einblenden + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Zeigt auch ausgeblendete Schienenfahrzeuge an +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Zeigt auch ausgeblendete Straßenfahrzeuge an +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Zeigt auch ausgeblendete Schiffe an +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Zeigt auch ausgeblendete Flugzeuge an + # Query window STR_BUTTON_DEFAULT :{BLACK}Standard STR_BUTTON_CANCEL :{BLACK}Abbrechen @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Beenden ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spieleinstellungen -STR_SETTINGS_MENU_CONFIG_SETTINGS :Erweiterte Einstellungen +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Einstellungen STR_SETTINGS_MENU_SCRIPT_SETTINGS :KI- / Skripteinstellungen STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-Einstellungen STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparenzeinstellungen @@ -917,10 +928,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgischer Lar STR_GAME_OPTIONS_CURRENCY_IRR :Iranischer Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Fahrzeuge STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Wähle, auf welcher Straßenseite der Verkehr fahren soll STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Linksverkehr @@ -974,6 +981,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Bildschi STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Bildschirmauflösung auswählen STR_GAME_OPTIONS_RESOLUTION_OTHER :Andere +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Größe der Bedienelemente +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wähle die Größe der Bedienelemente + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Doppelt +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Vierfach + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Basisgrafiken STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Zu benutzendes Set an Basisgrafiken auswählen STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fehlende/fehlerhafte Datei{P "" en} @@ -1067,6 +1081,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Sehr flach STR_TERRAIN_TYPE_FLAT :Flach STR_TERRAIN_TYPE_HILLY :Hügelig STR_TERRAIN_TYPE_MOUNTAINOUS :Bergig +STR_TERRAIN_TYPE_ALPINIST :Alpin STR_CITY_APPROVAL_PERMISSIVE :Hoch STR_CITY_APPROVAL_TOLERANT :Mäßig @@ -1074,8 +1089,8 @@ STR_CITY_APPROVAL_HOSTILE :Gering STR_WARNING_NO_SUITABLE_AI :{WHITE}Keine KI gefunden...{}Verschiedene KI sind via 'Erweiterungen herunterladen' verfügbar -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Erweiterte Einstellungen +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Einstellungen STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Suchtext: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Alles ausklappen STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Alles einklappen @@ -1091,9 +1106,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Firmen-Einstell STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorie: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Art: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Vordefinierte Filter auf die untenstehende Liste anwenden -STR_CONFIG_SETTING_RESTRICT_BASIC :Grundlegende Einstellungen -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Erweiterte Einstellungen -STR_CONFIG_SETTING_RESTRICT_ALL :Alle Einstellungen +STR_CONFIG_SETTING_RESTRICT_BASIC :Grundlegend (Zeigt nur die wichtigsten Einstellungen) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Erweitert (Zeigt die meisten Einstellungen) +STR_CONFIG_SETTING_RESTRICT_ALL :Alle (Zeigt alle Einstellungen, auch die abwegigen) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Einstellungen mit Werten verschieden von OpenTTDs Standardwerten STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Einstellungen mit einem Wert verschieden von den eigenen Einstellungen für neue Spiele @@ -1148,6 +1163,9 @@ 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_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_MAX_HEIGHTLEVEL_HELPTEXT :Setze die maximal erlaubte Höhe für Berge auf der Karte +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_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_CATCHMENT :Verschiedene Stationstypen haben unterschiedlich große Einzugsgebiete: {STRING} @@ -1176,6 +1194,8 @@ STR_CONFIG_SETTING_INFLATION :Inflation: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Inflation einschalten. Beim Spielen mit Inflation steigen die Kosten geringfügig schneller als die Transporteinnahmen STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximallänge für Brücken: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximale Länge für Brücken +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximale Brückenhöhe: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximale Brückenhöhe STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximallänge für Tunnel: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximale Länge für Tunnel STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Manueller Bau von Rohstoffindustrien: {STRING} @@ -1261,8 +1281,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Anzeigedauer f STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Anzeigedauer für Fehlermeldungen in einem roten Fenster. Bedenke, dass einige (kritische) Fehlermeldungen nicht automatisch nach dieser Dauer geschlossen werden sondern manuell geschlossen werden müssen STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} Sekunde{P 0 "" n} STR_CONFIG_SETTING_HOVER_DELAY :Zeige kurzen Hilfetext: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Einstellen, wie lange man zum Aufruf von Hilfetexten zur Erklärung der Funktionen im Spiel mit dem Mauszeiger über der gewünschten Stelle stehenbleiben muss, oder, als Alternative, dass die Hilfetexte bei einem Rechtsklick sofort angezeigt werden sollen -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Nach {COMMA} Sekunde{P 0 "" n} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Einstellen, wie lange man zum Aufruf von Hilfetexten zur Erklärung der Funktionen im Spiel mit dem Mauszeiger über der gewünschten Stelle stehenbleiben muss. Alternativ werden die Hilfetexte bei einem Rechtsklick sofort angezeigt, wenn dieser Wert auf 0 gesetzt wird. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Nach {COMMA} Millisekunde{P 0 "" n} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Rechtsklick STR_CONFIG_SETTING_POPULATION_IN_LABEL :Zeige die Einwohnerzahl von Städten neben ihrem Namen: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Zeige die Einwohneranzahl neben den Städtenamen auf der Karte an @@ -1445,7 +1465,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Wartungsinterva STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Lege fest, ob Fahrzeuge zur Wartung geschickt werden basierend auf der verstrichenen Zeit seit der letzten Wartung oder dem Absinken der Zuverlässigkeit auf einen gewissen Prozentsatz der maximalen Zuverlässigkeit des Fahrzeugtyps STR_CONFIG_SETTING_SERVINT_TRAINS :Standard-Wartungsintervall für Züge: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Setze das Standardwartungsintervall für Schienenfahrzeuge. Dieses Wartungsintervall wird von allen Zügen eingehalten, denen kein individuelles Wartungsintervall zugewiesen worden ist -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} Tag{P 0 "" e}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}Tag{P 0 "" e}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Deaktiviert STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Standard-Wartungsintervall für Straßenfahrzeuge: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Setze das Standardwartungsintervall für Straßenfahrzeuge. Dieses Wartungsintervall wird von allen Fahrzeugen eingehalten, denen kein individuelles Wartungsintervall zugewiesen worden ist @@ -1585,9 +1605,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :keine STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Größe von Großstädten bei Spielbeginn: {STRING}x STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Durchschnittliche Größe von Großstädten relativ zu normalen Städten bei Spielbeginn -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Neuberechnung der Warenverteilung alle: {STRING} Tag{P "" e} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Neuberechnung der Warenverteilung alle: {STRING}{NBSP}Tag{P 0:2 "" e} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Zeit zwischen zwei Neuberechnungen des Verteilungsgraphen. Jede Neuberechnung berechnet die Verteilungspläne für eine Komponente des Graphen. Das heißt dass ein Wert X für diese Einstellung nicht zu einer Neuberechnung der gesamten Verteilung alle X Tage führt, sofern es mehrere getrennte Komponenten gibt. Je kleiner der Wert, desto rechenaufwändiger ist die Berechnung. Je größer er ist, desto länger dauert es bis Änderungen an den Fahrplänen sich auf die Verteilung auswirken. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Laufzeit für jede Neuberechnung der Warenverteilung: {STRING} Tag{P 0:2 "" e} +STR_CONFIG_SETTING_LINKGRAPH_TIME :Laufzeit für jede Neuberechnung der Warenverteilung: {STRING}{NBSP}Tag{P 0:2 "" e} STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Laufzeit für jede Neuberechnung des Verteilungsgraphen. Für jede Neuberechnung wird ein Thread gestartet, der diese Zeit bekommt, um fertig zu werden. Wenn die Zeit gering ist, ist die Wahrscheinlichkeit hoch, dass er zum gegebenen Zeitpunkt noch nicht fertig ist. Das manifestiert sich darin, dass das Spiel "stehen bleibt", bis der Thread fertig wird. Wenn die Zeit sehr lang ist, dauert es länger bis Änderungen an den Fahrplänen sich auf die Verteilung auswirken. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuell STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetrisch @@ -1716,7 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Mehrspie STR_INTRO_GAME_OPTIONS :{BLACK}Spieleinstellungen STR_INTRO_HIGHSCORE :{BLACK}Bestenliste -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Erweiterte Einstellungen +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Einstellungen STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-Einstellungen STR_INTRO_ONLINE_CONTENT :{BLACK}Erweiterungen herunterladen STR_INTRO_SCRIPT_SETTINGS :{BLACK}KI- / Skripteinstellungen @@ -1736,7 +1756,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Spielzeu STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Spieleinstellungen anzeigen und/oder ändern STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Zeige die Bestenliste -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Erweiterte Einstellungen anzeigen und/oder ändern +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Einstellungen anzeigen STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF-Einstellungen anzeigen und/oder ändern STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Prüfe, ob neue oder aktualisierte Erweiterungen zum Herunterladen bereitstehen STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Zeige KI- und Skripteinstellungen @@ -1776,6 +1796,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Spiele STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Mächtigeres Abrisswerkzeug (entfernt Industrien und unbewegliche Objekte): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnel dürfen sich kreuzen: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Düsenflugzeuge stürzen auf kleinen Flughäfen nicht häufiger ab: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Ändere die maximale Höhe auf der Karte: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Die Maximalhöhe von Bergen auf der Karte ändern STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Gemäßigt STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subarktisch STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Subtropisch @@ -2666,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Firmeneigenes G STR_ABOUT_OPENTTD :{WHITE}OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Transport Tycoon-Urheberrecht {COPYRIGHT} 1995 Chris Sawyer, alle Rechte vorbehalten STR_ABOUT_VERSION :{BLACK}OpenTTD-Version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD-Team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-Team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spiel speichern @@ -2701,6 +2723,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Städteanzahl: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Industriedichte: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximalhöhe der Karte: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Die Maximalhöhe von Bergen 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_SNOW_LINE_HEIGHT :{BLACK}Schneegrenze: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Schneegrenze um eine Stufe erhöhen STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Schneegrenze um eine Stufe senken @@ -2730,6 +2755,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Reliefka STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Größe: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Maximalhöhe der Karte ändern STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Höhe der Schneegrenze ändern STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Startjahr ändern @@ -2850,7 +2876,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Vorherig STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Gehe zum vorherigen normalen Sprite und überspringe alle Pseudo-, Recolour- und Schriftsprites (springt ggf. vom letzten bis zum ersten Sprite) STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Darstellung des aktuellen Sprites. Die Ausrichtung wird beim Zeichnen des Sprites ignoriert STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Bewege die Sprites und ändere dadurch die X- und Y-Offsets -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X-Offset: {NUM}, Y-Offset: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Sprite auswählen STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Wähle ein Sprite vom Bildschirm aus @@ -2962,8 +2987,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} geliefert STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (noch benötigt) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (geliefert) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Die Stadt wächst jeden {ORANGE}{COMMA}{BLACK}-ten Tag -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Die Stadt wächst jeden {ORANGE}{COMMA}{BLACK}-ten Tag (finanziert) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Die Stadt wächst jeden {ORANGE}{COMMA}{BLACK}-ten{NBSP}Tag +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Die Stadt wächst jeden {ORANGE}{COMMA}{BLACK}-ten{NBSP}Tag (finanziert) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Die Stadt wächst {RED}nicht{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Lärmbelastung in der Stadt: {ORANGE}{COMMA}{BLACK} Grenzwert: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Hauptansicht zur Stadt scrollen. Strg+Klick öffnet neue Zusatzansicht bei der Stadt @@ -3023,7 +3048,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Hinweis STR_GOAL_QUESTION_CAPTION_WARNING :Warnung STR_GOAL_QUESTION_CAPTION_ERROR :Fehler -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Abbruch STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nein @@ -3042,6 +3067,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Neustart STR_GOAL_QUESTION_BUTTON_POSTPONE :Verschieben STR_GOAL_QUESTION_BUTTON_SURRENDER :Aufgeben STR_GOAL_QUESTION_BUTTON_CLOSE :Schließen +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subventionen @@ -3366,10 +3392,10 @@ STR_PURCHASE_INFO_ALL_BUT :Alles außer {C STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Zugkraft: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Reichweite: {GOLD}{COMMA} Felder -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Schienenfahrzeugsliste - Einzelheiten durch Anklicken des Fahrzeuges -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Straßenfahrzeugsliste - Klicke auf ein Fahrzeug für Einzelheiten -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Schiffsliste - für Einzelheiten auf das Schiff klicken -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Flugzeugliste - Klick auf das Flugzeug zeigt weitere Einzelheiten an +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Schienenfahrzeugsliste - Einzelheiten durch Anklicken des Fahrzeuges. Strg+Klick schaltet um zwischen Verstecken und Zeigen des Fahrzeugtyps +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Straßenfahrzeugsliste - Klicke auf ein Fahrzeug für Einzelheiten. Strg+Klick schaltet um zwischen Verstecken und Zeigen des Fahrzeugtyps +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Schiffsliste - für Einzelheiten auf das Schiff klicken. Strg+Klick schaltet um zwischen Verstecken und Zeigen des Schiffstyps +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Flugzeugliste - Klick auf das Flugzeug zeigt weitere Einzelheiten an. Strg+Klick schaltet um zwischen Verstecken und Zeigen des Fahrzeugtyps STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Fahrzeug kaufen STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Fahrzeug kaufen @@ -3391,6 +3417,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Fahrzeug STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Schiff umbenennen STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Flugzeug umbenennen +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ausblenden +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ausblenden +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Ausblenden +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Ausblenden + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Einblenden +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Einblenden +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Einblenden +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Ausblenden + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Blende das Schienenfahrzeug aus / ein +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Blende das Straßenfahrzeug aus / ein +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Blende das Schiff aus / ein +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Blende das Flugzeug aus / ein + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Zugtyp umbenennen STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Fahrzeug umbenennen STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Schiff umbenennen @@ -3444,7 +3485,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Fahrzeug STR_DEPOT_CLONE_SHIP :{BLACK}Schiff kopieren STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Flugzeug kopieren -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Kauft eine Kopie des Zuges mit allen Waggons. Klicke diese Schaltfläche und dann auf einen Zug innerhalb oder außerhalb des Depots. Strg+Klick erzeugt gemeinsamen Fahrplan. Shift schaltet zwischen Bauen und Kostenvoranschlag um +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Kauft eine Kopie des Zuges mit allen Wagons. Klicke diese Schaltfläche und dann auf einen Zug innerhalb oder außerhalb des Depots. Strg+Klick erzeugt gemeinsamen Fahrplan. Shift schaltet zwischen Bauen und Kostenvoranschlag um STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Kauft eine Kopie des Fahrzeuges. Klicke auf diese Schaltfläche und dann auf ein Fahrzeug innerhalb oder außerhalb des Depots. Strg+Klick erzeugt gemeinsamen Fahrplan. Shift schaltet zwischen Bauen und Kostenvoranschlag um STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Kauft eine Kopie des Schiffes. Klicke diese Schaltfläche und dann auf eine Schiff innerhalb oder außerhalb der Werft. Strg+Klick erzeugt gemeinsamen Fahrplan. Shift schaltet zwischen Bauen und Kostenvoranschlag um STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Kauft eine Kopie des Flugzeuges. Klicke auf diese Schaltfläche und dann auf ein Flugzeug innerhalb oder außerhalb des Hangars. Strg+Klick erzeugt gemeinsamen Fahrplan. Shift schaltet zwischen Bauen und Kostenvoranschlag um @@ -3495,6 +3536,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Straßenfahrzeu STR_REPLACE_VEHICLE_SHIP :Schiff STR_REPLACE_VEHICLE_AIRCRAFT :Flugzeug +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Verwendete Fahrzeuge +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Spalte mit Fahrzeugen aus dem eigenen Besitz +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Verfügbare Fahrzeuge +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Spalte mit verfügbaren Ersatzfahrzeugen + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Zu ersetzenden Fahrzeugtyp auswählen STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Fahrzeugtyp auswählen, der anstelle des links gewählten Typs verwendet werden soll @@ -3619,7 +3665,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapazit STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer-Einnahmen: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Wartungsintervall: {LTBLUE}{COMMA}Tag{P "" e} {BLACK} Letzte Wartung: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Wartungsintervall: {LTBLUE}{COMMA}{NBSP}Tag{P "" e} {BLACK} Letzte Wartung: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Wartungsintervall: {LTBLUE}{COMMA}%{BLACK} Letzte Wartung: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Wartungsintervall um 10 erhöhen. Strg+Klick erhöht um 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Wartungsintervall um 10 verringern. Strg+Klick verringert um 5 @@ -3855,8 +3901,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(warte {STRING} STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(fahre {STRING}, ohne Fahrplan) STR_TIMETABLE_STAY_FOR :und {STRING} lang bleiben STR_TIMETABLE_AND_TRAVEL_FOR :und {STRING} lang unterwegs -STR_TIMETABLE_DAYS :{COMMA} Tag{P "" e} -STR_TIMETABLE_TICKS :{COMMA} Tick{P "" s} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}Tag{P "" e} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}Tick{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}Dieser Fahrplan benötigt {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Dieser Fahrplan benötigt mindestens {STRING} (nicht alle geplant) @@ -4094,6 +4140,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Die Auss STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... ist bereits auf Meereshöhe STR_ERROR_TOO_HIGH :{WHITE}... zu hoch STR_ERROR_ALREADY_LEVELLED :{WHITE}... ist schon flach +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Anschließend wäre die Brücke darüber zu hoch. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Firmenname kann nicht geändert werden... @@ -4120,7 +4167,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... zu d STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... zu dicht an einer anderen Stadt STR_ERROR_TOO_MANY_TOWNS :{WHITE}... zu viele Städte STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... es ist kein Platz mehr auf dem Spielfeld -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Städte bauen im Moment keine Straßen. Städtischer Straßenbau kann mittels Erweiterte Einstellungen->Wirtschaft->Städte eingestellt werden +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Städte bauen im Moment keine Straßen. Städtischer Straßenbau kann mittels Einstellungen->Umgebung->Städte eingestellt werden STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Straßenarbeiten sind im Gange STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Stadt kann nicht gelöscht werden...{}Eine Station oder ein Depot bezieht sich auf diese Stadt oder ein Feld im städtischen Besitz kann nicht entfernt werden. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... es gibt keinen geeigneten Standort für die Statue im Zentrum dieser Stadt @@ -4144,6 +4191,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... Wald STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kann nur oberhalb der Schneegrenze errichtet werden STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kann nur unterhalb der Schneegrenze errichtet werden +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Es konnten für die Industrie '{STRING}' keine geeigneten Standorte gefunden werden +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Ändere die Karteneinstellungen, um eine bessere Karte zu erzeugen + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Bahnhof kann hier nicht gebaut werden... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Bushaltestelle kann nicht gebaut werden... @@ -4280,6 +4330,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Die Brü STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Anfang und Ende können nicht im selben Feld liegen STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Brückenköpfe nicht auf der selben Höhe STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Die Brücke ist zu niedrig für diese Umgebung +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Brücke ist zu hoch für dieses Terrain. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Anfang und Ende müssen auf einer Linie liegen STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... Brücke muss an beiden Seiten auf Land enden STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... Brücke zu lang @@ -4575,7 +4626,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WOOD_TRUCK :Holzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_IRON_ORE_HOPPER :Eisenerzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_STEEL_TRUCK :Stahltransporter STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_ARMORED_VAN :Sicherheitstransporter -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FOOD_VAN :Lebensmitteltransporter +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FOOD_VAN :Nahrungstransporter STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PAPER_TRUCK :Papiertransporter STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COPPER_ORE_HOPPER :Kupfererzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WATER_TANKER :Wassertanker @@ -4605,7 +4656,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_WOOD_TRUCK :Holzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_IRON_ORE_HOPPER :Eisenerzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_STEEL_TRUCK :Stahltransporter STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_ARMORED_VAN :Sicherheitstransporter -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FOOD_VAN :Lebensmitteltransporter +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FOOD_VAN :Nahrungstransporter STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PAPER_TRUCK :Papiertransporter STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COPPER_ORE_HOPPER :Kupfererzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_WATER_TANKER :Wassertanker @@ -4637,7 +4688,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_WOOD_TRUCK :Holzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_IRON_ORE_HOPPER :Eisenerzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_STEEL_TRUCK :Stahltransporter STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_ARMORED_VAN :Sicherheitstransporter -STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_FOOD_VAN :Lebensmitteltransporter +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_FOOD_VAN :Nahrungstransporter STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PAPER_TRUCK :Papiertransporter STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COPPER_ORE_HOPPER :Kupfererzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_WATER_TANKER :Wassertanker @@ -4844,6 +4895,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (ausgeblendet) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4879,8 +4931,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/greek.txt b/src/lang/greek.txt index 3fe3fa5b49..90892a02ea 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -158,30 +158,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.subs :{G=n}Αναψυ # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} επιβάτ{P ης ες} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}επιβάτ{P ης ες} STR_QUANTITY_COAL :{WEIGHT_LONG} άνθρακα -STR_QUANTITY_MAIL :{COMMA} σάκο{P ς ι} με αλληλογραφία +STR_QUANTITY_MAIL :{COMMA}{NBSP}σάκο{P ς ι} με αλληλογραφία STR_QUANTITY_OIL :{VOLUME_LONG} πετρελαίου -STR_QUANTITY_LIVESTOCK :{COMMA} τεμάχι{P ο α} ζώων -STR_QUANTITY_GOODS :{COMMA} κιβώτι{P ο α} αγαθών +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}τεμάχι{P ο α} ζώων +STR_QUANTITY_GOODS :{COMMA}{NBSP}κιβώτι{P ο α} αγαθών STR_QUANTITY_GRAIN :{WEIGHT_LONG} σιτηρών STR_QUANTITY_WOOD :{WEIGHT_LONG} ξύλου STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} μεταλλεύματος σιδήρου STR_QUANTITY_STEEL :{WEIGHT_LONG} χάλυβα -STR_QUANTITY_VALUABLES :{COMMA} σάκ{P ος οι} με πολύτιμα είδη +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}σάκ{P ος οι} με πολύτιμα είδη STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} μεταλλεύματος χαλκού STR_QUANTITY_MAIZE :{WEIGHT_LONG} καλαμποκιού STR_QUANTITY_FRUIT :{WEIGHT_LONG} φρούτων -STR_QUANTITY_DIAMONDS :{COMMA} σάκ{P ος οι} με διαμάντια +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}σάκ{P ος οι} με διαμάντια STR_QUANTITY_FOOD :{WEIGHT_LONG} τροφίμων STR_QUANTITY_PAPER :{WEIGHT_LONG} χαρτιού -STR_QUANTITY_GOLD :{COMMA} σάκ{P ος οι} με χρυσό +STR_QUANTITY_GOLD :{COMMA}{NBSP}σάκ{P ος οι} με χρυσό STR_QUANTITY_WATER :{VOLUME_LONG} νερού STR_QUANTITY_WHEAT :{WEIGHT_LONG} σιταριού STR_QUANTITY_RUBBER :{VOLUME_LONG} λάστιχου STR_QUANTITY_SUGAR :{WEIGHT_LONG} ζάχαρης -STR_QUANTITY_TOYS :{COMMA} παιχνίδι{P "" α} -STR_QUANTITY_SWEETS :{COMMA} σάκ{P ος οι} με γλυκά +STR_QUANTITY_TOYS :{COMMA}{NBSP}παιχνίδι{P "" α} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}σάκ{P ος οι} με γλυκά STR_QUANTITY_COLA :{VOLUME_LONG} κόλας STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} μαλλιού της γριάς STR_QUANTITY_BUBBLES :{COMMA} φυσαλίδ{P α ες} @@ -228,12 +228,12 @@ STR_ABBREV_NONE :{TINY_FONT}ΤΠ STR_ABBREV_ALL :{TINY_FONT}ΟΛΑ # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} επιβάτ{P ης ες} -STR_BAGS :{COMMA} σάκκ {P ος οι} -STR_TONS :{COMMA} τόνο{P ς οι} -STR_LITERS :{COMMA} λίτρ{P ο α} -STR_ITEMS :{COMMA} αντικείμεν{P ο α} -STR_CRATES :{COMMA} κουτ{P ί ιά} +STR_PASSENGERS :{COMMA}{NBSP}επιβάτ{P ης ες} +STR_BAGS :{COMMA}{NBSP}σάκκ {P ος οι} +STR_TONS :{COMMA}{NBSP}τόνο{P ς οι} +STR_LITERS :{COMMA}{NBSP}λίτρ{P ο α} +STR_ITEMS :{COMMA}{NBSP}αντικείμεν{P ο α} +STR_CRATES :{COMMA}{NBSP}κουτ{P ί ιά} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Σκούρο Μπλε @@ -254,37 +254,37 @@ STR_COLOUR_GREY :Γκρι STR_COLOUR_WHITE :Λευκό # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} χλμ/ω -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}χλμ/ω +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} τόνο{P ς ι} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} τόνο{P ς ι} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}τόνο{P ς ι} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}τόνο{P ς ι} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}γαλ -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}λ -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}γαλ +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}λ +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} γαλόν{P "ι" "ια"} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} λίτρ{P ο α} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}γαλόν{P "ι" "ια"} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}λίτρ{P ο α} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} πόδια -STR_UNITS_HEIGHT_METRIC :{COMMA} μ -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}πόδια +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}μ +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Φιλτράρισμα λίστας: @@ -311,6 +311,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Μπάρ STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Μπάρα κίνησης - κινεί τη λίστα αριστερά/δεξιά STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Κατεδάφιση κτιρίων κλπ. σε συγκεκριμένο τετράγωνο. Με Ctrl επιλέγεται μια επιφάνεια διαγώνια. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους +# 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 STR_BUTTON_DEFAULT :{BLACK}Προεπιλογή STR_BUTTON_CANCEL :{BLACK}Ακύρωση @@ -423,7 +434,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Έξοδος ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Επιλογές παιχνιδιού -STR_SETTINGS_MENU_CONFIG_SETTINGS :Προχωρημένες ρυθμίσεις +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ρυθμίσεις STR_SETTINGS_MENU_SCRIPT_SETTINGS :Ρυθμίσεις ΑΙ και Δέσμης Ενεργειών STR_SETTINGS_MENU_NEWGRF_SETTINGS :Ρυθμίσεις NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Επιλογές διαφάνειας @@ -449,6 +460,7 @@ STR_FILE_MENU_EXIT :Έξοδος # map menu STR_MAP_MENU_MAP_OF_WORLD :Χάρτης του κόσμου STR_MAP_MENU_EXTRA_VIEW_PORT :Πρόσθετη εμφάνιση +STR_MAP_MENU_LINGRAPH_LEGEND :Υπόμνημα Ροής Φορτίου STR_MAP_MENU_SIGN_LIST :Λίστα πινακίδων ############ range for town menu starts @@ -799,12 +811,14 @@ STR_SMALLMAP_CAPTION :{WHITE}Χάρτ STR_SMALLMAP_TYPE_CONTOURS :Περιγράμματα STR_SMALLMAP_TYPE_VEHICLES :Οχήματα STR_SMALLMAP_TYPE_INDUSTRIES :Βιομηχανίες +STR_SMALLMAP_TYPE_ROUTEMAP :Ροή Φορτίου STR_SMALLMAP_TYPE_ROUTES :Διαδρομές STR_SMALLMAP_TYPE_VEGETATION :Βλάστηση STR_SMALLMAP_TYPE_OWNERS :Ιδιοκτήτες STR_SMALLMAP_TOOLTIP_SHOW_LAND_CONTOURS_ON_MAP :{BLACK}Εμφανίστε περιγράμματα εδάφους στον χάρτη STR_SMALLMAP_TOOLTIP_SHOW_VEHICLES_ON_MAP :{BLACK}Εμφανίστε οχήματα στον χάρτη STR_SMALLMAP_TOOLTIP_SHOW_INDUSTRIES_ON_MAP :{BLACK}Εμφανίστε βιομηχανίες στον χάρτη +STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Εμφάνιση ροής φορτίων στο χάρτη STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Εμφανίστε μεταφορικούς οδούς στον χάρτη STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Εμφανίστε βλάστηση στον χάρτη STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Εμφανίστε ιδιοκτήτες γης στον χάρτη @@ -854,6 +868,8 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Εμφά STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Εναλλάγη εμφάνισης υψομετρικού χάρτη STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Απόκρυψη όλων των ιδιοκτησιών των εταιριών στον χάρτη STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Εμφάνιση όλων των ιδιοκτησιών των εταιριών στον χάρτη +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Απόκρυψη όλων των φορτίων στο χάρτη +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Εμφάνιση όλων των φορτίων στο χάρτη # Status bar messages STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Εμφάνιση τελευταίου μηνύματος ή αναφοράς νέων @@ -935,6 +951,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}Το {VE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}Το {VEHICLE} έχει μη έγκυρη εντολή STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}Το {VEHICLE} έχει διπλή εντολή STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}Το {VEHICLE} έχει μη έγκυρο σταθμό στις εντολές του +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}Το όχημα {VEHICLE} έχει στους προορισμούς του ένα αεροδρόμιο με πολύ μικρό αεροδιάδρομο STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}Το {VEHICLE} αρχίζει να παλιώνει STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}Το {VEHICLE} ξεπερνά το όριο ηλικίας @@ -1017,10 +1034,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Γεοργια STR_GAME_OPTIONS_CURRENCY_IRR :Ιρανικό Ριάλ (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Οχήματα δρόμου STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Επιλογή πλευράς δρόμου όπου τα οχήματα οδηγούν STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Οδηγούν από αριστερά @@ -1074,6 +1087,11 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ανάλ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Διαλέξτε την ανάλυση της οθόνης που θέλετε STR_GAME_OPTIONS_RESOLUTION_OTHER :άλλη + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Κανονικό +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Διπλό μέγεθος +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Τετραπλό μέγεθος + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Βασικό σετ γραφικών STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Επιλογή του βασικού σετ γραφικών που θα χρησιμοποιηθεί STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} αρχεί{P ο α} που λείπ{P ει ουν} ή είναι κατεστραμμέν{P ο α} @@ -1088,6 +1106,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Επιλ STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} κατεστραμμέν{P ο α} αρχεί{P ο α} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Επιπλέον πληροφορίες σχετικά με το βασικό σετ μουσικής +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Αποτυχία ανάκτησης λίστας υποστηριζόμενων αναλύσεων STR_ERROR_FULLSCREEN_FAILED :{WHITE}Θέση του παιχνιδιού σε λειτουργία πλήρης οθόνης απέτυχε # Custom currency window @@ -1173,8 +1192,8 @@ STR_CITY_APPROVAL_HOSTILE :Εχθρική STR_WARNING_NO_SUITABLE_AI :{WHITE}Δεν είναι διαθέσιμο κανένα κατάλληλο Al...{}Μπορείτε να κατεβάσετε AIs μέσω του συστήματος «Διαδικτυακού Περιεχομένου» -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Προηγμένες Ρυθμίσεις +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Ρυθμίσεις STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Φιλτράρισμα: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Επέκταση όλων STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Σύμπτυξη όλων @@ -1189,10 +1208,10 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Ρύθμιση STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Κατηγορία: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Τύπος: -STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Μειώνει την παρακάτω λίστα προβάλλοντας μόνο αλλαγμένες ρυθμίσεις -STR_CONFIG_SETTING_RESTRICT_BASIC :Βασικές ρυθμίσεις -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Προχωρημένες ρυθμίσεις -STR_CONFIG_SETTING_RESTRICT_ALL :Προχωρημένες ρυθμίσεις / όλες οι ρυθμίσεις +STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Περιορίζει την παρακάτω λίστα με τη χρήση προκαθορισμένων φίλτρων +STR_CONFIG_SETTING_RESTRICT_BASIC :Βασικές (εμφάνιση μόνο σημαντικών ρυθμίσεων) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Για προχωρημένους (εμφάνιση των περισσότερων ρυθμίσεων) +STR_CONFIG_SETTING_RESTRICT_ALL :Για ειδικούς (εμφάνιση όλων των ρυθμίσεων, ακομη και παράξενων) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Ρυθμίσεις με διαφορετική τιμή από την προκαθωρισμένη STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Ρυθμίσεις με διαφορετική τιμή από τις ρυθμίσεις νέου παιχνιδιού σας @@ -1202,7 +1221,7 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Ρυθμίσε STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Ρυθμίσεις παιχνιδιού (διατηρούνται στις αποθηκεύσεις· επηρεάζουν μόνο τα νέα παιχνίδια) STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Ρυθμίσεις παιχνιδιού (διατηρούνται στις αποθηκεύσεις· επηρεάζουν μόνο το τρέχον παιχνίδι) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Ρυθμίσεις εταιρίας (διατηρούνται στις αποθηκεύσεις· επηρεάζουν μόνο τα νέα παιχνίδια) -STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Ρυθμίσεις εταιρίας (διατηρούνται στις αποθηκεύσεις· επηρεάζουν μόνο την τωρινή εταιρία) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Ρυθμίσεις εταιρίας (διατηρούνται στις αποθηκεύσεις· επηρεάζουν μόνο την τρέχουσα εταιρία) STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Εμφάνιση όλων των αποτελεσμάτων αναζήτησης ανά ρύθμιση{}{SILVER}Κατηγορία {BLACK}εώς {WHITE}{STRING} STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Εμφάνιση όλων των αποτελεσμάτων αναζήτησης ανά ρύθμιση{}{SILVER}Τύπος {BLACK}εώς {WHITE}Όλοι οι τύποι ρυθμίσεων STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Εμφάνιση όλων των αποτελεσμάτων αναζήτησης ανά ρύθμιση{}{SILVER}Κατηγορία {BLACK}εώς {WHITE}{STRING} {BLACK}και {SILVER}Τύπος {BLACK}εώς {WHITE}Όλοι οι τύποι ρυθμίσεων @@ -1243,9 +1262,11 @@ STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Όταν είν STR_CONFIG_SETTING_TRAIN_REVERSING :Απαγορεύεται η αντιστροφή τρένων στους σταθμούς: {STRING} STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Όταν είναι ενεργοποιημένο, τα τρένα δεν θα κάνουν όπισθεν σε μη-τελικούς σταθμούς, ακόμα και εάν υπάρχει κοντινότερη διαδρομή προς τον επόμενή τους προορισμό όταν κάνουν όπισθεν STR_CONFIG_SETTING_DISASTERS :Καταστροφές: {STRING} -STR_CONFIG_SETTING_CITY_APPROVAL :Στάση δημοτικού συμβουλίου προς τον μετασχηματισμό της περιοχής: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL :Στάση δημοτικού συμβουλίου ως προς τον μετασχηματισμό της περιοχής: {STRING} -STR_CONFIG_SETTING_AUTOSLOPE :Να επιτρέπεται η διαμόρφωση εδάφους κάτω από κτίρια, γραμμές, κλπ. (αυτόματη κλίση): {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Μέγιστο ύψος χάρτη: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Ορισμός του μέγιστου επιτρεπτού ύψους βουνών στο χάρτη +STR_CONFIG_SETTING_AUTOSLOPE :Να επιτρέπεται η διαμόρφωση εδάφους κάτω από κτίρια, γραμμές, κλπ.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Επιτρέπεται η διαμόρφωση του εδάφους κάτω από κτίρια και σιδηροτροχιές χωρίς αυτά να αφαιρούνται STR_CONFIG_SETTING_CATCHMENT :Επιτρέπονται πιο ρεαλιστικά ταξινομημένες περιοχές συλλογής : {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Διαφορετικοί σταθμοί και αεροδρόμια έχουν περιοχές κάλυψης διαφορετικού μεγέθους @@ -1273,13 +1294,15 @@ STR_CONFIG_SETTING_INFLATION :Πληθωρι STR_CONFIG_SETTING_INFLATION_HELPTEXT :Ενεργοποίηση του πληθωρισμού στην οικονομία, όπου τα κόστη αυξάνονται ελάχιστα ταχύτερα από τις πληρωμές STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Μέγιστο μήκος γέφυρας: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Μέγιστο μήκος για κτίσιμο γεφυρών +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Μέγιστο ύψος γέφυρας: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Μέγιστο ύψος για το χτίσιμο γεφυρών STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Μέγιστο μήκος σήραγγας: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Μέγιστο μήκος για κτίσιμο συράγγων STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Χειροκίνητη μέθοδος κατασκευής βιομηχανιών πρώτων υλών: {STRING} STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Μέθοδος χρηματοδότησης πρωτογενούς βιομηχανίας. «Καμία» σημαίνει ότι δεν γίνεται να χρηματοδοτηθεί καμία βιομηχανία, «Αναζήτηση» σημαίνει ότι η χρηματοδότηση είναι εφικτή, αλλά η κατασκευή πραγματοποιείται σε τυχαίο σημείο του χάρτη και είναι πιθανό να αποτύχει, «Όπως οι άλλες βιομηχανίες» σημαίνει πως οι πρωτογενείς βιομηχανίες είναι εφικτό να κατασκευαστούν από εταιρείες όπως οι δευτερογενείς βιομηχανίες σε οποιαδήποτε θέση θέλουν STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Καμία STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Όπως οι άλλες βιομηχανίες -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Αναζήτηση +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Διερεύνηση προοπτικών STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Επίπεδη περιοχή γύρω από βιομηχανίες: {STRING} STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Επίπεδος χώρος γύρω από μια βιομηχανία. Αυτό εξασφαλίζει ότι θα παραμείνει διαθέσιμος κενός χώρος γύρω από μια βιομηχανία για να κτισθούν γραμμές, κλπ STR_CONFIG_SETTING_MULTIPINDTOWN :Επιτρέπονται πολλαπλές όμοιες βιομηχανίες ανά πόλη: {STRING} @@ -1348,7 +1371,7 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Τα οχήμα STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Όταν είναι ενεργοποιημένη, όλα τα μοντέλα οχημάτων παραμένουν διαθέσιμα για πάντα μετά την παρουσίασή τους STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Αυτόματη ανανέωση όταν ένα όχημα παλιώνει: {STRING} STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Όταν είναι ενεργοποιημένη, τα οχήματα που πλησιάζουν το τέλος της ζωής τους αντικαθίσταται αυτόματα όταν πληρούνται οι προϋποθέσεις αντικατάστασής του -STR_CONFIG_SETTING_AUTORENEW_MONTHS :Αυτόματη αντικατάστηση όταν κάποιο όχημα είναι {STRING} μέγιστης ηλικίας +STR_CONFIG_SETTING_AUTORENEW_MONTHS :Αυτόματη αντικατάστηση όταν το όχημα είναι {STRING} μέγιστης ηλικίας STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Σχετική ηλικία κατά την οποία κάποιο όχημα θα πρέπει να εξεταστεί για αυτόματη ανανέωση STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} μήν{P 0 α ες} πριν STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} μήν{P 0 α ες} μετά @@ -1358,17 +1381,20 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Διάρκει STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Διάρκεια εμφάνισης μηνύματων σφάλματος σε κόκκινο παράθυρο. Σημειώστε ότι μερικά (κρίσιμα) μηνύματα σφάλματος δεν κλείνουν αυτόματα μετά από αυτόν τον χρόνο, αλλά πρέπει να κλείσουν χειροκίνητα STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} δευτερόλεπτ{P 0 ο α} STR_CONFIG_SETTING_HOVER_DELAY :Εμφάνιση αναδυόμενων μηνυμάτων: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Καθυστέρηση πριν την εμφάνιση των επεξηγήσεων όταν ο κέρσορας βρίσκεται πάνω από κάποιο στοιχείο της διεπαφής. Εναλλακτικά, οι επεξηγήσεις μπορούν να συνδεθούν με το δεξί κουμπί του ποντικιού -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Ο κέρσορας βρίσκεται από πάνω για {COMMA} δευτερόλεπτ{P 0 ο α} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Καθυστέρηση πριν την εμφάνιση των επεξηγήσεων όταν ο δείκτης του ποντικιού βρίσκεται πάνω από κάποιο στοιχείο της διεπαφής. Εναλλακτικά, οι επεξηγήσεις συνδέονται με το δεξί κουμπί του ποντικιού όταν η τιμή αυτού του πεδίου είναι 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Ο δείκτης του ποντικιού να βρίσκεται από πάνω για {COMMA} δευτερόλεπτ{P 0 ο α} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Δεξί κουμπί STR_CONFIG_SETTING_POPULATION_IN_LABEL :Εμφάνιση πληθυσμού πόλης στο όνομα της πόλης: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Εμφάνιση του πληθυσμού των πόλεων στην ετικέτα τους πάνω στο χάρτη STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Πάχος γραμμών στα γραφήματα: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Πάχος γραμμών στα γραφήματα. Οι λεπτές γραμμές διαβάζονται με μεγαλύτερη ακρίβεια, οι παχύτερες είναι πιο ευδιάκριτες και τα χρώματα ξεχωρίσουν ευκολότερα +STR_CONFIG_SETTING_LANDSCAPE :Τοπίο: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR :Γεννήτρια γης: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Αυθεντική STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Σχηματισμός εδάφους: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Πυκνότητα βιομηχανιών: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Μέγιστη απόσταση από την άκρη του χάρτη για τα Διυλιστήρια: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Τα Διυλιστήρια κατασκευάζονται κοντά στην άκρη του χάρτη, η οποία είναι ακτή σε νησιωτικούς χάρτες STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Κορυφογραμμή χιονιού: {STRING} @@ -1377,10 +1403,14 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Πολύ Απα STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Απαλή STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Ανώμαλη STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Πολύ Ανώμαλη +STR_CONFIG_SETTING_RIVER_AMOUNT :Πλήθος ποταμών: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Επιλέξτε πόσα ποτάμια να δημιουργηθούν STR_CONFIG_SETTING_TREE_PLACER :Αλγόριθμος τοποθέτησης δέντρων: {STRING} STR_CONFIG_SETTING_TREE_PLACER_NONE :Κανένας STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Αυθεντικός STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Βελτιωμένος +STR_CONFIG_SETTING_ROAD_SIDE :Οχήματα δρόμου: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Επιλέξτε την πλευρά οδήγησης STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Περιστροφή χάρτη υψομετρίας: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Αριστερόστροφη STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Δεξιόστροφη @@ -1434,6 +1464,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Απενεργ STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Μετάβαση με αριστερό κλικ: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Ενεργοποίηση της κύλισης του χάρτη σύροντας τον με το αριστερό κουμπί του ποντικιού. Αυτό είναι ιδιαίτερα χρήσιμο για την κύλιση όταν χρησιμοποιείται οθόνη αφής +STR_CONFIG_SETTING_AUTOSAVE :Αυτόματο σώσιμο: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Επιλέξτε το διάστημα ανάμεσα σε δυο διαδοχικά σωσίματα του παιχνιδιου STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Χρήση της {STRING} ημερολογιακής μορφής στα ονόματα αποθηκευμένων παιχνιδιών STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Μορφή της ημερομηνίας στα αρχεία αποθήκευσης παιχνιδιών @@ -1449,7 +1481,7 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Καμία εν STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Όλες οι μη κατασκευαστικές ενέργειες STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Όλες εκτός από τις ενέργειες διαμόρφωσης τοπίου STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Όλες οι ενέργειες -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Χρήση της προχωρημένης λίστας οχημάτων: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Χρήση ομάδων στη λίστα οχημάτων: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Ενεργοποίηση χρήσης των προχωρημένων καταλόγων οχημάτων για την ομαδοποίηση των οχημάτων STR_CONFIG_SETTING_LOADING_INDICATORS :Χρήση δεικτών φόρτωσης: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Επιλέξτε εάν οι δείκτες φόρτωσης εμφανίζονται πάνω από τα οχήματα που φορτώνουν ή ξεφορτώνουν @@ -1464,7 +1496,7 @@ STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Επιλογή STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :Πρώτος διαθέσιμος STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :Τελευταίος διαθέσιμος STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :Περισσότερο χρησιμοποιούμενος -STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Εμφάνιση κλεισμένων γραμμών: {STRING} +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Εμφάνιση δεσμέυσεων διαδρομών για γραμμές τραίνου: {STRING} STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Δίνεται ένα διαφορετικό χρώμα στις κατειλημμένες ράγες για να σας βοηθήσουν με προβλήματα όταν τα τραίνα αρνούνται να εισέλθουν σε τμήματα με βάση τροχιές STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Διατήρηση των οικοδομικών εργαλείων ενεργών μετά από χρήση τους: {STRING} STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Διατήρηση ανοικτών των εργαλείων για γέφυρες, σήραγγες, κλπ μετά από τη χρήση @@ -1479,6 +1511,7 @@ STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Παίζει η STR_CONFIG_SETTING_SOUND_CONFIRM :Οικοδομή: {STRING} STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Παίζει ηχητικό εφέ σε επιτυχής οικοδομές ή άλλες δράσεις STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Παίζει ήχο όταν γίνεται κλικ σε κουμπιά +STR_CONFIG_SETTING_SOUND_DISASTER :Καταστροφές/ατυχήματα: {STRING} STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Παίζει ήχους για ατυχήματα και συμφορές STR_CONFIG_SETTING_SOUND_VEHICLE :Οχήματα: {STRING} STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Παίζει τα ηχητικά εφέ των οχημάτων @@ -1489,11 +1522,11 @@ STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Απενεργ STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Όταν είναι ενεργοποιημένο, οι υποδομές είναι διαθέσιμες μόνο όταν υπάρχουν διαθέσιμα οχήματα, αποτρέποντας σπατάλη χρόνου και χρημάτων σε μη χρησιμοποιήσιμες υποδομές STR_CONFIG_SETTING_MAX_TRAINS :Μέγιστος αριθμός τρένων ανά εταιρία: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Μέγιστος αριθμός τραίνων που μπορεί να έχει μια εταιρεία -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Μέγιστα οχήματα ανά εταιρία: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Μέγιστος αριθμός οχημάτων δρόμου ανά εταιρία: {STRING} STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Μέγιστος αριθμός οδικών οχημάτων που μπορεί να έχει μια εταιρεία -STR_CONFIG_SETTING_MAX_AIRCRAFT :Μέγιστα αεροσκάφη ανά εταιρία: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT :Μέγιστος αριθμός αεροσκαφών ανά εταιρία: {STRING} STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Μέγιστος αριθμός αεροσκαφών που μπορεί να έχει μια εταιρεία -STR_CONFIG_SETTING_MAX_SHIPS :Μέγιστα πλοία ανά εταιρία: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS :Μέγιστος αριθμός πλοίων ανά εταιρία: {STRING} STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Μέγιστος αριθμός πλοίων που μπορεί να έχει μια εταιρεία STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Απενεργοποίηση τρένων για τον υπολογιστή: {STRING} @@ -1513,14 +1546,14 @@ STR_CONFIG_SETTING_AI_PROFILE_HARD :Δύσκολο STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Επιτρέπονται AI σε παιχνίδια πολλών παικτών: {STRING} STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Επιτρέπεται η συμμετοχή παικτών υπολογιστή AI σε παιχνίδια πολλαπλών παικτών -STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#εντολές πριν την παύση δεσμών ενεργειών: {STRING} +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#εντολών πριν την παύση δεσμών ενεργειών: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Μέγιστος αριθμός βημάτων υπολογισμού που κάνει κάποιο σενάριο σε κάθε σειρά STR_CONFIG_SETTING_SERVINT_ISPERCENT :Τα διαστήματα μεταξύ συντήρησης είναι σε ποσοστά: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Επιλέξτε εάν η επισκευή των οχημάτων εξαρτάται από τον χρόνο που πέρασε από την τελευταία επισκευή ή από την μείωση της αξιοπιστίας κατά ένα συγκεκριμένο ποσοστό της μέγιστης αξιοπιστίας STR_CONFIG_SETTING_SERVINT_TRAINS :Προκαθορισμένο διάστημα μεταξύ επισκευών για τα τραίνα: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα οχήματα τραίνων, όταν δεν δίνεται άλλο διάστημα για το όχημα -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} ημέρ{P 0 α ες}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}ημέρ{P 0 α ες}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Απενεργοποιημένο STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Προκαθορισμένο διάστημα μεταξύ συντηρήσεων για οδικά οχήματα: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα οδικά οχήματα, όταν δεν δίνεται άλλο διάστημα για το όχημα @@ -1544,17 +1577,27 @@ STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Προβάλλ STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Πληροφορίες εταιρίας: {STRING} STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Προβάλλει εφημερίδα όταν αρχίζει νέα εταιρεία ή όταν οι εταιρίες ρισκάρουν χρεωκοπία STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Έναρξη των βιομηχανιών: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT :Εμφάνιση εφημερίδας όταν ανοίγουν νέες βιομηχανίες STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE :Κλείσιμο βιομηχανιών: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :Εμφάνιση εφημερίδας όταν κλείνουν βιομηχανίες STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :Οικονομικές αλλαγές: {STRING} +STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :Εμφάνιση εφημερίδας σε αλλαγές παγκόσμιων οικονομικών μεγεθών STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :Αλλαγή της παραγωγής των βιομηχανιών που εξυπηρετούνται από την εταιρία: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Εμφάνιση εφημερίδας όταν μεταβάλλεται η παραγωγικότητα μιας βιομηχανίας που εξυπηρετείται από την εταιρία STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :Διαφοροποιήσεις στην παραγωγή των βιομηχανιών που εξυπηρετούνται από ανταγωνιστή(-ές): {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :Εμφάνιση εφημερίδας όταν μεταβάλλεται η παραγωγικότητα μιας βιομηχανίας που εξυπηρετείται από ανταγωνιστές STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Άλλες διαφοροποιήσεις στη παραγωγή: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Εμφάνιση εφημερίδας όταν μεταβάλλεται η παραγωγικότητα μιας βιομηχανίας που δεν εξυπηρετείται από την εταιρία ή ανταγωνιστές STR_CONFIG_SETTING_NEWS_ADVICE :Συμβουλές / πληροφορίες για τα εταιρικά οχήματα: {STRING} +STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Εμφάνιση μηνημάτων όταν κάποιο όχημα χρήζει προσοχής STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Νέα οχήματα: {STRING} +STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Εμφάνιση εφημερίδας όταν ένας νέος τύπος οχήματος γίνεται διαθέσιμος STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Αλλαγές στην αποδοχή φορτίου: {STRING} +STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Εμφάνιση μηνημάτων σε μεταβολές στην αποδοχή φορτίων από ένα σταθμό STR_CONFIG_SETTING_NEWS_SUBSIDIES :Επιχορηγήσεις: {STRING} STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Πρόβαλλε εφημερίδα σχετικά με συμβάντα που σχετίζονται με επιδοτήσεις STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Γενικές πληροφορίες: {STRING} +STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION_HELPTEXT :Εμφάνιση εφημερίδας σε γενικά συμβάντα, όπως αγορά αποκλειστικών δικαιωμάτων ή χρηματοδότηση ανακατασκευής δρόμων STR_CONFIG_SETTING_NEWS_MESSAGES_OFF :Απενεργοποιημένα STR_CONFIG_SETTING_NEWS_MESSAGES_SUMMARY :Περιλήψεις @@ -1577,7 +1620,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Επιλέξτ STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Αυτόματο κτίσιμο σηματοφόρων πριν από το: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Ορίζεται το έτος κατά το οποίο θα χρησιμοποιούνται τα ηλεκτρικά σήματα στις σιδηροτροχιές. Πριν από αυτό, θα χρησιμοποιούνται μηχανικά σήματα (που έχουν ακριβώς την ίδια λειτουργία, αλλά έχουν διαφορετική μορφή) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Ενεργοποίηση του μενού σηματοδοτών: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Εμφανίζεται παράθυρο για την επιλογή του τύπου του σήματος που θα τοποθετηθεί, αντί για την απλή μετατροπή από τον έναν τύπο στον άλλο χωρίς παράθυρο, με κλικ σε τοποθετημένα σήματα κρατώντας πατημένο το Ctrl +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Εμφάνιση παραθύρου για την επιλογή του τύπου σήματος που θα τοποθετηθεί, αντί για μετάβαση από τον έναν τύπο στον άλλο χωρίς παράθυρο, με Ctrl+κλικ σε ήδη τοποθετημένα σήματα STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Τύπος σηματοδότη που θα χρησιμοποιείται ως προεπιλογή: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Προκαθορισμένος τύπος σημάτων που χρησιμοποιείται STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Σηματοδότες τμήματος @@ -1601,7 +1644,7 @@ STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Επιτρέπ STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Οι πόλεις επιτρέπουν το κτίσιμο ισόπεδων διασταυρώσεων: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Ενεργοποιώντας αυτήν τη ρύθμιση επιτρέπει στις πόλεις να κατασκευάζουν επίπεδες διαβάσεις STR_CONFIG_SETTING_NOISE_LEVEL :Επιτρέπεται η πόλη να ελέγχει το επίπεδο θορύβου των αεροδρομίων: {STRING} -STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Με αυτήν τη ρύθμιση απενεργοποιημένη, γίνεται να υπάρχουν δύο αεροδρόμια σε κάθε πόλη. Με αυτήν τη ρύθμιση ενεργοποιημένη, ο αριθμός των αεροδρομίων σε μια πόλη περιορίζεται από την αποδοχή του θορύβου από την πόλη, η οποία εξαρτάται από τον πληθυσμό, το μέγεθος του αεροδρομίου και από την απόστασή του από την πόλη +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Με αυτήν τη ρύθμιση απενεργοποιημένη, γίνεται να υπάρχουν δύο αεροδρόμια σε κάθε πόλη. Με αυτήν τη ρύθμιση ενεργοποιημένη, ο αριθμός των αεροδρομίων σε μια πόλη περιορίζεται από την αποδοχή του θορύβου από την πόλη, η οποία εξαρτάται από τον πληθυσμό, το μέγεθος του αεροδρομίου και την απόστασή του από την πόλη STR_CONFIG_SETTING_TOWN_FOUNDING :Ίδρυση πόλεων στο παιχνίδι: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Ενεργοποιώντας αυτήν τη ρύθμιση επιτρέπει στους παίκτες να ιδρύσουν νέες πόλεις στο παιχνίδι STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Δεν επιτρέπεται @@ -1653,16 +1696,28 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Μέσο μέγ STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :χειροκίνητη STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :μη συμμετρική STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :συμμετρική +STR_CONFIG_SETTING_DISTRIBUTION_PAX :Τρόπος διανομής επιβατών: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Τρόπος διανομής αλληλογραφίας: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Τρόπος διανομής για το ΘΩΡΑΚΙΣΜΕΝΟ είδος φορτίου: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Τρόπος διανομής άλλων ειδών φορτίου: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Ακρίβεια διανομής: {STRING} +STR_CONFIG_SETTING_DEMAND_DISTANCE :Επίδραση της απόστασης στη ζήτηση προϊόντων: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Μονάδες μέτρησης ταχύτητας: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Αυτοκρατορικό (mph) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Μετρικό (km/h) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Μονάδες ισχύος οχημάτων: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Αυτοκρατορικό (hp) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Μετρικό (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Μονάδες μέτρησης βάρους: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Μονάδες μέτρησης όγκου: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Αυτοκρατορικό (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Μετρικό (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) @@ -1674,7 +1729,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Μετρικέ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Τοπικοποίηση -STR_CONFIG_SETTING_SOUND :{ORANGE}Ηχητικά εφέ +STR_CONFIG_SETTING_SOUND :{ORANGE}Ήχος STR_CONFIG_SETTING_INTERFACE :{ORANGE}Περιβάλλον Λειτουργίας STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Κατασκευή STR_CONFIG_SETTING_VEHICLES :{ORANGE}Οχήματα @@ -1730,7 +1785,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Παιχ STR_INTRO_GAME_OPTIONS :{BLACK}Επιλογές Παιχνιδιού STR_INTRO_HIGHSCORE :{BLACK}Πίνακας Βαθμολογιών -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Προηγμένες Ρυθμίσεις +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ρυθμίσεις STR_INTRO_NEWGRF_SETTINGS :{BLACK}Ρυθμίσεις NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Διαδικτυακό Περιεχόμενο STR_INTRO_SCRIPT_SETTINGS :{BLACK}Ρυθμίσεις AI και Δέσμης Ενεργειών @@ -1750,7 +1805,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Επιλ STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Εμφάνιση επιλογών παιχνιδιού STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Εμφάνιση του πίνακα βαθμολογιών -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Εμφάνιση προηγμένων ρυθμίσεων +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ρυθμίσεις οθόνης STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Έλεγχος για νέο και ανανεωμένο περιεχόμενο για λήψη STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων για AI και της δέσμης ενεργειών του παιχνιδιού @@ -1782,14 +1837,16 @@ STR_ABANDON_GAME_QUERY :{YELLOW}Είσ STR_ABANDON_SCENARIO_QUERY :{YELLOW}Είστε σίγουροι ότι θέλετε να εγκαταλείψετε το σενάριο; # Cheat window -STR_CHEATS :{WHITE}Cheats -STR_CHEATS_TOOLTIP :{BLACK}Τα κουτάκια δείχνουν αν έχετε χρησιμοποιήσει αυτό το cheat εκ των προτέρων +STR_CHEATS :{WHITE}Απατεωνιές +STR_CHEATS_TOOLTIP :{BLACK}Τα κουτάκια δείχνουν αν έχετε ξαναχρησιμοποιήσει αυτή την απατεωνιά STR_CHEATS_WARNING :{BLACK}Προσοχή! Είστε έτοιμοι να προδώσετε τους φίλους ανταγωνιστές σας. Θυμηθείτε ότι αυτή η ντροπή θα μείνει για πάντα. STR_CHEAT_MONEY :{LTBLUE}Αύξηση χρημάτων κατά {CURRENCY_LONG} STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Παίζετε με την εταιρία: {ORANGE}{COMMA} STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Μαγική μπουλντόζα (αφαιρεί βιομηχανίες, αμετακίνητα αντικείμενα): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Τα τούνελ μπορούν να διασταυρώνονται: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Τα jet δε θα συγκρούονται (συχνά) σε μικρά αεροδρόμια: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Μεταβολή του μέγιστου ύψους του χάρτη: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Μεταβολή του μέγιστου ύψους βουνών στο χάρτη STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Εύκρατο τοπίο STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Πολικό τοπίο STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Υποτροπικό τοπίο @@ -2122,7 +2179,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Λανθ STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Ο διακομιστής είναι γεμάτος STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Έχει απαγορευτεί η είσοδος σας από τον διακομιστή STR_NETWORK_ERROR_KICKED :{WHITE}Έχετε εκδιωχθεί από το παιχνίδι -STR_NETWORK_ERROR_CHEATER :{WHITE}Η χρήση cheats δεν επιτρέπεται σε αυτόν τον διακομιστή +STR_NETWORK_ERROR_CHEATER :{WHITE}Η χρήση απατεωνιών δεν επιτρέπεται σε αυτόν τον διακομιστή STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Αποστείλατε πάρα πολλές εντολές στον διακομιστή STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Χρειαστήκατε πολύ χρόνο για να συμπληρώσετε τον κωδικό STR_NETWORK_ERROR_TIMEOUT_COMPUTER :{WHITE}Ο υπολογιστής σας είναι πολύ αργός για να διατηρήσει συγχρόνιση με τον διακομιστή @@ -2141,7 +2198,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :έγινε λή STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :λάθος έκδοση STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :το όνομα είναι ήδη σε χρήση STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :λανθασμένος κωδικός -STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :λάθος company-id στο DoCommand +STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :λάθος εταιρία στο DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :εκδιωχθήκατε από τον διακομιστή STR_NETWORK_ERROR_CLIENT_CHEATER :προσπάθησε να χρησιμοποιησει cheat STR_NETWORK_ERROR_CLIENT_SERVER_FULL :διακομιστής γεμάτος @@ -2301,7 +2358,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Κατα STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Κατασκευή αμαξοστάσιου (για αγορά και επισκευή τρένων). Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Μετατροπή σιδηροτροχιάς σε σημείο καθοδήγησης. Με Ctrl ενεργοποιείται η συνένωση σημείων καθοδήγησης. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Κατασκευή σταθμού τρένων. Με Ctrl ενεργοποιείται η συνένωση σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Κατασκευή σηματοδοτών. Με Ctrl εναλλάσσονται σηματοφόροι/σηματοδότες{}Το σύρσιμο κατασκευάζει σηματοδότες σε μια ευθεία σιδηροδρόμου. Με το Ctrl πατημένο, κατασκευάζει μέχρι την επομένη διασταύρωση{}Με Ctrl+Κλικ εναλλάσσεται το άνοιγμα του παραθύρου επιλογής σηματοδοτών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Κατασκευή σηματοδοτών. Με Ctrl εναλλάσσονται σηματοφόροι/σηματοδότες{}Με σύρσιμο κατασκευάζονται σηματοδότες κατά μήκος μιας ευθείας σιδηροτροχιάς. Με το Ctrl πατημένο, κατασκευάζονται σηματοδότες μέχρι την επομένη διασταύρωση ή τον επόμενο σηματοδότη{}Με Ctrl+Κλικ εναλλάσσεται το άνοιγμα του παραθύρου επιλογής σηματοδοτών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Κατασκευή γέφυρας σιδηρόδρομου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Κατασκευή τούνελ σιδηρόδρομου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Εναλλαγή κατασκευής/αφαίρεσης για σιδηρόδρομους, σηματοδότες, σημείων καθοδήγησης και σταθμών. Κρατώντας πατημένο το Ctrl αφαιρεί και τον σιδηρόδρομο από τα σημεία καθοδήγησης και σταθμούς @@ -2575,7 +2632,7 @@ STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Όνομ STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Αποδεκτά εμπορεύματα: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) -STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Όριο ταχύτητας: {LTBLUE}{VELOCITY} +STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Όριο ταχύτητας σιδηροτροχιάς: {LTBLUE}{VELOCITY} STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Όριο ταχύτητας δρόμου: {LTBLUE}{VELOCITY} # Description of land area of different tiles @@ -2673,7 +2730,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ιδιοκτη STR_ABOUT_OPENTTD :{WHITE}Σχετικά με το OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Αρχικά Πνευματικά Δικαιώματα {COPYRIGHT} 1995 Chris Sawyer, Όλα τα δικαιώματα διατηρούνται STR_ABOUT_VERSION :{BLACK}Έκδοση OpenTTD{REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Η ομάδα του OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Η ομάδα του OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Αποθήκευση Παιχνιδιού @@ -2697,7 +2754,7 @@ STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Δεν STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING} -STR_SAVELOAD_OSKTITLE :{BLACK}Δώστε το όνομα του αποθηκευμένου παιχνιδιού +STR_SAVELOAD_OSKTITLE :{BLACK}Δώστε το όνομα του παιχνιδιού προς αποθήκευση # World generation STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Δημιουργία Κόσμου @@ -2707,6 +2764,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Αριθμός πόλεων: STR_MAPGEN_DATE :{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}Μετακίνηση του ύψους της γραμμής χιονιού ένα κάτω @@ -2736,6 +2796,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Όνομ STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Μέγεθος: 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}Αλλαγή έτους έναρξης @@ -2843,10 +2904,9 @@ STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Συνέ STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Μετακίνηση στο στοιχείο STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Μετακίνηση στο sprite. Εάν το sprite δεν είναι κανονικό sprite, συνεχίζει στο επόμενο κανονικό sprite STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Προηγούμενο στοιχείο -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Συνέχισε στο επόμενο κανονικό sprite, προσπερνώντας οποιοδήποτε ψευδό/επαναναχρωματιζόμενο/γραμματοσειράς sprite και κάνε τις τελικές διαδικασίες στην αρχή +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Προχώρησε στο προηγούμενο κανονικό sprite, προσπερνώντας οποιαδήποτε ψευδό/επαναχρωματιζόμενα/γραμματοσειράς sprites και ξαναεκτέλεσε τη διαδικασία από το πρώτο sprite ως το τελεταίο STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Επανεμφάνιση του επιλεγμένου sprite. Η ευθυγράμμιση αγνοείται όταν γίνεται η σχεδίαση του sprite STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Μετακίνηση του sprite τριγύρω, αλλάζοντας τα στίγματα Χ και Υ -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Στίγμα Χ: {NUM}, Στίγμα Υ: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Επιλογή sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Επιλογή ενός sprite από οπουδήποτε στη οθόνη @@ -2871,14 +2931,14 @@ STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Η φόρτωσ STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Απρόοπτο sprite (sprite {3:NUM}) STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Άγνωστη ιδιότητα Action 0 {4:HEX} (sprite {3:NUM}) STR_NEWGRF_ERROR_INVALID_ID :Προσπάθεια να χρησιμοποιήσει άκυρο ID (sprite {3:NUM}) -STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} περιέχει ένα κατεστραμμένο sprite. Όλα τα κατεστραμμένα sprites θα εμφανίζονται ως κόκκινα ερωματικό (?) +STR_NEWGRF_ERROR_CORRUPT_SPRITE :Το {YELLOW}{STRING} περιέχει ένα αλλοιωμένο sprite. Όλα τα αλλοιωμένα sprites θα εμφανίζονται ως κόκκινα ερωτηματικά (?) STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Περιέχει πολλαπλές καταχωρήσεις Action 8 (sprite {3:NUM}) STR_NEWGRF_ERROR_READ_BOUNDS :Διάβασε πέρα από το τέλος του ψευδό-sprite (sprite {3:NUM}) STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Λείπουν μερικά sprites από το τρέχον βασικό σετ γραφικών.{}Παρακαλώ ενημερώστε το βασικό σετ γραφικών -STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Λείπουν μερικά sprites από το τρέχον βασικό σετ γραφικών.{}Παρακαλώ ενημερώστε το βασικό σετ γραφικών{}Επειδή παίζετε {YELLOW}μη σταθερή έκδοση του OpenTTD{WHITE}, μπορεί να χρειαστείτε {YELLOW}ασταθή έκδοση των βασικών γραφικών{WHITE} +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Λείπουν μερικά sprites από το τρέχον βασικό σετ γραφικών.{}Παρακαλώ ενημερώστε το βασικό σετ γραφικών{}Επειδή παίζετε {YELLOW}δοκιμαστική έκδοση του OpenTTD{WHITE}, μπορεί να χρειάζεται να έχετε εγκατεστημένη {YELLOW}δοκιμαστική έκδοση των βασικών γραφικών{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :Οι ζητημένοι πόροι GRF δεν είναι διαθέσιμοι (sprite {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :Το {1:STRING} απενεργοποιήθηκε από το {2:STRING} -STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Άγνωστη/άκυρη μορφή σχεδίου sprite (sprite {3:NUM}) +STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Άκυρη/άγνωστη μορφή σχεδίου sprite (sprite {3:NUM}) # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Προσοχή! @@ -2958,8 +3018,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} παραδόθηκε STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (ακόμη απαιτείται) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (παραδόθηκε) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Η πόλη επεκτείνεται κάθε {ORANGE}{COMMA}{BLACK} ημέρ{P α ες} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Η πόλη επεκτείνεται κάθε {ORANGE}{COMMA}{BLACK} ημέρ{P α ες} (χρηματοδοτούμενη) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Η πόλη επεκτείνεται κάθε {ORANGE}{COMMA}{BLACK}{NBSP}ημέρ{P α ες} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Η πόλη επεκτείνεται κάθε {ORANGE}{COMMA}{BLACK}{NBSP}ημέρ{P α ες} (χρηματοδοτούμενη) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Η πόλη {RED}δεν{BLACK} επεκτείνεται STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Επίπεδο θορύβου στη πόλη: {ORANGE}{COMMA}{BLACK} μέγιστο: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία της πόλης. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της πόλης @@ -3016,7 +3076,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Πληροφο STR_GOAL_QUESTION_CAPTION_WARNING :Προειδοποίηση STR_GOAL_QUESTION_CAPTION_ERROR :Σφάλμα -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Ακύρωση STR_GOAL_QUESTION_BUTTON_OK :Εντάξει STR_GOAL_QUESTION_BUTTON_NO :Όχι @@ -3035,6 +3095,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Επανεκκ STR_GOAL_QUESTION_BUTTON_POSTPONE :Αναβολή STR_GOAL_QUESTION_BUTTON_SURRENDER :Παράδοση STR_GOAL_QUESTION_BUTTON_CLOSE :Κλείσιμο +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Χρηματοδοτήσεις @@ -3333,10 +3394,10 @@ STR_PURCHASE_INFO_ALL_BUT :Όλοι εκτ STR_PURCHASE_INFO_MAX_TE :{BLACK}Μέγ. Δύναμη Έλξης: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Εύρος: {GOLD}{COMMA} τετραγωνίδια -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Λίστα επιλεγμένων βαγονιών τρένων - κάντε κλικ σε ένα βαγόνι για πληροφορίες -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Λίστα επιλεγμένων οχήματα δρόμου - κάντε κλικ σε ένα όχημα για πληροφορίες -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Λίστα επιλεγμένων πλοίων - κάντε κλικ σε ένα πλοίο για πληροφορίες -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Λίστα επιλεγμένων αεροσκαφών - κάντε κλικ σε ένα αεροσκάφος για πληροφορίες +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Λίστα επιλογής βαγονιού τρένου. Κάντε κλικ σε ένα βαγόνι για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου βαγονιού +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Λίστα επιλογής οχήματος δρόμου. Κάντε κλικ σε ένα όχημα για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου οχήματος +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Λίστα επιλογής πλοίου. Κάντε κλικ σε ένα πλοίο για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου πλοίου +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Λίστα επιλογής αεροσκάφους. Κάντε κλικ σε ένα αεροσκάφος για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου αεροσκάφους STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Αγορά Οχήματος STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Αγορά Οχήματος @@ -3358,6 +3419,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Μετο STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Εμφάνιση/απόκρυψη του τύπου βαγονιού +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Εμφάνιση/απόκρυψη του τύπου οχήματος δρόμου +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Εμφάνιση/απόκρυψη του τύπου πλοίου +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Εμφάνιση/απόκρυψη του τύπου αεροσκάφους + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Μετονομασία τύπου τρένου STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Μετονομασία τύπου οχήματος δρόμου STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Μετονομασία τύπου πλοίου @@ -3411,7 +3487,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Κλων STR_DEPOT_CLONE_SHIP :{BLACK}Κλωνοποίηση Πλοίου STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Κλωνοποίηση Αεροσκάφους -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του τρένου μαζί με τα όλα τα βαγόνια. Πατήστε αυτό το κουμπί και μετά σε κάποιο τραίνο μέσα ή έξω από το αμαξοστάσιο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift +Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του τρένου μαζί με τα όλα τα βαγόνια. Πατήστε αυτό το κουμπί και μετά σε κάποιο τραίνο μέσα ή έξω από το αμαξοστάσιο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του οχήματος. Πατήστε αυτό το κουμπί και μετά σε κάποιο όχημα μέσα ή έξω από το αμαξοστάσιο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του πλοίου. Πατήστε αυτό το κουμπί και μετά σε κάποιο πλοίο μέσα ή έξω από το ναυπηγείο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του αεροσκάφους. Πατήστε αυτό το κουμπί και μετά σε κάποιο αεροσκάφος μέσα στο ή έξω από το υπόστεγο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά @@ -3468,6 +3544,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Όχημα Δρ STR_REPLACE_VEHICLE_SHIP :Πλοίο STR_REPLACE_VEHICLE_AIRCRAFT :Αεροσκάφος +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Οχήματα σε χρήση +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Στήλη οχημάτων που σας ανήκουν +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Διαθέσιμα οχήματα +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Στήλη με οχήματα διαθέσιμα προς αντικατάσταση + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Επιλέξτε τον τύπο μηχανής για αντικατάσταση STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Επιλέξτε τον νέο τύπο μηχανής που θέλετε να χρησιμοποιηθεί στην θέση του επιλεγμένου τύπου μηχανής στα αριστερά @@ -3592,7 +3673,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Χωρη STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Έσοδα μεταφοράς: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Διάστημα επισκευών: {LTBLUE}{COMMA}μέρες{BLACK} Τελευταία επισκευή: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Διάστημα μεταξύ επισκευών: {LTBLUE}{COMMA}{NBSP}μέρες{BLACK} Τελευταία επισκευή: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Διάστημα επισκευών: {LTBLUE}{COMMA}%{BLACK} Τελευταία επισκευή: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Αύξηση διαστημάτων επισκευών κατά 10. Με Ctrl+Κλικ αυξάνονται τα διαστήματα ανάμεσα των επισκευών κατά 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Μείωση διαστημάτων επισκευών κατά 10. Με Ctrl+Κλικ μειώνεται τα διαστήματα επισκευών κατά 5 @@ -3824,7 +3905,7 @@ STR_TIMETABLE_TRAVEL_FOR :Ταξίδεψ STR_TIMETABLE_TRAVEL_FOR_SPEED :Ταξίδεψε για {STRING} με κατά περισσότερο {VELOCITY} STR_TIMETABLE_STAY_FOR :και μείνε για {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :και ταξίδεψε για {STRING} -STR_TIMETABLE_DAYS :{COMMA} μέρ{P α ες} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}μέρ{P α ες} STR_TIMETABLE_TICKS :{COMMA} στιγμ{P ή ές} STR_TIMETABLE_TOTAL_TIME :{BLACK}Το δρομολόγιο αυτό θα χρειαστεί τουλάχιστον {STRING} για να ολοκληρωθεί @@ -4060,6 +4141,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Η εκ STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... ήδη στο επίπεδο της θάλασσας STR_ERROR_TOO_HIGH :{WHITE}... πολύ ψηλά STR_ERROR_ALREADY_LEVELLED :{WHITE}... ήδη επίπεδο +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Μετά την αλλαγή, η γέφυρα από πάνω του θα είναι πολύ ψηλή # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Δεν ήταν δυνατό να αλλάξει το όνομα της εταιρίας... @@ -4110,6 +4192,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... δά STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... μπορεί να κτιστεί μόνο πάνω από τη γραμμή του χιονιού STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... μπορεί να κτιστεί μόνο κάτω από τη γραμμή του χιονιού +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Δεν υπήρχαν διαθέσιμες τοποθεσίες για βιομηχανίες τύπου '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Αλλαγή παραμέτρων δημιουργίας χάρτη για καλύτερα αποτελέσματα + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Δεν μπορεί να κτιστεί σταθμός τρένων εδώ... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Αδύνατο να κτιστεί στάση λεωφορείων... @@ -4810,6 +4895,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (κρυφό) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4845,8 +4931,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt index 4344056f6f..1c2fa4e0c4 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -109,7 +109,7 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.plural :משקאות מ # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{P 0 "נוסע " ""}{COMMA}{P "" " נוסעים"} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}נוסע{P "" ים} STR_QUANTITY_COAL :{WEIGHT_LONG} של פחם STR_QUANTITY_MAIL :{P 0 "שק " ""}{COMMA}{P "" " שקים"} של דואר STR_QUANTITY_OIL :{VOLUME_LONG} של נפט @@ -262,6 +262,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}כפתו STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}פס הגלילה - גלילה של רשימות ימינה\שמאלה STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}הסרת בניינים וכו' במשבצת קרקע. מקש Ctrl מסמן את האזור באופן אלכנסוני. מקש Shift מעביר בין בנייה לבין הצגה של הערכת העלות +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}בחירת מחדל STR_BUTTON_CANCEL :{BLACK}ביטול @@ -375,7 +378,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :יציאה ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :אפשרויות המשחק -STR_SETTINGS_MENU_CONFIG_SETTINGS :הגדרות מתקדמות STR_SETTINGS_MENU_SCRIPT_SETTINGS :הגדרות סקריפטים של משחק/שחקני מחשב STR_SETTINGS_MENU_NEWGRF_SETTINGS :הגדרות GRF חדש STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :אפשרויות שקיפות @@ -852,7 +854,7 @@ STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}מתיי STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}מתיישן מאוד {VEHICLE} STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}מתיישן מאוד, וזקוק להחלפה בדחיפות {VEHICLE} STR_NEWS_TRAIN_IS_STUCK :אינה יכולה למצוא נתיב המשך {WHITE}{VEHICLE} -STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} הל{P "ך" "כה"} לאיבוד +STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} הל לאיבוד STR_NEWS_VEHICLE_IS_UNPROFITABLE :ריווחי {WHITE}{VEHICLE} שנה שעברה הם {CURRENCY_LONG} STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE}אינ{G 0 "ו" "ה"} יכול{G 0 "" "ה"} להגיע אל היעד הבא כי הוא מחוץ לטווח @@ -929,10 +931,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :לארי גאו STR_GAME_OPTIONS_CURRENCY_IRR :ריאל איראני (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}רכבי כביש STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}בחר את צד הכביש בו יסעו כלי הרכב STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :סע בצד שמאל @@ -986,6 +984,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}רזלו STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}בחר את רזולוציית המסך STR_GAME_OPTIONS_RESOLUTION_OTHER :אחר + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}ערכת גרפיקה בסיסית STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}בחר בערכת גרפיקה בסיסית לשימוש STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{P 0 "קובץ " ""}{NUM}{P "" " קבצים"} חסר{P 0 "" ים}/הושחט{P 0 "" ו} @@ -1086,8 +1086,7 @@ STR_CITY_APPROVAL_HOSTILE :עויין STR_WARNING_NO_SUITABLE_AI :{WHITE}אין בינות מלאכותיות מתאימות...{}באפשרותך להוריד בינות מלאכותיות בעזרת מערכת ה'תוכן המקוון' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}הגדרות מתקדמות +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}מחרוזת סינון: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}הרחב הכל STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}צמצם הכל @@ -1103,9 +1102,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :הגדרת חב STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}קטגוריה: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}סוג: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}מגביל את הרשימה להלן תוך שימוש בסינון שהוגדר מראש. -STR_CONFIG_SETTING_RESTRICT_BASIC :הגדרות בסיסיות -STR_CONFIG_SETTING_RESTRICT_ADVANCED :הגדרות מתקדמות -STR_CONFIG_SETTING_RESTRICT_ALL :הגדרות מומחה / כל ההגדרות +STR_CONFIG_SETTING_RESTRICT_BASIC :הגדרות בסיסיות (הצג רק הגדרות חשובות) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :הגדרות מתקדמות (הצג את רוב ההגדרות) +STR_CONFIG_SETTING_RESTRICT_ALL :הגדרות מומחה (הצג את כל ההגדרות, כולל הגדרות משונות) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :הגדרות בעלות ערך השונה מברירת המחדל STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :הגדרות בעלות ערך השונה מזה אשר בהגדרות המשחק החדש שלך @@ -1160,6 +1159,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :אפשר/מנע STR_CONFIG_SETTING_CITY_APPROVAL :יחס מועצת העיר כלפי שינוי מבנה אזורי: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :בחר באיזו מידה רעש ונזק סביבתי ע"י חברות משפיעים על הדירוג העירוני שלהן ופעולות בנייה עתידיות באזור +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :גובה מפה מקסימלי: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :קבע את הגובה המקסימלי להרים במפה +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}לא ניתן לקבוע את הגובה המקסימלי במפה לערך זה. קיים לפחות הר אחד גבוה יותר STR_CONFIG_SETTING_AUTOSLOPE :אפשר יצירת מילוי עפר תחת מבנים, פסי רכבת וכו': {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :אפשר שינוי פני השטח מתחת לבניינים ולמסילות ללא הסרתם STR_CONFIG_SETTING_CATCHMENT :אפשר לאזורי אגירת מים להיראות יותר ריאליסטיים: {STRING} @@ -1273,8 +1275,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :משך הצגת STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :פרק הזמן להצגת הודעות שגיאה בחלון אדום. יש לשים לב כי כמה הודעות שגיאה (קריטיות) אינן נסגרות אוטומטית אחרי פרק זמן זה, אלא יש לסגור אותן ידנית STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{P 0 "שנייה " ""}{COMMA}{P "" " שניות"} STR_CONFIG_SETTING_HOVER_DELAY :הצג רמזים צצים: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :השהייה טרם הצגת רמזים צצים כאשר העכבר מרחף מעל חלק ממשק. לחלופין, ניתן לקשר רמזים צצים לכפתור העכבר הימני -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :רחף למשך {P 0 "שניה " ""}{COMMA}{P "" " שניות"} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :השהייה טרם הצגת רמזים צצים כאשר העכבר מרחף מעל חלק ממשק. לחלופין, ניתן לקשר רמזים צצים לכפתור העכבר הימני כאשר מוגדר 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :רחף למשך {P 0 "מילישניה " ""}{COMMA}{P "" " מילישניות"} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :קליק ימני STR_CONFIG_SETTING_POPULATION_IN_LABEL :הראה את אוכלוסיית העיר בתוך תוית השם של העיר: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :הצג את אוכלוסייתן של עיירות בתווית שלהן על גבי המפה @@ -1522,7 +1524,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :בחר את ה STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :{STRING} :בנה רמזורים מכאניים לפני STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :קבע את השנה בה רמזורים חשמליים ישמשו במסילות. לפני שנה זו יהיו בשימוש רמזורים מכניים (פעולתם זהה, הם רק נראים אחרת) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :{STRING} :אפשר ממשק ויזואלי עבור רמזורים -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :הצג חלון לבחירת סוג הרמזור להצבה, במקום רק מעבר בין האפשרויות ללא חלון באמצעות הקלקה על "בנה רמזורים" תוך לחיצה על מקש Ctrl +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :הצג חלון לבחירת סוג הרמזור להצבה, במקום רק מעבר בין האפשרויות באמצעות Ctrl+לחיצה על רמזורים בנויים STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :{STRING} :ברירת מחדל לבניית רמזורי רכבת STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :סוג רמזור לשימוש בברירת מחדל STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :רמזורי בלוק @@ -1607,7 +1609,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"סימטרי" STR_CONFIG_SETTING_DISTRIBUTION_MAIL :אופן החלוקה עבור דואר: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"סימטרי" הכוונה שכמות הדואר מתחנה א' לתחנה ב' הוא פחות או יותר אותה כמות הדואר מתחנה ב' לתחנה א'. "אסימטרי" הכוונה שכמויות דואר שרירותיות יכולות להישלח לכל אחד מהכיוונים. "ידני" הכוונה שאין חלוקה אוטומטית עבור דואר. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :אופן החלוקה עבור מחלקה משוריינת: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :מחלקה משוריינת מובילה חפצי ערך באקלים ממוזג, יהלומים באקלים טרופי וזהב באקלים קר. קבצי שדרוג גראפי עלולים לשנות חלוקה זו. "סימטרי" הכוונה שכמות המטען מתחנה א' לתחנה ב' הוא פחות או יותר אותה כמות המטען מתחנה ב' לתחנה א'. "אסימטרי" הכוונה שכמויות מטען שרירותיות יכולות להישלח לכל אחד מהכיוונים. "ידני" הכוונה שאין חלוקה אוטומטית עבור המטען. באקלים קר מומלץ לקבוע למצב אסימטרי או ידני כי בנקים לא שולחים זהב חזרה למכרות יהלומים. באקלים ממוטזג או טרופי ניתן לבחור גם במצב סימטרי כאשר בנקים ישלחו חפצי ערך חזרה למקור של אותם חפצי ערך. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :מחלקה משוריינת מובילה חפצי ערך באקלים ממוזג, יהלומים באקלים טרופי וזהב באקלים קר. קבצי שדרוג גראפי עלולים לשנות חלוקה זו. "סימטרי" הכוונה שכמות המטען מתחנה א' לתחנה ב' הוא פחות או יותר אותה כמות המטען מתחנה ב' לתחנה א'. "אסימטרי" הכוונה שכמויות מטען שרירותיות יכולות להישלח לכל אחד מהכיוונים. "ידני" הכוונה שאין חלוקה אוטומטית עבור המטען. באקלים קר מומלץ לקבוע למצב אסימטרי או ידני כי בנקים לא שולחים זהב חזרה למכרות יהלומים. באקלים ממוזג או טרופי ניתן לבחור גם במצב סימטרי כאשר בנקים ישלחו חפצי ערך חזרה למקור של אותם חפצי ערך. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :אופן החלוקה עבור מטענים אחרים: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"אסימטרי" הכוונה שכמויות מטען שרירותיות יכולות להישלח לכל אחד מהכיוונים. "ידני" הכוונה שאין חלוקה אוטומטית עבור המטען. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :דיוק החלוקה: {STRING} @@ -1643,7 +1645,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :מטרי (קי STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :בינלאומית (קילו ניוטון) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :יחידות גובה: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :כאשר מוצגים גבהים השתמש ביחידות שנבחרו. +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :כאשר מוצגים גבהים השתמש ביחידות שנבחרו STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :בריטית (רגל) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :מטרי (מטר) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (מטר) @@ -1705,7 +1707,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}משחק STR_INTRO_GAME_OPTIONS :{BLACK}אפשרויות STR_INTRO_HIGHSCORE :{BLACK}טבלת ניקוד מירבי -STR_INTRO_ADVANCED_SETTINGS :{BLACK}הגדרות מתקדמות STR_INTRO_NEWGRF_SETTINGS :{BLACK}(NewGRF)הגדרות שדרוג גראפי STR_INTRO_ONLINE_CONTENT :{BLACK} בדוק תוכן מקוון STR_INTRO_SCRIPT_SETTINGS :{BLACK}הגדרות סקריפטים של משחק/שחקני מחשב @@ -1725,7 +1726,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}ארץ STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}הצג הגדרות משחק STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}הצג טבלת ניקוד מירבי -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}הצג הגדרות מתקדמות STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}הצג הגדרות שדרוג גראפי STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK} חפש תוכן חדש/מעודכן להורדה STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK} הצג הגדרות סקריפטים של משחק/שחקני מחשב @@ -1765,6 +1765,8 @@ STR_CHEAT_CHANGE_COMPANY :{ORANGE}{COMMA} STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}טרקטור אימתני (הסרת מפעלים, רכיבים שאי אפשר להזיז): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{ORANGE}{STRING}{LTBLUE} :מנהרות יכולות לחצות זו את זו STR_CHEAT_NO_JETCRASH :{LTBLUE}מטוסי סילון לא יתרסקו (לעיתים קרובות) בשדות תעופה קטנים: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}ערוך את הגובה המקסימלי במפה: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :ערוך את הגובה המקסימלי של הרים במפה STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :אקלים ממוזג STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :אקלים קר STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :אקלים טרופי @@ -2639,7 +2641,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :שטח בבעל STR_ABOUT_OPENTTD :{WHITE}OpenTTD אודות STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}כל הזכויות שמורות , {COPYRIGHT}1995 כריס סויר - {NBSP}זכויות יוצרים מקוריות STR_ABOUT_VERSION :{BLACK}{REV} גירסה , OpenTTD -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}שמור משחק @@ -2674,6 +2676,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK} :מספר העיירות STR_MAPGEN_DATE :{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}הנמך את קו השלג @@ -2703,6 +2708,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK} :שם STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}גודל: 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}שנה את שנת הפתיחה @@ -2820,10 +2826,9 @@ STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}עבור STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}דלג לספרייט STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}עבור לספרייט הנתון. אם הוא אינו ספרייט רגיל, עבור לספרייט הרגיל הראשון שבא אחריו STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}הספרייט הקודם -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}עבור לספרייט הקודם, כאשר נדלג על כל הספרייטים המיוחדים ונחזור בסוף לתחילת הרשימה +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}עבור לספרייט הקודם, כאשר נדלג על כל הספרייטים המיוחדים ונחזור מתחילת הרשימה לסופה STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}הייצוג של הספרייט הנבחר. בעת ציור הספרייט, נתעלם מהיישור שלו STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}הזז את הספרייט, תוך שינוי מיקום על צירי ה-X וה-Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X היסט: {NUM}, Y היסט: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}בחר ספרייט STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}בחר ספרייט מנקודה כלשהיא במסך @@ -2993,7 +2998,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :מידע STR_GOAL_QUESTION_CAPTION_WARNING :אזהרה STR_GOAL_QUESTION_CAPTION_ERROR :שגיאה -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :ביטול STR_GOAL_QUESTION_BUTTON_OK :אישור STR_GOAL_QUESTION_BUTTON_NO :לא @@ -3012,6 +3017,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :אתחל STR_GOAL_QUESTION_BUTTON_POSTPONE :דחה STR_GOAL_QUESTION_BUTTON_SURRENDER :היכנע STR_GOAL_QUESTION_BUTTON_CLOSE :סגור +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}סובסידיות @@ -3028,7 +3034,7 @@ STR_STORY_BOOK_INVALID_GOAL_REF :{RED}מטרה # Station list window STR_STATION_LIST_TOOLTIP :{BLACK}שמות תחנות - לחץ על השם כדי להתמקד בתחנה. Ctrl+לחיצה פותח חלונית תצוגה חדשה על מיקום התחנה STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}לחץ והחזק מקש קונטרל כדי לבחור יותר מפריט אחד -STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {P 0 "תחנה " ""}{COMMA}{P "" " תחנות"} +STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {P 1 "תחנה " ""}{COMMA}{P "" " תחנות"} STR_STATION_LIST_STATION :{YELLOW} {1:STATION_FEATURES}{0:STATION} STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} STR_STATION_LIST_NONE :{YELLOW}- כלום - @@ -3346,6 +3352,11 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}שנה STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}החלף שם סוג כלי השייט STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}החלף שם סוג כלי הטיס + + +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :הסתר/הצג סוג של כלי שיט +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}הסתר/הצג סוג של כלי טיס + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}שנה את שם סוג קרון הרכבת STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}שנה את שם סוג כלי הרכב STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}החלף שם סוג כלי השייט @@ -3450,6 +3461,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :רכב STR_REPLACE_VEHICLE_SHIP :כלי שייט STR_REPLACE_VEHICLE_AIRCRAFT :כלי טייס + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}בחר את סוג המנוע/קטר שברצונך להחליף STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}בחר את הקטר/מנוע שברצונך לבנות במקום הקטר/מנוע הקיים @@ -4087,6 +4099,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... יע STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... ניתן/ת לבנייה רק מעל לקו השלג STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... ניתן/ת לבנייה רק מתחת לקו השלג + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}לא ניתן לבנות תחנת רכבת כאן... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}לא ניתן לבנות תחנת אוטובוס... @@ -4223,6 +4236,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}יש ל STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}לא ניתן להתחיל ולסיים באותה הנקודה STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}צדדי הגשר לא באותו הגובה STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}גשר נמוך מידי עבור השטח +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}גשר גבוה מדי עבור פני השטח. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}התחלה וסיום חייבים להיות באותו הקו STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... קצות הגשר צריכים להיות על קרקע STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... גשר ארוך מידי @@ -4780,6 +4794,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (מוסתר) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4815,8 +4830,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt index 93b593ec03..f954c0cd48 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -158,30 +158,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.t :szénsavas ital # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} utas +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}utas STR_QUANTITY_COAL :{WEIGHT_LONG} szén -STR_QUANTITY_MAIL :{COMMA} csomag levél +STR_QUANTITY_MAIL :{COMMA}{NBSP}csomag levél STR_QUANTITY_OIL :{VOLUME_LONG} olaj -STR_QUANTITY_LIVESTOCK :{COMMA} állat -STR_QUANTITY_GOODS :{COMMA} láda áru +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}állat +STR_QUANTITY_GOODS :{COMMA}{NBSP}láda áru STR_QUANTITY_GRAIN :{WEIGHT_LONG} búza STR_QUANTITY_WOOD :{WEIGHT_LONG} fa STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} vasérc STR_QUANTITY_STEEL :{WEIGHT_LONG} acél -STR_QUANTITY_VALUABLES :{COMMA} csomag értéktárgy +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}csomag értéktárgy STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} rézérc STR_QUANTITY_MAIZE :{WEIGHT_LONG} kukorica STR_QUANTITY_FRUIT :{WEIGHT_LONG} gyümölcs -STR_QUANTITY_DIAMONDS :{COMMA} zsák gyémánt +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}zsák gyémánt STR_QUANTITY_FOOD :{WEIGHT_LONG} étel STR_QUANTITY_PAPER :{WEIGHT_LONG} papír -STR_QUANTITY_GOLD :{COMMA} zsák arany +STR_QUANTITY_GOLD :{COMMA}{NBSP}zsák arany STR_QUANTITY_WATER :{VOLUME_LONG} víz STR_QUANTITY_WHEAT :{WEIGHT_LONG} búza STR_QUANTITY_RUBBER :{VOLUME_LONG} gumi STR_QUANTITY_SUGAR :{WEIGHT_LONG} cukor -STR_QUANTITY_TOYS :{COMMA} játék -STR_QUANTITY_SWEETS :{COMMA} zsák cukorka +STR_QUANTITY_TOYS :{COMMA}{NBSP}játék +STR_QUANTITY_SWEETS :{COMMA}{NBSP}zsák cukorka STR_QUANTITY_COLA :{VOLUME_LONG} kóla STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} vattacukor STR_QUANTITY_BUBBLES :{COMMA} buborék @@ -228,12 +228,12 @@ STR_ABBREV_NONE :{TINY_FONT}SÁ STR_ABBREV_ALL :{TINY_FONT}ÖS # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} utas -STR_BAGS :{COMMA} csomag -STR_TONS :{COMMA} tonna -STR_LITERS :{COMMA} liter -STR_ITEMS :{COMMA} darab -STR_CRATES :{COMMA} láda +STR_PASSENGERS :{COMMA}{NBSP}utas +STR_BAGS :{COMMA}{NBSP}csomag +STR_TONS :{COMMA}{NBSP}tonna +STR_LITERS :{COMMA}{NBSP}liter +STR_ITEMS :{COMMA}{NBSP}darab +STR_CRATES :{COMMA}{NBSP}láda # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Sötétkék @@ -254,37 +254,37 @@ STR_COLOUR_GREY :Szürke STR_COLOUR_WHITE :Fehér # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mi/h -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mi/h +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}LE -STR_UNITS_POWER_METRIC :{COMMA}LE -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}LE +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}LE +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonna -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonna -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonna +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonna +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} köbméter +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}köbméter -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kp -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kp +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} láb -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}láb +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Szűrő kifejezés: @@ -311,6 +311,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Görget STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Görgetősáv - jobbra/balra görgeti a listát STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Építmények lerombolása egy mezőről. Ctrl lenyomásával átlós terület jelölhető ki. Shift lenyomásával megmutatja a becsült költséget +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Rejtett mutatása +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Rejtett mutatása +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Rejtett mutatása +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Rejtett mutatása + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ezzel a gombbal a rejtett vasúti járművek is megjelennek +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ezzel a gombbal a rejtett közúti járművek is megjelennek +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ezzel a gombbal a rejtett hajók is megjelennek +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ezzel a gombbal a rejtett repülőgépek is megjelennek + # Query window STR_BUTTON_DEFAULT :{BLACK}Alapértelmezett STR_BUTTON_CANCEL :{BLACK}Mégsem @@ -423,8 +434,8 @@ STR_SCENEDIT_FILE_MENU_QUIT :Kilépés ############ range for SE file menu starts ############ range for settings menu starts -STR_SETTINGS_MENU_GAME_OPTIONS :Beállítások -STR_SETTINGS_MENU_CONFIG_SETTINGS :Haladó beállítások +STR_SETTINGS_MENU_GAME_OPTIONS :Alapbeállítások +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Beállítások STR_SETTINGS_MENU_SCRIPT_SETTINGS :MI / Játékszkript beállítások STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF beállítások STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Átlátszósági beállítások @@ -939,7 +950,7 @@ STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Látkép STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}A látkép pozícióját a fő nézetre másolja # Game options window -STR_GAME_OPTIONS_CAPTION :{WHITE}Beállítások +STR_GAME_OPTIONS_CAPTION :{WHITE}Alapbeállítások STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Pénznem STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}A használt pénznem kiválasztása @@ -980,10 +991,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Grúz Lari (GEL STR_GAME_OPTIONS_CURRENCY_IRR :Iráni Riál (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Közúti járművek STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}A közúti közlekedés oldalának kiválasztása STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Balra hajtás @@ -1037,6 +1044,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Képerny STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Játékhoz használt felbontás kiválasztása STR_GAME_OPTIONS_RESOLUTION_OTHER :egyéb +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_NORMAL :Normál +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dupla méret +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Négyszeres méret + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grafikus alapcsomag STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}A játékhoz használandó grafikus alapcsomag kiválasztása STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} hiányzó/hibás fájl @@ -1129,7 +1143,8 @@ STR_SUBSIDY_X4 :4x STR_TERRAIN_TYPE_VERY_FLAT :Nagyon sík STR_TERRAIN_TYPE_FLAT :Sík STR_TERRAIN_TYPE_HILLY :Dombos -STR_TERRAIN_TYPE_MOUNTAINOUS :Hegyes +STR_TERRAIN_TYPE_MOUNTAINOUS :Hegyvidéki +STR_TERRAIN_TYPE_ALPINIST :Alpesi STR_CITY_APPROVAL_PERMISSIVE :Engedékeny STR_CITY_APPROVAL_TOLERANT :Toleráns @@ -1137,8 +1152,8 @@ STR_CITY_APPROVAL_HOSTILE :Ellenséges STR_WARNING_NO_SUITABLE_AI :{WHITE}Nincsen megfelelő MI...{}Letölthetsz néhány MI-t a tartalomletöltő rendszeren keresztül -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Haladó beállítások +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Beállítások STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Szűrő kifejezés: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Összes szétnyitása STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Összes összecsukása @@ -1154,9 +1169,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Vállalat beál STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategória: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Típus: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Leszűkíti a listát a megadott szűrők segítségével -STR_CONFIG_SETTING_RESTRICT_BASIC :Alapbeállítások -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Haladó beállítások -STR_CONFIG_SETTING_RESTRICT_ALL :Szakértő beállítások / minden beállítás +STR_CONFIG_SETTING_RESTRICT_BASIC :Alap (csak a fontos beállítások) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Haladó (majdnem mindegyik beállítás mutatása) +STR_CONFIG_SETTING_RESTRICT_ALL :Szakértő (minden beállítás, még az egészen furák is) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Beállítások az eredetitől eltérő értékekkel STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Beállítosok amelyeknek a jelenlegi értéke eltér az eredetitől @@ -1211,6 +1226,9 @@ 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_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_MAX_HEIGHTLEVEL_HELPTEXT :A térképen található hegyek maximális magasságának beállítása +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_HELPTEXT :Tájrendezés engedélyezése épületek és utak alatt azok eltávolítása nélkül STR_CONFIG_SETTING_CATCHMENT :Élethűbben méretezett állomási vonzáskörzetek bekapcsolása: {STRING} @@ -1239,6 +1257,8 @@ STR_CONFIG_SETTING_INFLATION :Infláció: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Infláció engedélyezése a gazdaságban, ahol a költségek jobban emelkednek, mint a bevételek STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Hidak maximális hossza: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Az építendő hidak maximális hossza +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximális hídmagasság: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Hidak építésének maximális magassága STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Alagutak maximális hossza: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Az építendő alagutak maximális hossza STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Kézi nyersanyaglelőhely-létesítési módszer: {STRING} @@ -1324,8 +1344,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Hibaüzenetek i STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :A piros ablakban megjelenő hibaüzenetek kijelzésének időtartama. Bizonyos (kritikus) hibaüzenetek nem záródnak be automatikusan egy idő után, hanem kézzel kell őket bezárni STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} másodperc STR_CONFIG_SETTING_HOVER_DELAY :Leírás megjelenítése: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Késleltetés mielőtt megjelenne az eszközleírás az egér ráhúzása után egy felületi elemen. A leírás elérhető még az egér jobb gombjával is -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Várakozás {COMMA} másodpercig +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Késleltetés, mielőtt megjelenne az eszközleírás az egér ráhúzása után egy felületi elemen. A leírás elérhető még az egér jobb gombjával is, ha ennek értéke 0-ra van állítva. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :{COMMA} ezredmásodperc után STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Jobb klikk STR_CONFIG_SETTING_POPULATION_IN_LABEL :Mutassa a település lakosságát a feliratban: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Település lakosságszámának kijelzése a címkéjén @@ -1508,7 +1528,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Javítási inte STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :A járművek javítási módjának kiválasztása, hogy az utolsó javítás óta eltelt idő, vagy a maximális megbízhatósághoz képesti százalékos csökkenés alapján kerüljelek javításra STR_CONFIG_SETTING_SERVINT_TRAINS :Alapértelmezett javítási intervallum vonatoknak: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Alapértelmezett javítási intervallum beállítása új vonatoknak, ha nincs külön javítási intervallum beállítva a járműre -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} nap/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}nap/% STR_CONFIG_SETTING_SERVINT_DISABLED :kikapcsolva STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Alapértelmezett javítási intervallum közúti járműveknek: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Alapértelmezett javítási intervallum beállítása új közúti járműveknek, ha nincs külön javítási intervallum beállítva a járműre @@ -1648,9 +1668,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :nincs STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Kezdeti városméret-szorzó: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Átlagos városméret a normál településekhez képest a játék kezdetén -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :A szétosztási gráf frissítése {STRING} naponként +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :A szétosztási gráf frissítése {STRING}{NBSP}naponként STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :A kapcsolati gráf egyes újraszámításai között eltelő idő. Minden számítás a gráf egy adott komponensére vonatkozik. Egy adott X beállítás esetén nem fog a teljes gráf X naponként frissülni, csak egy komponense. Minél rövidebb ez az idő, annál több CPU időre lesz szükség a számítás elvégzéséhez. Minél hosszabb ez az idő, annál több ideig fog tartani, mire a szétosztás megindul az új útvonalakon. -STR_CONFIG_SETTING_LINKGRAPH_TIME :A szétosztási gráf újraszámolására szánt idő: {STRING} nap +STR_CONFIG_SETTING_LINKGRAPH_TIME :A szétosztási gráf újraszámolására szánt idő: {STRING}{NBSP}nap STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :A kapcsolati gráf egy komponensének újraszámítására szánt idő. Az újraszámítás egy külön szálon indul el, és a megadott számú napig fut. Minél rövidebb ez az időtartam, annál valószínűbb, hogy a számítás nincs kész az idő lejártakor, ekkor a játék megáll a számítás befejeződéséig (ettől a játék akadhat). Minél hosszabb ez az időtartam, annál több idő kell a szétosztás frissüléséhez, amikor megváltoznak az útvonalak. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :kézi STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :aszimmetrikus @@ -1660,7 +1680,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :A "szimmetrikus STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Levelek szétosztása: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :A "szimmetrikus" azt jelenti, hogy megközelítóleg ugyanannyi levél megy majd A-ból B-be, mint B-ből A-ba. Az "aszimmetrikus" beállítás esetén a különbözö irányokba tetszőleges mennyiségű levél mehet. "Kézi" esetben a levelek nem lesznek automatikusan szétosztva. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :A PÁNCÉLOZOTT rakománytípus szétosztása: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :A PÁNCÉLOZOTT rakománytípus a mérsékelt égövi tájon az értéktárgyakat, szubtrópusi tájon a gyémántot, szubarktikus tájon pedig az aranyat jelenti, ezeken a NewGRF-ek változtathatnak. A "szimmetrikus" azt jelenti, hogy megközelítóleg ugyanannyi rakomány megy majd A-ból B-be, mint B-ből A-ba. Az "aszimmetrikus" beállítás esetén a különbözö irányokba tetszőleges mennyiségű rakomány mehet. "Kézi" esetben a rakományok nem lesznek automatikusan szétosztva. Szubarktikus és szubtrópusi esetben az "aszimmetrikus" vagy "kézi" beállítás javasolt, mivel a bankok nem fognak aranyat, ill. gyémántot visszaküldeni a bányáknak. Mérsékelt égövi esetben a "szimmetrikus" is jó választás, ebben az esetben a bankok a fogadott mennyiségnek megfelelően fognak értéktárgyakat visszaküldeni a küldő banknak. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :A PÁNCÉLOZOTT rakománytípus a mérsékelt égövi tájon az értéktárgyakat, szubtrópusi tájon a gyémántot, szubarktikus tájon pedig az aranyat jelenti, ezeken a NewGRF-ek változtathatnak. A "szimmetrikus" azt jelenti, hogy megközelítóleg ugyanannyi rakomány megy majd A-ból B-be, mint B-ből A-ba. Az "aszimmetrikus" beállítás esetén a különbözö irányokba tetszőleges mennyiségű rakomány mehet. "Kézi" esetben a rakományok nem lesznek automatikusan szétosztva. Szubarktikus esetben az "aszimmetrikus" vagy "kézi" beállítás javasolt, mivel a bankok nem fognak aranyat, ill. gyémántot visszaküldeni a bányáknak. Mérsékelt és szubtropikus égövi esetben a "szimmetrikus" is jó választás, ebben az esetben a bankok a fogadott mennyiségnek megfelelően fognak értéktárgyakat visszaküldeni a küldő banknak. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Egyéb rakománytípusok szétosztása: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Az "aszimmetrikus" beállítás esetén a különbözö irányokba tetszőleges mennyiségű rakomány mehet. "Kézi" esetben a rakományok nem lesznek automatikusan szétosztva. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :A szétosztás pontossága: {STRING} @@ -1673,37 +1693,37 @@ STR_CONFIG_SETTING_SHORT_PATH_SATURATION :A rövidebb uta STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Gyakran több útvonal is van két adott állomás között. A Cargodist először a legrövidebb útvonalat telíti be, majd a második legrövidebb útvonalat, miután az első útvonal már telített, és így tovább. A telítettséget a kapacitás becslése és a tervezett kihasználtság határozza meg. Amennyiben az összes útvonal telített, és még mindig van igény, az összes útvonalat terhelni fogja, elsősorban a legnagyobb kapacitásúakat. Viszont a legtöbb esetben az algoritmus nem fogja pontosan megbecsülni a kapacitást. Ezen opció segítségével beállíthatjuk, hogy milyen telítettségi szintig legyen kihasználva a rövidebb útvonal a hosszabb útvonal használatba vétele előtt. Állítsd 100%-nál kisebbre, hogy elkerüld a túlterhelődő állomásokat abban az esetben, ha a kapacitás túl lenne becsülve! STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Sebesség mértékegysége: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :A sebességek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :A sebességértékek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Angolszász (mi/h) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Metrikus (km/h) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Teljesítmény mértékegysége: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :A teljesítmények a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :A teljesítményértékek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Angolszász (LE) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrikus (LE) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Tömeg mértékegysége: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :A tömegek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :A tömegértékek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Angolszász (angolszász tonna) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrikus (t/tonna) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Űrtartalom mértékegysége: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Az űrtartalmak a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Az űrtartalomértékek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Angolszász (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrikus (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Vonóerő mértékegysége: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :A vonóerők a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :A vonóerőértékek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Angolszász (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrikus (kp) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Hosszúság mértékegysége: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :A hosszúságok a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :A magassági értékek a kiválasztott mértékegységben fognak megjelenni a felhasználói felületen STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Angolszász (láb) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrikus (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1777,9 +1797,9 @@ STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Játék STR_INTRO_SCENARIO_EDITOR :{BLACK}Pályaszerkesztő STR_INTRO_MULTIPLAYER :{BLACK}Hálózati játék -STR_INTRO_GAME_OPTIONS :{BLACK}Beállítások +STR_INTRO_GAME_OPTIONS :{BLACK}Alapbeállítások STR_INTRO_HIGHSCORE :{BLACK}Rekord tábla -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Haladó beállítások +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Beállítások STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF beállítások STR_INTRO_ONLINE_CONTENT :{BLACK}Letölthető tartalmak STR_INTRO_SCRIPT_SETTINGS :{BLACK}MI / Játékszkript beállítások @@ -1797,9 +1817,9 @@ STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Szubarkt STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Szubtrópusi táj kiválasztása STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Játékvilág táj kiválasztása -STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}A játék beállításainak megjelenítése +STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}A játék alapvető beállításainak (pl. nyelv, grafikus alapcsomag, stb.) megjelenítése STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Rekord tábla megjelenítése -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Haladó beállítások megjelenítése +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}A beállítások megjelenítése STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF beállítások megjelenítése STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Új és frissített tartalmak megtekintése és letöltése STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}MI és játékszkript beállítások megjelenítése @@ -1839,6 +1859,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Irány STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Csodabuldózer (lerombol gazdasági épületeket, mozgathatatlan objektumokat): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Alagutak keresztezhessék egymást: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jet-repülők nem fognak (gyakran) lezuhanni a kis repülőtereken: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Maximális térképmagasság szerkesztése: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}A térképen található hegyek maximális magasságának szerkesztése STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Mérsékelt táj STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Szubarktikus táj STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Szubtrópusi táj @@ -2357,7 +2379,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Vasúti STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Vasúti járműtelep építése (vonatok vételére és karbantartására). Shift lenyomásával becsült építési költséget mutat STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Ellenőrző pont építése vágányra. A Ctrl lenyomásával az ellenőrző pontok egyesíthetőek. Shift lenyomásával megmutatja a becsült építési költséget STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Vasútállomás építése. A Ctrl lenyomásával egyesítheted más állomásokkal. Shift lenyomásával megmutatja a becsült építési költséget -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Vasúti jelzők építése. Ctrl gombbal váltás az alak- és fényjelzők között{}Húzással a sínek mentén végig jelzők épülnek. Húzva Ctrl gombbal a következő pályakiágazásig épít jelzőket{}Ctrl+kattintással válthatod a megnyitandó jelzőépítés-kezelő ablakot. Shift lenyomásával megmutatja a becsült építési költséget +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Vasúti jelzők építése. Ctrl gombbal váltás az alak- és fényjelzők között{}Húzással a sínek mentén végig jelzők épülnek. Húzva Ctrl gombbal a következő pályakiágazásig vagy jelzőig épít jelzőket{}Ctrl+kattintással válthatod a megnyitandó jelzőépítés-kezelő ablakot. Shift lenyomásával megmutatja a becsült építési költséget STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Vasúti híd építése. Shift lenyomásával megmutatja a becsült építési költséget STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Vasúti alagút építése. Shift lenyomásával megmutatja a becsült építési költséget STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Váltás építés/feleszedés között vasúti pályák, jelzők, ellenőrző pontok és vasútállomások esetében. Ctrl nyomvatartásával az ellenőrző pontokon és állomásokon a vasúti pályát is eltávolítja @@ -2729,7 +2751,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Vállalat álta STR_ABOUT_OPENTTD :{WHITE}Az OpenTTD-ről STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Eredeti copyright {COPYRIGHT} 1995 Chris Sawyer, Minden jog fenntartva STR_ABOUT_VERSION :{BLACK}OpenTTD {REV} verzió -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 Az OpenTTD csapat +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 Az OpenTTD csapat # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Játék mentése @@ -2764,6 +2786,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Várossűrűség: STR_MAPGEN_DATE :{BLACK}Dátum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Gazd. épületek száma: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximum térképmagasság: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}A hegyek maximális magasságának növelése a térképen eggyel +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}A hegyek maximális magasságának csökkentése a térképen eggyel STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hóhatár: STR_MAPGEN_SNOW_LINE_UP :{BLACK}A hóhatár megnövelése eggyel STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}A hóhatár csökkentése eggyel @@ -2793,6 +2818,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Magassá STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Méret: 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_SNOW_LINE_QUERY_CAPT :{WHITE}Hóhatár megváltoztatása STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Kezdő év megváltoztatása @@ -2906,14 +2932,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF v # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Elhelyezési sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Következő sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Továbbhaladás a következő normál spritera, kihagyva bármilyen ál/átszínező/betű spriteokat bezárva a végével +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Továbbhaladás a következő normál spritera, kihagyva bármilyen ál/átszínező/betű spriteokat, a végén folytatva az elsővel STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Ugrás a spritehoz STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ugrás a megadott spritehoz. Ha a sprite nem normál sprite, továbbhaladás a következő normál spritehoz STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Előző sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Továbbhaladás az előző normál spritera, kihagyva bármilyen ál/átszínező/betű spriteokat bezárva az elejével +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Továbbhaladás az előző normál spritera, kihagyva bármilyen ál/átszínező/betű spriteokat, az elején folytatva az utolsóval STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}A jelenleg kiválasztott sprite ábrázolása. Az elhelyezkedés kikapcsolt sprite-rajzolás közben STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sprite elmozdítása, módosítva az X és Y offszeteket -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offszet: {NUM}, Y offszet: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Eltolás visszaállítása +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}A jelenlegi relatív eltolás visszaállítása +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X eltolás: {NUM}, Y eltolás: {NUM} (Abszolút) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X eltolás: {NUM}, Y eltolás: {NUM} (Relatív) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Sprite felszedése STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Szedj fel egy spriteot akárhonnan a képernyőről @@ -2942,7 +2971,7 @@ STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Több Action 8 bejegyzést tartalmaz (sprite {3:NUM}) STR_NEWGRF_ERROR_READ_BOUNDS :Ál-sprite távoli végének olvasása (sprite {3:NUM}) STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}A jelenleg használt grafikus alapcsomagból hiányzik számos sprite.{}Kérlek frissítsd a grafikus alapcsomagot -STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}A használt alap grafikus csomagból néhány egység hiányzik.{}Kérjük frissítsd az alap grafikus csomagot.{}Ha az {YELLOW}OpenTTD fejlesztői változatát{WHITE} használod, lehet hogy a {YELLOW}fejlesztői alap grafikus csomagot{WHITE} kellene használnod +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}A használt alap grafikus csomagból néhány egység hiányzik.{}Kérjük frissítsd az alap grafikus csomagot.{}Mivel az {YELLOW}OpenTTD fejlesztői változatát{WHITE} használod, lehet, hogy a {YELLOW}fejlesztői alap grafikus csomagot{WHITE} kellene használnod STR_NEWGRF_ERROR_GRM_FAILED :Kért GRF források nem elérhetőek (sprite {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} kikapcsolva {STRING} által STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Érvénytelen/ismeretlen sprite szerkezet formátum (sprite {3:NUM}) @@ -3025,8 +3054,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} szállítva STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (több szükséges) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (szállítva) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}A település {ORANGE}{COMMA}{BLACK} naponta növekszik -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}A település {ORANGE}{COMMA}{BLACK} naponta növekszik (támogatást kapott) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}A település {ORANGE}{COMMA}{BLACK}{NBSP}naponta növekszik +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}A település {ORANGE}{COMMA}{BLACK}{NBSP}naponta növekszik (támogatást kapott) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}A település {RED}nem{BLACK} növekszik STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Zajszint a városban: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}A fő nézetet a városra állítja. Ctrl+kattintás esetén új nézetet nyit a város pozíciójára @@ -3086,7 +3115,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Információ STR_GOAL_QUESTION_CAPTION_WARNING :Figyelmeztetés STR_GOAL_QUESTION_CAPTION_ERROR :Hiba -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Mégse STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nem @@ -3105,6 +3134,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Újrakezd STR_GOAL_QUESTION_BUTTON_POSTPONE :Elhalaszt STR_GOAL_QUESTION_BUTTON_SURRENDER :Felad STR_GOAL_QUESTION_BUTTON_CLOSE :Bezár +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Támogatások @@ -3429,10 +3459,10 @@ STR_PURCHASE_INFO_ALL_BUT :Mindenre, kivé STR_PURCHASE_INFO_MAX_TE :{BLACK}Maximális vonóerő: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Hatótávolság: {GOLD}{COMMA} mező -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Vasúti jármű kiválasztása - kattints egy járműre az adataihoz -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Közúti jármű kiválasztása - kattints egy járműre az adataihoz -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Hajó kiválasztása - kattints egy hajóra az adataihoz -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Repülőgép kiválasztása - kattints egy repülőgépre az adataihoz +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Vasúti jármű kiválasztása - kattints egy járműre az adataihoz. Ctrl+kattintással a járműtípus elrejthető/felfedhető +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Közúti jármű kiválasztása - kattints egy járműre az adataihoz. Ctrl+kattintással a járműtípus elrejthető/felfedhető +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Hajó kiválasztása - kattints egy hajóra az adataihoz. Ctrl+kattintással a hajótípus elrejthető/felfedhető +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Repülőgép kiválasztása - kattints egy repülőgépre az adataihoz. Ctrl+kattintással a repülőgéptípus elrejthető/felfedhető STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Megvesz STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Megvesz @@ -3454,6 +3484,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}A közú STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}A hajó márkanevének megváltoztatása STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}A repülőgép márkanevének megváltoztatása +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Elrejtés +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Elrejtés +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Elrejtés +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Elrejtés + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Megjelenítés +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Megjelenítés +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Megjelenítés +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Megjelenítés + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Vasúti járműtípus elrejtése/felfedése +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Közúti járműtípus elrejtése/felfedése +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Hajótípus elrejtése/felfedése +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Repülőgéptípus elrejtése/felfedése + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Márkanév megváltoztatása STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Márkanév megváltoztatása STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Márkanév megváltoztatása @@ -3507,7 +3552,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Jármű STR_DEPOT_CLONE_SHIP :{BLACK}Hajó másolása STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Repülőgép másolása -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Ide kattintva elkészítheted egy teljes vonat másolatát. Kattints ide, majd a másolandó vonatra. Ctrl+kattintással az utasításlistát is megosztod. Shift+kattintással megmutatja a becsült költséget vásárlás nélkül +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Ide kattintva elkészítheted egy teljes vonat másolatát annak összes kocsijával. Kattints erre a gombra, majd a vonatra kívül vagy belül a járműtelepen. Kattints ide, majd a másolandó vonatra. Ctrl+kattintással az utasításlistát is megosztod. Shift+kattintással megmutatja a becsült költséget vásárlás nélkül STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Ide kattintva megveheted egy közúti jármű másolatát. Kattints ide, majd a másolandó járműre a járműtelepen belül vagy kívül. Ctrl+kattintással az utasításlistát is megosztod. Shift+kattintással megmutatja a becsült költséget vásárlás nélkül STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Ide kattintva elkészítheted egy hajó másolatát. Kattints ide, majd a másolandó hajóra. Ctrl+Kattintással a menetrendet is megosztod. Shift+kattintással megmutatja a becsült költséget vásárlás nélkül STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Ide kattintva elkészítheted egy repülőgép másolatát. Kattints ide, majd a másolandó repülőgépre. Ctrl+kattintással a menetrendet is megosztod. Shift+kattintással megmutatja a becsült költséget vásárlás nélkül @@ -3545,7 +3590,7 @@ STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :egysínű mozdo STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :Maglev mozdony STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Ár: {CURRENCY_LONG} Súly: {WEIGHT_SHORT}{}Sebesség: {VELOCITY} Teljesítmény: {POWER}{}Üzemeltetés: {CURRENCY_LONG}/év{}Kapacitás: {CARGO_LONG} -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Ár: {CURRENCY_LONG} Súly: {WEIGHT_SHORT}{}Sebesség: {VELOCITY} Erő: {POWER} Maximális Vonóerő: {6:FORCE}{}Üzemeltetési költségeit: {4:CURRENCY_LONG}/év{}Capacity: {5:CARGO_LONG} +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Ár: {CURRENCY_LONG} Súly: {WEIGHT_SHORT}{}Sebesség: {VELOCITY} Teljesítmény: {POWER} Maximális vonóerő: {6:FORCE}{}Üzemeltetés: {4:CURRENCY_LONG}/év{}Kapacitás: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_CAPACITY_RUNCOST :{BLACK}Ár: {CURRENCY_LONG} Végsebesség: {VELOCITY}{}Kapacitás: {CARGO_LONG}, {CARGO_LONG}{}Üzemeltetés: {CURRENCY_LONG}/év STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK}Ár: {CURRENCY_LONG} Végsebesség: {VELOCITY}{}Kapacitás: {CARGO_LONG}{}Üzemeltetés: {CURRENCY_LONG}/év STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_CAPACITY_RUNCOST:{BLACK}Ár: {CURRENCY_LONG} Végsebesség: {VELOCITY} Hatótávolság: {COMMA} mező{}Kapacitás: {CARGO_LONG}, {CARGO_LONG}{}Üzemeltetés: {CURRENCY_LONG}/év @@ -3558,6 +3603,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Közúti járm STR_REPLACE_VEHICLE_SHIP :Hajók STR_REPLACE_VEHICLE_AIRCRAFT :Repülőgépek +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Járművek használatban +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Oszlop tulajdonolt járművekkel +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Elérhető járművek +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Oszlop cserére alkalmas járművekkel + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Cserélendő járműtípus kiválasztása STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}A bal oldalon kiválasztott járműtípus helyett kívánt új járműtípus kiválasztása @@ -3682,7 +3732,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapacit STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Szállítási díj: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Javítási időköz: {LTBLUE}{COMMA} nap{BLACK} Utolsó javítás: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Javítási időköz: {LTBLUE}{COMMA}{NBSP}nap{BLACK} Utolsó javítás: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Javítási intervallum: {LTBLUE}{COMMA}%{BLACK} Utolsó javítás: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Javítási időköz növelése 10-zel. Ctrl+kattintás 5-tel növeli STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Javítási időköz csökkentése 10-zel. Ctrl+Kattintás 5-tel csökkenti @@ -3918,8 +3968,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(ottmarad {STRI STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :({STRING} utazás, időzítetlen) STR_TIMETABLE_STAY_FOR :állomásra és maradj ott {STRING}ig STR_TIMETABLE_AND_TRAVEL_FOR :és a menetidő: {STRING} -STR_TIMETABLE_DAYS :{COMMA} nap -STR_TIMETABLE_TICKS :{COMMA} tick +STR_TIMETABLE_DAYS :{COMMA}{NBSP}nap +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick STR_TIMETABLE_TOTAL_TIME :{BLACK}A menetrend teljesítési ideje: {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}A menetrend teljesítési ideje legalább: {STRING} (nincs minden időzítve) @@ -4157,6 +4207,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Az ásá STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Már tengerszinten van STR_ERROR_TOO_HIGH :{WHITE}Túl magas STR_ERROR_ALREADY_LEVELLED :{WHITE}... már sík +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Ezután a híd túl magas lenne. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Nem változtathatod meg a vállalat nevét... @@ -4183,7 +4234,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... túl STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... túl közel van egy másik településhez STR_ERROR_TOO_MANY_TOWNS :{WHITE}... túl sok a település STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... nincs több hely a térképen -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}A település nem fog utakat építeni. Az útépítést a Haladó beállítások->Gazdaság->Városok menüben engedélyezheted +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}A település nem fog utakat építeni. Az útépítést a Haladó beállítások->Környezet->Települések menüben engedélyezheted STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Útkarbantartás folyamatban STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Nem törölheted ezt a várost...{}Egy állomás vagy járműtelep hivatkozik a városra, vagy egy városi tulajdonú mező nem eltávolítható STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... nincs megfelelő hely egy szobornak a város központjában @@ -4207,6 +4258,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... erd STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... csak a hóhatár fölé építhető STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... csak a hóhatár alá építhető +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nem volt megfelelő hely '{STRING}' elhelyezésére +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Változtasd meg a térképgenerálás paramétereit, hogy jobb térképet kapj + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Nem építhetsz ide vasútállomást... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Nem építhetsz ide buszmegállót... @@ -4343,6 +4397,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Előbb l STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Nem kezdődhet és végződhet ugyanott STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Hídfők nem egy szinten vannak STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}A híd túl alacsony a terepre +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}A híd túl magas erre a terepre. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}A kezdetének és a végének egy vonalban kell lennie STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... a híd mindkét végének szárazföldön kell lennie STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... a híd túl hosszú @@ -4948,6 +5003,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (rejtett) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4983,8 +5039,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt index e5586ae2e1..01b330bce2 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -240,6 +240,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Skrunsl STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Rennislá - rennir lista til vinstri/hægri STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Eyða byggingum o.s.frv. á lóðarreiti. Ctrl velur svæðið skáhalt. Haldið Shift inni til að sýna áætlaðan kostnað +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Sjálfgildi STR_BUTTON_CANCEL :{BLACK}Hætta við @@ -349,7 +352,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :Hætta ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Stillingar -STR_SETTINGS_MENU_CONFIG_SETTINGS :Ítarlegar stillingar STR_SETTINGS_MENU_SCRIPT_SETTINGS :Gervigreind/leikjaforskrift STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF stillingar STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gegnsæisstillingar @@ -896,10 +898,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari (Gel) STR_GAME_OPTIONS_CURRENCY_IRR :Íranskt ríal (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Aksturstefna STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Aksturstefna bifreiða STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vinstristefna @@ -953,6 +951,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skjáupp STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Stilla skjáupplausn STR_GAME_OPTIONS_RESOLUTION_OTHER :annað + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grunngrafík STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Nota grunngrafíkina STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} týnd{P "" ar} eða ónýt{P "" ar} skrá{P "" r} @@ -1052,8 +1052,7 @@ STR_CITY_APPROVAL_HOSTILE :Fjandsamleg STR_WARNING_NO_SUITABLE_AI :{WHITE}Engin nothæf gervigreind í boði...{}Þú getur hlaðið niður mörgum gervigreindum í gegnum 'Ná í viðbætur af netinu' viðmótið -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Ítarlegar stillingar +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Sía: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Þenja út STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Draga saman @@ -1603,7 +1602,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}Fjölspi STR_INTRO_GAME_OPTIONS :{BLACK}Stillingar STR_INTRO_HIGHSCORE :{BLACK}Stigatafla -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Ítarlegar stillingar STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Stillingar STR_INTRO_ONLINE_CONTENT :{BLACK}Ná í viðbætur af netinu STR_INTRO_SCRIPT_SETTINGS :{BLACK}GG/forskriftar stillingar @@ -1623,7 +1621,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Leikfang STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Stilla OpenTTD STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Birta stigatöflu -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Birta ítarlegar stillingar STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Sýna NewGRF stillingar STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Skoða viðbætur sem hægt er að ná í af netinu STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Birta stillingar fyrir gervigreind/forskrift @@ -2539,7 +2536,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Land í eigu fy STR_ABOUT_OPENTTD :{WHITE}Um OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Upphaflegur höfundarréttur {COPYRIGHT} 1995 Chris Sawyer, Öll réttindi áskilin STR_ABOUT_VERSION :{BLACK}OpenTTD útgáfa {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 OpenTTD hópurinn +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD hópurinn # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Vista leik @@ -2712,7 +2709,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Fyrri hr STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fara á fyrri venjulegu hreyfimynd, sleppir gervi/endurlitun/letur hreyfimyndum og fer aftast í listen þegar upphafi er náð. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Framsetning á valinni hreyfimynd. Samstillingu er sleppt við teikningu á þessari hreyfimynd. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Færðu hreyfimyndina, breytir X og Y hliðrun -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X hliðrun: {NUM}, Y hliðrun: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Veldu hreyfimynd STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Veldu hreyfimynd hvaðan sem er af skjánum @@ -2878,7 +2874,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Upplýsingar STR_GOAL_QUESTION_CAPTION_WARNING :Varúð STR_GOAL_QUESTION_CAPTION_ERROR :Villa -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Hætta við STR_GOAL_QUESTION_BUTTON_OK :Í lagi STR_GOAL_QUESTION_BUTTON_NO :Nei @@ -2897,6 +2893,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Byrja aftur STR_GOAL_QUESTION_BUTTON_POSTPONE :Fresta STR_GOAL_QUESTION_BUTTON_SURRENDER :Gefast upp STR_GOAL_QUESTION_BUTTON_CLOSE :Loka +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Samstarfssamningar @@ -3212,6 +3209,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Endurnef STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Endurnefna skipategund STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Endurnefna tegund flugvélar + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Endurskíra lestargerð STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Endurnefna tegund bifreiðar STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Endurnefna skipategund @@ -3316,6 +3316,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Bifreið STR_REPLACE_VEHICLE_SHIP :Skip STR_REPLACE_VEHICLE_AIRCRAFT :Flugvél + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Veldu vagntegund til að skipta út STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Velja vagntegund sem þú myndir vilja nota í staðin fyrir vagntegundina sem valinn er vinstra megin @@ -3958,6 +3959,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... skó STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... er aðeins hægt að byggja fyrir ofan snælínu STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... er aðeins hægt að byggja fyrir neðan snælínu + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Get ekki byggt lestarstöð hér... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Get ekki byggt strætóstoppistöð... @@ -4689,8 +4691,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt index 8249dd97f6..6a1a669d81 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Minuman Berdesi # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} penumpang +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}penumpang STR_QUANTITY_COAL :{WEIGHT_LONG} batubara -STR_QUANTITY_MAIL :{COMMA} kantong surat +STR_QUANTITY_MAIL :{COMMA}{NBSP}kantong surat STR_QUANTITY_OIL :{VOLUME_LONG} minyak -STR_QUANTITY_LIVESTOCK :{COMMA} ekor ternak -STR_QUANTITY_GOODS :{COMMA} peti barang jadi +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}ekor ternak +STR_QUANTITY_GOODS :{COMMA}{NBSP}peti barang jadi STR_QUANTITY_GRAIN :{WEIGHT_LONG} gandum STR_QUANTITY_WOOD :{WEIGHT_LONG} kayu STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} bijih besi STR_QUANTITY_STEEL :{WEIGHT_LONG} baja -STR_QUANTITY_VALUABLES :{COMMA} kantong barang berharga +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}kantong barang berharga STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} bijih tembaga STR_QUANTITY_MAIZE :{WEIGHT_LONG} jagung STR_QUANTITY_FRUIT :{WEIGHT_LONG} buah-buahan -STR_QUANTITY_DIAMONDS :{COMMA} kantong intan +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}kantong intan STR_QUANTITY_FOOD :{WEIGHT_LONG} makanan STR_QUANTITY_PAPER :{WEIGHT_LONG} kertas -STR_QUANTITY_GOLD :{COMMA} kantong emas +STR_QUANTITY_GOLD :{COMMA}{NBSP}kantong emas STR_QUANTITY_WATER :{VOLUME_LONG} air STR_QUANTITY_WHEAT :{WEIGHT_LONG} gandum STR_QUANTITY_RUBBER :{VOLUME_LONG} karet STR_QUANTITY_SUGAR :{WEIGHT_LONG} gula -STR_QUANTITY_TOYS :{COMMA} mainan -STR_QUANTITY_SWEETS :{COMMA} kantong manisan +STR_QUANTITY_TOYS :{COMMA}{NBSP}mainan +STR_QUANTITY_SWEETS :{COMMA}{NBSP}kantong manisan STR_QUANTITY_COLA :{VOLUME_LONG} kola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} arum manis STR_QUANTITY_BUBBLES :{COMMA} gelembung @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}TANP STR_ABBREV_ALL :{TINY_FONT}SMA # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} penumpang -STR_BAGS :{COMMA} kantong -STR_TONS :{COMMA} ton -STR_LITERS :{COMMA} liter -STR_ITEMS :{COMMA} unit -STR_CRATES :{COMMA} peti +STR_PASSENGERS :{COMMA}{NBSP}penumpang +STR_BAGS :{COMMA}{NBSP}kantong +STR_TONS :{COMMA}{NBSP}ton +STR_LITERS :{COMMA}{NBSP}liter +STR_ITEMS :{COMMA}{NBSP}unit +STR_CRATES :{COMMA}{NBSP}peti # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Biru tua @@ -191,12 +191,12 @@ STR_COLOUR_GREY :Abu-abu STR_COLOUR_WHITE :Putih # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mil/j -STR_UNITS_VELOCITY_METRIC :{COMMA} km/jam -STR_UNITS_VELOCITY_SI :{COMMA} meter/detik +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mil/j +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/jam +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}meter/detik -STR_UNITS_POWER_IMPERIAL :{COMMA}dk -STR_UNITS_POWER_METRIC :{COMMA}dk +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}dk +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}dk STR_UNITS_POWER_SI :{COMMA}kW STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Batang G STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Batang Geser - Geser daftar ke kiri/kanan STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Runtuhkan bangunan, dll dalam area kotak. Ctrl untuk memilih secara diagonal. Shift untuk menampilkan perkiraan biaya +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Tampilkan yang tersembunyi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Tampilkan yang tersembunyi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Tampilkan yang tersembunyi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Tampilkan yang tersembunyi + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Mengaktifkan tombol ini akan menampilkan juga kereta yang tersembunyi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Mengaktifkan tombol ini akan menampilkan juga kendaraan yang tersembunyi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Mengaktifkan tombol ini akan menampilkan juga kapal yang tersembunyi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Mengaktifkan tombol ini akan menampilkan juga pesawat yang tersembunyi + # Query window STR_BUTTON_DEFAULT :{BLACK}Standar STR_BUTTON_CANCEL :{BLACK}Batal @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Keluar ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Pengaturan permainan -STR_SETTINGS_MENU_CONFIG_SETTINGS :Pengaturan lanjutan +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Pengaturan STR_SETTINGS_MENU_SCRIPT_SETTINGS :Pengaturan AI / Skrip Permainan STR_SETTINGS_MENU_NEWGRF_SETTINGS :Pengaturan NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Pengaturan Transparansi @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgia (G STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iran (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Kendaraan jalan raya STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Pilih lajur yang dilalui bus/truk STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Berkendara di lajur kiri @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resolusi STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Pilih resolusi layar yang diinginkan STR_GAME_OPTIONS_RESOLUTION_OTHER :lainnya +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Ukuran antarmuka +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Pilih ukuran elemen antarmuka yang akan digunakan + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Kali dua +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Kali empat + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Set Grafik Dasar STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Pilih grafik dasar yang digunakan STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} berkas hilang atau rusak @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Sangat Datar STR_TERRAIN_TYPE_FLAT :Datar STR_TERRAIN_TYPE_HILLY :Berbukit STR_TERRAIN_TYPE_MOUNTAINOUS :Pegunungan +STR_TERRAIN_TYPE_ALPINIST :Pemanjat Gunung STR_CITY_APPROVAL_PERMISSIVE :Selalu boleh STR_CITY_APPROVAL_TOLERANT :Toleran @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Bermusuhan STR_WARNING_NO_SUITABLE_AI :{WHITE}Tidak terdapat pemain AI ...{}anda dapat mengunduh beberapa macam AI lewat "Cari Konten" -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Pengaturan lanjutan +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Pengaturan STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Penyaring kata: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Perluas semua STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Persempit semua @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Setting perusah STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategori: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Jenis: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Batasi daftar dibawah ini menggunakan filter yang telah ditetapkan -STR_CONFIG_SETTING_RESTRICT_BASIC :Pengaturan dasar -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Pengaturan lanjut -STR_CONFIG_SETTING_RESTRICT_ALL :Pengaturan mahir / semua aturan +STR_CONFIG_SETTING_RESTRICT_BASIC :Pengaturan dasar (hanya pengaturan yang penting) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Pengaturan lanjut (lebih banyak pengaturan) +STR_CONFIG_SETTING_RESTRICT_ALL :Pengaturan mahir (tampilkan semua, termasuk yang tak biasa) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Pengaturan dengan nilai berbeda dari nilai asli STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Pengaturan dengan nilai berbeda dari pengaturan permainan baru @@ -1104,9 +1119,9 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Pengaturan perm STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Pengaturan perusahaan (ikut tersimpan; hanya memiliki efek pada permainan baru) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Pengaturan perusahaan (ikut tersimpan; hanya memiliki efek pada perusahaan aktif) STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Tampilkan semua pencarian berdasarkan pengaturan{}{SILVER}Kategori {BLACK}sampai {WHITE}{STRING} -STR_CONFIG_SETTING_TYPE_HIDES :{BLACK} Tampilkan semua hasil pencarian dengan pengaturan {} {SILVER} Jenis {BLACK} ke {WHITE} Semua jenis pengaturan +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Tampilkan semua hasil pencarian dengan pengaturan{}{SILVER}Jenis {BLACK}ke {WHITE} Semua jenis pengaturan STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Tampilkan semua hasil pencarian berdasarkan pengaturan{}{SILVER}Kategori {BLACK}sampai {WHITE}{STRING} {BLACK}dan {SILVER}Jenis {BLACK}sampai {WHITE}Semua jenis pengaturan -STR_CONFIG_SETTINGS_NONE :{WHITE}- Tidak ada- +STR_CONFIG_SETTINGS_NONE :{WHITE}- Tidak ada - STR_CONFIG_SETTING_OFF :Tidak STR_CONFIG_SETTING_ON :Ya @@ -1147,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Mengaktifkan be STR_CONFIG_SETTING_CITY_APPROVAL :Sikap pemerintah kota terhadap restrukturasi area: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Pilih seberapa banyak dampak kebisingan dan lingkungan oleh perusahaan terhadap peringkat kota karena pembangunan di daerah +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Tinggi peta maksimum: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Atur ketinggian pegunungan maksimum yang diijinkan untuk peta ini +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Kamu tidak bisa mengubah ketinggian peta maksimum di angka itu. Setidaknya ada satu gunung di peta yang lebih tinggi STR_CONFIG_SETTING_AUTOSLOPE :Ijinkan pembentukan slop dibawah bangunan, rel, dsb. (otomatiskan): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Ijinkan pembentukan tanah dibawah bangunan dan trek tanpa merusaknya STR_CONFIG_SETTING_CATCHMENT :Ijinkan ukuran jangkauan wilayah lebih realistik: {STRING} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflasi: {STRIN STR_CONFIG_SETTING_INFLATION_HELPTEXT :Perbolehkan inflasi dalam ekonomi, dimana biaya naik sedikit lebih cepat daripada pembayaran STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Panjang maksimum jembatan: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Panjang maksimum untuk membuat jembatan +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimum tinggi jembatan: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Tinggi maksimum untuk pembangunan jembatan STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Panjang maksimum terowongan: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Panjang maksimum untuk membangun terowongan STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Metode pembangunan Industri primer : {STRING} @@ -1288,7 +1308,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Sangat halus STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Halus STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Kasar STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Sangat Kasar -STR_CONFIG_SETTING_VARIETY :Variasi: {STRING} +STR_CONFIG_SETTING_VARIETY :Distribusi variasi: {STRING} STR_CONFIG_SETTING_VARIETY_HELPTEXT :(hanya TerraGenesis) Menentukan apakah bentang darat berisi area bergunung dan rata. Karena ini hanya akan mengakibatkan bentang darat yang lebih rata, pengaturan yang lain seharusnya ditetap 'bergunung' STR_CONFIG_SETTING_RIVER_AMOUNT :Jumlahnya sungai: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Memilih berapa banyak sungai untuk membuat @@ -1596,7 +1616,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"simetris" bera STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Modus distribusi untuk surat: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"simetris" berarti kira-kira jumlah surat yang sama akan pergi dari stasiun A ke stasiun B sebagaimana dari B ke A. "asimetris" berarti jumlah surat yang pergi ke kedua arah bisa berbeda-beda. "manual" berarti bahwa tidak ada distribusi otomatis akan dilakukan untuk surat. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Modus distribusi untuk kelas kargo BERLAPIS BAJA: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Kelas kargo BERLAPIS BAJA mengandung barang berharga di iklim sedang, intan di sub tropis atau emas di iklim sub arktik. NewGRFs mungkin mengubah itu. "simetris" berarti bahwa kira-kira sama jumlah kargo itu akan pergi dari stasiun A ke stasiun B sebagai dari B ke A. "asimetris" berarti sewenang-wenang jumlah kargo itu bisa pergi di kedua arah. "manual" berarti bahwa tidak ada distribusi otomatis akan dilakukan untuk kargo itu. Disarankan untuk diaturkan ini ke asimetris atau manual ketika bermain sub arktik, sebagai bank tidak mengirim emas apapun kembali ke tambang emas. Untuk iklim sedang dan sub tropis anda juga bisah pilih simetris sebagian bank akan mengirim barang berharga kembali ke bank orisinil dari beberapa banyak barang berharga. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Kelas kargo BERLAPIS BAJA meliputi barang berharga pada iklim sedang, intan pada sub tropis atau emas pada iklim sub arktik. NewGRF mungkin mengubah itu. "simetris" berarti bahwa jumlah kargo kira-kira akan terkirim sama dari stasiun A ke stasiun B sebagaimana dari B ke A. "asimetris" berarti jumlah kargo terkirim bisa berbeda pada kedua arah. "manual" berarti bahwa tidak ada distribusi otomatis akan dilakukan untuk kargo itu. Disarankan untuk memilih asimetris atau manual ketika bermain sub arktik, karena bank tidak mengirim emas kembali ke tambang emas. Untuk iklim tropis dan sub tropis anda juga bisah pilih simetris karena bank akan mengirim kembali beberapa barang berharga ke bank asalnya. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Modus distribusi untuk kelas kargo yang lain: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"simetris" berarti bahwa kira-kira sama jumlah kargo akan pergi dari stasiun A ke stasiun B sebagai dari B ke A. "asimetris" berarti sewenang-wenang jumlah kargo bisa pergi di kedua arah. "manual" berarti bahwa tidak ada distribusi otomatis akan dilakukan untuk kargo. Anda mungkin mau mengaturkan ini untuk "asimetris" atau manual. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Ketepatan distribusi: {STRING} @@ -1715,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Bermain STR_INTRO_GAME_OPTIONS :{BLACK}Pengaturan Permainan STR_INTRO_HIGHSCORE :{BLACK}Tabel nilai tertinggi -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Pengaturan lanjutan +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Pengaturan STR_INTRO_NEWGRF_SETTINGS :{BLACK}Pengaturan NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Cari konten STR_INTRO_SCRIPT_SETTINGS :{BLACK}Pengaturan AI / Permainan @@ -1735,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Pilih ga STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Tampilkan opsi permainan STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Tampilkan tabel nilai tertinggi -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Tampilkan Pengaturan lanjutan +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Tampilkan pengaturan STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Tampilkan setelan NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Cari konten baru dan pembaruan untuk diunduh STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Tampilkan pengaturan permainan dan AI @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Bermain STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Buldozer ajaib (hancurkan industri, objek tidak bergerak): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Terowongan boleh menerobos terowongan lain: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Pesawat tak akan (sering) celaka di bandara kecil: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Ubah ketinggian peta maksimum: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Ubah ketinggian maksimum gunung di peta STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Lanskap 'Sedang' STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Lansekap 'Sub Arktik' STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Lansekap 'Sub Tropis' @@ -2293,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Bangun r STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Bangun depo (untuk pembelian dan perbaikan kereta). Shift untuk menampilkan perkiraan biaya STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Ubah rel menjadi waypoint. Ctrl untuk mengaktifkan penggabungan waypoint. Shift untuk menampilkan perkiraan biaya STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Bangun stasiun kereta. Ctrl untuk mengaktifkan penggabungan stasiun. Shift untuk menampilkan perkiraan biaya -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Membangun sinyal kereta. Ctrl - berganti sinyal bendera-lampu. Drag - membuat sinyal sepanjang rel. Shift untuk menampilkan perkiraan biaya +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Membuat sinyal kereta. Ctrl - berganti sinyal bendera/lampu{}Drag - membuat sinyal sesuai arah sepanjang rel. Ctrl - membuat sinyal sampai persimpangan/sinyal berikutnya{}Ctrl+Klik - mengubah pemilihan sinyal di jendela. Shift - untuk menampilkan perkiraan biaya STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Membangun Jembatan kereta. Shift untuk menampilkan perkiraan biaya STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Membangun terowongan kereta. Shift untuk menampilkan perkiraan biaya STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Membangun/bongkar rel kereta, sinyal, waypoint, dan stasiun. Tekan Ctrl juga dapat membongkar rel pada waypoint dan stasiun @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tanah milik Per STR_ABOUT_OPENTTD :{WHITE}Tentang OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Hak Cipta asli {COPYRIGHT} 1995 Chris Sawyer, Hak Cipta dilindungi STR_ABOUT_VERSION :{BLACK}OpenTTD versi {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Tim OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Tim OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Simpan Permainan @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Jumlah Kota: STR_MAPGEN_DATE :{BLACK}Tgl: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Jumlah industri: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Ketinggian peta maksimum: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Naikkan satu ketinggian maksimum gunung di peta +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Turunkan satu ketinggian maksimum gunung di peta STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Tinggi garis salju: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Naikkan ketinggian garis salju satu angka STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Turunkan ketinggian garis salju satu angka @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nama Pet STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Luas: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Ubah ketinggian peta maksimal STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Ubah ketinggian garis salju STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Ganti Tahun Permulaan @@ -2849,7 +2875,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite s STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Lanjutkan ke sprite normal sebelumnya, lewati sembarang sprite bayangan/warna ulang/huruf dan pembungkus saat mulai STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Mewakili sprite yang sedang dipilih. Penjajaran diabaikan ketika sprite ini digambar STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Pindahkan sprite, mengubah offset X dan Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Pilih sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pilih sebuah sprite di manapun pada layar @@ -3022,7 +3047,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informasi STR_GOAL_QUESTION_CAPTION_WARNING :Peringatan STR_GOAL_QUESTION_CAPTION_ERROR :Kesalahan -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Batal STR_GOAL_QUESTION_BUTTON_OK :Oke STR_GOAL_QUESTION_BUTTON_NO :Tidak @@ -3041,6 +3066,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restart STR_GOAL_QUESTION_BUTTON_POSTPONE :Tunda STR_GOAL_QUESTION_BUTTON_SURRENDER :Menyerah STR_GOAL_QUESTION_BUTTON_CLOSE :Tutup +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidi @@ -3390,6 +3416,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Ganti na STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Ubah nama jenis kapal STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Ubah nama jenis pesawat +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyikan +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyikan +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyikan +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyikan + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Tampilkan +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Tampilkan +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Tampilkan +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Tampilkan + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Menampilkan/Sembunyikan jenis kendaraan kereta +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Menampilkan/Sembunyikan jenis kendaraan bus/truk +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Menampilkan/Sembunyikan jenis kendaraan kapal +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Menampilkan/Sembunyikan jenis kendaraan pesawat + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Ubah nama jenis kereta STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Ganti nama jenis kendaraan STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Ubah nama jenis kapal @@ -3443,7 +3484,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Gandakan STR_DEPOT_CLONE_SHIP :{BLACK}Gandakan STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Gandakan -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Ini akan membeli satu unit kereta yang sama termasuk gerbongnya. Klik tombol ini lalu klik kereta yang ingin digandakan baik didalam maupun diluar depo. Ctrl+Click untuk berbagi perintah. Shift untuk menampilkan perkiraan biaya +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Ini akan menggandakan kereta yang sama termasuk gerbongnya. Klik tombol ini lalu klik kereta yang ingin digandakan baik didalam maupun diluar depo. Ctrl+Klik untuk berbagi perintah. Shift+Klik untuk menampilkan perkiraan biaya tanpa membelinya STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Ini akan membeli satu unit kendaraan yang sama. Klik tombol ini lalu klik kendaraan yang ingin digandakan, baik didalam maupun diluar bengkel.Ctrl+Click untuk berbagi perintah. Shift untuk menampilkan perkiraan biaya tanpa membeli STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Ini akan membeli satu unit kapal yang sama . Klik tombol ini dan kemudian pada satu kapal di dalam atau diluar galangan. Ctrl+Click untuk berbagi perintah. Shift untuk menampilkan perkiraan biaya STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Ini akan membeli satu unit pesawat yang sama. Klik tombol ini dan kemudian pada satu pesawat didalam atau diluar hangar. Ctrl+Click untuk berbagi perintah. Shift untuk menampilkan perkiraan biaya @@ -3494,6 +3535,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Kendaraan Jalan STR_REPLACE_VEHICLE_SHIP :Kapal STR_REPLACE_VEHICLE_AIRCRAFT :Pesawat +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Kendaraan sedang digunakan +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolom berisi kendaraan yang kamu miliki +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Kendaraan tersedia +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolom berisi kendaraan yang tersedia untuk penggantian + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Pilih jenis kendaraan yang akan diganti STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Pilih jenis mesin yang ingin digunakan sebagai pengganti mesin terpilih di sisi kiri @@ -4093,6 +4139,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Penggali STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Telah sama dengan ketinggian laut STR_ERROR_TOO_HIGH :{WHITE}Terlalu tinggi STR_ERROR_ALREADY_LEVELLED :{WHITE}... sudah rata +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Jembatan diatas situ akan terlalu tinggi pada akhirnya. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Tidak dapat mengubah nama perusahaan @@ -4143,6 +4190,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... huta STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... hanya bisa dibangun diatas garis salju STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... hanya dapat dibangun di bawah batas salju +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Tidak ada tempat yang sesuai untuk industri '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Ubah pembuatan peta untuk memperoleh peta yang lebih baik + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Tidak dapat membangun stasiun kereta disini STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Tidak dapat membangun terminal bus... @@ -4279,6 +4329,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Harus me STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Tidak dapat awal dan akhir pada spot/titik lokasi yang sama STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Ujung jembatan tidak pada level yang sama STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Jembatan lebih rendah dari daratan +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Jembatan terlalu tinggi untuk medan ini. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Awal dan akhir harus segaris STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... kedua ujung jembatan harus berada di daratan STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... jembatan terlalu panjang @@ -4843,6 +4894,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (tersembunyi) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4930,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/irish.txt b/src/lang/irish.txt index 5d1c20c3cc..e839503f5b 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -95,37 +95,37 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Deoch Súilíne # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} paisinéir{P amháin "" í í ""} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}paisinéir{P amháin "" í í ""} STR_QUANTITY_COAL :{WEIGHT_LONG} guail -STR_QUANTITY_MAIL :{COMMA} mála{P "" "" "" "" ""} poist +STR_QUANTITY_MAIL :{COMMA}{NBSP}{P mh mh mh m m}ála poist STR_QUANTITY_OIL :{VOLUME_LONG} ola -STR_QUANTITY_LIVESTOCK :{COMMA} {P m mh m m m}ír{P "" "" "" "" ""} de bheo-stoc -STR_QUANTITY_GOODS :{COMMA} {P ch ch ch gc c}ráta{P "" "" "" "" ""} earraí +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}{P m mh m m m}ír de bheo-stoc +STR_QUANTITY_GOODS :{COMMA}{NBSP}{P ch ch ch gc c}ráta earraí STR_QUANTITY_GRAIN :{WEIGHT_LONG} arbhair STR_QUANTITY_WOOD :{WEIGHT_LONG} adhmaid STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} amhiarainn STR_QUANTITY_STEEL :{WEIGHT_LONG} de chruach -STR_QUANTITY_VALUABLES :{COMMA} {P mh mh mh m m}ála{P "" "" "" "" ""} d'earraí luachmhara +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}{P mh mh mh m m}ála d'earraí luachmhara STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de mhian chopair STR_QUANTITY_MAIZE :{WEIGHT_LONG} d'arbhar Indiach STR_QUANTITY_FRUIT :{WEIGHT_LONG} de thorthaí -STR_QUANTITY_DIAMONDS :{COMMA} {P mh mh mh m m}ála{P "" "" "" "" ""} de dhiamaint +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}{P mh mh mh m m}ála de dhiamaint STR_QUANTITY_FOOD :{WEIGHT_LONG} de bhia STR_QUANTITY_PAPER :{WEIGHT_LONG} de pháipéar -STR_QUANTITY_GOLD :{COMMA} {P mh mh mh m m}ála{P "" "" "" "" ""} d'ór +STR_QUANTITY_GOLD :{COMMA}{NBSP}{P mh mh mh m m}ála d'ór STR_QUANTITY_WATER :{VOLUME_LONG} d'uisce STR_QUANTITY_WHEAT :{WEIGHT_LONG} de chruinneacht STR_QUANTITY_RUBBER :{VOLUME_LONG} de rubar STR_QUANTITY_SUGAR :{WEIGHT_LONG} de shiúcra -STR_QUANTITY_TOYS :{COMMA} {P bh bh bh mb b}réagán -STR_QUANTITY_SWEETS :{COMMA} {P mh mh mh m m}ála{P "" "" "" "" ""} of sweets +STR_QUANTITY_TOYS :{COMMA}{NBSP}{P bh bh bh mb b}réagán +STR_QUANTITY_SWEETS :{COMMA}{NBSP}{P mh mh mh m m}ála de mhilseáin STR_QUANTITY_COLA :{VOLUME_LONG} de chóla STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} d'fhéasóg Daideo -STR_QUANTITY_BUBBLES :{COMMA} {P sh sh sh s s}súilín{P "" "" "" "" ""} +STR_QUANTITY_BUBBLES :{COMMA} {P sh sh sh s s}úilín STR_QUANTITY_TOFFEE :{WEIGHT_LONG} de thaifí STR_QUANTITY_BATTERIES :{COMMA} {P ch ch ch gc c}eallra{P "" "" "" "" ""} STR_QUANTITY_PLASTIC :{VOLUME_LONG} de phlaisteach -STR_QUANTITY_FIZZY_DRINKS :{COMMA} {P dh dh dh nd n}eoch súilíneach +STR_QUANTITY_FIZZY_DRINKS :{COMMA} {P dh dh dh nd d}eoch súilíneach STR_QUANTITY_N_A :N/B # Two letter abbreviation of cargo name @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}TD STR_ABBREV_ALL :{TINY_FONT}GACH # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} {P ph ph ph bp p}aisinéir -STR_BAGS :{COMMA} {P m mh m m m}álaí -STR_TONS :{COMMA} {P t th t dt t}ona -STR_LITERS :{COMMA} {P l l l l l}ítear -STR_ITEMS :{COMMA} {P m mh m m m}ír -STR_CRATES :{COMMA} {P ch ch ch gc c}ráta +STR_PASSENGERS :{COMMA}{NBSP}{P ph ph ph bp p}aisinéir +STR_BAGS :{COMMA}{NBSP}{P m mh m m m}álaí +STR_TONS :{COMMA}{NBSP}{P th th th dt t}ona +STR_LITERS :{COMMA}{NBSP}lítear +STR_ITEMS :{COMMA}{NBSP}{P m mh m m m}ír +STR_CRATES :{COMMA}{NBSP}{P ch ch ch gc c}ráta # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Gorm Dorcha @@ -191,35 +191,44 @@ STR_COLOUR_GREY :Liath STR_COLOUR_WHITE :Bán # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} m/u -STR_UNITS_VELOCITY_METRIC :{COMMA} km/u -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}m/u +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/u +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s STR_UNITS_POWER_IMPERIAL :{COMMA}hp STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tona{P "" "" "" "" ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tona +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}{P "th" "th" "th" "dt" "th"}ona +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lítear{P "" "" "" "" ""} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galún +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}lítear +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} tr -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}tr +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings +STR_LIST_FILTER_TITLE :{BLACK}Teaghrán scagtha: STR_LIST_FILTER_OSKTITLE :{BLACK}Iontráil teaghráin scagaire STR_LIST_FILTER_TOOLTIP :{BLACK}Iontráil eochairfhocal chun an liosta a scagadh di +STR_TOOLTIP_GROUP_ORDER :{BLACK}Roghnaigh an t-ord grúpála STR_TOOLTIP_SORT_ORDER :{BLACK}Roghnaigh ord sórtála (ardaitheach/íslitheach) STR_TOOLTIP_SORT_CRITERIA :{BLACK}Roghnaigh critéir sórtála STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Roghnaigh critéir scagtha @@ -231,16 +240,28 @@ STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Dún an STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Teideal fuinneoige - tarraing é seo chun fuinneog a bhogadh STR_TOOLTIP_SHADE :{BLACK}Cuir fuinneog faoi scáth - ná taispeáin ach an barra teidil STR_TOOLTIP_DEBUG :{BLACK}Taispeáin faisnéis dífhabhtaithe NewGRF -STR_TOOLTIP_STICKY :{BLACK}Marcáil an fhuinneog seo mar cheann nach féidir a dhúnadh leis an eochair 'Dún gach fuinneog' +STR_TOOLTIP_DEFSIZE :{BLACK}Athraigh méid na fuinneoige chuig an méid réamhshocraithe. Ctrl+Cliceáil chun an méid reatha a stóráil mar réamhshocrú +STR_TOOLTIP_STICKY :{BLACK}Marcáil an fhuinneog seo mar cheann nach féidir a dhúnadh leis an eochair 'Dún gach fuinneog'. Ctrl+Cliceáil chun an staid a shábháil mar réamhshocrú freisin STR_TOOLTIP_RESIZE :{BLACK}Cliceáil agus tarraing chun méid na fuinneoige seo a athrú STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Scoránaigh méid fuinneoige mór/beag STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Scrollbharraí - déantar liosta a scrollú suas/síos STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Scrollbharraí - déantar liosta a scrollú ar dheis/ar chlé STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Leag foirgnimh msh. ar chearnóg talún +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Taispeáin cinn fholaithe +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Taispeáin cinn fholaithe +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Taispeáin cinn fholaithe +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Taispeáin cinn fholaithe + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ach an cnaipe seo a chumasú, taispeántar na feithiclí traenach folaithe freisin +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ach an cnaipe seo a chumasú, taispeántar na feithiclí bóthair folaithe freisin +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ach an cnaipe seo a chumasú, taispeántar na loing fholaithe freisin +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ach an cnaipe seo a chumasú, taispeántar na haerárthaigh folaithe freisin + # Query window STR_BUTTON_DEFAULT :{BLACK}Réamhshocrú -STR_BUTTON_CANCEL :{BLACK}Cealaigh +STR_BUTTON_CANCEL :{BLACK}Cuir ar ceal STR_BUTTON_OK :{BLACK}OK # On screen keyboard window @@ -275,6 +296,8 @@ STR_SORT_BY_LENGTH :Fad STR_SORT_BY_LIFE_TIME :Saolré fágtha STR_SORT_BY_TIMETABLE_DELAY :Moill san amchlár STR_SORT_BY_FACILITY :Cineál stáisiúin +STR_SORT_BY_WAITING_TOTAL :Lasta iomlán ag fanacht +STR_SORT_BY_WAITING_AVAILABLE :Lasta ar fáil atá ag fanacht STR_SORT_BY_RATING_MAX :Rátáil lastais is airde STR_SORT_BY_RATING_MIN :Rátáil lastais is ísle STR_SORT_BY_ENGINE_ID :ID an Innill (sórtáil chlaisiceach) @@ -283,10 +306,11 @@ STR_SORT_BY_POWER :Cumhacht STR_SORT_BY_TRACTIVE_EFFORT :Iarracht tarraingthe STR_SORT_BY_INTRO_DATE :Dáta a tugadh isteach é STR_SORT_BY_RUNNING_COST :Costas le Rith -STR_SORT_BY_POWER_VS_RUNNING_COST :Cumhacht/Costas le Rith +STR_SORT_BY_POWER_VS_RUNNING_COST :Cumhacht/Costas coinneála STR_SORT_BY_CARGO_CAPACITY :Méid an Lastais STR_SORT_BY_RANGE :Raon STR_SORT_BY_POPULATION :Daonra +STR_SORT_BY_RATING :Rátáil # Tooltips for the main toolbar STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Cuir an cluiche ar sos @@ -295,10 +319,12 @@ STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Roghanna STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Sábháil cluiche, fág cluiche, scoir STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Taispeáin léarscáil, amharc breise nó liosta comharthaí STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Taispeáin liosta na mbailte -STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Taispeáin fordheontais +STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Taispeáin fóirdheontais STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Taispeáin liosta de stáisiúin na cuideachta STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Taispeáin faisnéis airgeadais faoin gcuideachta STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Taispeáin faisnéis ginearálta faoin gcuideachta +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Taispeáin an leabhar scéalta +STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Taispeáin an liosta spriocanna STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Taispeáin graif STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Taispeáin tábla sraithe na gcuideachtaí STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Tabhair maoiniú do thionscal nua nó liosta de gach tionscal @@ -315,12 +341,12 @@ STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Tóg aer STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Oscail an barra uirlisí tírdhreacha chun talamh a ardú/ísliú, crainnte a chur, srl. STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Taispeáin an fhuinneoig fuaime/ceoil STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Taispeáin an teachtaireacht/tuairisc nuachta deiridh, taispeáin roghanna do theachtaireachtaí -STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Faisnéis faoin talamh, consól, dífhabhtú AI, seatanna scáileáin, maidir le OpenTTD +STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Faisnéis faoin bpíosa talún, consól, dífhabhtú scripteanna, seatanna scáileáin, maidir le OpenTTD STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Athraigh barraí uirlisí # Extra tooltips for the scenario editor toolbar STR_SCENEDIT_TOOLBAR_TOOLTIP_SAVE_SCENARIO_LOAD_SCENARIO :{BLACK}Sábháil scéal, lódáil scéal, fág eagarthóir na scéalta, scoir -STR_SCENEDIT_TOOLBAR_OPENTTD :{YELLOW}Oscail TTD +STR_SCENEDIT_TOOLBAR_OPENTTD :{YELLOW}OpenTTD STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Eagarthóir Scéalta STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Cuir an dáta tosaigh siar bliain amháin STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Cuir an dáta tosaigh ar aghaidh bliain amháin @@ -346,8 +372,8 @@ STR_SCENEDIT_FILE_MENU_QUIT :Scoir ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Roghanna an chluiche -STR_SETTINGS_MENU_CONFIG_SETTINGS :Ardsocruithe -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Socruithe scripte AI/Cluiche +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Socruithe +STR_SETTINGS_MENU_SCRIPT_SETTINGS :Socruithe AI/Scripteanna cluiche STR_SETTINGS_MENU_NEWGRF_SETTINGS :Socruithe NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Roghanna trédhearcachta STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Taispeántar ainmneacha bailte @@ -372,6 +398,7 @@ STR_FILE_MENU_EXIT :Scoir # map menu STR_MAP_MENU_MAP_OF_WORLD :Léarscáil den domhan STR_MAP_MENU_EXTRA_VIEW_PORT :Fuinneog amhairc bhreise +STR_MAP_MENU_LINGRAPH_LEGEND :Eochair an tSreafa Lastais STR_MAP_MENU_SIGN_LIST :Liosta na gcomharthaí ############ range for town menu starts @@ -380,7 +407,7 @@ STR_TOWN_MENU_FOUND_TOWN :Aimsíodh baile ############ range ends here ############ range for subsidies menu starts -STR_SUBSIDIES_MENU_SUBSIDIES :Fordheontais +STR_SUBSIDIES_MENU_SUBSIDIES :Fóirdheontais ############ range ends here ############ range for graph menu starts @@ -395,10 +422,12 @@ STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Rátaí íocaí ############ range for company league menu starts STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :Tábla sraithe na gcuideachtaí STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Rátáil feidhmíochta mionsonraithe +STR_GRAPH_MENU_HIGHSCORE :Tábla na n-ardscór ############ range ends here ############ range for industry menu starts STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :Liosta de na tionscail +STR_INDUSTRY_MENU_INDUSTRY_CHAIN :Slabhraí na dtionscal STR_INDUSTRY_MENU_FUND_NEW_INDUSTRY :Déan maoiniú ar thionscal nua ############ range ends here @@ -441,7 +470,7 @@ STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Stair na dteach STR_ABOUT_MENU_LAND_BLOCK_INFO :Faisnéis faoin limistéar talún STR_ABOUT_MENU_SEPARATOR : STR_ABOUT_MENU_TOGGLE_CONSOLE :Scoránaigh consól -STR_ABOUT_MENU_AI_DEBUG :Dífhabhtú scripteanna AI/Cluiche +STR_ABOUT_MENU_AI_DEBUG :Dífhabhtú AI/Scripteanna Cluiche STR_ABOUT_MENU_SCREENSHOT :Seat scáileáin STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Seat scáileáin zúmáilte isteach go hiomlán STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Seat scáileáin le zúm réamhshocraithe @@ -551,8 +580,8 @@ STR_GRAPH_CARGO_PAYMENT_RATES_X_LABEL :{TINY_FONT}{BLA STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Íocaíocht as 10 n-aonad (nó 10,000 lítear) de lastas a sheachadadh fad 20 cearnóg STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Cumasaigh gach STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Díchumasaigh gach -STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Taispeáin gach lastas ar ghraf rátaí íocaíochta lastais -STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}Ná taispeáin lastas ar bith ar ghraf rátaí íocaíochta lastais +STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Taispeáin gach lastas ar ghraf na rátaí íocaíochta lastais +STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}Ná taispeáin lastas ar bith ar ghraf na rátaí íocaíochta lastais STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Scoránaigh an graf don chineál lastais air/as STR_GRAPH_CARGO_PAYMENT_CARGO :{TINY_FONT}{BLACK}{STRING} @@ -595,7 +624,7 @@ STR_PERFORMANCE_DETAIL_LOAN :{BLACK}Iasacht: STR_PERFORMANCE_DETAIL_TOTAL :{BLACK}Iomlán: ############ End of order list STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP :{BLACK}Líon na bhfeithiclí a rinne brabús anuraidh, Áirítear leis seo feithiclí bóithre, traenacha, longa agus aerárthaigh -STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Líon na gcodanna stáisiún a ndearnadh seirbhísiú orthu le déanaí. Áirítear gach cuid de stáisiún (m.sh. stáisiún traenach, stad bus, aerfort), fiú amháin má tá siad ceangailte mar stáisiún amháin +STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Líon na stáisiún ar tugadh lastas chomh fada leo le déanaí. Áirítear stáisiún traenach, stadanna bus, aerfort agus mar sin de ar leithligh, fiú amháin más cuid d'aon stáisiún amháin iad STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP :{BLACK}Brabús na feithicle a bhfuil an t-ioncam is ísle aici (ní thógtar san áireamh ach feithiclí atá níos mó ná 2 bhliain d'aois) STR_PERFORMANCE_DETAIL_MIN_INCOME_TOOLTIP :{BLACK}An méid airgead a rinneadh sa ráithe ina raibh an brabús is ísle le 12 ráithe anuas STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}An méid airgid a rinneadh sa ráithe ina raibh an brabús is airde le 12 ráithe anuas @@ -674,15 +703,20 @@ STR_SMALLMAP_CAPTION :{WHITE}Léarsc STR_SMALLMAP_TYPE_CONTOURS :Camchuair STR_SMALLMAP_TYPE_VEHICLES :Feithiclí STR_SMALLMAP_TYPE_INDUSTRIES :Tionscail +STR_SMALLMAP_TYPE_ROUTEMAP :Sreabhadh Lastais STR_SMALLMAP_TYPE_ROUTES :Bealaí STR_SMALLMAP_TYPE_VEGETATION :Fásra STR_SMALLMAP_TYPE_OWNERS :Úinéirí STR_SMALLMAP_TOOLTIP_SHOW_LAND_CONTOURS_ON_MAP :{BLACK}Taispeáin camchuaireanna na talún ar an léarscáil STR_SMALLMAP_TOOLTIP_SHOW_VEHICLES_ON_MAP :{BLACK}Taispeáin feithiclí ar an léarscáil STR_SMALLMAP_TOOLTIP_SHOW_INDUSTRIES_ON_MAP :{BLACK}Taispeáin tionscail ar an léarscáil +STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Taispeáin an sreabhadh lastais ar an léarscáil STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Taispeáin bealaí iompair ar an léarscáil STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Taispeáin fásra ar an léarscáil STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Taispeáin úinéirí talún ar an léarscáil +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Cliceáil ar thionscail lena thaispeáint/folú. Déanann Ctrl+Cliceáil gach tionscal seachas an ceann roghnaithe a dhíchumasú. Ctrl+Cliceáil arís air chun gach cineál tionscail a chumasú +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Cliceáil ar chuideachta chun a maoine a thaispeáint nó gan a thaispeáint. Ctrl+Cliceáil chun gach cuideachta seachas an ceann roghnaithe a dhíchumasú. Ctrl+Cliceáil air arís chun gach cuideachta a chumasú +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}{BLACK}Cliceáil ar lastas chun a maoine a thaispeáint nó gan a thaispeáint. Ctrl+Cliceáil chun gach lastas seachas an ceann roghnaithe a dhíchumasú. Ctrl+Cliceáil air arís chun gach lastas a chumasú STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Bóithre STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Iarnróid @@ -716,6 +750,7 @@ STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLA STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Scoránaigh ainmneacha na mbailte air/as ar an léarscáil STR_SMALLMAP_CENTER :{BLACK}Láraigh an léarscáil beag ar an suíomh reatha STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STRING} ({NUM}) +STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING} STR_SMALLMAP_COMPANY :{TINY_FONT}{COMPANY} STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} STR_SMALLMAP_DISABLE_ALL :{BLACK}Díchumasaigh gach @@ -726,6 +761,8 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Taispeá STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Scoránaigh an mapa airde a thaipeáint STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Ná taispeáin maoin ar bith na cuideachta ar an léarscáil STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Taispeáin maoin uile na cuideachta ar an léarscáil +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Ná taispeáin aon lastas ar an léarscáil +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Taispeáin gach lastas ar an léarscáil # Status bar messages STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Taispeáin an teachtaireacht nó an tuairic nuachta deiridh @@ -798,7 +835,7 @@ STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLAC STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLACK}Tagann laghdú ar tháirgeadh {STRING} ag {INDUSTRY} de {COMMA}%! STR_NEWS_TRAIN_IS_WAITING :{WHITE}Tá {VEHICLE} ag fanacht san iosta -STR_NEWS_ROAD_VEHICLE_IS_WAITING :{WHITE}Tá feithicil {VEHICLE} ag fanacht san iosta +STR_NEWS_ROAD_VEHICLE_IS_WAITING :{WHITE}Tá {VEHICLE} ag fanacht san iosta STR_NEWS_SHIP_IS_WAITING :{WHITE}Tá {VEHICLE} ag fanacht san iosta STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}Tá {VEHICLE} ag fanacht san haingear @@ -807,6 +844,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}Níl a n STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}Tá ordú folamh ag {VEHICLE} STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}Tá orduithe dúbailte ag {VEHICLE} STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}Tá stáisiún neamhbhailí ag {VEHICLE} ina chuid orduithe +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}Tá aerfort a bhfuil rúidbhealach róghearr aige in orduithe {VEHICLE} STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}Tá {VEHICLE} ag fáil sean STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}Tá {VEHICLE} ag fáil an-sean @@ -814,6 +852,7 @@ STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}Tá {VEH STR_NEWS_TRAIN_IS_STUCK :{WHITE}Ní féidir le {VEHICLE} bealach a aimsiú le leanúint ar aghaidh. STR_NEWS_VEHICLE_IS_LOST :{WHITE}Tá {VEHICLE} caillte. STR_NEWS_VEHICLE_IS_UNPROFITABLE :{WHITE}Rinne {VEHICLE} brabús de {CURRENCY_LONG} anuraidh +STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}Ní féidir le {VEHICLE} an chéad cheann scríbe eile a bhaint amach mar tá sé as raon STR_NEWS_ORDER_REFIT_FAILED :{WHITE}Stop {VEHICLE} mar gheall gur theip ar athfheistiú a ordaíodh STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Theip ar uath-athnuachan ar {VEHICLE}{}{STRING} @@ -827,15 +866,17 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}Ní ghla STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}Glacann {STATION} le {STRING} anois STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}Glacann {STATION} le {STRING} agus le {STRING} anois -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Fordheontas a tairiscíodh imithe as dáta:{}{}Ní thabharfar fordheontas ar {STRING} ó {STRING} go {STRING} anois. -STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Fordheontas tarraingte siar:{}{}Ní thabharfar fordheontas ar sheirbhís {STRING} ó {STRING} go {STRING} a thuilleadh. -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Déantar fordheontas seirbhíse a thairiscint:{}{}Tabharfaidh an t-údarás aitiúil fordheontas bliana don chéad seirbhís {STRING} ó {STRING} go {STRING}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Bronnadh fordheontas seirbhíse ar {STRING}!{}{}Tabharfar 50% breise ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Bronnadh fordheontas seirbhíse ar {STRING}!{}{}Íocfar rátaí dúbailte ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Bronnadh fordheontas seirbhíse ar {STRING}!{}{}Íocfar rátaí faoi thrí ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Bronnadh fordheontas seirbhíse ar {STRING}!{}{}Íocfar rátaí faoi cheathair ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Fóirdheontas a tairiscíodh imithe as dáta:{}{}Ní thabharfar fóirdheontas ar {STRING} ó {STRING} go {STRING} anois. +STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Fóirdheontas tarraingte siar:{}{}Ní thabharfar fóirdheontas ar sheirbhís {STRING} ó {STRING} go {STRING} a thuilleadh. +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Déantar fóirdheontas seirbhíse a thairiscint:{}{}Tabharfaidh an t-údarás aitiúil fóirdheontas bliana don chéad seirbhís {STRING} ó {STRING} go {STRING}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Bronnadh fóirdheontas seirbhíse ar {STRING}!{}{}Tabharfar 50% breise ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Bronnadh fóirdheontas seirbhíse ar {STRING}!{}{}Íocfar rátaí dúbailte ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Bronnadh fóirdheontas seirbhíse ar {STRING}!{}{}Íocfar rátaí faoi thrí ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Bronnadh fóirdheontas seirbhíse ar {STRING}!{}{}Íocfar rátaí faoi cheathair ar feadh bliana don tseirbhís {STRING} ó {STRING} go {STRING}! STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Anord tráchta in {TOWN}!{}{}Beidh 6 mhí de chrá croí do thiománaithe de bharr clár atógáil bóithre arna maoiniú ag {STRING}! +STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Monaplacht ar iompar! +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}Síníonn údarás áitiúil {TOWN} conradh le {STRING} le haghaidh cearta eisiacha iompair ar feadh bliana! # Extra view window STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Amharc {COMMA} @@ -878,13 +919,14 @@ STR_GAME_OPTIONS_CURRENCY_TRY :Lira na Tuirce STR_GAME_OPTIONS_CURRENCY_SKK :Koruna na Slováice (SKK) STR_GAME_OPTIONS_CURRENCY_BRL :Real na Brasaíle (BRL) STR_GAME_OPTIONS_CURRENCY_EEK :Krooni na hEastóine (EEK) +STR_GAME_OPTIONS_CURRENCY_LTL :Litas na Liotuáine (LTL) +STR_GAME_OPTIONS_CURRENCY_KRW :Won na Cóiré Theas (KRW) +STR_GAME_OPTIONS_CURRENCY_ZAR :Rand na hAfraice Theas (ZAR) STR_GAME_OPTIONS_CURRENCY_CUSTOM :Saincheaptha... +STR_GAME_OPTIONS_CURRENCY_GEL :Lari na Seoirsia (GEL) +STR_GAME_OPTIONS_CURRENCY_IRR :Rial na hIaráine (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Feithiclí Bóithre STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Roghnaigh an taobh den bhóthair ar a mbeidh feithiclí ag tiomáint STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Tiomáin ar chlé @@ -938,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Taifeach STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Roghnaigh an taifeach scáileáin le húsáid STR_GAME_OPTIONS_RESOLUTION_OTHER :eile +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Méid an chomhéadain +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Roghnaigh méid na heiliminte comhéadain a úsáidfear + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Gnáth +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Méid dúbailte +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Méid cheathrúil + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Sraith graifice bunaidh STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Roghnaigh an sraith grafaice bunaidh le húsáid STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} {P ch ch ch gc c}omhad ar iarraidh/truaillithe @@ -952,6 +1001,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Roghnaig STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} {P ch ch ch gc c}omhad truaillithe STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Faisnéis breise faoin tsraith ceoil bunaidh +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Teipeadh liosta de na taifigh a dtacaítear leo a fháil STR_ERROR_FULLSCREEN_FAILED :{WHITE}Theip ar an mód lánscáileáin # Custom currency window @@ -1030,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :An-réidh STR_TERRAIN_TYPE_FLAT :Réidh STR_TERRAIN_TYPE_HILLY :Cnocach STR_TERRAIN_TYPE_MOUNTAINOUS :Sléibhtiúil +STR_TERRAIN_TYPE_ALPINIST :Ailpíneach STR_CITY_APPROVAL_PERMISSIVE :Tugtar cead STR_CITY_APPROVAL_TOLERANT :Fulangach @@ -1037,24 +1088,44 @@ STR_CITY_APPROVAL_HOSTILE :Naimhdeach STR_WARNING_NO_SUITABLE_AI :{WHITE}Níl aon AI oiriúnach ar fáil...{}Is féidir leat roinnt AI a íoslódáil tríd an gcóras 'Inneachar Ar Líne' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Ardsocruithe +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Socruithe +STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Teaghrán scagtha: +STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Fairsingigh gach ceann +STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Leacaigh gach ceann +STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(níl aon mhíniú ar fáil) +STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Luach réamhshocraithe: {ORANGE}{STRING} +STR_CONFIG_SETTING_TYPE :{LTBLUE}Cineál socrú: {ORANGE}{STRING} +STR_CONFIG_SETTING_TYPE_CLIENT :Socrú cliaint (ní sábháiltear nuair a sábháiltear cluiche; tá feidhm aige ar gach cluiche) +STR_CONFIG_SETTING_TYPE_GAME_MENU :Socrú cluiche (sábháiltear i gcluichí sábháilte; tionchar ar chluichí nua amháin) +STR_CONFIG_SETTING_TYPE_GAME_INGAME :Socrú cluiche (stóráilte i gcluiche sábháilte; tionchar ar an gcluiche reatha amháin) +STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Socrú cuideachta (stóráilte i gcluiche sábháilte; tionchar ar chluichí nua amháin) +STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Socrú cuideachta (stóráilte i gcluiche sábháilte; tionchar ar an gcuideachta reatha amháin) STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Catagóir: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Cineál: +STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Cuirtear srian ar an liosta thíos ag úsáid scagairí réamhshocraithe +STR_CONFIG_SETTING_RESTRICT_BASIC :Bunúsach (ná taispeáin ach socruithe tábhachtacha) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Ardleibhéil (taispeáin formhór na socruithe) +STR_CONFIG_SETTING_RESTRICT_ALL :Saineolaí (taispeáin gach socrú, cinn aisteacha ina measc) +STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Socruithe a bhfuil luach acu nach é an réamhshocrú é +STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Socruithe a bhfuil luach acu nach é an luach atá ag do shocruithe do chluiche nua -STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Srian ar an liosta thíos le cineálacha áirithe a leagan síos -STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Ulig na Suímh -STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Suímh Cliant(nil stóráil i Sábhálann; tionchar gach cliche) -STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Suímh Cliche(stóráil i Sábhálann; ni tionchar ach cliche nua) -STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Suímh Cliche(stóráil i Sábhálann; ni tionchar ach an cliche faoi láthair) -STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Suímh Cuideachta (stóráil i Sábhálann; ni tionchar ach an cuideachta faoi láthair) -STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Suímh Cuideachta (stóráil i saibhail; ni tionchar ach chuideachta reatha) +STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Déantar an liosta thíos a theorannú go cineálacha áirithe socruithe +STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Gach cineál socrú +STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Socruithe Cliant (níl siad stóráilte i gcluiche sábháilte; tionchar ar gach cluiche) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Socruithe cluiche (stóráilte i gcluichí sábháilte; tionchar ar cluichí nua amháin) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Socruithe Cluichte (stóráilte i gcluiche sábháilte; tionchar ar an gcluiche reatha amháin) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Socruithe Cuideachta (stóráilte i gcluiche sábháilte; tionchar ar chluichí nua amháin) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Socruithe Cuideachta (stóráilte i gcluiche sábháilte; tionchar acu ar an gcuideachta reatha amháin) +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Taispeáin gach toradh cuardaigh de réir socrú{}{SILVER}Catagóir {BLACK}go {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Taispeáin gach toradh cuardaigh de réir socrú{}{SILVER}Cineál {BLACK}go {WHITE}Gach cineál socrú +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Taispeáin gach toradh cuardaigh de réir socrú{}{SILVER}Catagóir {BLACK}go {WHITE}{STRING} {BLACK}agus {SILVER}Cineál {BLACK}go {WHITE}Gach cineál socrú STR_CONFIG_SETTINGS_NONE :{WHITE}- Ceann ar bith - STR_CONFIG_SETTING_OFF :As STR_CONFIG_SETTING_ON :Air -STR_CONFIG_SETTING_DISABLED :díchumasaithe +STR_CONFIG_SETTING_DISABLED :Díchumasaithe STR_CONFIG_SETTING_COMPANIES_OFF :As STR_CONFIG_SETTING_COMPANIES_OWN :Do chuideachta féin @@ -1068,69 +1139,180 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT :Ar chlé STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Sa lár STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Ar dheis +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Iasacht tosaigh uasta: {STRING} +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Uasmhéid is féidir le cuideachta a chur ar iasacht (gan boilsciú a chur san áireamh) +STR_CONFIG_SETTING_INTEREST_RATE :Ráta úis: {STRING} +STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Ráta úis ar iasachtaí; rialaíonn sé seo boilsciú freisin, má tá sé cumasaithe +STR_CONFIG_SETTING_RUNNING_COSTS :Costais choinneála: {STRING} +STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Socraigh leibhéal na gcostas cothabhála agus coinneála atá ag feithiclí agus bonneagar +STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Luas tógála: {STRING} +STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Cuir teorainn le líon na ngníomhartha tógála atá ag AInna +STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Cliseadh feithiclí: {STRING} +STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Rialaigh chomh minic agus a fhéadfaidh feithiclí nach ndéantar seirbhísiú ceart ort cliseadh +STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Iolraitheoir na bhfóirdheontas: {STRING} +STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Socraigh an méid a íoctar ar naisc atá faoi fhóirdheontas +STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Costais tógála: {STRING} +STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Socraigh leibhéal na gcostas tógála agus ceannaigh +STR_CONFIG_SETTING_RECESSIONS :Cúluithe eacnamaíochta: {STRING} +STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Má dhéantar seo a chumasú, féadfaidh cúluithe a bheith ann gach cúpla bliain. Le linn cúlú, bíonn an táirgeadh ar fad cuid mhaith níos ísle (téann sé ar ais chuig an leibhéal roimhe sin nuair a bheidh an cúlú thart) +STR_CONFIG_SETTING_TRAIN_REVERSING :Ná ceadaigh cúlú traenacha i stáisiúin: {STRING} +STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Má tá sé cumasaithe, ní rachaidh traenacha ar cúl i stáisiúin nach ceannstáisiúin iad, fiú má tá bealach níos giorra chuig an chéad cheann scríbe eile má dhéanann siad sin +STR_CONFIG_SETTING_DISASTERS :Tubaistí: {STRING} +STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Cuir tubaistí, ar féidir leo feithiclí nó bonneagar a bhlocáil nó a scriosadh anois is arís, ar siúl nó as +STR_CONFIG_SETTING_CITY_APPROVAL :Dearcadh chomhairle an bhaile i leith athstruchtúrú limistéir: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Roghnaigh a mhéid a mbeidh tionchar ag torann agus damáiste don chomhshaol a dhéanann cuideachtaí ar a rátáil sa bhaile agus ar imeachtaí tógála eile sa cheantar -STR_CONFIG_SETTING_AUTOSLOPE :Ceadaigh athrú talún faoi fhoirgnimh, ráillí iarnróid srl. (uathfhánú): {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Airde uasta na léarscáile: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Socraigh an airde uasta atá ceadaithe do shléibhte ar an léarscáil +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Ní féidir leat airde uasta na léarscáile a shocrú ag an luach seo. Tá sliabh amháin ar a laghad ar an léarscáil níos airde +STR_CONFIG_SETTING_AUTOSLOPE :Ceadaigh athrú talún faoi fhoirgnimh, ráillí iarnróid srl.: {STRING} +STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Ceadaigh tírdhreachú faoi fhoirgneamh agus ráillí gan iad a bhaint STR_CONFIG_SETTING_CATCHMENT :Ceadaigh ceantair stáisiún ar mhéid níos realaíoch: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Ceadaigh tuilleadh bóithre, droichid agus tolláin ar le baile iad a bhaint: {STRING} +STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Fág go mbeidh sé níos éasca bonneagar agus foirgnimh ar le bailte iad a bhaint +STR_CONFIG_SETTING_TRAIN_LENGTH :Uasfhad na dtraenacha: {STRING} +STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Socraigh uasfhad na dtraenacha +STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} tíl STR_CONFIG_SETTING_SMOKE_AMOUNT :Méid deataigh/splancacha na bhfeithiclí: {STRING} +STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Socraigh cé mhéid deataigh nó líon na splancacha a thabharfaidh feithiclí uathu STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL :Samhail luasghéaraithe do thraenacha: {STRING} +STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Roghnaigh samhail fisice do luasghéarú na dtraenacha. Faoin mód 'bunaidh', gearrtar an pionós céanna ar fhánaí do gach feithicil. Faoin mód 'réalaíoch' bíonn an pionós a ghearrtar as fánaí agus cuair ag brath ar airíonna éagsúla, amhail fad agus iarracht na tarraingthe STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL :Samhail luasghéaraithe d'fheithiclí bóthair: {STRING} +STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT :Roghnaigh samhail fisice do luasghéarú na bhfeithiclí bóthair. Faoin mód 'bunaidh' gearrtar an pionós céanna ar gach feithicil ar fhánaí. Faoin mód 'réalaíoch' bíonn an pionós a ghearrtar ar fhánaí ag brath ar airíonna éagsúla an innill, 'iarracht na tarraingthe' mar shampla +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS :Géire na fána i gcás traenacha: {STRING} +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :A ghéire agus atá tíl ar a bhfuil fána i gcás traenach. Fagfaidh luachanna níos airde go mbeidh sé níos deacra cnoc a dhreapadh +STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% +STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Géire na fána i gcás feithiclí bóthair: {STRING} +STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :A ghéire agus atá tíl ar a bhfuil fána i gcás feithicle bóthair. Fagfaidh luachanna níos airde go mbeidh sé níos deacra cnoc a dhreapadh STR_CONFIG_SETTING_FORBID_90_DEG :Cuir cosc ar thraenacha agus ar longa casadh 90° a dhéanamh: {STRING} +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Tarlaíonn casadh 90 céim nuair atá píosa iarnróid ingearach ag teacht díreach tar éis píosa iarnróid cothrománach ar an tíl in aice leis, rud a chiallaíonn go gcasann an traein 90 céim ag dul thar thaobh na tíle, seachas 45 céim mar a dhéantar nuair a chuirtea tíleanna le chéile ar chaíonna eile. Bíonn sé seo i gceist maidir leis an spás a thógann sé ar longa casadh freisin STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Ceadaigh stáisiúin a changal nach bhfuil taobh lena gcéile: {STRING} +STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Tabhair cead codanna a chur le stáisiún gan teagmháil dhíreach a bheith acu leis na codanna atá ann cheana. Is gá Ctrl+Cliceáil a dhéanamh agus na codanna nua á gcur síos STR_CONFIG_SETTING_INFLATION :Boilsciú: {STRING} -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Modh tógála tionscail de láimh go príomhúil: {STRING} -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :ceann ar bith -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :cosúil le tionscail eile -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :cuardach +STR_CONFIG_SETTING_INFLATION_HELPTEXT :Cumasaigh boilsciú sa gheilleagar, áit ina mbeidh costais ag méadú beagán níos tapúla ná íocaíochtaí +STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Uasfhad na ndroichead: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Uasfhad i dtaca le droichid a thógáil +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Airde uasta na ndroichead: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Airde uasta i dtaca le droichid a thógáil +STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Uasfhad na dtollán: {STRING} +STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Uasfhad i dtaca le tolláin a thógáil +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :An modh chun tionscail phríomhúla a thógáil de láimh: {STRING} +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :An modh a úsáidfear chun tionscal príomhúil a mhaoiniú. Ciallaíonn 'ceann ar bith' nach féidir aon cheann a mhaoiniú, ciallaíonn 'taiscéaladh' gur féidir maoiniú a dhéanamh, ach go ndéanfar an tógáil ar áit randamach ar an léarscáil, agus d'fhéadfadh teip a bheith ann freisin, ciallaíonn 'cosúil le tionscail eile' gur féidir le cuideachtaí tionscail na n-amhábhar a thógáil cosúil le tionscail phróiseála aon áit is mian leo +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Ceann ar bith +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Cosúil le tionscail eile +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Cuardach (mianraí srl.) +STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Limistéar réidh thart ar thionscail: {STRING} +STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Méid na talún réidh thart timpeall ar thionscal. Cinntíonn sé seo go mbeidh spás folamh ann fós thart timpeall ar thionscal chun ráillí, srl. a thógáil STR_CONFIG_SETTING_MULTIPINDTOWN :Ceadaigh tionscail cosúla iolracha in aon bhaile amháin: {STRING} +STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Go hiondúil, ní bhíonn comhairle baile ag iarraidh go mbeidh níos mó ná tionscal amháin de gach cineál ann. Leis an socrú seo, ceadófar roinnt tionscail den chineál céanna a bheith in aon bhaile amháin +STR_CONFIG_SETTING_SIGNALSIDE :Taispeáin comharthaí: {STRING} +STR_CONFIG_SETTING_SIGNALSIDE_HELPTEXT :Roghnaigh cén taobh den iarnród ar a chuirfear comharthaí +STR_CONFIG_SETTING_SIGNALSIDE_LEFT :Ar chlé +STR_CONFIG_SETTING_SIGNALSIDE_DRIVING_SIDE :Ar thaobh na tiomána +STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :Ar dheis STR_CONFIG_SETTING_SHOWFINANCES :Taispeáin an fhuinneoig airgeadais ag deireadh na bliana: {STRING} +STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Má tá sé cumasaithe, preabann an fhuinneog airgeadais aníos ag deireadh gach bliana le gur féidir stádas airgeadais na cuideachta a scrúdú go héasca STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Bíonn orduithe nua 'gan-stad' mar réamhshocrú: {STRING} STR_CONFIG_SETTING_STOP_LOCATION :Stopann orduithe traenach nua ag {STRING} an ardáin mar reamhshocrú +STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :An áit ag a stopfaidh traein ar an ardán mar réamhshocrú. Ciallaíonn 'taobh is gaire' in aice leis an pointe iontrála, ciallaíonn 'an lár' lár an ardáin, agus ciallaíonn 'taobh is faide' an áit is faide ón bpointe iontrála. Tabhair faoi deara nach bhfuil i gceist leis an socrú seo ach réamhshocrú d'orduithe nua. Is féidir orduithe aonair a shocrú go sainráite ag aon cheann de na socruithe STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :taobh abhus STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :lár STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :taobh thall STR_CONFIG_SETTING_AUTOSCROLL :Peanáil an fhuinneog agus an luch ag an taobh: {STRING} +STR_CONFIG_SETTING_AUTOSCROLL_HELPTEXT :Má tá sé cumasaithe, tosóidh fuinneoga amhair ag scrollú nuair atá cursóir na luchóige in aice le taobh na fuinneoige +STR_CONFIG_SETTING_AUTOSCROLL_DISABLED :Díchumasaithe +STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Príomhfhuinneog amhairc, lánscáileán amháin +STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Príomhfhuinneog amhairc +STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Gach fuinneog amhairc STR_CONFIG_SETTING_BRIBE :Ceadaigh breabanna a thabhairt don údarás áitiúil: {STRING} +STR_CONFIG_SETTING_BRIBE_HELPTEXT :Tabhair cead do chuideachtaí iarracht a dhéanamh breab a thabhairt d'údarás áitiúil baile. Má thugann cigire an breab faoi dearra, ní bheidh an chuideachta in ann aon ghníomh a dhéanamh sa bhaile ar feadh sé mhí STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Ceadaigh cearta eisiach iompair a cheannach: {STRING} +STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Má cheannaíonn cuideachta cearta eisiacha iompair i mbaile, ní gheobhaidh stáisiúin iomaitheoirí (idir stáisiúin phaisinéirí agus lastais) lastas ar bith ar feadh bliain iomlán +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Ceadaigh maoiniú foirgneamh: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Tabhair cead do chuideachtaí airgead a thabhairt do bhailte chun tithe nua a mhaoiniú STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Ceadaigh maoiniú do thógáil bóithre áitiúla: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Tabhair cead do chuideachtaí airgead a thabhairt do bhailte chun atógáil a dhéanamh ar bhóithre chun sabaitéireacht a dhéanamh ar sheirbhísí ar bhóthar sa bhaile STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Ceadaigh airgead a sheoladh chuig cuideachtaí eile: {STRING} +STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Tabhair cead airgead a aistriú idir chuideachtaí sa mhód ilimreoirí STR_CONFIG_SETTING_FREIGHT_TRAINS :Iolraitheoir meáchain don lastas le traenacha troma a ionsamhladh: {STRING} +STR_CONFIG_SETTING_PLANE_SPEED :Fachtóir luais na n-eitleán: {STRING} +STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Socraigh luas coimhneasta na n-aerárthach i gcomparáid le cineálacha eile feithiclí, chun an méid ioncaim ó iompar aerárthaigh a laghdú +STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_CRASHES :Líon na dtimpistí eitleáin: {STRING} -STR_CONFIG_SETTING_PLANE_CRASHES_NONE :ceann ar bith -STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :laghdaithe -STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :gnáth +STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Socraigh an dóchúlacht go dtarlóidh timpiste aerárthaigh +STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ceann ar bith +STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Laghdaithe +STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Gnáth STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Ceadaigh stadanna bóthair 'tiomáin tríd' ar bhóithre ar le bailte iad: {STRING} +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Ceadaigh stopann bóthair 'tiomáin tríd' a thógáil ar bhóithre ar le bailte iad STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Ceadaigh stopanna bóthair 'tiomáin tríd' ar bhóithre ar le hiomaitheoirí iad: {STRING} +STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Tabhair cead stadanna bóthair 'tiomáin tríd' a thógáil ar bhóithre atá faoi úinéireacht cuideachtaí eile STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Ní féidir an socrú seo a athrú nuair atá feithiclí ann STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Cothabháil bonneagair: {STRING} +STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Má tá sé cumasaithe, bíonn costais chothabhála ar bhonneagar. Méadaíonn an costas níos tapúla ná méid an líonra, rad a fhágann go mbíonn tionchar níos mó aige ar chuideachtaí móra ná ar chuideachtaí beaga STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Ní imíonn aerfoirt as dáta riamh: {STRING} +STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Má dhéantar an socrú seo a chumasú beidh gach cineál aerfoirt ar fáil go deo tar éis é a thabhairt isteach STR_CONFIG_SETTING_WARN_LOST_VEHICLE :Tabhair rabhadh má tá an fheithicil caillte: {STRING} +STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Taispeáin teachtaireachtaí maidir le feithiclí nach bhfuil in ann bealach a aimsiú chuig an gceann scríbe ar ordaíodh dóibh dul ann STR_CONFIG_SETTING_ORDER_REVIEW :Féach ar orduithe feithicile: {STRING} -STR_CONFIG_SETTING_ORDER_REVIEW_OFF :níl -STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :déan é, ach ná tóg feiticlí stoptha san áireamh +STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Má dhéantar é a chumasú, déantear orduithe na bhfeithiclí a sheiceáil go tráthrialta, agus tuairiscítear fadhbanna soiléire i dteachtaireacht nuachta má aimsítear iad +STR_CONFIG_SETTING_ORDER_REVIEW_OFF :Níl +STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Déan é, ach ná tóg feiticlí stoptha san áireamh STR_CONFIG_SETTING_ORDER_REVIEW_ON :ar gach feithicil STR_CONFIG_SETTING_WARN_INCOME_LESS :Tabhair rabhadh má tá ioncam feithicile diúltach: {STRING} +STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Má dhéantar é a chumasú, seoltar teachtaireacht nuachta más rud é nach ndearna feithicil brabús ar bith i mbliain féilire STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Ní imíonn feithiclí as dáta riamh: {STRING} +STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Má dhéantar é a chumasú beidh gach cineál feithicle ar fáil go deo tar éis é a thabhairt isteach STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Déan uathathnuachan ar an bhfeithicil nuair a éiríonn sé sean: {STRING} +STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Má tá sé cumasaithe, déantar feithicil atá ag teacht chuig deireadh a ré a ionadú go huathoibríoch má tá na coinníollacha athnuachana comhlíonta +STR_CONFIG_SETTING_AUTORENEW_MONTHS :Uath-athnuaigh nuair atá feithicil {STRING} den aois uasta +STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :An aois choibhneasta nuair is ceart feithicil a chur san áireamh chun uath-athnuachan a dhéanamh uirthi +STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} {P mh mh mh m m}í roimh +STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} {P mh mh mh m m}í tar éis STR_CONFIG_SETTING_AUTORENEW_MONEY :Uathathnuachan: uasmhéid airgead a theastaíonn le hathnuachan: {STRING} +STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :An t-íosmhéid airgead nach mór a bheith sa bhanc fós sula seiceálfar ar cheart feithiclí a athnuachan +STR_CONFIG_SETTING_ERRMSG_DURATION :Fad ama na teachtaireachta earráide: {STRING} +STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :An fad a thaispeánfar teachtaireachtaí earráide i bhfuinneog dhearg. Tabhair faoi deara nach ndúnfar teachtaireachtaí (criticiúla) áirithe go huathoibríoch tar éis an fad ama se, agus nach mór iad a dhúnadh de láimh +STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} {P sh sh sh s s}oicind +STR_CONFIG_SETTING_HOVER_DELAY :Taispeáin leideanna uirlise: {STRING} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :An mhoill sula dtaispeántar leideanna uirlise agus an luchóg os cionn eilimint den chomhéadan. Mar mhalairt, ceanglaítear leideanna uirlise don deaschlic luchóige má shocraítear an luach seo ag 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Ainligh ar feadh {COMMA} {P mh mh mh m m}illisoicind +STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Deaschlic STR_CONFIG_SETTING_POPULATION_IN_LABEL :Taispéain daonra an bhaile i lipéad ainm an bhaile: {STRING} +STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Taispeáin daonra bailte sa lipéad atá acu ar an léarscáil STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Tiús na línte sna graif: {STRING} +STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Leithead na líne sna graif. Is féidir líne thanaí a léamh go beacht, agus tá líne níos tiubhe níos éasca le feiceáil agus tá sé níos éasca na dathanna a idirdhealú óna gcéile +STR_CONFIG_SETTING_LANDSCAPE :Tírdhreach: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR :Gineadóir talún: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Bunaidh STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Cineál tír-raoin: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(TerraGenesis amháin) Chomh cnocach agus atá an tír-raon +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Dlús na dtionscal: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Socraigh líon na dtionscal is ceart a ghiniúint agus cén leibhéal is ceart a choinneáil i rith an chluiche +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Uasfhad ón taobh i gcás Scaglanna ola: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Ní thógtar scaglanna ola ach in aice le teorainn na léarscáile, sé sin ag an gcósta i gcás léarscáileanna ar oileán iad STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Airde na líne sneachta: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Chomh garbh agus atá an tír-raon (TerraGenesis amháin) : {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Rialaigh an leibhéal ar a dtosaíonn sneachta ar thírdhreach fo-artach. Bíonn tionchar ag sneachta freisin ar ghiniúint tionscail agus riachtanais bailte ó thaobh fáis de +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Chomh garbh agus atá an tír-raon: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :An-mhín STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Mín STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Garbh STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :An-gharbh +STR_CONFIG_SETTING_VARIETY :Dáileadh éagsúlachta: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(TerraGenesis amháin) Rialaigh an mbeidh limistéir sléibhtiúla agus réidh araon ar an léarscáil. Toisc nach ndéantar an léarscáil ach níos cothroime leis an socrú seo, ba cheart na socruithe eile a shocrú go sléibhtiúil +STR_CONFIG_SETTING_RIVER_AMOUNT :Méid na n-aibhneacha: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Roghnaigh líon na n-aibhneacha a chruthófar STR_CONFIG_SETTING_TREE_PLACER :Algartam le crainnte a chur: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Roghnaigh an chaoi a scaipfear crainnte ar an léarscáil: Le 'bunaidh' cuirfear crainnte agus iad scaipthe go haonfhoirmeach. le 'feabhsaithe' cuirtear iad i ngrúpaí STR_CONFIG_SETTING_TREE_PLACER_NONE :Ceann ar bith STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Bunaidh STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Feabhsaithe +STR_CONFIG_SETTING_ROAD_SIDE :Feithiclí bóthair: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Roghnaigh taobh na tiomána STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rothlú an mhapa airde: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Tuathal STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Deiseal @@ -1138,58 +1320,92 @@ STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Leibhéal airde STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Tá tíl amháin nó níos mó ag an taobh thuaidh nach bhfuil folamh STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Tá tíl amháin nó níos mó ag ceann de na taobhanna nach uisce é +STR_CONFIG_SETTING_STATION_SPREAD :Leathadh amach uasta na stáisiún: {STRING} +STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :An limistéar uasta ar féidir codanna de stáisiún amháin a leathadh amach air. Tabhair faoi deara go gcuirfidh luachanna móra moill ar an gcluiche STR_CONFIG_SETTING_SERVICEATHELIPAD :Déan seirbhísiú ar héileacaptair ag héileapadanna go huathoibríoch: {STRING} +STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Déan seirbhísiú ar heileacaptair tar éis gach tuirlingte, fiú mura bhfuil iosta ag an aerfort STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Ceangail an barra uirlisí tírdhreacha leis na barraí uirlisí iarnróid/bóíthre/uisce/aerfort: {STRING} STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Dath na talún a úsáidtear sa léarscáil bheag: {STRING} +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Dath an tír-raoin ar an léarscáil bheag STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :Uaine STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Ciaruaine STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Corcairghorm STR_CONFIG_SETTING_REVERSE_SCROLLING :Aisiompaigh an treo scrollaithe: {STRING} +STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :An méid a tharlaíonn agus an léarscáil á scrollú leis an gcnaipe luchóige deas. Má bhíonn sé díchumasaithe, bogann an luchóg leis an gceamara. Má bhíonn sé cumasaithe, bogann an luchóg an léarscáil STR_CONFIG_SETTING_SMOOTH_SCROLLING :Scrollú mín do na fuinneoga amhairc: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP :Taispeáin leid uirlise tomhais agu uirlisí tógála áirithe in úsáid: {STRING} -STR_CONFIG_SETTING_LIVERIES :Taispeáin libhréithe na gcuideachtaí: {STRING} +STR_CONFIG_SETTING_LIVERIES :Taispeáin libhréithe sonracha d'fheithiclí: {STRING} +STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Rialaigh úsáid libhréithe a bhaineann go sonrach leis an gcineál feithicle d'fheithiclí (seachas libhréithe a bhaineann go sonrach le cuideachta) STR_CONFIG_SETTING_LIVERIES_NONE :Ná taispeáin STR_CONFIG_SETTING_LIVERIES_OWN :Do chuideachta féin STR_CONFIG_SETTING_LIVERIES_ALL :Gach cuideachta STR_CONFIG_SETTING_PREFER_TEAMCHAT :Tús áite do chomhrá foirne le : {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING :Feidhm an rotha scrollaithe: {STRING} +STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Cumasaigh scrollú le rothaí luchóige déthoiseacha STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM :Zúmáil an léarscáil STR_CONFIG_SETTING_SCROLLWHEEL_SCROLL :Scrollaigh an léarscáil STR_CONFIG_SETTING_SCROLLWHEEL_OFF :As STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Luas roth scrollaithe an léarscáil: {STRING} +STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Rialaigh íogaireacht scrollú an rotha luchóige +STR_CONFIG_SETTING_OSK_ACTIVATION :Méarchlár scáileáin: {STRING} +STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Díchumasaithe +STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Cliceáil dhúbailte +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Cliceáil amháin (agus fócas aige) +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Cliceáil amháin (láithreach) STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Aithris deaschliceála: {STRING} +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT :Roghnaigh an modh a úsáidfear chun athris a dhéanamh ar dheaschliceáil an chnaipe luchóige STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND :Ordú+Cliceáil STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+Cliceáil STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :As STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Scrollú le cléchliceáil: {STRING} +STR_CONFIG_SETTING_AUTOSAVE :Uathshábháil: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Roghnaigh an t-eatramh idir uathshábhálacha cluichí STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Úsáid an formáid dáta {STRING} d'ainmneacha na gcluichí sábháilte +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Formáid an dáta i gcomhadainmneacha na gcluichí sábháilte STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :fada (31 Noll 2008) STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :gearr (31-12-2008) STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31) STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Cuir cluiche ar sos go huathoibríoch agus cluiche nua á thosú: {STRING} +STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Má tá sé cumasaithe, cuirfear an cluiche ar sos go huathoibríoch nuair a thosófar cluiche nua, chun deis a thabhairt staidéar níos grinne a dhéanamh ar an léarscáil STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Agus an cluiche ar sos, ceadaigh: {STRING} -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :gníomh ar bith -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :gach gníomh neamh-thógála -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :gach rud ach gníomhartha a mhionathraíonn an tírdhreach -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :gach gníomh -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Bain úsáid as ardliosta na bhfeithiclí {STRING} +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Roghnaigh cad iad na gníomhaíochta atá ceadaithe agus an cluiche ar sos +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Gníomh ar bith +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Gach gníomh neamh-thógála +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Gach rud ach gníomhartha a mhionathraíonn an tírdhreach +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Gach gníomh +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Úsáid grúpaí i liosta na bhfeithiclí {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Cumasaigh úsáid a bhaint as na liostaí ardleibhéil feithiclí chun feithiclí a ghrúpáil STR_CONFIG_SETTING_LOADING_INDICATORS :Úsáid táscairí lódála: {STRING} +STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Roghnaigh cibé acu an dtaispeánfar táscairí lódála os cionn feithiclí atá ag lódáil nó ag dílódáil nó nach dtaispeánfar STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Taispeáin an t-amchlár i dticeanna seachas i laethanta: {STRING} +STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Taispeáin amanna taistil i dtáblaí ama i dticeanna cluiche seachas laethanta STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Taispeáin am teacht isteach agus fágála in amchláir: {STRING} +STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Taispeáin na hamanna teacht isteach agus imeachta a bhfuiltear ag súil leo sna hamchláir STR_CONFIG_SETTING_QUICKGOTO :Orduithe feithiclí a chruthú go scioptha: {STRING} +STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Réamh-roghnaigh 'téigh chuig cursóir' nuair a dhéantar fuinneog na n-orduithe a oscailt STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Cineál ráille réamhshocraithe (tar éis cluiche nua/cluiche a lódáil): {STRING} +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :An cineál iarnróid a roghnófar tar éis cluiche a thosú nó a lodáil. 'an chéad cheann atá ar fáil': roghnaíonn seo an cineál iarnróid is sine. 'an ceann deireanach atá ar fáil': roghnaíonn seo an cineál iarnróid is nuaí. 'an ceann is mó úsáide': roghnaíonn seo an cineál is mó atá in úsáid faoi láthair STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :An chéad cheann atá ar fáil STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :An cheann deiridh atá ar fáil STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :Ceann is mó a úsáidtear -STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Taispeáin iarnróid forchoimeádta: {STRING} +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Taispeáin cosáin forchoimeádta iarnróid: {STRING} +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Tabhair dath difriúil ar iarnróid forchoimeádta le cabhrú le fadhbanna le traenacha a dhiúltaíonn dul isteach i mbloic atá bunaithe ar chosáin STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Fág uirlisí tógála gníomhach i ndiaidh úsáide: {STRING} +STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Coinnigh na huirlisí tógála do dhroichid, tolláin srl. oscailte tar éis a n-úsáide STR_CONFIG_SETTING_EXPENSES_LAYOUT :Speansais an ghrúpa i bhfuinneog airgeadais cuideachta: {STRING} +STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Sainigh an leagan amach a bheidh ar fhuinneog speansais chuideachta +STR_CONFIG_SETTING_SOUND_TICKER :Ticear nuachta: {STRING} +STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Seinn fuaim do na teachtaireachtaí nuachta achomair +STR_CONFIG_SETTING_SOUND_NEWS :Nuachtán: {STRING} +STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Seinn fuiam nuair a thaispeántar nuachtáin +STR_CONFIG_SETTING_SOUND_NEW_YEAR :Deireadh na bliana: {STRING} +STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Seinn fuaim ag deireadh na bliana nuair a thugtar achoimre ar fheidhmíocht cuideachta i rith na bliana sin i gcomparáid leis an mbliain roimhe STR_CONFIG_SETTING_SOUND_CONFIRM :foirgníochta: {STRING} STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Seinn éifeacht fuaime ar tógálacha rathúil nó gníomhartha eile STR_CONFIG_SETTING_SOUND_CLICK :cnaipe brúite: {STRING} @@ -1203,50 +1419,105 @@ STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Seinn maisíoch STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Díchumasaigh tógáil bonneagair nuair nach bhfuil aon fheithicil oiriúnach ar fáil: {STRING} STR_CONFIG_SETTING_MAX_TRAINS :Uaslíon na dtraenacha in aghaidh na cuideachta: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Uaslíon na dtraenacha is féidir a bheith ag cuideachta STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Uaslíon na bhfeithiclí bóthair in aghaidh na cuideachta: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Uaslíon na bhfeithiclí bóthair is féidir a bheith ag cuideachta STR_CONFIG_SETTING_MAX_AIRCRAFT :Uaslíon na n-eitleán in aghaidh na cuideachta: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Uaslíon na n-aerárthach is féidir a bheith ag cuideachta STR_CONFIG_SETTING_MAX_SHIPS :Uaslíon na long in aghaidh na cuideachta: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Uaslíon na long is féidir a bheith ag cuideachta STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Díchumasaigh traenacha don ríomhare: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Má dhéantar an socrú seo a chumasú ní bheidh ríomhimreoir in ann traenacha a thógáil STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :Díchumasaigh feithiclí bóthair don ríomhaire: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT :Má dhéantar an socrú seo a chumasú ní bheidh ríomhimreoir in ann feithiclí bóthair a thógáil STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT :Díchumasaigh aerárthaigh don ríomhare: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT :Má dhéantar an socrú seo a chumasú ní bheidh ríomhimreoir in ann aerárthaigh a thógáil STR_CONFIG_SETTING_AI_BUILDS_SHIPS :Díchumasaigh longa don ríomhare: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Má dhéantar an socrú seo a chumasú ní bheidh ríomhimreoir in ann longa a thógáil +STR_CONFIG_SETTING_AI_PROFILE :Próifíl socruithe réamhshocraithe: {STRING} +STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Roghnaigh cén próifíl socruithe a úsáidfear do AInna fánacha nó na luachanna tosaigh nuair a chuirfear AI nó Script Cluiche nua leis +STR_CONFIG_SETTING_AI_PROFILE_EASY :Éasca +STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Méanach +STR_CONFIG_SETTING_AI_PROFILE_HARD :Deacair STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Ceadaigh AIanna i gcluiche ilimreora: {STRING} +STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Ceadaigh do ríomhimreoirí AI a bheith páirteach i gcluichí ilimreora +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :tá #opcodes roimh scripteanna curtha ar fionraí: {STRING} +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Uaslíon na gcéimeanna ríofa is féidir le script a dhéanamh in aon chasadh amháin STR_CONFIG_SETTING_SERVINT_ISPERCENT :Eatraimh seirbhísithe i gcéatadán: {STRING} +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Roghnaigh an ndéanfar seirbhísiú feithiclí bunaithe ar an am atá imithe thart ón seirbhísiú deireanach nó bunaithe ar iontaofacht a bheith tite céatadán áirithe ón iontaofacht uasta +STR_CONFIG_SETTING_SERVINT_TRAINS :Eatramh seirbhísithe réamhshocraithe do thraenacha: {STRING} +STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Socraigh an t-eatramh seirbhísithe réamhshocraithe d'fheithiclí iarnróid nua, mura bhfuil eatramh seirbhísithe sainráite socraithe don fheithicil +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}lá/% +STR_CONFIG_SETTING_SERVINT_DISABLED :Díchumasaithe +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Eatramh seirbhísithe réamhshocraithe d'fheithiclí bóthair: {STRING} +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Socraigh an t-eatramh seirbhísithe réamhshocraithe d'fheithiclí bóthair nua, mura bhfuil eatramh seirbhísithe sainráite socraithe don fheithicil +STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Eatramh seirbhíse réamhshocraithe d'aerárthaigh: {STRING} +STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Socraigh an t-eatramh seirbhísithe réamhshocraithe d'aerárthaigh nua, mura bhfuil eatramh seirbhísithe sainráite socraithe don fheithicil +STR_CONFIG_SETTING_SERVINT_SHIPS :Eatramh seirbhíse réamhshocraithe do longa: {STRING} +STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Socraigh an t-eatramh seirbhísithe réamhshocraithe do longa nua, mura bhfuil eatramh seirbhísithe sainráite socraithe don fheithicil STR_CONFIG_SETTING_NOSERVICE :Díchumasaigh seirbhísiú nuair nach mbíonn aon bhriseadh síos: {STRING} +STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Má tá sé cumasaithe, ní dhéantar feithiclí a sheirbhísí má rud é nach féidir leo briseadh síos STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Cumasaigh teorainneacha luais vaigíní: {STRING} +STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Má tá sé cumasaithe, úsáid teorainneacha luais na vaigíní freisin chun luas uasta traenacha a shocrú STR_CONFIG_SETTING_DISABLE_ELRAILS :Díchumasaigh ráillí leictreacha: {STRING} STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :Tagann an chéad fheiticil isteach i stáisiún imreora: {STRING} +STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Taispeáin nuachtán nuair a thagann an chéad traein isteach ag stáisiún imreora nua STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Tagann an chéad fheithicil isteach i stáisiún iomaitheora: {STRING} +STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Taispeáin nuachtán nuair a thagann an chéad fheithicil isteach ag stáisiún nua iomaitheora STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Timpistí / tubaistí: {STRING} +STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Taispeáin nuachtán nuair a thiteann timpistí nó tubaistí amach STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Faisnéis cuideachta: {STRING} +STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Taispeáin nuachtán nuair a thosaíonn cuideachta nua, nó nuair atá cuideachta i mbaol féimheachta STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Tionscail ag oscailt: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT :Taispeáin nuachtán nuair a osclaítear tionscal nua STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE :Tionscail ag dúnadh: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :Taispeáin nuachtán nuair a dhúnann tionscal STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :Athruithe sa gheilleagar: {STRING} +STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :Taispeáin nuachtán maidir le hathruithe domhanda ar an ngeilleagar STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :Athruithe sa táirgeadh i measc tionscail a mbíonn an chuideachta ag freastal orthu: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Taispeáin nuachtán nuair a athraíonn leibhéal táirgeachta tionscail a mbíonn an chuideachta ag freastal orthu STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :Athruithe sa táirgeadh i measc tionscail a mbíonn iomaitheoir(í) ag freastal orthu: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :Taispeáin nuachtán nuair a athraíonn leibhéal táirgeachta tionscail a mbíonn iomaitheoirí ag freastal orthu STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Athruithe eile i dtáirgeadh tionscail: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Taispeáin nuachtán nuair a athraíonn leibhéal táirgeachta tionscail nach mbíonn an chuideachta ná a hiomaitheoirí ag freastal orthu STR_CONFIG_SETTING_NEWS_ADVICE :Comhairle / faisnéis maidir le feithiclí na cuideachta: {STRING} +STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Taispeáin teachtaireachtaí maidir le feithiclí ar gá aire a thabhairt dóibh STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Feithiclí nua: {STRING} +STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Taispeáin nuachtán nuair a bhíonn cineál nua feithicle ar fáil den chéad uair STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Athruithe ar an lastas a nglactar leis: {STRING} -STR_CONFIG_SETTING_NEWS_SUBSIDIES :Fordheontais: {STRING} -STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Faisnéis ginearálta: {STRING} +STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Taispeáin teachtaireachtaí maidir le stáisiúin a athraíonn na lastais a nglacann siad leo +STR_CONFIG_SETTING_NEWS_SUBSIDIES :Fóirdheontais: {STRING} +STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Taispeáin nuachtáin maidir le cúrsaí a bhaineann le fóirdheontais +STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Faisnéis ghinearálta: {STRING} +STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION_HELPTEXT :Taispeáin nuachtán maidir le himeachtaí ginearálta, mar shampla cearta eisiacha a cheannach nó maoiniú a thabhairt chun bóithre a thógáil STR_CONFIG_SETTING_NEWS_MESSAGES_OFF :As STR_CONFIG_SETTING_NEWS_MESSAGES_SUMMARY :Achoimre STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :Iomlán STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Bíonn nuacht daite ann don chéad uair in: {STRING} +STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :An bhliain a thosaítear ar fhógraí nuachtáin daite a chlóbhualadh. Roimh an bhliain sin, úsáidtear dubh/bán monacrómach STR_CONFIG_SETTING_STARTING_YEAR :Bliain tosaigh: {STRING} STR_CONFIG_SETTING_SMOOTH_ECONOMY :Cumasaigh geilleagar níos míne (tuilleadh athruithe, agus iad níos lú): {STRING} +STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Má dhéantar é a chumasú, athraíonn táirgeadh na dtionscal níos minice, agus i gcéimeanna níos lú. Is iondúil nach mbíonn aon tionchar ag an socrú seo má chuirtear na cineálacha tioinscail ar fáil in NewGRF STR_CONFIG_SETTING_ALLOW_SHARES :Ceadaigh scaireanna a cheannach ó chuideachtaí eile: {STRING} +STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Má tá sé cumasaithe, tá cead scaireanna i gcuideachta a cheannach agus a dhíol. Ní bheidh scaireanna ar fáil ach do chuideachtaí a bhfuil aois áirithe bainte amach acu +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :An céatadán den bhrabús a íocfar ar chuid den turas i gcórais fhriothálacha: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Agus tú ag tarraingt, cuir síos comharthaí gach: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Socraigh an fad ag a dtógfar comharthaí ar iarnród suas go dtí an chéad chonstaic eile (comhartha, acomhal), agus comharthaí á dtarraingt +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} {P thíl thíl thíl dtíl tíl} +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Agus tú ag tarraingt, coinnigh fad seasta idir comharthaí: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Roghnaigh an chaoi a chuirfear síos comharthaí agus comhartaí á dtarraingt le Ctrl coinnithe síos. Má tá sé cumasaithe, cuirfear comharthaí thart timpeall ar tholláin nó droicid sa chaoi nach mbeidh píosaí fada ann gan aon chomhartha orthu. Má tá sé cumasaithe, cuirfear síos comhartha gach n tíl, rud a fhágann go mbeidh sé níos éasca comharthaí ar iarnróid chomhthreomhara a ailíniú STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Tóg séamafóir go huathoibríoch roimh: {STRING} +STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Socraigh an bliain ina n-úsáidfear comharthaí leictreacha ar iarnróid. Roimh an bhliain sin, úsáidfear comharthaí nach comharthaí leictreacha iad (tá an fheidhm cheanainn céanna acu, ach cuma dhifriúil orthu) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Cumasaigh GUI na gcomharthaí: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Cineál comhartha le tógáil mar réamhshocrú: {STRING} +STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :An cineál comharthaí a úsáidfear mar réamhshocrú STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Comharthaí bloc STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBS :Comharthaí cosán STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBSOWAY :Comharthaí cosán aonbhealaigh @@ -1256,6 +1527,7 @@ STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :Comharthaí cos STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Gach STR_CONFIG_SETTING_TOWN_LAYOUT :Leagan amach na mbóithre do bhailte nua: {STRING} +STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Leagan amach an ghréasáin bóithre i mbailte STR_CONFIG_SETTING_TOWN_LAYOUT_DEFAULT :bunaidh STR_CONFIG_SETTING_TOWN_LAYOUT_BETTER_ROADS :bóithre níos fearr STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :greille 2x2 @@ -1263,8 +1535,10 @@ STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :greille 3x3 STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :randamach STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Ceadaítear do bhailte bóithre a thógáil: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Ceadaítear do bhailte crosairí comhréidh a thógáil: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Má dhéantar an socrú seo a chumasú, beidh bailte in ann crosairí comhréidh a thógáil STR_CONFIG_SETTING_NOISE_LEVEL :Ceadaigh leibhéal fuaime rialaithe ag an mbaile d'aerfoirt: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING :Bailte a bhunú sa chluiche: {STRING} +STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Má dhéantar an socrú seo a chumasú beidh imreoirí in ann bailte nua a bhunú sa chluiche STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :coiscthe STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :ceadaithe STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :ceadaithe, leagan amach bailte saincheaptha @@ -1275,24 +1549,89 @@ STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_RAINFOREST :i bhforaois bh STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :gach áit STR_CONFIG_SETTING_TOOLBAR_POS :Suíomh an phríomhbharra uirlisí: {STRING} +STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Suíomh cothrománach an phríomhbharra uirlise ag barr an scáileáin STR_CONFIG_SETTING_STATUSBAR_POS :Suíomh an bharra stádais: {STRING} +STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT :Suíomh cothrománach an bharra stádais ag bun an scáileáin +STR_CONFIG_SETTING_SNAP_RADIUS :Ga léime na bhfuinneog: {STRING} +STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :An fad idir fhuinneoga sula ndéanfar an fhuinneog atá á bogadh a ailíniú le fuinneoga in aice léi go huathoibríoch +STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} {P ph ph ph bp p}icteilín +STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Díchumasaithe STR_CONFIG_SETTING_SOFT_LIMIT :Uaslíon na bhfuinneog neamh-ghreamaitheach: {STRING} +STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Líon na bhfuinneog neamhghreamaitheach is féidir a bheith oscailte sula ndúnfar seanfhuinneoga go huathoibríoch chun spás a dhéanamh d'fhuinneoga nua +STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} +STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :díchumasaithe +STR_CONFIG_SETTING_ZOOM_MIN :Zúmáil uasta i leibhéil: {STRING} +STR_CONFIG_SETTING_ZOOM_MAX :Leibhéal uasta zúmala amach: {STRING} +STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x +STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x +STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Gnáth +STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x +STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x +STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x STR_CONFIG_SETTING_TOWN_GROWTH :Ráta fáis na mbailte: {STRING} +STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Ráta ag a bhfásann baile STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Ceann ar bith STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :Mall STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Gnáth STR_CONFIG_SETTING_TOWN_GROWTH_FAST :Scioptha STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :An-scioptha +STR_CONFIG_SETTING_LARGER_TOWNS :Líon na mbailte a ndéanfar cathratha díobh: {STRING} +STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 as {COMMA} +STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Ceann ar bith STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Iolraitheoir tosaigh mhéid na gcathracha: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Nuashonraigh an graf dáileacháin gach {STRING}{NBSP}lá +STR_CONFIG_SETTING_LINKGRAPH_TIME :Tóg {STRING}{NBSP}lá chun an graf dáileacháin a athríomh +STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :de láimh +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :neamhshiméadrach +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :siméadrach +STR_CONFIG_SETTING_DISTRIBUTION_PAX :An mód dáileacháin do phaisinéirí: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL :An mód dáileacháin do phost: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :An mód dáileacháin don aicme lastais ARMÚRTHA: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :An mód dáileacháin d'aicmí eile lastais: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Cruinneas an dáileacháin: {STRING} +STR_CONFIG_SETTING_DEMAND_DISTANCE :An tionchar atá ag fad ar éilimh: {STRING} +STR_CONFIG_SETTING_DEMAND_SIZE :Méid den lastas a thagann ar ais don mhód siméadrach: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Aonaid luais: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Aon áit a thaispeántar luas sa chomhéadan úsáideora, taispeain sna haonaid roghnaithe é +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Impiriúil (msu) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Méadrach (km/u) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Aonaid chumhachta feithiclí: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Aon áit a thaispeántar cumhacht feithicle sa chomhéadan úsáideora, taispeain sna haonaid roghnaithe í +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Impiriúil (ec) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Méadrach (ec) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Aonaid mheáchain: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Aon áit a thaispeántar meáchan sa chomhéadan úsáideora, taispeain sna haonaid roghnaithe é +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Impiriúil (t/tonna gearr) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Méadrach (t/tonna) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Aonaid toirte: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Aon áit a thaispeántar toirt sa chomhéadan úsáideora, taispeain sna haonaid roghnaithe í +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Impiriúil (gal) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Méadrach (l) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Aonaid iarracht na tarraingthe: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Aon áit a thaispeántar iarracht na tarraingthe (ar a dtugtar fórsa tarraingthe freisin) sa chomhéadan úsáideora, taispeain sna haonaid roghnaithe í +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Impiriúil (lbf) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Méadrach (kgf) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Aonaid airde: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Aon áit a thaispeántar airde sa chomhéadan úsáideora, taispeain sna haonaid roghnaithe í +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Impiriúil (tr) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Méadrach (m) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) +STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Logánú STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafaicí +STR_CONFIG_SETTING_SOUND :{ORANGE}Fuaim STR_CONFIG_SETTING_INTERFACE :{ORANGE}Comhéadan STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Ginearálta STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Painéil amhairc @@ -1314,17 +1653,40 @@ STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Dáilea STR_CONFIG_SETTING_AI :{ORANGE}Iomaitheoirí STR_CONFIG_SETTING_AI_NPC :{ORANGE}Ríomh-imreoirí +STR_CONFIG_SETTING_PATHFINDER_OPF :Bunaidh STR_CONFIG_SETTING_PATHFINDER_NPF :NPF STR_CONFIG_SETTING_PATHFINDER_YAPF_RECOMMENDED :YAPF {BLUE}(Molta) STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS :Aimsitheoir bealaigh do thraenacha: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT :An t-aimsitheoir bealaigh a úsáidfear do thraenacha STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES :Aimsitheoir bealaigh d'fheithiclí bóthair: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES_HELPTEXT :An t-aimsitheoir bealaigh a úsáidfear d'fheithiclí bóthair STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Aimsitheoir bealaigh do longa: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :An t-aimsitheoir bealaigh a úsáidfear do longa STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Aisiompú uathoibríoch ag comharthaí: {STRING} +STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Ceadaigh do thraenacha aisiompú ag comhartha, más rud é go raibh siad ag fanacht ann píosa fada STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Athraigh luach an tsocraithe # Config errors +STR_CONFIG_ERROR :{WHITE}Earráid leis an gcomhad cumraíochta... +STR_CONFIG_ERROR_ARRAY :{WHITE}... earráid san eagar '{STRING}' +STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... luach neamhbhailí '{STRING}' ag '{STRING}' +STR_CONFIG_ERROR_TRAILING_CHARACTERS :{WHITE}... carachtair chun deiridh ag deireadh an socraithe '{STRING}' +STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... ag déanamh neamhaird den NewGRF '{STRING}': ID GRF dúbailte le '{STRING}' +STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... ag tabhairt neamhaird ar NewGRF neamhbhailí '{STRING}': {STRING} +STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :níor aimsíodh é +STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :neamhshábháilte don úsáid statach +STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :córas NewGRF +STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :neamh-chomhoiriúnach leis an leagan OpenTTD seo +STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :anaithnid +STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... níl leibheál comhbhrú '{STRING}' bailí +STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... níl formáid an chluiche sábháilte '{STRING}' ar fáil. Ag tiontú ar '{STRING}' +STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ag tabhairt neamhaird ar an tsraith Bhunghrafaice '{STRING}': níor aimsíodh í +STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ag tabhairt neamhaird ar an tsraith Bhunfhuaimeanna '{STRING}': níor aimsíodh í +STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ag tabhairt neamhaird ar an tsraith Bhuncheoil '{STRING}': níor aimsíodh í +STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Easpa chuimhne +STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Teipeadh {BYTES} a shannadh don taisce sprideanna. Laghdaíodh an taisce sprideanna go {BYTES}. Laghdófar feidhmíocht OpenTTD dá bharr. Chun an méid cuimhne atá riachtanach a laghdú, is féidir leat grafaicí 32bpp agus/nó leibhéil zúmála isteach a dhíchumasú # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -1337,9 +1699,11 @@ STR_INTRO_SCENARIO_EDITOR :{BLACK}Eagarth STR_INTRO_MULTIPLAYER :{BLACK}Ilimreoirí STR_INTRO_GAME_OPTIONS :{BLACK}Roghanna an Chluiche -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Ardsocruithe +STR_INTRO_HIGHSCORE :{BLACK}Tábla na nArdscór +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Socruithe STR_INTRO_NEWGRF_SETTINGS :{BLACK}Socruithe NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Seiceáil Inneachar Ar Líne +STR_INTRO_SCRIPT_SETTINGS :{BLACK}Socruithe AI/Script Cluiche STR_INTRO_QUIT :{BLACK}Scoir STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Tosaigh cluiche nua. Scipeáltar cumrú an léarscáil le Ctrl+Cliceáil @@ -1355,11 +1719,14 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Roghnaig STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Roghnaigh stíl tírdhreacha 'tír na mbréagán' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Taispeáin roghanna an chluiche -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Taispeáin ardsocruithe +STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Taispeáin tábla na n-ardscór +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Socruithe taispeána STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Taispeáin socruithe NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Seiceáil le haghaidh inneachar nua agus nuashonruithe le híoslódáil +STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Taispeáin socruithe AI/Script cluiche STR_INTRO_TOOLTIP_QUIT :{BLACK}Téigh amach as 'OpenTTD' +STR_INTRO_TRANSLATION :{BLACK}Tá {NUM} {P th th th dt t}eaghrán in easnamh san aistriúchán seo. Is féidir leat cabhrú chun OpenTTD a fheabhsú má chláraíonn tú mar aistritheoir. Féach léighmé.txt chun mionsonraí a fháil. # Quit window STR_QUIT_CAPTION :{WHITE}Scoir @@ -1393,6 +1760,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Ag imir STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Ollscartaire draíochta (bain tionscail, nithe dobhogtha): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Is féidir le tolláin dul trasna a gcéile: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Ní bheidh timpistí ag scairdeitleáin (go minic) ag aerfoirt bheaga: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Cuir airde uasta na léarscáile in eagar: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Cuir leibhéal uasta na sléibhte ar an léarscáil in eagar STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Tírdhreach measartha STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Tírdhreach fo-artach STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Tírdhreach fo-theochriosach @@ -1439,7 +1808,7 @@ STR_LIVERY_FREIGHT_TRAM :Tram Lastais # Face selection window STR_FACE_CAPTION :{WHITE}Aghaidh a Roghnú -STR_FACE_CANCEL_TOOLTIP :{BLACK}Cealaigh roghnúchán aghaidhe nua +STR_FACE_CANCEL_TOOLTIP :{BLACK}Cuir roghnúchán aghaidhe nua ar ceal STR_FACE_OK_TOOLTIP :{BLACK}Glac leis an aghaidh nua STR_FACE_RANDOM :{BLACK}Déan randamú @@ -1497,6 +1866,10 @@ STR_FACE_TIE_EARRING_TOOLTIP :{BLACK}Athraigh # Network server list STR_NETWORK_SERVER_LIST_CAPTION :{WHITE}Ilimreoirí +STR_NETWORK_SERVER_LIST_ADVERTISED :{BLACK}Fógartha +STR_NETWORK_SERVER_LIST_ADVERTISED_TOOLTIP :{BLACK}Roghnaigh idir cluiche fógartha (idirlín) agus cluiche neamhfhógartha (Líonra Achair Logánta, LAN) +STR_NETWORK_SERVER_LIST_ADVERTISED_NO :Níl +STR_NETWORK_SERVER_LIST_ADVERTISED_YES :Tá STR_NETWORK_SERVER_LIST_PLAYER_NAME :{BLACK}Ainm imreora: STR_NETWORK_SERVER_LIST_ENTER_NAME_TOOLTIP :{BLACK}Seo an t-ainm faoina mbeidh imreoirí eile in ann tú a aithint @@ -1555,6 +1928,8 @@ STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}Taispeá STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Socraigh pasfhocal STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Cosain do chluiche le pasfhocal más mian leat nach mbeidh rochtain phoiblí air +STR_NETWORK_START_SERVER_UNADVERTISED :Níl +STR_NETWORK_START_SERVER_ADVERTISED :Tá STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} {P ch ch ch gc c}lia{P "" "" "" "" i}nt STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Cliaint uasta: STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Roghnaigh uaslíon na gcliant. Ní gá gach áit a líonadh @@ -1723,6 +2098,10 @@ STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Tá cosc STR_NETWORK_ERROR_KICKED :{WHITE}Ciceáladh amach as an gcluiche thú STR_NETWORK_ERROR_CHEATER :{WHITE}Ní cheadaítear caimiléireacht ar an bhfreastalaí seo STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Bhí tú ag seoladh an iomarca orduithe chuig an bhfreastalaí +STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Thóg tú an iomarca ama an pasfhocal a chur isteach +STR_NETWORK_ERROR_TIMEOUT_COMPUTER :{WHITE}Tá do ríomhaire rómhall le coinneáil suas leis an bhfreastalaí +STR_NETWORK_ERROR_TIMEOUT_MAP :{WHITE}Thóg do ríomhaire rófhada chun an léarscáil a íoslódáil +STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Thóg do ríomhaire rófhada chun dul isteach sa fhreastalaí ############ Leave those lines in this order!! STR_NETWORK_ERROR_CLIENT_GENERAL :earráid ghinearálta @@ -1741,6 +2120,10 @@ STR_NETWORK_ERROR_CLIENT_KICKED :ciceáilte ag a STR_NETWORK_ERROR_CLIENT_CHEATER :ag iarraidh caimiléireacht a úsáid STR_NETWORK_ERROR_CLIENT_SERVER_FULL :freastalaí lán STR_NETWORK_ERROR_CLIENT_TOO_MANY_COMMANDS :ag seoladh an iomarca orduithe +STR_NETWORK_ERROR_CLIENT_TIMEOUT_PASSWORD :ní bhfuarthas pasfhocal in am +STR_NETWORK_ERROR_CLIENT_TIMEOUT_COMPUTER :am istigh ginearálta +STR_NETWORK_ERROR_CLIENT_TIMEOUT_MAP :thóg sé rófhada chun an léarscáil a íoslódáil +STR_NETWORK_ERROR_CLIENT_TIMEOUT_JOIN :thóg sé rófhada chun an léarscáil a phróiseáil ############ End of leave-in-this-order STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Seans gur cailleadh an nasc @@ -1753,10 +2136,12 @@ STR_NETWORK_SERVER_MESSAGE_GAME_PAUSED :Cluiche ar sos STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Cluiche fós ar sos ({STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Cluiche fós ar sos ({STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Cluiche fós ar sos ({STRING}, {STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :Tá an cluiche fós ar sos ({STRING}, {STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_UNPAUSED :Deireadh an tsosa ({STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :líon na n-imreoirí STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :cliaint á nascadh STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :de láimh +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :script an chluiche ############ End of leave-in-this-order STR_NETWORK_MESSAGE_CLIENT_LEAVING :ag fágáil STR_NETWORK_MESSAGE_CLIENT_JOINED :*** Tháinig {STRING} isteach sa chluiche @@ -1784,7 +2169,13 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Roghnaig STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Marcáil an t-inneachar ar fad atá ina uasghrádú d'inneachar reatha mar inneachar le híoslódáil STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Díroghnaigh gach STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marcáil an t-inneachar ar fad le nach n-íoslódálfar é +STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Cuardaigh suíomhanna gréasáin seachtracha +STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Cuardaigh inneachar nach bhfuil ar fáil ar sheirbhís inneachair OpenTTD ar shuíomhanna gréasáin nach bhfuil baint acu le OpenTTD +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Tá tú ag imeacht ó OpenTTD! +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Bíonn téarmaí agus cionníolacha éagsúla i bhfeidhm maidir le hinneachar a íoslódáil ó shuíomhanna gréasáin seachtracha.{}Beidh ort féachaint sna suíomhanna seachtracha chun treoracha a fháil conas an t-inneachar a shuiteáil in OpenTTD.{}An mian leat leanúint ar aghaidh? STR_CONTENT_FILTER_TITLE :{BLACK}Scagaire clibe/ainm: +STR_CONTENT_OPEN_URL :{BLACK}Tabhair cuairt ar an suíomh gréasáin +STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Tabhair cuairt ar an suíomh gréasáin don inneachar seo STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Íoslódáil STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK}Toaigh ag íoslódáil an t-inneachar roghnaithe STR_CONTENT_TOTAL_DOWNLOAD_SIZE :{SILVER}Méid iomlán na híoslódála: {WHITE}{BYTES} @@ -1816,6 +2207,8 @@ STR_CONTENT_TYPE_SCENARIO :Scéal STR_CONTENT_TYPE_HEIGHTMAP :Mapa airde STR_CONTENT_TYPE_BASE_SOUNDS :Fuaimeanna bunaidh STR_CONTENT_TYPE_BASE_MUSIC :Ceol bunaidh +STR_CONTENT_TYPE_GAME_SCRIPT :Script cluiche +STR_CONTENT_TYPE_GS_LIBRARY :Leabharlann scripteanna cluiche # Content downloading progress window STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Ag íoslódáil inneachar... @@ -1831,6 +2224,10 @@ STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... cail STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... níl an comhad inscríofa STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Níorbh fhéidir an comhad íoslódáilte a dhíchomhbhrú +STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Grafaicí ar lár +STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}Tá grafaicí ag teastáil le go n-oibreoidh OpenTTD ach níorbh fhéidir teacht orthu. An dtugann tú cead do OpenTTD na grafaicí seo a íoslódáil agus a shuiteáil? +STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Tugann, íoslódáil na grafaicí +STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ní thugann, scoir de OpenTTD # Transparency settings window STR_TRANSPARENCY_CAPTION :{WHITE}Roghanna Trédhearcachta @@ -1846,8 +2243,15 @@ STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Scorána STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Socraigh go bhfuil nithe dofheicthe seachas trédhearcach # Linkgraph legend window +STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Eochair an tSreafa Lastais +STR_LINKGRAPH_LEGEND_ALL :{BLACK}Gach ceann +STR_LINKGRAPH_LEGEND_NONE :{BLACK}Ceann ar bith +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Roghnaigh na cuideachtaí a thaispeánfar # Linkgraph legend window and linkgraph legend in smallmap +STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}neamhúsáidte +STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLACK}ar maos +STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}thar acmhainn # Base for station construction window(s) STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Aibhsigh an limistéar clúdaigh @@ -1882,6 +2286,10 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Tóg tol STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Athraigh idir tógáil/baint le haghaidh ráillí iarnróid, comharthaí, pointí bealaigh agus stáisiúin. Coinnigh síos Ctrl chun ráillí a bhaint ó phointí bealaigh agus ó stáisiúin freisin STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Tiontaigh/Uasghrádaigh an cineál ráille +STR_RAIL_NAME_RAILROAD :Iarnród +STR_RAIL_NAME_ELRAIL :Iarnród leictrithe +STR_RAIL_NAME_MONORAIL :Aonráille +STR_RAIL_NAME_MAGLEV :Maglev # Rail depot construction window STR_BUILD_DEPOT_TRAIN_ORIENTATION_CAPTION :{WHITE}Treoshuíomh an Iosta Traenach @@ -2119,6 +2527,10 @@ STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Taispeá STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Taispeáin na tionscadail a dhéanann lastas a sholáthar agus a ghlacann leis STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Nasc leis an léarscáil bheag STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Roghnaigh na tionscail a thaispeántar ar an léarscáil bheag chomh maith +STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Roghnaigh lastas +STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Roghnaigh an lastas is mian leat a thaispeáint +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Roghnaigh tionscal +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Roghnaigh an tionscal is mian leat a thaispeáint # Land area window STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}Faisnéis faoin bPíosa Talún @@ -2154,6 +2566,29 @@ STR_LAI_CLEAR_DESCRIPTION_FIELDS :Garrantaí STR_LAI_CLEAR_DESCRIPTION_SNOW_COVERED_LAND :Talamh faoi shneachta STR_LAI_CLEAR_DESCRIPTION_DESERT :Fásach +STR_LAI_RAIL_DESCRIPTION_TRACK :{STRING} ráille +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :{STRING} ráille ar a bhfuil comharthaí bloc +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :{STRING} ráille ar a bhfuil réamhchomharthaí +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :{STRING} ráille ar a bhfuil comharthaí amach +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :{STRING} ráille ar a bhfuil comharthaí teaglama +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :{STRING} ráille ar a bhfuil comharthaí cosáin +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :{STRING} ráille ar a bhfuil comharthaí cosáin aonbhealaigh +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :{STRING} ráille ar a bhfuil comharthaí bloic agus réamhchomharthaí +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :{STRING} ráille ar a bhfuil comharthaí bloic agus amach +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :{STRING} ráille ar a bhfuil comharthaí bloic agus teaglama +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :{STRING} ráille ar a bhfuil comharthaí bloic agus cosáin +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :{STRING} ráille ar a bhfuil comharthaí bloic agus cosáin aonbhealaigh +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :{STRING} ráille ar a bhfuil réamhchomharthaí agus comharthaí amach +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :{STRING} ráille ar a bhfuil réamhchomharthaí agus comharthaí teaglama +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :{STRING} ráille ar a bhfuil réamhchomharthaí agus comharthaí cosáin +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_NOENTRYSIGNALS :{STRING} ráille ar a bhfuil réamhchomharthaí agus comharthaí cosáin aonbhealaigh +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :{STRING} ráille ar a bhfuil comharthaí amach agus teaglama +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :{STRING} ráille ar a bhfuil comharthaí amach agus cosáin +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :{STRING} ráille ar a bhfuil comharthaí amach agus cosáin aonbhealaigh +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :{STRING} ráille ar a bhfuil comharthaí teaglama agus cosáin +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :{STRING} ráille ar a bhfuil comharthaí teaglama agus cosáin aonbhealaigh +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :{STRING} ráille ar a bhfuil comharthaí cosáin agus cosáin aonbhealaigh +STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :{STRING} iosta traenach STR_LAI_ROAD_DESCRIPTION_ROAD :Bóthair STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :Bóthair le soilse sráide @@ -2217,7 +2652,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Talamh faoi úi STR_ABOUT_OPENTTD :{WHITE}Maidir le OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Cóipcheart bunaidh {COPYRIGHT} 1995 Chris Sawyer, Gach ceart ar cosaint STR_ABOUT_VERSION :{BLACK}OpenTTD leagan {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 An fhoireann OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 An fhoireann OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sábháil an Cluiche @@ -2225,6 +2660,7 @@ STR_SAVELOAD_LOAD_CAPTION :{WHITE}Lódáil STR_SAVELOAD_SAVE_SCENARIO :{WHITE}Sábháil Scéal STR_SAVELOAD_LOAD_SCENARIO :{WHITE}Lódáil Scéal STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Lódáil Mapa airde +STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Sábháil Mapa airde STR_SAVELOAD_HOME_BUTTON :{BLACK}Cliceáil anseo le léim chuig an comhadlann réamhshocraithe sábhála/lódála reatha STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} saor STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Liosta na dtiomántán, na gcomhadlann agus na gcomhad cluichí sábháilte @@ -2251,6 +2687,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Líon na mbailte: STR_MAPGEN_DATE :{BLACK}Dáta: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Líon na dtionscal: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Airde uasta na léarscáile +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Méadaigh airde uasta na sléibhte ar an léarscáil de leibhéal amháin +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Laghdaigh airde uasta na sléibhte ar an léarscáil de leibhéal amháin STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Airde na líne sneachta: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Bog airde na líne sneachta suas ceann amháin STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Bog airde na líne sneachta síos ceann amháin @@ -2258,6 +2697,7 @@ STR_MAPGEN_LAND_GENERATOR :{BLACK}Talamh a STR_MAPGEN_TREE_PLACER :{BLACK}Algartam na gcrann: STR_MAPGEN_TERRAIN_TYPE :{BLACK}Cineál tír-raoin: STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Leibhéal na farraige: +STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Aibhneacha: STR_MAPGEN_SMOOTHNESS :{BLACK}Míne: STR_MAPGEN_VARIETY :{BLACK}Éagsúlacht: STR_MAPGEN_GENERATE :{WHITE}Cruthaigh @@ -2279,6 +2719,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Ainm an STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Méid: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Athraigh airde uasta na léarscáile STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Athraigh airde na líne sneachta STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Athraigh an bhliain tosaigh @@ -2301,11 +2742,13 @@ STR_GENERATION_ABORT_MESSAGE :{YELLOW}An bhfu STR_GENERATION_PROGRESS :{WHITE}{NUM}% críochnaithe STR_GENERATION_PROGRESS_NUM :{BLACK}{NUM} / {NUM} STR_GENERATION_WORLD_GENERATION :{BLACK}Domhan a chruthú +STR_GENERATION_RIVER_GENERATION :{BLACK}Giniúint aibhneacha STR_GENERATION_TREE_GENERATION :{BLACK}Crainn a chruthú STR_GENERATION_OBJECT_GENERATION :{BLACK}Cruthú oibiachtaí STR_GENERATION_CLEARING_TILES :{BLACK}Limistear garbh agus carraigeach a chruthú STR_GENERATION_SETTINGUP_GAME :{BLACK}Cluiche á chumrú STR_GENERATION_PREPARING_TILELOOP :{BLACK}Lúb tíleanna á rith +STR_GENERATION_PREPARING_SCRIPT :{BLACK}Script reatha STR_GENERATION_PREPARING_GAME :{BLACK}Cluiche á ullmhú # NewGRF settings @@ -2331,9 +2774,12 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Bog Suas STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Bog an comhad NewGRF roghnaithe suas an liosta STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Bog Síos STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Bog an comhad NewGRF roghnaithe síos an liosta +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Uasghrádaigh +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Nuashonraigh comhaid NewGRF a bhfuil leagan níos nuaí díobh suiteáilte agat STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Liosta de na comhaid NewGRF atá suiteáilte. Cliceáil ar chomhad chun a pharaiméadair a athrú STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Socraigh paraiméadair +STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Taispeáin paraiméadair STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Scoránaigh an pailéad STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Déan an pailéad den NewGRF roghnaithe a scoránú.{}Déan é seo má bhíonn cuma bhándearg ar na grafaicí ón NewGRF seo sa chluiche STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Cuir athruithe i bhfeidhm @@ -2355,6 +2801,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Díchumasa STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Neamhchomhoiriúnach leis an leagan seo de OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Sábháil réamhshocrú +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Liosta de na réamhshocraithe atá ar fáil, roghnaigh ceann chun é a chóipeáil chuig an t-ainm sábháilte thíos +STR_SAVE_PRESET_TITLE :{BLACK}Iontráil ainm don réamhshocrú +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}An t-ainm atá roghnaithe faoi láthair don réamhshocrú a shábhálfar +STR_SAVE_PRESET_CANCEL :{BLACK}Cuir ar ceal +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Ná hathraigh an réamhshocrú +STR_SAVE_PRESET_SAVE :{BLACK}Sábháil +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Sábháil an réamhshocrú faoin ainm atá roghnaithe faoi láthair # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Athraigh na paraiméadair NewGRF @@ -2386,7 +2840,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite r STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Téigh ar aghaigh chuig an gnáth-sprite roimhe, ag scipeáil thar aon bhréag-sprite nó sprite athdathaithe/clófhoirne agus ag timfhilleadh ag an tús STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Léiriú den sprite atá roghnaithe faoi láthair. Déantar neamhaird den ailíniú agus an sprite seo á tharraingt STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Bog an sprite timpeall, ag athrú an seach-chur X agus Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}seach-chur X: {NUM}, seach-chur Y: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Roghnaigh sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Roghnaigh sprite ó áit ar bith ar an scáileán @@ -2408,8 +2861,17 @@ STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING}: Tá STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :an comhad GRF a bhí sé deartha a aistriú STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Tá an iomarca NewGRF lódáilte. STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :D'fhéadfaí go mbeidh díshioncronú ann má dhéantar {1:STRING} a lódáil mar NewGRF statach le {STRING}. +STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Sprid nach rabhthas ag súil léi (sprid {3:NUM}) +STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Airí Ghmíomhaíocht 0 anaithnid {4:HEX} (sprid {3:NUM}) +STR_NEWGRF_ERROR_INVALID_ID :Iarracht ID neamhbhailí a úsáid (sprid {3:NUM}) STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}Tá sprite truaillithe in {STRING}. Taispeánfar gach sprite truaillithe mar chomhartha ceiste (?) dearg. +STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Tá iontrálacha iolraccha Ghníomhaíocht 8 ann (sprid {3:NUM}) +STR_NEWGRF_ERROR_READ_BOUNDS :Léadh tar éis deireadh an pseudo-sprid (sprid {3:NUM}) STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Tá roinnt sprite in easnamh sa tsraith bhunúsach grafaicí atá in úsáid faoi láthair.{}Déan úasghrádú ar an tsraith bhunúsach grafaicí le do thoil +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Tá roinnt sprideanna in easnamh sa tacar bunghraificí atá in úsáid faoi láthair.{}Nuashonraigh an tacar bunghraificí.{}Toisc go bhfuil tú ag imirt ar {YELLOW}roghbhlúire forbróirí (development snapshot) OpenTTD{WHITE}, seans go mbeidh {YELLOW}roghbhlúire forbróirí de na bunghraificí{WHITE} ag teastáil uait +STR_NEWGRF_ERROR_GRM_FAILED :Níl na hacmhainní GRF a iarradh ar fáil (sprid {3:NUM}) +STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :Bhí {1:STRING} díchumasaithe ag {2:STRING} +STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Formáid neamhbhailí/anaithnid do leagan amach na spride (sprid {3:NUM}) # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Rabhadh! @@ -2434,11 +2896,13 @@ STR_NEWGRF_LIST_MISSING :{RED}Comhaid ar STR_NEWGRF_BROKEN :{WHITE}Tá seans maith ann go mbeidh díshioncronú agus/nó tuairteálacha de thoradh ar iompar an NewGRF '{0:STRING}'. STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}D'athraigh sé an staid vaigín cumhachtaithe le haghaidh '{1:ENGINE}' nuair nach bhfuil sé in iosta. STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}D'athraigh sé fad na feithicle le haghaidh '{1:ENGINE}' nuair nach bhfuil sé laistigh d'iosta. +STR_NEWGRF_BROKEN_CAPACITY :{WHITE}D'athraigh sé toilleadh na feithicle i gcomhair '{1:ENGINE}' nuair nach raibh sí laistigh d'iosta ná á hathfheistiú STR_BROKEN_VEHICLE_LENGTH :{WHITE}Tá fad neamhbhailí ag '{VEHICLE}' le '{COMPANY}'. Is dócha gur fadhbanna le NewGRFanna is cúis leis. Is féidir go ndíshioncronófar an cluiche nó go gclisfidh sé STR_NEWGRF_BUGGY :{WHITE}Cuireann an NewGRF '{0:STRING}' faisnéis mícheart ar fáil. STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Tá an fhaisnéis lastais/athfheistithe le haghaidh '{1:ENGINE}' difriúil ón liosta ceannacháin i ndiaidh tógála. B'fhéidir go dteipfidh uath-athnuachan/uath-ionadú athfheistiú i gceart dá bharr. STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}Chruthaigh '{1:STRING}' lúb éigríochta san aisghlaoch táirgeachta. +STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Tháinig toradh anaithnid/neamhbhailí {2:HEX} ón aisghlaoch {1:HEX} # 'User removed essential NewGRFs'-placeholders for stuff without specs STR_NEWGRF_INVALID_CARGO : @@ -2451,6 +2915,10 @@ STR_NEWGRF_INVALID_INDUSTRYTYPE : # NewGRF scanning window +STR_NEWGRF_SCAN_CAPTION :{WHITE}NewGRFanna á scanadh +STR_NEWGRF_SCAN_MESSAGE :{BLACK}NewGRFanna á scanadh. Ag brath ar an líon acu atá ann, seans go dtógfaidh sé tamall... +STR_NEWGRF_SCAN_STATUS :{BLACK}Scanadh {NUM} NewGRF as líon measta {NUM} NewGRF{P "" anna anna anna anna} +STR_NEWGRF_SCAN_ARCHIVES :Cartlanna á scanadh # Sign list window STR_SIGN_LIST_CAPTION :{WHITE}Liosta Comhartaí - {COMMA} {P Ch Ch Ch gC C}omhartha @@ -2480,6 +2948,12 @@ STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}Post an STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Lastas atá ag teastáil le go bhfásfaidh an baile: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} ag teastáil STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} ag teastáil sa Gheimhreadh +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} seachadta +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (fós ag teastáil) +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (seachadta) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Fásann an baile gach {ORANGE}{COMMA}{BLACK}{NBSP}lá{P "" "" "" "" ""} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Fásann an baile gach {ORANGE}{COMMA}{BLACK}{NBSP}lá{P "" "" "" "" ""} (maoinithe) +STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}{RED}Níl{BLACK} an baile ag fás STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Teorainn torainn sa bhaile: {ORANGE}{COMMA}{BLACK} uasmhéid: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Cuir suíomh an bhaile i lár an phríomh-amhairc. Osclaítar amharc nua ar shuíomh an bhaile le Ctrl+Cliceáil STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Údarás áitiúil @@ -2521,7 +2995,16 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Ceannai STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Tabhair breab don údarás áitiúil chun do rátáil a mhéadú, leis an mbaol ann go mbeidh pionós trom ort má bheirtear ort.{}Costas: {CURRENCY_LONG} # Goal window +STR_GOALS_CAPTION :{WHITE}Spriocanna {COMPANY} +STR_GOALS_SPECTATOR_CAPTION :{WHITE}Spriocanna Uilíocha +STR_GOALS_GLOBAL_TITLE :{BLACK}Spriocanna uilíocha: STR_GOALS_TEXT :{ORANGE}{STRING} +STR_GOALS_NONE :{ORANGE}- Ceann ar bith - +STR_GOALS_SPECTATOR_NONE :{ORANGE}- Neamhbhainteach - +STR_GOALS_PROGRESS :{ORANGE}{STRING} +STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} +STR_GOALS_COMPANY_TITLE :{BLACK}Spriocanna na cuideachta: +STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Cliceáil ar an sprioc chun an príomhamharc a lárú ar an tionscal/baile/tíle. Ctrl+Cliceáil chun fuinneog amhairc nua a oscailt ar shuíomh an tionscail/an bhaile/na tíle # Goal question window STR_GOAL_QUESTION_CAPTION_QUESTION :Ceist @@ -2529,18 +3012,46 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Faisnéis STR_GOAL_QUESTION_CAPTION_WARNING :Rabhadh STR_GOAL_QUESTION_CAPTION_ERROR :Earráid -### Start of Goal Question button list +############ Start of Goal Question button list +STR_GOAL_QUESTION_BUTTON_CANCEL :Cuir ar ceal +STR_GOAL_QUESTION_BUTTON_OK :OK +STR_GOAL_QUESTION_BUTTON_NO :Níl +STR_GOAL_QUESTION_BUTTON_YES :Tá +STR_GOAL_QUESTION_BUTTON_DECLINE :Diúltaigh +STR_GOAL_QUESTION_BUTTON_ACCEPT :Glac leis +STR_GOAL_QUESTION_BUTTON_IGNORE :Déan neamhaird de +STR_GOAL_QUESTION_BUTTON_RETRY :Atriail +STR_GOAL_QUESTION_BUTTON_PREVIOUS :Roimhe +STR_GOAL_QUESTION_BUTTON_NEXT :Ar aghaidh +STR_GOAL_QUESTION_BUTTON_STOP :Stop +STR_GOAL_QUESTION_BUTTON_START :Tosaigh +STR_GOAL_QUESTION_BUTTON_GO :Téigh +STR_GOAL_QUESTION_BUTTON_CONTINUE :Lean ar aghaidh +STR_GOAL_QUESTION_BUTTON_RESTART :Atosaigh +STR_GOAL_QUESTION_BUTTON_POSTPONE :Cuir siar +STR_GOAL_QUESTION_BUTTON_SURRENDER :Géill +STR_GOAL_QUESTION_BUTTON_CLOSE :Dún +############ End of Goal Question button list # Subsidies window -STR_SUBSIDIES_CAPTION :{WHITE}Fordheontais -STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Fordheontais le fáil do sheirbhísí chun: -STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} a thabhairt ó{STRING} go {STRING}{YELLOW} (roimh {DATE_SHORT}) +STR_SUBSIDIES_CAPTION :{WHITE}Fóirdheontais +STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Fóirdheontais le fáil do sheirbhísí chun: +STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} a thabhairt ó {STRING} go {STRING}{YELLOW} (roimh {DATE_SHORT}) STR_SUBSIDIES_NONE :{ORANGE}- Ceann ar bith - -STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Seirbhísí a fhaigheann fordheontas: +STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Seirbhísí a fhaigheann fóirdheontas: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} a thabhairt ó {STRING} go {STRING}{YELLOW} ({COMPANY}{YELLOW}, go dtí {DATE_SHORT}) STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Cliceáil ar sheirbhís chun an t-amharc a lárú ar thionscal/bhaile. Déantar amharc nua a oscailt ar shuíomh an tionscail/bhaile le Ctrl+Cliceáil # Story book window +STR_STORY_BOOK_CAPTION :{WHITE}Leabhar Scéalta {COMPANY} +STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Leabhar Scéalta Uilíoch +STR_STORY_BOOK_TITLE :{YELLOW}{STRING} +STR_STORY_BOOK_GENERIC_PAGE_ITEM :Leathanach {NUM} +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Léim chuig leathanach ar leith trína roghnú sa liosta anuas seo. +STR_STORY_BOOK_PREV_PAGE :{BLACK}Roimhe +STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Gabh chuig an leathanach roimhe +STR_STORY_BOOK_NEXT_PAGE :{BLACK}Ar aghaidh +STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Gabh chuig an chéad leathanach eile STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Tagairt neamhbhailí spriocanna # Station list window @@ -2558,16 +3069,42 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Níl las STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG} STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} ar an mbealach ó {STATION}) +STR_STATION_VIEW_RESERVED :{YELLOW}({CARGO_SHORT} forchoimeádta i gcomhair lódála) STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Glactar le STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Taispeáin liosta den lastas a ghlactar leis STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Glactar le: {WHITE}{CARGO_LIST} +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Tá cearta eisiacha iompair ag an stáisiún seo sa bhaile seo. +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{BLACK}Cheannaigh {YELLOW}{COMPANY}{BLACK} cearta eisiacha iompair sa bhaile seo.. STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Rátálacha STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Taispeáin rátálacha na stáisiún +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Soláthar míosúil agus rátáil áitiúil: +STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) +STR_STATION_VIEW_GROUP :{BLACK}Grúpáil de réir +STR_STATION_VIEW_WAITING_STATION :Stáisiún: Ag fanacht +STR_STATION_VIEW_WAITING_AMOUNT :Méid: Ag fanacht +STR_STATION_VIEW_PLANNED_STATION :Stáisiún: Beartaithe +STR_STATION_VIEW_PLANNED_AMOUNT :Méid: Beartaithe +STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} ó {STATION} +STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT} via {STATION} +STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} chuig {STATION} +STR_STATION_VIEW_FROM_ANY :{RED}{CARGO_SHORT} ó stáisiún anaithnid +STR_STATION_VIEW_TO_ANY :{RED}{CARGO_SHORT} chuig stáisiún ar bith +STR_STATION_VIEW_VIA_ANY :{RED}{CARGO_SHORT} via stáisiún ar bith +STR_STATION_VIEW_FROM_HERE :{GREEN}{CARGO_SHORT} ón stáisiún seo +STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_SHORT} a stopann ag an stáisiún seo +STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} chuig an stáisiún seo +STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} gan stad +STR_STATION_VIEW_GROUP_S_V_D :Foinse-Via-Ceann scríbe +STR_STATION_VIEW_GROUP_S_D_V :Foinse-Ceann scríbe-Via +STR_STATION_VIEW_GROUP_V_S_D :Via-Foinse-Ceann scríbe +STR_STATION_VIEW_GROUP_V_D_S :Via-Ceann scríbe-Foinse +STR_STATION_VIEW_GROUP_D_S_V :Ceann scríbe-Foinse-Via +STR_STATION_VIEW_GROUP_D_V_S :Ceann scríbe-Via-Foinse ############ range for rating starts STR_CARGO_RATING_APPALLING :Uafásach @@ -2590,6 +3127,8 @@ STR_STATION_VIEW_SCHEDULED_SHIPS_TOOLTIP :{BLACK}Taispeá STR_STATION_VIEW_RENAME_STATION_CAPTION :Athainmnigh stáisiún/limistéar lódála +STR_STATION_VIEW_CLOSE_AIRPORT :{BLACK}Dún an t-aerfort +STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Cuir cosc ar aerárthaigh tuirlingt ag an aerfort seo # Waypoint/buoy view window STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} @@ -2624,10 +3163,11 @@ STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Iarmhéi STR_FINANCES_LOAN_TITLE :{WHITE}Iasacht STR_FINANCES_MAX_LOAN :{WHITE}Iasacht Uasta: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} -STR_FINANCES_BORROW_BUTTON :{BLACK}Tabhair ar iasacht{CURRENCY_LONG} -STR_FINANCES_BORROW_TOOLTIP :{BLACK}Méadaigh méid na hiasachta. Tógtar an oiread agus is féidir a fháil ar iasacht le Ctrl+Cliceáil -STR_FINANCES_REPAY_BUTTON :{BLACK}Aisíoc{CURRENCY_LONG} -STR_FINANCES_REPAY_TOOLTIP :{BLACK}Aisíoc cuid den íosacht. Déantar an oiread agus is féidir den iasacht a aisíoc le Ctrl+Cliceáil +STR_FINANCES_BORROW_BUTTON :{BLACK}Faigh {CURRENCY_LONG} ar iasacht +STR_FINANCES_BORROW_TOOLTIP :{BLACK}Méadaigh méid na hiasachta. Ctrl+Cliceáil chun an oiread agus is féidir a fháil ar iasacht +STR_FINANCES_REPAY_BUTTON :{BLACK}Aisíoc {CURRENCY_LONG} +STR_FINANCES_REPAY_TOOLTIP :{BLACK}Aisíoc cuid den íosacht. Ctrl+Cliceáil chun an oiread agus is féidir den iasacht a aisíoc +STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Bonneagar # Company view STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM} @@ -2643,6 +3183,13 @@ STR_COMPANY_VIEW_SHIPS :{WHITE}{COMMA} STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}Ceann ar bith STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Luach na cuideachta: {WHITE}{CURRENCY_LONG} STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}(is le {1:COMPANY} {0:COMMA}%) +STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}Bonneagar: +STR_COMPANY_VIEW_INFRASTRUCTURE_RAIL :{WHITE}{COMMA} {P ph ph ph bp p}íosa iarnróid +STR_COMPANY_VIEW_INFRASTRUCTURE_ROAD :{WHITE}{COMMA} {P ph ph ph bp p}íosa bóthair +STR_COMPANY_VIEW_INFRASTRUCTURE_WATER :{WHITE}{COMMA} {P th th th dt t}íl uisce +STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} {P th th th dt t}íl stáisiúin +STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} {P "" "" "" n- ""}aerfort +STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Rud ar bith STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Tóg CC STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Tóg ceanncheathrú na cuideachta @@ -2650,6 +3197,8 @@ STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Breathan STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Breathnaigh ar cheanncheathrú na cuideachta STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Athlonnaigh an CC STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Tóg ceanncheathrú na cuideachta in áit eile ar chostas 1% de luach na cuideachta +STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Sonraí +STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Taispeáin líon mionsonraithe na bpíosaí bonneagair STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Aghaigh Nua STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Roghnaigh aghaidh nua don bhainisteoir @@ -2671,6 +3220,18 @@ STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Ainm an Bhainis STR_BUY_COMPANY_MESSAGE :{WHITE}Tá cuideachta iompair á lorg againn chun seilbh a ghlacadh ar ár gcuideachta.{}{}An bhfuil fonn ort seilbh a ghlacadh ar {COMPANY} ar chostas {CURRENCY_LONG}? # Company infrastructure window +STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Bonneagar {COMPANY} +STR_COMPANY_INFRASTRUCTURE_VIEW_RAIL_SECT :{GOLD}Píosaí iarnróid: +STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}Comharthaí +STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}Píosaí bóthair: +STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD :{WHITE}Bóthar +STR_COMPANY_INFRASTRUCTURE_VIEW_TRAMWAY :{WHITE}Trambhealach +STR_COMPANY_INFRASTRUCTURE_VIEW_WATER_SECT :{GOLD}Tíleanna uisce: +STR_COMPANY_INFRASTRUCTURE_VIEW_CANALS :{WHITE}Canálacha +STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Stáisiúin: +STR_COMPANY_INFRASTRUCTURE_VIEW_STATIONS :{WHITE}Tíleanna stáisiúin +STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}Aerfoirt +STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENCY_LONG}/bl # Industry directory STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}Tionscail @@ -2686,6 +3247,7 @@ STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Táirgea STR_INDUSTRY_VIEW_TRANSPORTED :{YELLOW}{CARGO_LONG}{STRING}{BLACK} (iompraíodh {COMMA}%) STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Láraigh an príomhamharc ar shuíomh an tionscail. Osclaítear amharc nua ar shuíomh an tionscail le Ctrl+Cliceáil STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Leibhéal táirgeachta: {YELLOW}{COMMA}% +STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}D'fhógair an tionscal go ndúnfaidh sé gan mhoill! ############ range for requires starts STR_INDUSTRY_VIEW_REQUIRES_CARGO :{BLACK}Teastaíonn: {YELLOW}{STRING}{STRING} @@ -2776,6 +3338,8 @@ STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Aerárthaigh Nu STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Costas: {GOLD}{CURRENCY_LONG}{BLACK} Meáchan: {GOLD}{WEIGHT_SHORT} STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Luas: {GOLD}{VELOCITY}{BLACK} Cumhacht: {GOLD}{POWER} STR_PURCHASE_INFO_SPEED :{BLACK}Luas: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}Luas ar aigéan: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}Luas ar chanáil/abhainn: {GOLD}{VELOCITY} STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Costas Coinneála: {GOLD}{CURRENCY_LONG}/bl STR_PURCHASE_INFO_CAPACITY :{BLACK}Toilleadh: {GOLD}{CARGO_LONG} {STRING} STR_PURCHASE_INFO_REFITTABLE :(is féidir athfheistiú) @@ -2790,6 +3354,7 @@ STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Is féid STR_PURCHASE_INFO_ALL_TYPES :Gach cineál lastais STR_PURCHASE_INFO_ALL_BUT :Gach rud seachas {CARGO_LIST} STR_PURCHASE_INFO_MAX_TE :{BLACK}Iarracht uasta tarraingthe: {GOLD}{FORCE} +STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Raon: {GOLD}{COMMA} tíl STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Liosta chun feithicil traenach a roghnú - cliceáil ar fheithicil le faisnéis a fháil STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liosta chun feithicil bóthair a roghnú - cliceáil ar fheithicil le faisnéis a fháil @@ -2816,6 +3381,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Athainmn STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Athainmnigh an cineál loinge STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Athainmnigh an cineál aerárthaigh +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Folaigh +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Folaigh +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Folaigh +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Folaigh + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Taispeáin +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Taispeáin +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Taispeáin +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Taispeáin + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Athraigh idir an cineál feithicle traenacha a fholú nó a thaispeáint +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Athraigh idir an cineál feithicle bóthair a fholú nó a thaispeáint +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Athraigh idir an cineál loinge a fholú nó a thaispeáint +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Athraigh idir an cineál aerárthaigh a fholú nó a thaispeáint + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Athainmnigh an cineál feithicle traenach STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Athainmnigh an cineál feithicle bóthair STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Athainmnigh an cineál loinge @@ -2906,10 +3486,12 @@ STR_ENGINE_PREVIEW_SHIP :long STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :inneall gluaiste aonráille STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :inneall gluaiste maglev -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Cost:as {CURRENCY_LONG} Meáchan: {WEIGHT_SHORT}{}Luas: {VELOCITY} Cumhacht: {POWER}{}Costas Coinneála {CURRENCY_LONG}/bl{}Toilleadh: {CARGO_LONG} +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Costas {CURRENCY_LONG} Meáchan: {WEIGHT_SHORT}{}Luas: {VELOCITY} Cumhacht: {POWER}{}Costas Coinneála {CURRENCY_LONG}/bl{}Toilleadh: {CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Costas: {CURRENCY_LONG} Meáchan: {WEIGHT_SHORT}{}Luas: {VELOCITY} Cumhacht: {POWER} T.E. uasta: {6:FORCE}{}Costas Coinneála: {4:CURRENCY_LONG}/bl{}Toilleadh: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_CAPACITY_RUNCOST :{BLACK}Costas: {CURRENCY_LONG} Luas Uasta: {VELOCITY}{}Toilleadh: {CARGO_LONG}, {CARGO_LONG}{}Costas Coinneála: {CURRENCY_LONG}/bl STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK}Costas: {CURRENCY_LONG} Luas Uasta: {VELOCITY}{}Toilleadh: {CARGO_LONG}{}Costas Coinneála: {CURRENCY_LONG}/bl +STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_CAPACITY_RUNCOST:{BLACK}Costas: {CURRENCY_LONG} Luas uasta: {VELOCITY} Raon: {COMMA} tíl{}Toilleadh: {CARGO_LONG}, {CARGO_LONG}{}Costas Coinneála: {CURRENCY_LONG}/bl +STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_RUNCOST :{BLACK}Costas: {CURRENCY_LONG} Luas uasta: {VELOCITY} Raon: {COMMA} tíleanna{}Toilleadh: {CARGO_LONG}{}Costas Coinneála: {CURRENCY_LONG}/yr # Autoreplace window STR_REPLACE_VEHICLES_WHITE :{WHITE}Ionadaigh{STRING} - {STRING} @@ -2918,13 +3500,21 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Feithicil Bóth STR_REPLACE_VEHICLE_SHIP :Long STR_REPLACE_VEHICLE_AIRCRAFT :Aerárthach +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Feithiclí atá in úsáid +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Colún le feithiclí ar leatsa iad +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Feithiclí atá ar fáil +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Colún leis na feithiclí atá ar fáil chun ionadú a dhéanamh + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Roghnaigh an cineál innill le hathsholáthar STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Roghnaigh an cineál nua innill is mian leat a úsáid in ionad an chineáil innill atá roghnaithe ar chlé STR_REPLACE_VEHICLES_START :{BLACK}Tosaigh ag athsholáthar Feithiclí +STR_REPLACE_VEHICLES_NOW :Ionadaigh gach feithicil anois +STR_REPLACE_VEHICLES_WHEN_OLD :Ionadaigh seanfheithiclí amháin STR_REPLACE_HELP_START_BUTTON :{BLACK}Brúigh le tús a chur leis an gcineál innill atá roghnaithe ar chlé a athsholáthar leis an gcineál innill atá roghnaithe ar dheis STR_REPLACE_NOT_REPLACING :{BLACK}Níl athsholáthar ar bun STR_REPLACE_NOT_REPLACING_VEHICLE_SELECTED :{BLACK}Níl aon fheithicil roghnaithe +STR_REPLACE_REPLACING_WHEN_OLD :{ENGINE} má tá sé sean STR_REPLACE_VEHICLES_STOP :{BLACK}Stad ag athsholáthar Feithiclí STR_REPLACE_HELP_STOP_BUTTON :{BLACK}Brúigh chun deireadh a chur le hathsholáthar den chineál innill atá roghnaithe ar chlé @@ -2995,6 +3585,7 @@ STR_VEHICLE_STATUS_STOPPED :{RED}Stoptha STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Ag stopadh, {VELOCITY} STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Gan chumhacht STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Ag fanacht ar chosán saor +STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Rófhada chuig an chéad cheann scríbe eile STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Ag déanamh ar {STATION}, {VELOCITY} STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}Gan ordú, {VELOCITY} @@ -3023,6 +3614,7 @@ STR_VEHICLE_INFO_AGE :{COMMA} {P bhli STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} {P bhliain bhliain bliana mbliana bliana} ({COMMA}) STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Luas uasta: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}Luas uasta: {LTBLUE}{VELOCITY} {BLACK}Raon: {LTBLUE}{COMMA} {P th th th dt t}íl STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Meáchan: {LTBLUE}{WEIGHT_SHORT} {BLACK}Cumhacht: {LTBLUE}{POWER}{BLACK}Luas uasta: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Meáchan: {LTBLUE}{WEIGHT_SHORT} {BLACK}Cumhacht: {LTBLUE}{POWER}{BLACK} Uas-luas: {LTBLUE}{VELOCITY} {BLACK}T.E. Uasta: {LTBLUE}{FORCE} @@ -3079,7 +3671,9 @@ STR_VEHICLE_DETAILS_TRAIN_ARTICULATED_RV_CAPACITY :{BLACK}Toillead STR_REFIT_CAPTION :{WHITE}{VEHICLE} (Athfeistigh) STR_REFIT_TITLE :{GOLD}Roghnaigh an lastas le hiompar: STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Toilleadh nua: {GOLD}{CARGO_LONG}{}{BLACK}Costas an aisfheistithe: {RED}{CURRENCY_LONG} +STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Toilleadh nua: {GOLD}{CARGO_LONG}{}{BLACK}Ioncam ón athfheistiú: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Toilleadh nua: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Costas athfheistithe: {RED}{CURRENCY_LONG} +STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Toilleadh nua: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Ioncam ón athfheistiú: {GREEN}{CURRENCY_LONG} STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Roghnaigh na feithiclí le hathfheistiú. Is féidir níos mó ná feithicil amháin a roghnú trí tharraingt leis an luch. Roghnófar an fheithicil iomlán má chliceáltar ar spás folamh. Roghnófar feithicil agus an slabhra ina dhiaidh le Ctrl+Cliceáil STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Roghnaigh an cineál lastais a iompróidh an traein @@ -3133,6 +3727,10 @@ STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Athraigh STR_ORDER_REFIT :{BLACK}Athfheistigh STR_ORDER_REFIT_TOOLTIP :{BLACK}Roghnaigh an cineál lastais le hathfheistiú chuig san ordú seo. Bainfear an t-ordú athfheistithe le Ctrl+Cliceáil +STR_ORDER_REFIT_AUTO :{BLACK}Athfheistigh ag stáisiún +STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Roghnaigh an cineál lastais a ndéanfar athfeistiú chuige san ordú seo. Ctrl+Cliceáil chun an t-ordú athfheistithe a bhaint. Ní dhéanfar athfheistiú ag stáisiún ach amháin má cheadaíonn an fheithicil sin +STR_ORDER_DROP_REFIT_AUTO :Lastas seasta +STR_ORDER_DROP_REFIT_AUTO_ANY :Lastas atá ar fáil STR_ORDER_SERVICE :{BLACK}Seirbhísigh STR_ORDER_DROP_GO_ALWAYS_DEPOT :Téigh i gcónaí @@ -3149,6 +3747,7 @@ STR_ORDER_CONDITIONAL_MAX_SPEED :Luas uasta STR_ORDER_CONDITIONAL_AGE :Aois na feithicle (blianta) STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Seirbhís ag teastáil STR_ORDER_CONDITIONAL_UNCONDITIONALLY :I gcónaí +STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :Saolré fágtha (blianta) STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Conas sonraí na feithicle a chur i gcomparáid leis an luach a tugadh STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :cothrom le @@ -3220,12 +3819,26 @@ STR_ORDER_NO_UNLOAD_FULL_LOAD :(Ná dílódái STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Ná dílódáil agus fan ar lasta iomlán ar bith) STR_ORDER_NO_UNLOAD_NO_LOAD :(Ná dílódáil agus ná lódáil) +STR_ORDER_AUTO_REFIT :(Athfheistigh go {STRING}) +STR_ORDER_FULL_LOAD_REFIT :(Lastas iomlán le hathfheistiú go {STRING}) +STR_ORDER_FULL_LOAD_ANY_REFIT :(Lastas iomlán de lastas ar bith le hathfheistiú go {STRING}) +STR_ORDER_UNLOAD_REFIT :(Dílódáil agus tóg lastas le hathfheistiú go {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Dílódáil agus fan ar lastas iomlán le hathfheistiú go {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Dílódáil agus fan ar aon lód iomlán le hathfheistiú go {STRING}) +STR_ORDER_TRANSFER_REFIT :(Aistrigh agus tóg lastas le hathfheistiú go {STRING}) +STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Aistrigh agus fan ar lód iomlán le hathfeistiú go {STRING}) +STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Aistrigh agus fan ar aon lód iomlán le hathfheistiú go {STRING}) +STR_ORDER_NO_UNLOAD_REFIT :(Ná dílódáil agus tóg lastas le hathfeistiú go {STRING}) +STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Ná dílódáil agus fan ar lód iomlán le hathfheistiú go {STRING}) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Ná dílódáil agus fan ar aon lód iomlán le hathfeistiú go {STRING}) +STR_ORDER_AUTO_REFIT_ANY :lastas atá ar fáil STR_ORDER_STOP_LOCATION_NEAR_END :[taobh is gaire] STR_ORDER_STOP_LOCATION_MIDDLE :[lár] STR_ORDER_STOP_LOCATION_FAR_END :[taobh is faide] +STR_ORDER_OUT_OF_RANGE :{RED} (Tá an chéad cheann scríbe eile as raon) STR_ORDER_CONDITIONAL_UNCONDITIONAL :Léim chuig ordú {COMMA} STR_ORDER_CONDITIONAL_NUM :Léim chuig ordú {COMMA} nuair {STRING} {STRING} {COMMA} @@ -3265,6 +3878,7 @@ STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}Níor th STR_TIMETABLE_STATUS_START_AT :{BLACK}Tosóidh an t-amchlár seo ag {STRING} STR_TIMETABLE_STARTING_DATE :{BLACK}Dáta tosaigh +STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}Roghnaigh dáta mar phointe tosaigh don amchlár seo. Ctrl+Cliceáil chun pointe tosaigh an amchlár a shocrú agus gach feithicil a chomhroinneann an t-ordú seo a dháileadh go cothrom bunaithe ar a hordú coibhneasta, fiú má tá amchlár iomlán ann don ordú sin STR_TIMETABLE_CHANGE_TIME :{BLACK}Athraigh Am STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Athraigh an méid ama ar chóir don ordú aibhsithe a thógáil @@ -3302,9 +3916,9 @@ STR_DATE_YEAR_TOOLTIP :{BLACK}Roghnaig # AI debug window -STR_AI_DEBUG :{WHITE}Dífhabhtú AI +STR_AI_DEBUG :{WHITE}Dífhabhtú AI/Scripteanna Cluiche STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} (v{NUM}) -STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Ainm an AI +STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Ainm na scripte STR_AI_DEBUG_SETTINGS :{BLACK}Socruithe an AI STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Athraigh socruithe an AI STR_AI_DEBUG_RELOAD :{BLACK}Athlódáil an AI @@ -3318,6 +3932,8 @@ STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Déan sc STR_AI_DEBUG_CONTINUE :{BLACK}Lean ar aghaidh STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Cuir deireadh leis an sos agus lean leis an AI STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Amharc ar aschur dífhabhtaithe an AI seo +STR_AI_GAME_SCRIPT :{BLACK}Script Cluiche +STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Seiceáil loga na Scripte Cluiche STR_ERROR_AI_NO_AI_FOUND :Níor aimsíodh AI feiliúnach le lódáil.{}Is AI caoch é an AI seo agus ní dhéanfaidh sé aon rud.{}Is féidir leat roinnt AI a íoslódáil leis an gcóras 'Inneachar Ar Líne'.. STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Thuairteáil ceann de na AIanna atá ar rith. Déan é seo a thuairisciú d'údar an AI le do thoil, le seat scáileáin den Fhuinneog Dífhabhtaithe AI ag gabháil leis. @@ -3325,20 +3941,32 @@ STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Níl an # AI configuration window STR_AI_CONFIG_CAPTION :{WHITE}Cumrú AI +STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}An Script Cluiche a lódálfar sa chéad chluiche eile +STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Na AInna a lódálfar sa chéad chluiche eile STR_AI_CONFIG_HUMAN_PLAYER :Imreoir Daonna STR_AI_CONFIG_RANDOM_AI :AI Randamach +STR_AI_CONFIG_NONE :(ceann ar bith) STR_AI_CONFIG_MOVE_UP :{BLACK}Bog Suas STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Bog an AI roghnaithe suas an liosta STR_AI_CONFIG_MOVE_DOWN :{BLACK}Bog Síos STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Bog an AI roghnaithe síos sa liosta +STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script Cluiche +STR_AI_CONFIG_AI :{SILVER}AInna +STR_AI_CONFIG_CHANGE :{BLACK}Roghnaigh {STRING} STR_AI_CONFIG_CHANGE_NONE : +STR_AI_CONFIG_CHANGE_AI :AI +STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script Cluiche +STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Lódáil script eile STR_AI_CONFIG_CONFIGURE :{BLACK}Cumraigh STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Cumraigh paraiméadair an AI # Available AIs window +STR_AI_LIST_CAPTION :{WHITE}{STRING} atá ar fáil +STR_AI_LIST_CAPTION_AI :AInna +STR_AI_LIST_CAPTION_GAMESCRIPT :Scripteanna Cluichí STR_AI_LIST_TOOLTIP :{BLACK}Cliceáil chun AI a roghnú STR_AI_LIST_AUTHOR :{LTBLUE}Údar: {ORANGE}{STRING} @@ -3347,13 +3975,17 @@ STR_AI_LIST_URL :{LTBLUE}URL: {O STR_AI_LIST_ACCEPT :{BLACK}Glac leis STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Roghnaigh an AI aibhsithe -STR_AI_LIST_CANCEL :{BLACK}Cealaigh +STR_AI_LIST_CANCEL :{BLACK}Cuir ar ceal STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ná hathraigh an AI # AI Parameters +STR_AI_SETTINGS_CAPTION :{WHITE}Paraiméadair {STRING} +STR_AI_SETTINGS_CAPTION_AI :AI +STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script an Chluiche STR_AI_SETTINGS_CLOSE :{BLACK}Dún STR_AI_SETTINGS_RESET :{BLACK}Athshocraigh STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} +STR_AI_SETTINGS_START_DELAY :Líon na laethanta a thógfaidh sé chun an AI seo a thosú tar éis an ceann roimhe (a bheag nó a mhór): {ORANGE}{STRING} # Textfile window @@ -3374,6 +4006,8 @@ STR_PERCENT_DOWN_SMALL :{TINY_FONT}{WHI STR_PERCENT_DOWN :{WHITE}{NUM}%{DOWN_ARROW} STR_PERCENT_UP_DOWN_SMALL :{TINY_FONT}{WHITE}{NUM}%{UP_ARROW}{DOWN_ARROW} STR_PERCENT_UP_DOWN :{WHITE}{NUM}%{UP_ARROW}{DOWN_ARROW} +STR_PERCENT_NONE_SMALL :{TINY_FONT}{WHITE}{NUM}% +STR_PERCENT_NONE :{WHITE}{NUM}% # Income 'floats' STR_INCOME_FLOAT_COST_SMALL :{TINY_FONT}{RED}Costas: {CURRENCY_LONG} @@ -3382,6 +4016,10 @@ STR_INCOME_FLOAT_INCOME_SMALL :{TINY_FONT}{GRE STR_INCOME_FLOAT_INCOME :{GREEN}Ioncam: {CURRENCY_LONG} STR_FEEDER_TINY :{TINY_FONT}{YELLOW}Aistrigh: {CURRENCY_LONG} STR_FEEDER :{YELLOW}Aistrigh: {CURRENCY_LONG} +STR_FEEDER_INCOME_TINY :{TINY_FONT}{YELLOW}Aistriú: {CURRENCY_LONG}{WHITE} / {GREEN}Ioncam: {CURRENCY_LONG} +STR_FEEDER_INCOME :{YELLOW}Aistriú: {CURRENCY_LONG}{WHITE} / {GREEN}Ioncam: {CURRENCY_LONG} +STR_FEEDER_COST_TINY :{TINY_FONT}{YELLOW}Aistriú: {CURRENCY_LONG}{WHITE} / {RED}Costas: {CURRENCY_LONG} +STR_FEEDER_COST :{YELLOW}Aistriú: {CURRENCY_LONG}{WHITE} / {RED}Costas: {CURRENCY_LONG} STR_MESSAGE_ESTIMATED_COST :{WHITE}Costas Measta: {CURRENCY_LONG} STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Ioncam Measta: {CURRENCY_LONG} @@ -3413,6 +4051,7 @@ STR_ERROR_PNGMAP_MISC :{WHITE}... chua STR_ERROR_BMPMAP :{WHITE}Ní féidir tírdhreach a lódáil ó BMP... STR_ERROR_BMPMAP_IMAGE_TYPE :{WHITE}... níorbh fhéidir an cineál íomhá a thiontú. +STR_ERROR_HEIGHTMAP_TOO_LARGE :{WHITE}... tá an íomhá rómhór STR_WARNING_HEIGHTMAP_SCALE_CAPTION :{WHITE}Rabhadh faoin scála STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Ní mholtar duit méid na léarscáile foinsí a athrú an iomarca. Lean leis an nginiúint? @@ -3421,6 +4060,8 @@ STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Ní mho STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Níor aimsíodh ach sraith fuaimeanna tacachumais. Má tá fuaimeanna uait, suiteáil sraith fuaimeanna sa chóras íoslódála inneachair. # Screenshot related messages +STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Seat scáileán ollmhór +STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Beidh taifeach {COMMA} x {COMMA} pictilín ag an seat scáileáin. D'fhéadfadh sé go dtógfaidh sé píosa an seat scáileáin a thógáil. An mian leat leanúint ar aghaidh? STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Sábháladh an seat scáileáin mar '{STRING}' STR_ERROR_SCREENSHOT_FAILED :{WHITE}Theip ar an seat scáileáin! @@ -3444,6 +4085,7 @@ STR_ERROR_OWNED_BY :{WHITE}... is l STR_ERROR_AREA_IS_OWNED_BY_ANOTHER :{WHITE}... is le cuideachta eile an limistéar STR_ERROR_TERRAFORM_LIMIT_REACHED :{WHITE}... baineadh an teorainn tírdhreachaithe amach STR_ERROR_CLEARING_LIMIT_REACHED :{WHITE}... baineadh teorainn glanta na dtíleanna amach +STR_ERROR_TREE_PLANT_LIMIT_REACHED :{WHITE}... teorainn chun crainnte a chur bainte amach STR_ERROR_NAME_MUST_BE_UNIQUE :{WHITE}Caithfidh ainm uathúil a bheith ann STR_ERROR_GENERIC_OBJECT_IN_THE_WAY :{WHITE}Tá {1:STRING} sa bhealach STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Ní cheadaítear é seo le linn sosa @@ -3452,6 +4094,7 @@ STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Ní chea STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}Ní cheadaíonn údarás áitiúil {TOWN} é seo STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}Diúltaíonn údarás áitiúil {TOWN} cead a thabhairt chun aerfort eile a thógáil sa bhaile seo STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}Diúltaíonn údarás áitiúil {TOWN} cead don aerfort mar gheall ar imní faoi thorann +STR_ERROR_BRIBE_FAILED :{WHITE}Fuair cigire réigiúnach amach faoin iarracht a rinne tú breab a thabhairt # Levelling errors STR_ERROR_CAN_T_RAISE_LAND_HERE :{WHITE}Ní féidir talamh a ardú anseo... @@ -3461,6 +4104,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Dhéanfa STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... ag leibhéal na farraige cheana féin STR_ERROR_TOO_HIGH :{WHITE}... ró-ard STR_ERROR_ALREADY_LEVELLED :{WHITE}... tá sé réidh cheana féin +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Ina dhiaidh sin bheadh an droichead os a chionn ró-ard. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Ní féidir ainm na cuideachta a athrú... @@ -3508,6 +4152,11 @@ STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... ní STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... ní féidir é a thógáil ach i gceantar íseal STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... ní féidir é a chur ach in aice le taobhanna na léarscáile STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... ní féidir foraois a chur ach taobh thuas den líne sneachta amháin +STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... ní féidir iad a thógáil ach os cionn na líne sneachta +STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... ní féidir iad a thógáil ach faoin líne sneachta + +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Ní raibh aon áit oiriúnach i gcomhair tionscail '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Athraigh na paraiméadair don ghiniúint léarscáile chun léarscáil níos fearr a fháil # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Ní féidir stáisiún iarnróid a thógáil anseo... @@ -3628,6 +4277,8 @@ STR_ERROR_CAN_T_BUILD_LOCKS :{WHITE}Ní féi STR_ERROR_CAN_T_PLACE_RIVERS :{WHITE}Ní féidir aibhneacha a chur anseo... STR_ERROR_MUST_BE_BUILT_ON_WATER :{WHITE}... ní mór é a thógáil ar uisce STR_ERROR_CAN_T_BUILD_ON_WATER :{WHITE}... ní féidir tógáil ar uisce +STR_ERROR_CAN_T_BUILD_ON_SEA :{WHITE}... ní féidir tógáil ar an bhfarraige mhór +STR_ERROR_CAN_T_BUILD_ON_CANAL :{WHITE}... ní féidir tógáil ar chanáil STR_ERROR_CAN_T_BUILD_ON_RIVER :{WHITE}... Nil tu abalta togadh ar an uise STR_ERROR_MUST_DEMOLISH_CANAL_FIRST :{WHITE}Ní mór canáil a scriosadh ar dtús STR_ERROR_CAN_T_BUILD_AQUEDUCT_HERE :{WHITE}Ní féidir uiscerian a thógáil anseo... @@ -3643,6 +4294,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Ní mór STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Ní féidir tosú agus críochnú san áit céanna STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Níl cinn an droichid ag an leibhéal céanna STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Tá an droichead ró-íseal don tír-raon +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Tá an droichead ró-ard don tír-raon seo. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Ní mór an tús agus an deireadh a bheith i líne STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... ní mór go mbeadh an dá thaobh den droichead ar thalamh STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... droichead rófhada @@ -3725,11 +4377,15 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Ní féi STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... tá an fheithicil scriosta +STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL :{WHITE}Ní bheidh aon fheithicil ar fáil ar chor ar bith STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Athraigh do chumraíocht NewGRF +STR_ERROR_NO_VEHICLES_AVAILABLE_YET :{WHITE}Níl aon fheithicil ar fáil fós +STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}Tosaigh cluiche nua ó {DATE_SHORT} ar aghaidh nó úsáid NewGRF lena gcuirtear feithiclí luath ar fáil # Specific vehicle errors STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Ní féidir iallach a chur ar thraein dul thar comhartha agus contúirt ann... STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Ní féidir treo na traenach a aisiompú... +STR_ERROR_TRAIN_START_NO_POWER :Níl aon chumhacht ag an traein STR_ERROR_CAN_T_MAKE_ROAD_VEHICLE_TURN :{WHITE}Ní féidir iallach a chur ar fheithicil bóthair casadh timpeall... @@ -3752,6 +4408,7 @@ STR_ERROR_CAN_T_SHARE_ORDER_LIST :{WHITE}Ní féi STR_ERROR_CAN_T_STOP_SHARING_ORDER_LIST :{WHITE}Ní féidir comhroinnt liosta na n-orduithe a stopadh... STR_ERROR_CAN_T_COPY_ORDER_LIST :{WHITE}Ní féidir liosta orduithe a chóipeáil... STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... rófhada ón gceann scríbe roimhe seo +STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... níl raon fada go leor ag an aerárthach # Timetable related errors STR_ERROR_CAN_T_TIMETABLE_VEHICLE :{WHITE}Ní féidir amchlár a thabhairt d'fheithicil... @@ -3768,6 +4425,14 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Ní féi STR_DESKTOP_SHORTCUT_COMMENT :Cluiche ionsamhlúcháin bunaithe ar Transport Tycoon Deluxe # Translatable descriptions in media/baseset/*.ob* files +STR_BASEGRAPHICS_DOS_DESCRIPTION :Grafaicí bunaidhTransport Tycoon Deluxe, eagrán DOS. +STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Grafaicí bunaidhTransport Tycoon Deluxe, eagrán DOS (Gearmánach). +STR_BASEGRAPHICS_WIN_DESCRIPTION :Grafaicí bunaidhTransport Tycoon Deluxe, eagrán Windows. +STR_BASESOUNDS_DOS_DESCRIPTION :Fuaimeanna bunaidh Transport Tycoon Deluxe, eagrán DOS. +STR_BASESOUNDS_WIN_DESCRIPTION :Fuaimeanna bunaidh Transport Tycoon Deluxe, eagrán Windows. +STR_BASESOUNDS_NONE_DESCRIPTION :Pacáiste fuaimeanna gan aon fhuaimeanna ann. +STR_BASEMUSIC_WIN_DESCRIPTION :Ceol bunaidh Transport Tycoon Deluxe, eagrán Windows. +STR_BASEMUSIC_NONE_DESCRIPTION :Pacáiste ceoil gan aon cheol iarbhír ann. ##id 0x2000 # Town building names @@ -4151,8 +4816,8 @@ STR_FORMAT_DATE_SHORT :{STRING} {NUM} STR_FORMAT_DATE_LONG :{STRING} {STRING} {NUM} STR_FORMAT_DATE_ISO :{2:NUM}-{1:STRING}-{0:STRING} -STR_FORMAT_BUOY_NAME :{TOWN} Baoi -STR_FORMAT_BUOY_NAME_SERIAL :{TOWN} Baoi #{COMMA} +STR_FORMAT_BUOY_NAME :Baoi {TOWN} +STR_FORMAT_BUOY_NAME_SERIAL :Baoi {TOWN} #{COMMA} STR_FORMAT_COMPANY_NUM :(Cuideachta {COMMA}) STR_FORMAT_GROUP_NAME :Grúpa {COMMA} STR_FORMAT_INDUSTRY_NAME :{1:STRING} {0:TOWN} @@ -4165,7 +4830,7 @@ STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE :Iosta Feithicl STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE_SERIAL :Iosta Feithiclí Bóthair {TOWN} #{COMMA} STR_FORMAT_DEPOT_NAME_SHIP :Iosta Long {TOWN} STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :Iosta Long {TOWN} #{COMMA} -STR_FORMAT_DEPOT_NAME_AIRCRAFT :{STATION} Haingear +STR_FORMAT_DEPOT_NAME_AIRCRAFT :Haingear {STATION} STR_UNKNOWN_STATION :stáisiún anaithnid STR_DEFAULT_SIGN_NAME :Comhartha @@ -4194,6 +4859,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (folaithe) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4217,6 +4883,7 @@ STR_JUST_DATE_ISO :{DATE_ISO} STR_JUST_STRING :{STRING} STR_JUST_STRING_STRING :{STRING}{STRING} STR_JUST_RAW_STRING :{STRING} +STR_JUST_BIG_RAW_STRING :{BIG_FONT}{STRING} # Slightly 'raw' stringcodes with colour or size STR_BLACK_COMMA :{BLACK}{COMMA} @@ -4228,8 +4895,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/italian.txt b/src/lang/italian.txt index 312bdb21f4..3060ed353c 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -97,30 +97,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :{G=f}Bevande fr # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passegger{P o i} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passegger{P o i} STR_QUANTITY_COAL :{WEIGHT_LONG} di carbone -STR_QUANTITY_MAIL :{COMMA} sacc{P o hi} postal{P e i} +STR_QUANTITY_MAIL :{COMMA}{NBSP}sacc{P o hi} postal{P e i} STR_QUANTITY_OIL :{VOLUME_LONG} di petrolio -STR_QUANTITY_LIVESTOCK :{COMMA} cap{P o i} di bestiame -STR_QUANTITY_GOODS :{COMMA} cass{P a e} di beni +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}cap{P o i} di bestiame +STR_QUANTITY_GOODS :{COMMA}{NBSP}cass{P a e} di beni STR_QUANTITY_GRAIN :{WEIGHT_LONG} di grano STR_QUANTITY_WOOD :{WEIGHT_LONG} di legname STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} di ferro STR_QUANTITY_STEEL :{WEIGHT_LONG} di acciaio -STR_QUANTITY_VALUABLES :{COMMA} bors{P a e} di valori +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}bors{P a e} di valori STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} di rame STR_QUANTITY_MAIZE :{WEIGHT_LONG} di mais STR_QUANTITY_FRUIT :{WEIGHT_LONG} di frutta -STR_QUANTITY_DIAMONDS :{COMMA} sacc{P o hi} di diamanti +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}sacc{P o hi} di diamanti STR_QUANTITY_FOOD :{WEIGHT_LONG} di cibo STR_QUANTITY_PAPER :{WEIGHT_LONG} di carta -STR_QUANTITY_GOLD :{COMMA} sacc{P o hi} di oro +STR_QUANTITY_GOLD :{COMMA}{NBSP}sacc{P o hi} di oro STR_QUANTITY_WATER :{VOLUME_LONG} di acqua STR_QUANTITY_WHEAT :{WEIGHT_LONG} di frumento STR_QUANTITY_RUBBER :{VOLUME_LONG} di gomma STR_QUANTITY_SUGAR :{WEIGHT_LONG} di zucchero -STR_QUANTITY_TOYS :{COMMA} giocattol{P o i} -STR_QUANTITY_SWEETS :{COMMA} sacc{P o hi} di caramelle +STR_QUANTITY_TOYS :{COMMA}{NBSP}giocattol{P o i} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}sacc{P o hi} di caramelle STR_QUANTITY_COLA :{VOLUME_LONG} di Cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} di zucchero filato STR_QUANTITY_BUBBLES :{COMMA} bollicin{P a e} @@ -167,12 +167,12 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}TUT # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passegger{P o i} -STR_BAGS :{COMMA} sacc{P o hi} -STR_TONS :{COMMA} tonnellat{P a e} -STR_LITERS :{COMMA} litr{P o i} -STR_ITEMS :{COMMA} oggett{P o i} -STR_CRATES :{COMMA} cass{P a e} +STR_PASSENGERS :{COMMA}{NBSP}passegger{P o i} +STR_BAGS :{COMMA}{NBSP}sacc{P o hi} +STR_TONS :{COMMA}{NBSP}tonnellat{P a e} +STR_LITERS :{COMMA}{NBSP}litr{P o i} +STR_ITEMS :{COMMA}{NBSP}oggett{P o i} +STR_CRATES :{COMMA}{NBSP}cass{P a e} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Blu scuro @@ -193,37 +193,37 @@ STR_COLOUR_GREY :Grigio STR_COLOUR_WHITE :Bianco # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA} hp -STR_UNITS_POWER_METRIC :{COMMA} hp -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonnellat{P a e} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonnellat{P a e} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} l -STR_UNITS_VOLUME_SHORT_SI :{COMMA} m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P e i} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr{P o i} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P e i} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P o i} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} piedi -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}piedi +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtro: @@ -250,6 +250,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra di STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra di scorrimento - scorre l'elenco a sinistra/destra STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolisce edifici etc. su un riquadro di terra. CTRL seleziona l'area diagonalmente. MAIUSC alterna fra costruzione e stima dei costi +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Mostra nascosti +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Mostra nascosti +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Mostra nascosti +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Mostra nascosti + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Mostra anche i tipi di veicolo ferroviario che sono stati nascosti +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Mostra anche i tipi di automezzo che sono stati nascosti +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Mostra anche i tipi di nave che sono stati nascosti +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Mostra anche i tipi di aeromobile che sono stati nascosti + # Query window STR_BUTTON_DEFAULT :{BLACK}Predefinito STR_BUTTON_CANCEL :{BLACK}Annulla @@ -363,7 +374,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Esci ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opzioni gioco -STR_SETTINGS_MENU_CONFIG_SETTINGS :Impostazioni avanzate +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Impostazioni STR_SETTINGS_MENU_SCRIPT_SETTINGS :Impostazioni IA e Script STR_SETTINGS_MENU_NEWGRF_SETTINGS :Impostazioni NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opzioni trasparenza @@ -918,10 +929,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari georgiano STR_GAME_OPTIONS_CURRENCY_IRR :Rial iraniano (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automezzi STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Seleziona il lato della strada sul quale devono guidare i veicoli STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Guida a sinistra @@ -975,6 +982,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Risoluzi STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Seleziona la risoluzione dello schermo da utilizzare STR_GAME_OPTIONS_RESOLUTION_OTHER :Altra +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Dimensione interfaccia +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Seleziona la dimensione deglie elementi dell'interfaccia grafica + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normale +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Doppia +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quadrupla + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Pacchetto grafico di base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Seleziona il pacchetto grafico di base da utilizzare STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} file mancant{P e i}/corrott{P o i} @@ -1068,6 +1082,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Molto pianeggia STR_TERRAIN_TYPE_FLAT :Pianeggiante STR_TERRAIN_TYPE_HILLY :Collinare STR_TERRAIN_TYPE_MOUNTAINOUS :Montuoso +STR_TERRAIN_TYPE_ALPINIST :Alpino STR_CITY_APPROVAL_PERMISSIVE :Permissivo STR_CITY_APPROVAL_TOLERANT :Tollerante @@ -1075,8 +1090,8 @@ STR_CITY_APPROVAL_HOSTILE :Ostile STR_WARNING_NO_SUITABLE_AI :{WHITE}Nessuna IA adatta disponibile...{}È possibile scaricare numerose IA tramite il sistema 'Contenuti online' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Impostazioni avanzate +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Impostazioni STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtro: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Espandi tutti STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Comprimi tutti @@ -1092,9 +1107,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Impostazione de STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categoria: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tipo: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Limita la lista sottostante usando i filtri predefiniti -STR_CONFIG_SETTING_RESTRICT_BASIC :Impostazioni di base -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Impostazioni avanzate -STR_CONFIG_SETTING_RESTRICT_ALL :Tutte le impostazioni (utenti esperti) +STR_CONFIG_SETTING_RESTRICT_BASIC :Di base (solo le impostazioni principali) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avanzate (la maggior parte delle impostazioni) +STR_CONFIG_SETTING_RESTRICT_ALL :Per esperti (tutte le impostazioni, incluse quelle speciali) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Impostazioni con un valore diverso da quello predefinito STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Impostazioni con un valore diverso di quello impostato a inizio partita @@ -1171,6 +1186,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Controlla l'att STR_CONFIG_SETTING_CITY_APPROVAL :Atteggiamento della città in merito alle modifiche: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Seleziona il modo in cui il rumore e i danni all'ambiente da parte delle compagnie possono influenzare la valutazione delle città e le successive operazioni di costruzione nell'area controllata +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altezza massima mappa: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Imposta l'altezza massima consentita per le montagne sulla mappa +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Impossibile impostare l'altezza massima della mappa a questo valore. Almeno una delle montagne della mappa è più alta STR_CONFIG_SETTING_AUTOSLOPE :Consenti rimodellazione terreno sotto a edifici, rotaie, etc.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Consente la rimodellazione del terreno sotto edifici e rotaie senza doverli rimuovere STR_CONFIG_SETTING_CATCHMENT :Consenti aree di copertura più realistiche: {STRING} @@ -1199,6 +1217,8 @@ STR_CONFIG_SETTING_INFLATION :Inflazione: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Abilita l'inflazione nell'economia, facendo crescere i costi leggermente più in fretta dei compensi STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Lunghezza massima dei ponti: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Lunghezza massima per la costruzione dei ponti +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altezza massima dei ponti: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Altezza massima per la costruzione dei ponti STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Lunghezza massima dei tunnel: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Lunghezza massima per la costruzione dei tunnel STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Costruzione delle industrie primarie: {STRING} @@ -1284,8 +1304,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Durata dei mess STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Durata di visualizzazione dei messaggi d'errore nelle finestre rosse. Note: alcuni messaggi d'errore (critici) non sono chiusi automaticamente anche allo scadere del tempo, ma devono essere chiusi manualmente STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} second{P 0 o i} STR_CONFIG_SETTING_HOVER_DELAY :Mostra suggerimenti: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Ritardo con cui i suggerimenti sono mostrati al passaggio del mouse su un elemento del'interfaccia. In alternativa, i messaggi possono essere attivati col pulsante destro del mouse -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Al passaggio del mouse dopo {COMMA} second{P 0 o i} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Ritardo con cui i suggerimenti sono mostrati al passaggio del mouse su un elemento del'interfaccia. In alternativa, i messaggi possono essere attivati col pulsante destro del mouse impostando questo valore a 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Al passaggio del mouse dopo {COMMA} millisecond{P 0 o i} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Al clic col pulsante destro STR_CONFIG_SETTING_POPULATION_IN_LABEL :Mostra la popolazione di una città nell'etichetta del nome: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Mosta la popolazione delle città nella loro etichetta sulla mappa @@ -1326,7 +1346,7 @@ STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Seleziona il la STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotazione heightmap: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Antioraria STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Oraria -STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Altitudine delle mappe pianeggiante: {STRING} +STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Altitudine delle mappe pianeggianti: {STRING} STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Uno o più riquadri sul lato nord non sono vuoti STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Uno o più riquadri su uno dei bordi non sono d'acqua @@ -1468,7 +1488,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Gli intervalli STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Determina se la manutenzione dei veicoli è controllata dal tempo trascorso dall'ultima manutenzione piuttosto che dalla riduzione dell'affidabilità di una certa frazione di quella massima STR_CONFIG_SETTING_SERVINT_TRAINS :Intervallo manutenzione predefinito treni: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Imposta l'intervallo di manutenzione predefinito per i nuovi veicoli ferroviari, quando non viene impostato nessun intervallo esplicito -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} giorn{P 0 o i}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}giorn{P 0 o i}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Disabilitato STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Intervallo manutenzione predefinito automezzi: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Imposta l'intervallo di manutenzione predefinito per i nuovi automezzi, quando non viene impostato nessun intervallo esplicito @@ -1608,9 +1628,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nessuna STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Moltiplicatore iniziale dimensioni metropoli: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Dimensione media delle metropoli in rapporto alle normali città all'inizio della partita -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aggiorna il grafo di distribuzione ogni {STRING} giorn{P 0:2 o i} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aggiorna il grafo di distribuzione ogni {STRING}{NBSP}giorn{P 0:2 o i} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Tempo fra due ricalcoli consecutivi del grafo delle rotte. Ad ogni ricalcolo vengono generati i piani per una sola componente del grafo. Ciò significa che una valore X per questa impostazione non causa il ricalcolo dell'intero grafo ogni X giorni, ma solo di una componente. Più breve l'intervallo impostato, più tempo la CPU consuma per calcolare il grafo. Più lungo l'intervallo, più a lungo bisogna attendere prima che la distribuzione abbia inizio su nuovi percorsi. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Impiega {STRING} giorn{P 0:2 o i} per il ricalcolo del grafo di distribuzione +STR_CONFIG_SETTING_LINKGRAPH_TIME :Impiega {STRING}{NBSP}giorn{P 0:2 o i} per il ricalcolo del grafo di distribuzione STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Tempo impiegato per il ricalcolo di una singola componente del grafo. All'avvio di un ricalcolo viene creato un thread che è mantenuto in esecuzione per il numero di giorni impostato. Più corto è l'intervallo impostato, più è probabile che il thread non termini in tempo. In questo caso, il gioco si interrompe attendendo la fine del thread (causando un rallentamento). Più l'intervallo impostato è lungo, più tempo è necessario affinché la distribuzione venga aggiornata quando le rotte cambiano. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :Manuale STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :Asimmetrica @@ -1739,7 +1759,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multigio STR_INTRO_GAME_OPTIONS :{BLACK}Opzioni di gioco STR_INTRO_HIGHSCORE :{BLACK}Punteggi migliori -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Impostazioni avanzate +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Impostazioni STR_INTRO_NEWGRF_SETTINGS :{BLACK}Impostazioni NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Contenuti online STR_INTRO_SCRIPT_SETTINGS :{BLACK}Impostazioni IA e Script @@ -1759,7 +1779,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Selezion STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Mostra le opzioni di gioco STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostra la tabella dei punteggi migliori -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Mostra le impostazioni avanzate +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostra le impostazioni STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostra le impostazioni NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Controlla la disponibilità di contenuti nuovi o aggiornati da scaricare STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostra le impostazioni delle IA e degli Script @@ -1799,6 +1819,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Compagn STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Bulldozer magico (rimuove industrie e oggetti fissi): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}I tunnel possono incrociarsi tra loro: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}I jet non si schiantano (frequentemente) nei piccoli aeroporti: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Modifica l'altezza massima della mappa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Modifica l'altezza massima delle montagne sulla mappa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Paesaggio 'temperato' STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Paesaggio 'sub-artico' STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Paesaggio 'sub-tropicale' @@ -2695,7 +2717,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno possedu STR_ABOUT_OPENTTD :{WHITE}Informazioni su OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright originale {COPYRIGHT} 1995 Chris Sawyer, Tutti i diritti riservati STR_ABOUT_VERSION :{BLACK}OpenTTD versione {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Il team OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Il team OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Salva partita @@ -2730,6 +2752,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Numero città: STR_MAPGEN_DATE :{BLACK}Data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Numero industrie: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altezza massima mappa: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Aumenta di uno l'altezza massima delle montagne sulla mappa +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Riduce di uno l'altezza massima delle montagne sulla mappa STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altezza delle nevi: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Sposta in su di uno l'altezza delle nevi perenni STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Sposta in giù di uno l'altezza delle nevi perenni @@ -2759,6 +2784,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome hei STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Dim.: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Cambia l'altezza massima della mappa STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Cambia l'altezza delle nevi perenni STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Cambia l'anno di inizio @@ -2872,14 +2898,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Parametr # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Allineamento sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Successivo -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Procede al successivo sprite normale, saltanto qualsiasi sprite speciale, di ricoloramento o carattere e tornando al primo se viene raggiunta la fine +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Procede al successivo sprite normale, saltanto qualsiasi sprite speciale, di ricoloramento o carattere e tornando al primo se viene raggiunto l'ultimo della lista STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Vai a STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Va allo sprite specificato. Se lo sprite non è uno sprite normale, procede allo sprite normale immediatamente successivo STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Precedente -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Procede al precedente sprite normale, saltanto qualsiasi sprite speciale, di ricoloramento o carattere e tornando all'ultimo se viene raggiunto l'inizio +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Procede al precedente sprite normale, saltanto qualsiasi sprite speciale, di ricoloramento o carattere e tornando all'ultimo se viene raggiunto il primo della lista STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Rappresentazione dello sprite corrente. L'allineamento viene ignorato in questa casella. -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sposta lo sprite, cambiando i posizionamenti X e Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Posizionamento X: {NUM}, Y: {NUM} +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sposta lo sprite, cambiando gli spiazzamenti X e Y +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reimposta posizione relativa +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reimposta gli spiazzamenti relativi attuali +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Posizione X: {NUM}, Y: {NUM} (assoluto) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Posizione X: {NUM}, Y: {NUM} (relativo) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Scegli sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Sceglie uno o più sprite da un qualsiasi punto dello schermo @@ -2991,8 +3020,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} consegnato STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (ancora richiest{G 1 o o a}) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (consegnat{G 1 o o a}) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}La città cresce ogni {ORANGE}{COMMA}{BLACK} giorn{P o i} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}La città cresce ogni {ORANGE}{COMMA}{BLACK} giorn{P o i} (finanziata) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}La città cresce ogni {ORANGE}{COMMA}{BLACK}{NBSP}giorn{P o i} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}La città cresce ogni {ORANGE}{COMMA}{BLACK}{NBSP}giorn{P o i} (finanziata) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}La città {RED}non{BLACK} sta crescendo STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Limite di rumore in città: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centra la visuale principale sulla posizione della città. CTRL+clic la mostra in una mini visuale. @@ -3052,7 +3081,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informazione STR_GOAL_QUESTION_CAPTION_WARNING :Avviso STR_GOAL_QUESTION_CAPTION_ERROR :Errore -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Annulla STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :No @@ -3071,6 +3100,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Ricomincia STR_GOAL_QUESTION_BUTTON_POSTPONE :Rimanda STR_GOAL_QUESTION_BUTTON_SURRENDER :Rinuncia STR_GOAL_QUESTION_BUTTON_CLOSE :Chiudi +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Sussidi @@ -3395,10 +3425,10 @@ STR_PURCHASE_INFO_ALL_BUT :Tutto tranne {C STR_PURCHASE_INFO_MAX_TE :{BLACK}Sforzo di trazione massimo: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Autonomia: {GOLD}{COMMA} riquadr{P o i} -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Elenco di selezione dei veicoli ferroviari - fare clic su un veicolo per informazioni -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Elenco selezione automezzi - fare clic su un veicolo per informazioni -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Elenco selezione navi - fare clic su una nave per informazioni -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Elenco selezione aeromobili - fare clic su un aeromobile per informazioni +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Elenco di selezione dei veicoli ferroviari - fare clic su un veicolo per informazioni. CTRL+clic mostra/nasconde il tipo di veicolo +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Elenco selezione automezzi - fare clic su un veicolo per informazioni. CTRL+clic mostra/nasconde il tipo di automezzo +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Elenco selezione navi - fare clic su una nave per informazioni. CTRL+clic mostra/nasconde il tipo di nave +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Elenco selezione aeromobili - fare clic su un aeromobile per informazioni. CTRL+clic mostra/nasconde il tipo di aeromobile STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Compra veicolo STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Compra veicolo @@ -3420,6 +3450,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Rinomina STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Rinomina il tipo di nave STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Rinomina il tipo di aeromobile +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Nascondi +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Nascondi +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Nascondi +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Nascondi + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Mostra +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Mostra +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Mostra +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Mostra + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Mosta/nasconde il tipo di veicolo ferroviario +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Mosta/nasconde il tipo di automezzo +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Mosta/nasconde il tipo di nave +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Mosta/nasconde il tipo di aeromobile + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Rinomina tipo di veicolo ferroviario STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Rinomina tipo automezzo STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Rinomina tipo di nave @@ -3524,6 +3569,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Automezzo STR_REPLACE_VEHICLE_SHIP :Nave STR_REPLACE_VEHICLE_AIRCRAFT :Aeromobile +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Veicoli in uso +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Colonna dei veicoli posseduti +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Veicoli disponibili +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Colonna dei veicoli disponibili per il rimpiazzo + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Selezionare il tipo di locomotiva da rimpiazzare STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Selezionare il nuovo modello di locomotiva che si desidera usare al posto di quello selezionato a sinistra @@ -3648,7 +3698,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacit STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Crediti di trasferimento: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Manutenzione ogni: {LTBLUE}{COMMA} giorni{BLACK} Ultima volta: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Manutenzione ogni: {LTBLUE}{COMMA}{NBSP}giorni{BLACK} Ultima volta: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Intervallo manutenzione: {LTBLUE}{COMMA}%{BLACK} Ultima il: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Aumenta l'intervallo di manutenzione di 10. CTRL+clic lo aumenta di 5. STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Riduce l'intervallo di manutenzione di 10. CTRL+clic lo riduce di 5. @@ -3884,8 +3934,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(ferma per {STR STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(viaggia per {STRING}, senza orario) STR_TIMETABLE_STAY_FOR :e sosta per {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :e viaggia per {STRING} -STR_TIMETABLE_DAYS :{COMMA} giorn{P o i} -STR_TIMETABLE_TICKS :{COMMA} tick +STR_TIMETABLE_DAYS :{COMMA}{NBSP}giorn{P o i} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick STR_TIMETABLE_TOTAL_TIME :{BLACK}Gli ordini richiedono complessivamente {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Gli ordini richiedono almeno {STRING} (non tutti i tempi specificati) @@ -4123,6 +4173,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Gli scav STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... già al livello del mare STR_ERROR_TOO_HIGH :{WHITE}... troppo alto STR_ERROR_ALREADY_LEVELLED :{WHITE}... già pianeggiante +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Il ponte sovrastante si troverebbe troppo in alto # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Impossibile cambiare il nome della compagnia... @@ -4149,7 +4200,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... trop STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... troppo vicino ad un'altra città STR_ERROR_TOO_MANY_TOWNS :{WHITE}... troppe città STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... non c'è altro spazio sulla mappa -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Alla città non è permesso costruire strade. È possibile abilitare la costruzione di strade in Impostazioni avanzate -> Economia -> Città +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Alla città non è permesso costruire strade. È possibile abilitare la costruzione di strade in Impostazioni -> Ambiente -> Città STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Lavori stradali in corso STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Impossibile eliminare la città...{}Una stazione o un deposito fa ancora riferimento alla città o un riquadro di proprietà della città non può essere rimosso STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... non ci sono spazi adeguati per una statua nel centro di questa città @@ -4173,6 +4224,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... una STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... può essere costruita solo al di sopra della linea delle nevi perenni STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... può essere costruita solo al di sotto della linea delle nevi perenni +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nessun luogo adatto per le industrie '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Modificare i parametri di generazione delle mappa in modo da ottenerne una migliore + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Impossibile costruire la stazione qui... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Impossibile costruire la stazione degli autobus qui... @@ -4309,6 +4363,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Bisogna STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Impossibile partire e finire nello stesso punto STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Le estremità del ponte non sono allo stesso livello STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Il ponte è troppo basso per il terreno +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Il ponte è troppo alto per il terreno STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Inizio e fine devono essere allineati STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... gli estremi del ponte devono trovarsi entrambi sul terreno STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... ponte troppo lungo @@ -4873,6 +4928,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (nascosto) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4908,8 +4964,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt index b16e952e4e..4e3919520c 100644 --- a/src/lang/japanese.txt +++ b/src/lang/japanese.txt @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}スク STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}スクロールバーです。リストを横にスクロールします STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}建物などを範囲指定して撤去します。Ctrlを押すと、範囲が斜めになります。Shiftを押しながら決定すると、費用を見積もります +# 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 STR_BUTTON_DEFAULT :{BLACK}デフォルト STR_BUTTON_CANCEL :{BLACK}キャンセル @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :OpenTTDを終 ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :ゲームオプション設定 -STR_SETTINGS_MENU_CONFIG_SETTINGS :拡張設定 +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :設定 STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/ゲームスクリプト設定 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRFの設定 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :透過表示設定 @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :グルジア STR_GAME_OPTIONS_CURRENCY_IRR :イラン リアル(IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}自動車 STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}車両の通行方向(右側/左側)を選択します STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :左側通行 @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}画面 STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}ゲーム画面の解像度を選択します STR_GAME_OPTIONS_RESOLUTION_OTHER :その他 +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}インターフェイスのサイズ +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}インターフェイス上の単位サイズを指定します + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :通常 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :2倍 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4倍 + STR_GAME_OPTIONS_BASE_GRF :{BLACK}基本グラフィックセット STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}使用するグラフィックセットを選択します STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}見つからないか破損しているファイルが{NUM}個あります @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :特に平地 STR_TERRAIN_TYPE_FLAT :平地 STR_TERRAIN_TYPE_HILLY :丘陵地 STR_TERRAIN_TYPE_MOUNTAINOUS :山岳地 +STR_TERRAIN_TYPE_ALPINIST :山脈地帯 STR_CITY_APPROVAL_PERMISSIVE :寛大 STR_CITY_APPROVAL_TOLERANT :寛容 @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :対立 STR_WARNING_NO_SUITABLE_AI :{WHITE}適切なAIがありません...{}AIは「オンライン項目を確認」からダウンロード可能です -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}拡張設定 +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}設定 STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}フィルター設定: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}全てを開く STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}全てを折りたたむ @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :会社設定( STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}カテゴリ: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}種類: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}定義されたフィルタでリストをフィルタリングします。 -STR_CONFIG_SETTING_RESTRICT_BASIC :基本設定 -STR_CONFIG_SETTING_RESTRICT_ADVANCED :詳細設定 -STR_CONFIG_SETTING_RESTRICT_ALL :拡張設定(全設定) +STR_CONFIG_SETTING_RESTRICT_BASIC :基本設定(重要な設定のみ表示) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :詳細設定(より多くの設定を表示) +STR_CONFIG_SETTING_RESTRICT_ALL :拡張設定(変なものも含めて全設定を表示) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :既定とは異なる設定 STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :新規ゲーム開始時とは異なる設定 @@ -1147,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :設定を有効 STR_CONFIG_SETTING_CITY_APPROVAL :地域の再編に対する町の姿勢: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :会社が街域で引き起こした騒音(主に空港)や環境破壊がどの程度、街での評価や同じ地域での更なる建設行為に影響するかを設定します +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :マップの最高高度: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :マップの最高地点の高さを設定します +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}マップの最高高さをこの値には設定出来ません。少なくとも1箇所以上この値より高い山があります。 STR_CONFIG_SETTING_AUTOSLOPE :建物/路線の自動地形追従: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :撤去を行わないで建物や路線がある土地の地形を変更することを可能にします。建物/路線は変更された地形に自動で追従します。 STR_CONFIG_SETTING_CATCHMENT :現実的な受入範囲: {STRING} @@ -1173,8 +1191,10 @@ STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :非隣接駅の STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :直接繋がっていない近隣の駅/停留所などを一つとして扱えるかを設定します。有効にした場合、新設する際にCtrl+クリックで統合先の選択が可能になります。 STR_CONFIG_SETTING_INFLATION :インフレ: {STRING} STR_CONFIG_SETTING_INFLATION_HELPTEXT :インフレを有効にします。経費の方が収入よりわずかに早く上昇していきます。 -STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :橋の最大長:{STRING} -STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :橋の最大長を設定できます +STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :橋梁の最大長:{STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :橋梁の最大長を設定できます +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :橋梁の高度: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :橋梁の建設出来る高さを設定出来ます STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :トンネルの最大長:{STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :トンネルの最大長を設定できます STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :一次産業の開設法: {STRING} @@ -1260,7 +1280,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :エラーメッ STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :赤地のエラーメッセージが表示されている時間を設定します。注: 致命的なエラーの場合はこの時間を経過しても自動では閉じません。 STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA}秒 STR_CONFIG_SETTING_HOVER_DELAY :ツールチップ表示: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :カーソルをインターフェイス要素に乗せた場合にツールチップが表示されるまでの時間を決定します。この設定でツールチップを右クリックで表示するようにもできます +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :カーソルをインターフェイス要素に乗せた場合にツールチップが表示されるまでの時間を決定します。"0"に設定するとツールチップは右クリックで表示されるようになります STR_CONFIG_SETTING_HOVER_DELAY_VALUE :マウスオーバー {COMMA}秒後 STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :右クリック STR_CONFIG_SETTING_POPULATION_IN_LABEL :街名ラベルに人口を表示: {STRING} @@ -1596,7 +1616,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :旅客がどの STR_CONFIG_SETTING_DISTRIBUTION_MAIL :郵便物の行先分配法: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :郵便がどのように行き先別に分配されるかを設定します。「対称」ではAからBへ向かう郵便とほぼ同数が、BからAに向かうようになります。 「非対称」ではそれぞれの方向に向かう郵便数は独立に決められます。「無効」では行き先別分配をしなくなります STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :装甲車輸送品の行先分配法: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :装甲車輸送品とは貴重品(温帯)、金(亜寒帯)、ダイヤモンド(亜熱帯)のことです(NewGRFの導入状況よっては変わることがあります)。これらの品目ががどのように行き先別に分配されるかを設定します。「対称」ではAからBへ向かう輸送品とほぼ同数が、BからAに向かうようになります。 「非対称」ではそれぞれの方向に向かう輸送品数は独立に決められます。「無効」では行き先別分配をしなくなります。温帯では銀行同士で貴重品のやりとりがあるので「対称」を選択しても問題ありませんが、金やダイヤモンドが銀行から鉱山に送られるようなことはないので、亜寒帯・亜熱帯では「非対称」か「無効」にすることをお勧めします。 +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :装甲車輸送品とは貴重品(温帯)、金(亜寒帯)、ダイヤモンド(亜熱帯)のことです(NewGRFの導入状況よっては変わることがあります)。これらの品目ががどのように行き先別に分配されるかを設定します。「対称」ではAからBへ向かう輸送品とほぼ同数が、BからAに向かうようになります。 「非対称」ではそれぞれの方向に向かう輸送品数は独立に決められます。「手動」では自動での行き先別分配をしなくなります。亜熱帯・温帯では銀行同士で貴重品のやりとりがあるので「対称」を選択しても問題ありませんが、金やダイヤモンドが銀行から鉱山に送られるようなことはないので、亜寒帯では「非対称」か「手動」にすることをお勧めします。 STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :一般貨物の行先分配法: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :一般的な貨物がどのように行き先別に分配されるかを設定します。「非対称」ではそれぞれの方向に向かう貨物数はプログラムの任意に決められます。「無効」では行き先別分配をしなくなります。 STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :分配精度: {STRING} @@ -1639,7 +1659,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :メートル法 STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :国際単位系 (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :距離単位: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :ゲーム中の長さをいずれの単位系で表すか決定します +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :ゲーム中の高度をいずれの単位系で表すか決定します STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :ヤード・ポンド法 (フィート(ft)) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :メートル法 (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :国際単位系 (m) @@ -1715,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}マル STR_INTRO_GAME_OPTIONS :{BLACK}基本設定 STR_INTRO_HIGHSCORE :{BLACK}ハイスコア -STR_INTRO_ADVANCED_SETTINGS :{BLACK}拡張設定 +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}設定 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRFの設定 STR_INTRO_ONLINE_CONTENT :{BLACK}オンラインコンテンツの確認 STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/ゲームスクリプトの設定 @@ -1735,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}地域 STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}ゲームの設定を表示します STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}ハイスコアを表示します -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}より細かいゲームの設定画面を表示します +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}設定を表示 STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRFの有効/無効化、各パラメータの設定ができます STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}公式オンラインコンテンツのデータベースからデータの確認・追加・更新ができます STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}AI/ゲームスクリプトの設定を行います @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}会社: STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}魔法のブルドーザー(産業拠点等、何でも撤去できる): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}トンネルの平面交差を許容: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}ジェット機の小型空港での墜落率を減少: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}マップの最高高度を変更: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}マップの最大高度 STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :温帯 STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :亜寒帯 STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :亜熱帯 @@ -2293,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}自動 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}列車庫を建設します(列車の購入・整備施設になります)。Shiftを押しながら決定すると費用の見積が出ます STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}線路に通過点を設置します。Ctrlを押しながら決定すると通過点同士を結合できます。Shiftを押しながら決定すると費用の見積が出ます STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}駅を建設します。Ctrlを押しながら決定すると離れた駅等と結合可能です。Shiftを押しながら決定すると費用の見積が出ます -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}鉄道信号を建設します。Ctrlで腕木式と色灯式を切り替えられます。{}ドラックして決定するとその区間に一定間隔で信号が配置されます。このときCtrlを押しておくと、その先分岐に行き着くまで信号を配置していきます。{}Ctrl+クリックで信号種類を選ぶウィンドウが出ます(「信号のGUIを使用」設定オフ時のみ)。Shiftを押しながら決定すると費用の見積が出ます +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}鉄道信号を建設します。Ctrlで腕木式と色灯式を切り替えられます。{}ドラックして決定するとその区間に一定間隔で信号が配置されます。このときCtrlを押しておくと、その先分岐か信号に行き着くまで連続配置します。{}Ctrl+クリックで信号種類を選ぶウィンドウが出ます(「信号のGUIを使用」設定オフ時のみ)。Shiftを押しながら決定すると費用の見積が出ます STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}鉄道橋を建設します。Shiftを押しながら決定すると費用の見積が出ます STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}鉄道トンネルを建設します。Shiftを押しながら決定すると費用の見積が出ます STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}線路・信号・駅・中継駅の建設/撤去を切り替えます。{}Ctrlを押したままにすると駅・通過点の撤去時に線路ごと撤去されます @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :社有地 STR_ABOUT_OPENTTD :{WHITE}OpenTTDについて STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}オリジナル版権{COPYRIGHT} 1995 Chris Sawyer All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD バージョン {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}ゲームを保存 @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}× STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}街数: STR_MAPGEN_DATE :{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}雪線を下げる @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}ハイ STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}サイズ: 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}開始年の変更 @@ -2842,14 +2868,13 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}スプライト{COMMA} 配列 ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}次のスプライト -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}次のノーマルスプライトに進みます。疑似/リカラー/フォントスプライトはスキップし、終端まで行を送ります +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}次のノーマルスプライトに進みます。始端と終端は連続しているものとみなし、疑似/リカラー/フォントスプライトはスキップします STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}スプライトへ飛ぶ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}所定のスプライトへ飛びます。指定のスプライトがノーマルスプライトでなければ、次のノーマルスプライトに進みます STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}前のスプライト -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}前のノーマルスプライトに戻ります。疑似/リカラー/フォントスプライトはスキップし、始端まで行を送ります +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}前のノーマルスプライトに戻ります。始端と終端は連続しているものとみなし、疑似/リカラー/フォントスプライトはスキップします STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}現在選択されているスプライトの代表絵を示します。この配列はスプライトを描画するときには無視されます STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}X・Yオフセットを変更し、スプライトを移動します -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Xオフセット: {NUM}, Yオフセット: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}スプライトを選ぶ STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}画面内からスプライトを選びます @@ -2956,8 +2981,8 @@ STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}人口: STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}旅客数(先月): {ORANGE}{COMMA}人{BLACK} 最大: {ORANGE}{COMMA}人 STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}郵便袋(先月): {ORANGE}{COMMA}袋{BLACK} 最大: {ORANGE}{COMMA}袋 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_WINTER :{ORANGE}{STRING}{BLACK} が冬に必要です +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_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} は配送されています STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG} {RED}(更なる配送が必要) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG} {GREEN}(需要充足) @@ -3022,7 +3047,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :情報 STR_GOAL_QUESTION_CAPTION_WARNING :警告 STR_GOAL_QUESTION_CAPTION_ERROR :エラー -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :キャンセル STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :いいえ @@ -3041,6 +3066,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :再起動 STR_GOAL_QUESTION_BUTTON_POSTPONE :延期 STR_GOAL_QUESTION_BUTTON_SURRENDER :あきらめる STR_GOAL_QUESTION_BUTTON_CLOSE :閉じる +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}助成金 @@ -3365,10 +3391,10 @@ STR_PURCHASE_INFO_ALL_BUT :{CARGO_LIST}を STR_PURCHASE_INFO_MAX_TE :{BLACK}最大牽引力: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}航続距離: {GOLD}{COMMA} タイル -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列車リスト - 個々の情報を見るには列車をクリックします -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}車両リスト - 個々の情報を見るには車両をクリックします -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}船舶リスト - 個々の情報を見るには船舶をクリックします -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}航空機リスト - 個々の情報を見るには航空機をクリックします +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列車リスト - 個々の情報を見るには列車をクリックします。Ctrl+クリックでその列車種の表示/非表示を切り替えます +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}車両リスト - 個々の情報を見るには車両をクリックします。Ctrl+クリックでその車両種の表示/非表示を切り替えます +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}船舶リスト - 個々の情報を見るには船舶をクリックします。Ctrl+クリックでその船舶機種の表示/非表示を切り替えます +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}航空機リスト - 個々の情報を見るには航空機をクリックします。Ctrl+クリックでその航空機種の表示/非表示を切り替えます STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}列車を購入 STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}車両を購入 @@ -3390,6 +3416,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}車両 STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}指定の列車機種の非表示/表示を切り替えます +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}指定の車両機種の非表示/表示を切り替えます +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}指定の船舶機種の非表示/表示を切り替えます +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}指定の航空機種の非表示/表示を切り替えます + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}列車の機種名を変更 STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}車両の機種名を変更 STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}船舶の機種名を変更 @@ -3443,7 +3484,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}道路 STR_DEPOT_CLONE_SHIP :{BLACK}船舶を複製 STR_DEPOT_CLONE_AIRCRAFT :{BLACK}航空機を複製 -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}列車を複製します。このボタンを押してから列車庫内/外の列車をクリックして下さい。Ctrl+クリックすると、複製相手は元列車と指令を共有します。Shift+クリックで金額の概算が出ます +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}牽引車両も含め、当該の列車を複製します。このボタンを押してから列車庫内/外の列車をクリックして下さい。Ctrl+クリックすると、複製相手は元列車と指令を共有します。Shift+クリックで金額の概算が出ます STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}車両を複製します。このボタンを押してから車庫内/外の車両をクリックして下さい。Ctrl+クリックすると、複製相手は元車両と指令を共有します。Shift+クリックで金額の概算が出ます STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}船舶を複製します。このボタンを押してから造船所内/外の船舶をクリックして下さい。Ctrl+クリックすると、複製相手は元船舶と指令を共有します。Shift+クリックで金額の概算が出ます STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}航空機を複製します。このボタンを押してから格納庫内/外の航空機をクリックして下さい。Ctrl+クリックすると、複製相手は元航空機と指令を共有します。Shift+クリックで金額の概算が出ます @@ -3494,6 +3535,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :車両 STR_REPLACE_VEHICLE_SHIP :船舶 STR_REPLACE_VEHICLE_AIRCRAFT :航空機 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}使用中の輸送機器 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}現在使用している輸送機器の一覧です +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}利用可能な輸送機器 +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}置換に使用可能な輸送機器の一覧です + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}置換対象を選択 STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}左で選択した輸送機器を置き換える輸送機器を選択します @@ -4093,6 +4139,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}ここ STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}すでに海水位です STR_ERROR_TOO_HIGH :{WHITE}高すぎます STR_ERROR_ALREADY_LEVELLED :{WHITE}すでに平坦になっています +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}地形を変更すると上を走る橋梁を支えられなくなります # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}会社名を変更できません @@ -4119,7 +4166,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}マッ STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}他の街に近すぎます STR_ERROR_TOO_MANY_TOWNS :{WHITE}街数の制限を超えています STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}マップに空きスペースがありません -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}この街は自動では道路を建設しません。詳細設定の「経済->街」で道路の建設を許可できます +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}この街は自動では道路を建設しません。「設定→環境→街」から道路の建設を許可できます STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}道路補修工事中です STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}街を削除できません{}この街名を参照する停留施設・車庫か、街が所有するタイルが除去できません STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}街の中心部に像を建てるのに適した場所がありません @@ -4143,6 +4190,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}雪線 STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}降雪線より上にのみ建設できます STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}降雪線より下にのみ建設できます +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}産業「{STRING}」を建設するのに適切な土地がありません +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}よりよいマップを作成するため、生成パラメーターを変更します + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}ここには駅を建設できません STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}ここにはバス停を建設できません @@ -4279,6 +4329,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}先に STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}開始点と終了点が同じです STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}橋端が同じ高さではありません STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}橋が低く、途中の起伏を越えられません +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}橋が地面から高すぎます STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}橋は直線である必要があります STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}橋の先端は両方地面である必要があります STR_ERROR_BRIDGE_TOO_LONG :{WHITE}橋が長すぎます @@ -4843,6 +4894,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (非表示) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4930,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/korean.txt b/src/lang/korean.txt index ddba957328..9d3dec0d3c 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :{G=f}탄산음 # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :승객 {COMMA}명 +STR_QUANTITY_PASSENGERS :승객{NBSP}{COMMA}명 STR_QUANTITY_COAL :석탄 {WEIGHT_LONG} -STR_QUANTITY_MAIL :우편 {COMMA}자루 +STR_QUANTITY_MAIL :{G=f}우편 {COMMA}{NBSP}자루 STR_QUANTITY_OIL :석유 {VOLUME_LONG} -STR_QUANTITY_LIVESTOCK :가축 {COMMA}마리 -STR_QUANTITY_GOODS :상품 {COMMA}상자 +STR_QUANTITY_LIVESTOCK :{G=f}가축 {COMMA}{NBSP}마리 +STR_QUANTITY_GOODS :{G=f}상품 {COMMA}{NBSP}상자 STR_QUANTITY_GRAIN :곡물 {WEIGHT_LONG} STR_QUANTITY_WOOD :목재 {WEIGHT_LONG} STR_QUANTITY_IRON_ORE :철광석 {WEIGHT_LONG} STR_QUANTITY_STEEL :철 {WEIGHT_LONG} -STR_QUANTITY_VALUABLES :귀금속 {COMMA}자루 +STR_QUANTITY_VALUABLES :{G=f}귀금속 {COMMA}{NBSP}자루 STR_QUANTITY_COPPER_ORE :구리 광석 {WEIGHT_LONG} STR_QUANTITY_MAIZE :옥수수 {WEIGHT_LONG} STR_QUANTITY_FRUIT :과일 {WEIGHT_LONG} -STR_QUANTITY_DIAMONDS :다이아몬드 {COMMA}자루 +STR_QUANTITY_DIAMONDS :{G=f}다이아몬드 {COMMA}{NBSP}자루 STR_QUANTITY_FOOD :식품 {WEIGHT_LONG} STR_QUANTITY_PAPER :종이 {WEIGHT_LONG} -STR_QUANTITY_GOLD :금 {COMMA}자루 +STR_QUANTITY_GOLD :{G=f}금 {COMMA}{NBSP}자루 STR_QUANTITY_WATER :물 {VOLUME_LONG} STR_QUANTITY_WHEAT :밀 {WEIGHT_LONG} STR_QUANTITY_RUBBER :고무 {VOLUME_LONG} STR_QUANTITY_SUGAR :설탕 {WEIGHT_LONG} -STR_QUANTITY_TOYS :장난감 {COMMA}상자 -STR_QUANTITY_SWEETS :사탕 {COMMA}자루 +STR_QUANTITY_TOYS :{G=f}장난감 {COMMA}{NBSP}상자 +STR_QUANTITY_SWEETS :{G=f}사탕 {COMMA}{NBSP}자루 STR_QUANTITY_COLA :콜라 {VOLUME_LONG} STR_QUANTITY_CANDYFLOSS :솜사탕 {WEIGHT_LONG} STR_QUANTITY_BUBBLES :거품 {COMMA}개 @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}X STR_ABBREV_ALL :{TINY_FONT}모두 # 'Mode' of transport for cargoes -STR_PASSENGERS :{G=m}승객 {COMMA}명 -STR_BAGS :{G=f}{COMMA} 자루 -STR_TONS :{G=m}{COMMA} 톤 -STR_LITERS :{G=f}{COMMA} 리터 -STR_ITEMS :{G=m}{COMMA} 마리 -STR_CRATES :{G=f}{COMMA} 상자 +STR_PASSENGERS :{G=m}승객 {COMMA}{NBSP}명 +STR_BAGS :{G=f}{COMMA}{NBSP}자루 +STR_TONS :{G=m}{COMMA}{NBSP}톤 +STR_LITERS :{G=f}{COMMA}{NBSP}리터 +STR_ITEMS :{G=m}{COMMA}{NBSP}마리 +STR_CRATES :{G=f}{COMMA}{NBSP}상자 # Colours, do not shuffle STR_COLOUR_DARK_BLUE :어두운 파랑 @@ -192,36 +192,36 @@ STR_COLOUR_GREY :회색 STR_COLOUR_WHITE :흰색 # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}km/h -STR_UNITS_VELOCITY_SI :{COMMA}m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}마력 -STR_UNITS_POWER_METRIC :{COMMA}마력 -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}마력 +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}마력 +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} 톤 -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}톤 -STR_UNITS_WEIGHT_LONG_SI :{COMMA}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}톤 +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}톤 +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}갤런 -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}갤런 +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} 갤런 -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}리터 -STR_UNITS_VOLUME_LONG_SI :{COMMA}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}갤런 +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}리터 +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} 파운드중 -STR_UNITS_FORCE_METRIC :{COMMA} kg중 +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}파운드중 +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kg중 STR_UNITS_FORCE_SI :{COMMA}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}피트 +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m STR_UNITS_HEIGHT_SI :{COMMA}m # Common window strings @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}스크 STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}스크롤 바 - 목록을 좌/우로 스크롤하세요. STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}직사각형 모양의 영역에 있는 건물과 땅 등을 부숩니다. CTRL 키를 누른 채로 사용하면 대각선 영역 선택이 가능합니다. SHIFT 키를 누른채로 사용하면 예상 가격을 볼 수 있습니다. +# 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 STR_BUTTON_DEFAULT :{BLACK}기본값 STR_BUTTON_CANCEL :{BLACK}취소 @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :게임 종료 ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :게임 옵션 -STR_SETTINGS_MENU_CONFIG_SETTINGS :고급 설정 +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :설정 STR_SETTINGS_MENU_SCRIPT_SETTINGS :인공지능/게임 스크립트 설정 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF 설정 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :투명 설정 @@ -569,7 +580,7 @@ STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}화물 STR_GRAPH_CARGO_PAYMENT_RATES_X_LABEL :{TINY_FONT}{BLACK}통과시간 STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}10 단위(1만 리터)의 화물을 20칸 거리만큼 운송할 때의 운송비 지급량 STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}모두 사용 -STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}모두 사용 안함 +STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}모두 사용 안 함 STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}화물 운송단가 비율 그래프에서 모든 화물을 표시 STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}화물 운송단가 비율 그래프에서 모든 화물을 표시 안 함 STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}이 화물에 대한 그래프 켜기/끄기 @@ -743,7 +754,7 @@ STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STR STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING} STR_SMALLMAP_COMPANY :{TINY_FONT}{COMPANY} STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} -STR_SMALLMAP_DISABLE_ALL :{BLACK}모두 사용 안함 +STR_SMALLMAP_DISABLE_ALL :{BLACK}모두 사용 안 함 STR_SMALLMAP_ENABLE_ALL :{BLACK}모두 사용 STR_SMALLMAP_SHOW_HEIGHT :{BLACK}고도 표시 STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}지도 상의 모든 산업시설을 숨깁니다. @@ -796,7 +807,7 @@ STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLAC STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}운송 회사 합병! STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} 회사가 {STRING} 회사에게 {CURRENCY_LONG}의 가격으로 인수합병되었습니다! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}파산! -STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING}가 채권자에 의해 파산되고 모든 자산이 팔렸습니다! +STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} 회사가 채권자에 의해 모든 자산이 팔려 파산하였습니다! STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}새로운 운송회사 등장! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING}{G 0 "이" "가"} {TOWN}에서 공사를 시작했습니다! STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING}의 관리권이 {STRING}(으)로 넘어갔습니다! @@ -839,12 +850,12 @@ STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} : 차량이 낡았습니다. STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} : 차량이 매우 낡았습니다. STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}{VEHICLE} : 차량이 매우 낡아 교체가 시급합니다 -STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE} : 다음 목적지로의 경로를 찾을 수 없습니다. +STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE} : 다음 목적지로 가는 경로를 찾을 수 없습니다. STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} : 아직 다음 목적지에 도착하지 못했습니다. STR_NEWS_VEHICLE_IS_UNPROFITABLE :{WHITE}{VEHICLE}의 작년 수익이 {CURRENCY_LONG} 입니다. STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}거리가 너무 멀어서 {VEHICLE}이 다음 목적지에 도착할 수 없습니다 -STR_NEWS_ORDER_REFIT_FAILED :{WHITE}경로상에 계획된 개조에 실패하여 {VEHICLE}{P "가" "이"} 운행을 멈췄습니다. +STR_NEWS_ORDER_REFIT_FAILED :{WHITE}경로 상에 있던 개조에 실패하여 {VEHICLE}의 운행을 멈췄습니다. STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}{VEHICLE}의 자동 교체에 실패하였습니다{}{STRING} STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}신형 {STRING}{G 0 "을" "를"} 사용할 수 있습니다! @@ -864,7 +875,7 @@ STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLAC STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}{0:STRING}에게 보조금 지급!{}{}{2:STRING}에서 {3:STRING}까지의 {1:STRING} 수송에 대해 3배의 추가 보조금을 내년까지 받게 됩니다! STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}{0:STRING}에게 보조금 지급!{}{}{2:STRING}에서 {3:STRING}까지의 {1:STRING} 수송에 대해 4배의 추가 보조금을 내년까지 받게 됩니다! -STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}{TOWN}의 교통 혼잡!{}{}{STRING}에 의한 도로 보수공사 프로그램이 운전자들에게 6개월간의 고통을 가져다 줄 것입니다! +STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}{TOWN}의 교통 혼잡!{}{}{STRING}에 의해 실시된 도로 보수공사 프로그램으로 인해 6개월 동안 운전자들이 불편을 겪을 것입니다! STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}독점 수송! STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}{0:TOWN} 지역 당국이 {1:STRING}과 1년 간의 수송 독점권 계약을 체결하였습니다! @@ -876,7 +887,7 @@ STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}이 장 STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}외부 화면에 저장된 장소로 이동합니다. # Game options window -STR_GAME_OPTIONS_CAPTION :{WHITE}게임 설정 +STR_GAME_OPTIONS_CAPTION :{WHITE}게임 기본 설정 STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}화폐 단위 STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}화폐 단위 선택 @@ -917,10 +928,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :그루지야 STR_GAME_OPTIONS_CURRENCY_IRR :이란 리알 (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}차량 통행 방식 STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}차량 통행 방법 선택 STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :좌측통행 @@ -957,7 +964,7 @@ STR_GAME_OPTIONS_AUTOSAVE_FRAME :{BLACK}자동 STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}게임 자동 저장 간격을 선택 ############ start of autosave dropdown -STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_OFF :사용 안함 +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_OFF :사용 안 함 STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_1_MONTH :매달 STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_3_MONTHS :3개월마다 STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_6_MONTHS :6개월마다 @@ -974,6 +981,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}화면 STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}사용하실 화면 해상도를 선택하세요. STR_GAME_OPTIONS_RESOLUTION_OTHER :{G=f}기타 +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}인터페이스 크기 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}인터페이스의 크기를 선택하십시오. + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :보통 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :2배 크기 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4배 크기 + STR_GAME_OPTIONS_BASE_GRF :{BLACK}기본 그래픽 세트 STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}사용하실 기본 그래픽을 선택하세요. STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM}개 파일 손실 @@ -1008,7 +1022,7 @@ STR_CURRENCY_SUFFIX :{LTBLUE}접미 STR_CURRENCY_SET_CUSTOM_CURRENCY_SUFFIX_TOOLTIP :{BLACK}사용자 화폐 단위 뒤에 붙는 문구를 설정하십시오. STR_CURRENCY_SWITCH_TO_EURO :{LTBLUE}유로화로 전환: {ORANGE}{NUM} -STR_CURRENCY_SWITCH_TO_EURO_NEVER :{LTBLUE}유로화로 전환: {ORANGE}안함 +STR_CURRENCY_SWITCH_TO_EURO_NEVER :{LTBLUE}유로화로 전환: {ORANGE}전환하지 않음 STR_CURRENCY_SET_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}유로화(€) 전환 연도를 설정하십시오. STR_CURRENCY_DECREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}유로화(€) 전환 연도를 앞으로 당깁니다. STR_CURRENCY_INCREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}유로화(€) 전환 연도를 늦춥니다. @@ -1067,6 +1081,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :매우 평탄 STR_TERRAIN_TYPE_FLAT :평탄함 STR_TERRAIN_TYPE_HILLY :언덕 STR_TERRAIN_TYPE_MOUNTAINOUS :산 +STR_TERRAIN_TYPE_ALPINIST :매우 험한 산지 STR_CITY_APPROVAL_PERMISSIVE :신경 안씀 STR_CITY_APPROVAL_TOLERANT :신경 씀 @@ -1074,8 +1089,8 @@ STR_CITY_APPROVAL_HOSTILE :싫어함 STR_WARNING_NO_SUITABLE_AI :{WHITE}사용할 수 있는 인공지능이 없습니다...{}'온라인 콘텐츠' 시스템을 통해 인공지능을 다운로드받을 수 있습니다. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}고급 설정 +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}설정 STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}검색할 문자열: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}모두 펼치기 STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}모두 접기 @@ -1091,9 +1106,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :회사 설정 ( STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}분류: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}종류: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}미리 지정한 검색어에 해당하는 설정 목록에 표시하도록 할 수 있습니다. -STR_CONFIG_SETTING_RESTRICT_BASIC :기본 설정 -STR_CONFIG_SETTING_RESTRICT_ADVANCED :고급 설정 -STR_CONFIG_SETTING_RESTRICT_ALL :전문가 설정 / 모든 설정 +STR_CONFIG_SETTING_RESTRICT_BASIC :기본 설정 (일부 중요한 설정만 보임) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :고급 설정 (대부분의 설정을 보여줌) +STR_CONFIG_SETTING_RESTRICT_ALL :전문가 설정 / 모든 설정 (모든 설정을 보여줌) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :기본값과 다른 값을 가진 설정 STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :이 게임 내에서 다른 값을 가진 설정 @@ -1126,7 +1141,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :가운데 STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :오른쪽 STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :최대 초기 대출금: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :한 회사가 최대한 빌릴 수 있는 (계좌에 인플레이션을 고려하지 않고 들어오는) 대출금의 양을 조절할 수 있습니다. +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :한 회사가 최대한 빌릴 수 있는 대출금의 양을 조절할 수 있습니다. (여기서 설정한 값은 인플레이션에 의한 효과를 적용하지 않은 값입니다.) STR_CONFIG_SETTING_INTEREST_RATE :대출 금리: {STRING} STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :대출 금리입니다. 인플레이션 설정이 켜져있는 경우 인플레이션의 영향을 받습니다. STR_CONFIG_SETTING_RUNNING_COSTS :유지비: {STRING} @@ -1148,6 +1163,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :블록이나 STR_CONFIG_SETTING_CITY_APPROVAL :지역 개발에 대한 도시의 태도: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :회사가 유발하는 소음과 환경 파괴가 회사에 대한 도시의 평가치와 향후 해당 지역에서의 건설 행동에 얼마나 영향을 미칠지 선택하십시오. +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :최대 지형 높이: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :지도에 생성되는 산이 가질 수 있는 최대 높이를 설정합니다. +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}이 값을 최대 지형 높이로 설정할 수 없습니다. 이 값보다 고도가 높은 산이 최소 한 개 이상 존재합니다. STR_CONFIG_SETTING_AUTOSLOPE :건물, 트랙 등의 하부 지형 편집 허용: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :건물이나 도로/선로 등을 제거하지 않고도 하부의 지형을 편집할 수 있게 허용합니다. STR_CONFIG_SETTING_CATCHMENT :더 현실적인 역세권 지정: {STRING} @@ -1173,9 +1191,11 @@ STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :─ 모양의 STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :역이 같은 방향으로 붙어있지 않아도 같은 이름의 역 짓기 허용: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :이미 존재하는 역을 직접 건드리지 않고도 역의 일부분을 새로 추가/확장하는 것을 허용합니다. 인접한 칸에 기존과 다른 새로운 역을 놓을 때에는 CTRL+클릭해야 합니다. STR_CONFIG_SETTING_INFLATION :인플레이션(화폐 가치 하락) 사용: {STRING} -STR_CONFIG_SETTING_INFLATION_HELPTEXT :비용이 지불하는 것보다 약간 더 빠르게 성장하고 있는 경제가 되면 인플레이션을 활성화합니다. +STR_CONFIG_SETTING_INFLATION_HELPTEXT :경제에 인플레이션 효과를 적용합니다. 벌어들이는 수익보다 지출하는 경비가 조금 더 빨리 상승하게 됩니다. STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :다리의 최대 건설 길이: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :다리의 최대 길이를 제한할 수 있습니다. +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :최대 다리 건설 높이: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :다리를 건설할 수 있는 최대 높이입니다. STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :터널의 최대 길이: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :터널의 최대 길이를 제한할 수 있습니다. STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :1차 산업시설 건설 방법: {STRING} @@ -1194,7 +1214,7 @@ STR_CONFIG_SETTING_SIGNALSIDE_DRIVING_SIDE :진행 방향 STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :오른쪽에 STR_CONFIG_SETTING_SHOWFINANCES :연말에 자동으로 재정 창을 띄움: {STRING} STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :이 옵션을 켜면 회사의 재정 상태를 확인하기 쉽도록 매년 말에 재정 창이 자동으로 뜹니다. -STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :새로 지정하는 경로는 기본적으로 '직통'으로 처리: {STRING} +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :새로 지정하는 경로는 기본적으로 '직행'으로 처리: {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :일반적으로 차량은 경로 상에 있는 모든 역에 정차하게 되어있습니다. 이 옵션을 켜면 차량이 마지막 목적지까지 정차없이 모든 역을 통과할 것입니다. 이 옵션은 새로 경로를 지정하는 차량에만 적용되는 점을 알아두십시오. 하지만 각 차량의 경로는 두 가지 방법 중에 원하는 대로 다시 설정할 수 있습니다. STR_CONFIG_SETTING_STOP_LOCATION :새로 지정하는 역 정차 경로는 기본적으로 역의 {STRING}에 정지하도록 설정 STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :열차가 기본적으로 정거장의 어느 위치에 정차할 것인지를 설정합니다. '가까운 쪽'은 역에 진입하는 곳과 가까운 곳에, '중간'은 역 중앙에, '먼쪽'은 진입하는 곳과 먼 곳에 정차합니다. 이 옵션은 새로 경로를 지정하는 차량에만 적용되는 점을 알아두십시오. 하지만 각 차량의 경로는 두 가지 방법 중에 원하는 대로 다시 설정할 수 있습니다. @@ -1211,7 +1231,7 @@ STR_CONFIG_SETTING_BRIBE :지역 당국 STR_CONFIG_SETTING_BRIBE_HELPTEXT :회사가 지역 도시 당국에 뇌물을 주는 것을 허용합니다. 뇌물 행위가 적발되는 경우, 회사는 해당 도시에서 6개월간 아무 행동도 할 수 없습니다. STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :독점 운송권 구입 허용: {STRING} STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :한 회사가 어떤 도시의 독점수송권을 구매하면, 그 도시에 있는 상대편의 역에서는 그 해 동안 (승객을 포함한) 그 어떠한 화물도 받을 수 없습니다. -STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :도시 상업 건물 건설에 투자하는 행위 허용: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :도시 상업 건물 건설에 투자하는 것을 허용: {STRING} STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :회사가 도시가 새로운 건물에 투자할 수 있도록 자금을 주는 것을 허용합니다. STR_CONFIG_SETTING_ALLOW_FUND_ROAD :도시 도로 보수공사 시행을 허용: {STRING} STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :도로 기반의 수송 체계를 갖추고 있는 다른 회사를 방해하기 위해 해당 도시가 도로 재건축을 시작하도록 회사가 도시에 돈을 지불하는 행위를 허용합니다. @@ -1262,7 +1282,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :오류 메시 STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA}초 동안 STR_CONFIG_SETTING_HOVER_DELAY :도움말 보이기: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :마우스를 올려놓았을 때 도움말이 뜨는데 걸리는 시간을 설정합니다. 마우스 오른쪽 클릭으로 바로 뜨도록 할 수도 있습니다. -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :마우스를 {COMMA}초간 올려놓기 +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :마우스를 {COMMA}밀리초 동안 올려놓기 (1밀리초 = 1/1000초) STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :마우스 오른쪽 클릭 STR_CONFIG_SETTING_POPULATION_IN_LABEL :도시 이름 옆에 도시의 인구 수를 표시함: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :도시 이름 옆에 도시의 인구 수를 표시합니다. @@ -1298,7 +1318,7 @@ STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :지도의 나 STR_CONFIG_SETTING_TREE_PLACER_NONE :없음 STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :오리지널 STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :향상됨 -STR_CONFIG_SETTING_ROAD_SIDE :자동차/전차: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE :자동차 통행 방향: {STRING} STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :통행방향을 선택하세요. STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :높이맵 회전: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :반시계방향 @@ -1445,7 +1465,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :신뢰도에 STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :차량 점검 방식을 "마지막 점검 이후 지난 시간 (또는) 최대 신뢰도에 대한 차량 신뢰도의 일정 퍼센트 하락 여부" 중에 하나로 선택합니다. STR_CONFIG_SETTING_SERVINT_TRAINS :열차에 대한 기본 점검 기준: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :열차에 따로 점검 기간이 설정되어있지 않은 경우에 사용할 기본 점검 기간을 설정합니다. -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} 일/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}일/% STR_CONFIG_SETTING_SERVINT_DISABLED :사용 안 함 STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :차량에 대한 기본 점검 기준: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :차량 정비 설정을 하지 않은 경우, 기본값으로 사용할 정비 주기를 설정합니다. @@ -1474,9 +1494,9 @@ STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE :산업시설 STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :산업시설이 폐쇄될 때 메시지로 알려줍니다. STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :경제 변화: {STRING} STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :거시적인 경제에 변화가 생기면 뉴스 메시지로 알려줍니다. -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :내 회사가 달성한 산업시설의 생산량 변동: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :내 회사에 의한 산업시설의 생산량 변동: {STRING} STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :내 회사가 수송하는 산업시설의 생산량이 변하면 소식으로 알려줍니다. -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :경쟁자에 의한 산업시설의 생산 변화: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :경쟁사에 의한 산업시설의 생산량 변동: {STRING} STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :경쟁사가 수송하고 있는 산업 시설의 생산량이 변하면 메시지로 알려줍니다. STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :다른 산업 생산물 변화: {STRING} STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :아무도 수송하지 않는 산업시설의 생산량이 변하면 소식으로 알려줍니다. @@ -1561,10 +1581,10 @@ STR_CONFIG_SETTING_SOFT_LIMIT :고정하지 STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :새로운 창을 열었을 때 공간 확보를 위해 열림 상태를 고정시키지 않은 창이 열려있을 수 있는 개수를 설정합니다. STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :제한 없음 -STR_CONFIG_SETTING_ZOOM_MIN :최대 줌 인 배율: {STRING} -STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :게임 화면의 최대 줌 인 배율을 설정합니다. 줌 인 배율이 커질 수록 메모리가 더 필요합니다. -STR_CONFIG_SETTING_ZOOM_MAX :최대 줌 아웃 배율: {STRING} -STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :게임 화면의 최대 줌 아웃 배율을 설정합니다. 줌 아웃 배율이 커질 수록 게임이 버벅거릴 수 있습니다. +STR_CONFIG_SETTING_ZOOM_MIN :최대 확대 수준: {STRING} +STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :게임 화면의 최대 확대 수준을 설정합니다. 화면을 더 크게 확대할 수록 더 많은 메모리가 필요합니다. +STR_CONFIG_SETTING_ZOOM_MAX :최대 축소 수준: {STRING} +STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :게임 화면의 최대 축소 수준을 설정합니다. 화면을 더 작게 축소할 수록 게임이 더 버벅거리게 될 수도 있습니다. STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :기본값 @@ -1587,7 +1607,7 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :게임을 시 STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :분배 상태를 매 {STRING}일 마다 갱신 STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :다음 연결 상태를 재계산하기까지의 시간입니다. 한 번의 재계산할 때마다 그래프의 한 요소를 위한 계획을 계산합니다. 이는 이 설정의 X값에 따라 모든 그래프가 매 X일마다 갱신되는 것이 아니라는 것을 뜻합니다. 일부 요소만 재계산된다는 뜻입니다. 값이 작으면 작을 수록 CPU가 계산해야 할 횟수가 늘어납니다. 값을 크게 설정할 수록 화물 분배 상태가 새롭게 지정되는 데 더 오랜 시간이 걸립니다. -STR_CONFIG_SETTING_LINKGRAPH_TIME :분배 상태 재계산 주기: {STRING}일 +STR_CONFIG_SETTING_LINKGRAPH_TIME :화물 분배 연결 상태를 {STRING}일마다 다시 계산 STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :각 연결 상태 요소의 재계산을 위해 필요한 시간입니다. 재계산이 시작될 때, 이 날짜만큼 작동하는 스레드가 생성됩니다. 이 값이 작으면 작을수록, 스레드가 끝나야할 때에 스레드가 끝나지 않게 됩니다. 그러면 게임이 랙에 걸려 멈추게 됩니다. 값을 크게 설정할수록 경로가 바뀔 때 분배 상태가 업데이트 되는 시간이 오래 걸리게 됩니다. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :수동 STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :불균형 @@ -1610,7 +1630,7 @@ STR_CONFIG_SETTING_SHORT_PATH_SATURATION :다음으로 STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :종종 두 역 사이에는 여러 가지 경로가 존재할 수 있습니다. 이 경우, 화물 분배 기능은 먼저 가장 짧은 경로로 화물을 보내고, 그 경로가 포화 상태에 이르면 그 다음으로 짧은 경로를 사용하는 식으로 화물을 분배합니다. 포화도는 경로의 수송 능력과 예정 사용량을 추정하여 계산됩니다. 일단 모든 경로가 포화 상태가 되었는데 아직 수요가 남아있다면, 수송 능력이 높은 경로를 사용하면서 모든 경로를 과부하 상태로 만들게 됩니다. 하지만, 이 알고리즘은 수송량을 대부분 정확히 추정하지는 않습니다. 이 설정을 이용해서, 화물 분배 기능이 짧은 경로의 포화 상태가 몇 퍼센트가 되어야 다음으로 짧은 경로에 화물을 분배할 것인지를 지정할 수 있습니다. 과대평가된 수송량의 경우 너무 붐비는 역이 생기지 않도록 하기 위해서는 이 값을 100%보다 작게 설정하십시오. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :속력 단위: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :출력할 속력 단위를 선택합니다. +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :속력를 표시할 때 선택한 단위를 사용하여 나타냅니다. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :임페리얼법 (mph) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :미터법 (km/h) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :국제표준규격 (m/s) @@ -1622,25 +1642,25 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :미터법 (마 STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :국제표준규격 (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :무게 단위: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :출력할 무게 단위를 선택합니다. +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :무게를 표시할 때 선택한 단위를 사용하여 나타냅니다. STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :임페리얼법 (미국 톤) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :미터법 (톤) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :국제표준규격 (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :부피 단위: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :출력할 부피 단위를 선택합니다. +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :부피를 표시할 때 선택한 단위를 사용하여 나타냅니다. STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :임페리얼법 (갤런) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :미터법 (리터) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :국제표준규격 (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :견인 효과 단위: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :출력할 견인 효과(견인력) 단위를 선택합니다. +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :견인 효과(견인력)를 표시할 때 선택한 단위를 사용하여 나타냅니다. STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :임페리얼법 (파운드중) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :미터법 (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :국제표준규격 (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :높이 단위: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :출력할 높이 단위를 선택합니다. +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :높이를 표시할 때 선택한 단위를 사용하여 나타냅니다. STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :임페리얼법 (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :미터법 (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :국제표준규격 (m) @@ -1671,7 +1691,7 @@ STR_CONFIG_SETTING_AI_NPC :{ORANGE}컴퓨 STR_CONFIG_SETTING_PATHFINDER_OPF :오리지널 STR_CONFIG_SETTING_PATHFINDER_NPF :NPF -STR_CONFIG_SETTING_PATHFINDER_YAPF_RECOMMENDED :YAPF {BLUE}(추천) +STR_CONFIG_SETTING_PATHFINDER_YAPF_RECOMMENDED :YAPF {BLUE}(권장) STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS :열차에 사용할 경로 탐색법: {STRING} STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT :열차에 사용할 경로 탐색 방법을 선택합니다. @@ -1687,7 +1707,7 @@ STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}설정 # Config errors STR_CONFIG_ERROR :{WHITE}설정 파일에서 오류 발생 STR_CONFIG_ERROR_ARRAY :{WHITE}... 배열 '{STRING}'에서 오류 발생 -STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... '{1:STRING}'{G 0 "은" "는"} '{0:STRING}'에 사용할 수 없습니다 +STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... '{1:STRING}'에 잘못된 값('{0:STRING}')이 지정되었습니다. STR_CONFIG_ERROR_TRAILING_CHARACTERS :{WHITE}... 설정 '{STRING}' 끝에 후행문자(??) STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... NewGRF '{STRING}' 무시중: '{STRING}'{G 1 "과" "와"} GRF ID가 겹침 STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... 유효하지 않은 NewGRF '{STRING}' 무시중: {STRING} @@ -1716,7 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}멀티 STR_INTRO_GAME_OPTIONS :{BLACK}게임 설정 STR_INTRO_HIGHSCORE :{BLACK}고득점 순위표 -STR_INTRO_ADVANCED_SETTINGS :{BLACK}고급 설정 +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}설정 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF 설정 STR_INTRO_ONLINE_CONTENT :{BLACK}온라인 콘텐츠 다운로드 STR_INTRO_SCRIPT_SETTINGS :{BLACK}인공지능/게임 스크립트 설정 @@ -1734,9 +1754,9 @@ STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}아한 STR_INTRO_TOOLTIP_SUB_TROPICAL_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_ADVANCED_SETTINGS :{BLACK}고급 설정 창을 엽니다. +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}설정 창을 엽니다. STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF 설정 창을 엽니다. STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}새로 나왔거나 업데이트된 콘텐츠를 체크하여 다운로드합니다. STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}인공지능/게임 스크립트 설정창을 엽니다. @@ -1773,13 +1793,15 @@ STR_CHEATS_TOOLTIP :{BLACK}체크 STR_CHEATS_WARNING :{BLACK}경고! 치트는 경쟁자를 속이는 행위입니다. 치트를 사용한 기록은 절대 지워지지 않음을 명심하십시오. STR_CHEAT_MONEY :{LTBLUE}재정을 {CURRENCY_LONG} 만큼 증가 STR_CHEAT_CHANGE_COMPANY :{LTBLUE}다음 회사로 플레이: {ORANGE}{COMMA} -STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}마법 불도저 (산업시설, 움직이지 못하는 건물 제거): {ORANGE}{STRING} +STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}마법 불도저 (산업시설이나 옮길 수 없는 건물 제거): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}터널 교차 허용: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}대형 항공기가 소형 공항에서 (자주) 충돌하지 않게 함: {ORANGE}{STRING} -STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :온대 기후 지형 -STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :아한대 지형 -STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :아열대 기후 지형 -STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :장난감나라 지형 +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}최대 지형 고도값 수정: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}최대 지형 높이값을 수정합니다. +STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :온대 기후 +STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :아한대 기후 +STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :아열대 기후 +STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :장난감나라 STR_CHEAT_CHANGE_DATE :{LTBLUE}날짜 변경: {ORANGE}{DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}현재의 연도를 변경 STR_CHEAT_SETUP_PROD :{LTBLUE}1차 산업시설 생산량 조절 허용: {ORANGE}{STRING} @@ -1935,7 +1957,7 @@ STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE :{BLACK}이름 STR_NETWORK_SERVER_LIST_ENTER_IP :{BLACK}호스트(IP) 주소 입력 # Start new multiplayer server -STR_NETWORK_START_SERVER_CAPTION :{WHITE}새로운 멀티플레이 게임을 시작 +STR_NETWORK_START_SERVER_CAPTION :{WHITE}새 멀티플레이 게임 시작하기 STR_NETWORK_START_SERVER_NEW_GAME_NAME :{BLACK}게임 이름: STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}멀티플레이 게임 선택 메뉴에서 보여질 게임 제목입니다. @@ -1991,15 +2013,15 @@ STR_NETWORK_LANG_TURKISH :터키어 STR_NETWORK_LANG_UKRAINIAN :우크라이나어 STR_NETWORK_LANG_AFRIKAANS :아프리카어 STR_NETWORK_LANG_CROATIAN :크로아티아어 -STR_NETWORK_LANG_CATALAN :카탈로니아 -STR_NETWORK_LANG_ESTONIAN :에스토니아 -STR_NETWORK_LANG_GALICIAN :갈리시아 -STR_NETWORK_LANG_GREEK :그리스 -STR_NETWORK_LANG_LATVIAN :라트비아 +STR_NETWORK_LANG_CATALAN :카탈로니아어 +STR_NETWORK_LANG_ESTONIAN :에스토니아어 +STR_NETWORK_LANG_GALICIAN :갈리시아어 +STR_NETWORK_LANG_GREEK :그리스어 +STR_NETWORK_LANG_LATVIAN :라트비아어 ############ End of leave-in-this-order # Network game lobby -STR_NETWORK_GAME_LOBBY_CAPTION :{WHITE}멀티플레이 준비 +STR_NETWORK_GAME_LOBBY_CAPTION :{WHITE}멀티플레이 게임 대기실 STR_NETWORK_GAME_LOBBY_PREPARE_TO_JOIN :{BLACK}참가 준비중: {ORANGE}{STRING} STR_NETWORK_GAME_LOBBY_COMPANY_LIST_TOOLTIP :{BLACK}이 게임에 있는 회사의 목록입니다. 다른 회사에 같이 참가하거나 (빈 슬롯이 있을 경우) 새로운 회사로 시작할 수 있습니다. @@ -2039,7 +2061,7 @@ STR_NETWORK_CONNECTING_SPECIAL_2 :{BLACK}회사 ############ End of leave-in-this-order STR_NETWORK_CONNECTING_WAITING :{BLACK}{NUM}명의 접속자가 먼저 기다리고 있습니다 STR_NETWORK_CONNECTING_DOWNLOADING_1 :{BLACK}지금까지 {BYTES}를 다운로드하였습니다 -STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} / {BYTES} 다운로드 +STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} / {BYTES} 다운로드 완료 STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}접속 끊기 @@ -2135,7 +2157,7 @@ STR_NETWORK_ERROR_CLIENT_CHEATER :치트 사용 STR_NETWORK_ERROR_CLIENT_SERVER_FULL :서버 꽉참 STR_NETWORK_ERROR_CLIENT_TOO_MANY_COMMANDS :너무 많은 명령 전송 STR_NETWORK_ERROR_CLIENT_TIMEOUT_PASSWORD :제 시간에 비밀번호를 입력하십시오 -STR_NETWORK_ERROR_CLIENT_TIMEOUT_COMPUTER :일반적인 시간 초과 +STR_NETWORK_ERROR_CLIENT_TIMEOUT_COMPUTER :반응 시간 초과 STR_NETWORK_ERROR_CLIENT_TIMEOUT_MAP :지도 다운로드 시간 초과 STR_NETWORK_ERROR_CLIENT_TIMEOUT_JOIN :지도 생성 / 입장 시간 초과 ############ End of leave-in-this-order @@ -2162,9 +2184,9 @@ STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} 님이 입장하셨습니다. ({2:NUM}번 접속자) STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {STRING} 님이 {2:NUM}번 회사에 참여하셨습니다. STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} 님이 관전을 시작하셨습니다. -STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} 님이 새로운 회사(({2:NUM}번)를 창설하셨습니다. +STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} 님이 새로운 회사({2:NUM}번)를 창설하셨습니다. STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} 님이 퇴장하셨습니다. (사유: {2:STRING}) -STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} 님이 이름을 {STRING}(으)로 바꿨습니다 +STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} 님의 이름이 {STRING}(으)로 바뀌었습니다. STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} 님이 당신에게 {2:CURRENCY_LONG}만큼의 돈을 보내셨습니다. STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {1:STRING} 님에게 {2:CURRENCY_LONG}만큼의 돈을 보냈습니다. STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}서버가 게임을 종료하였습니다. @@ -2210,7 +2232,7 @@ STR_CONTENT_DETAIL_SELECTED_BECAUSE_OF :{WHITE}{STRING} STR_CONTENT_DETAIL_DEPENDENCIES :{SILVER}필요한 요소: {WHITE}{STRING} STR_CONTENT_DETAIL_TAGS :{SILVER}태그: {WHITE}{STRING} STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD가 "zlib" 지원 기능을 포함하지 않고 만들어졌습니다... -STR_CONTENT_NO_ZLIB_SUB :{WHITE}... 콘텐츠 다운로드가 불가능합니다! +STR_CONTENT_NO_ZLIB_SUB :{WHITE}... 콘텐츠를 다운로드 할 수 없습니다! # Order of these is important! STR_CONTENT_TYPE_BASE_GRAPHICS :{G=m}기본 그래픽 @@ -2234,8 +2256,8 @@ STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} # Content downloading error messages STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}콘텐츠 서버에 접속할 수 없습니다... STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}다운로드 실패... -STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... 접속 손실 -STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... 파일 쓰기 실패 +STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... 접속이 끊겼습니다. +STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... 파일 쓰기가 불가능합니다. STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}다운로드한 파일의 압축을 풀 수 없습니다 STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}그래픽 없음 @@ -2294,7 +2316,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}자동 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}차량기지를 건설합니다. 차량을 구입하거나 정비를 할 수 있습니다. SHIFT 키를 사용하면 예상 가격을 볼 수 있습니다. STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}선로에 경유지를 설치합니다. CTRL 키를 사용하면 같은 이름의 경유지를 서로 떨어진 곳에 지을 수 있습니다. SHIFT 키를 누르면 예상 가격을 볼 수 있습니다. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}철도역을 짓습니다. CTRL 키를 사용하면 같은 이름의 역을 서로 떨어진 곳에 지을 수 있습니다. SHIFT 키를 사용하면 예상 가격을 볼 수 있습니다. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}신호기를 설치합니다. CTRL 키를 누르면 구식/전자식으로 전환합니다.{}선로를 따라 드래그해서 설치할 수 있습니다. CTRL을 누른채 드래그하면 다음 분기점까지 신호기를 설치합니다.{}CTRL 키를 누른 채 클릭하면 신호기 선택 창을 전환합니다. SHIFT 키를 누르면 예상 가격을 볼 수 있습니다. +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}신호기를 설치합니다. CTRL 키를 누르면 구식/전자식으로 전환합니다.{}선로를 따라 드래그해서 설치할 수 있습니다. CTRL을 누른채 드래그하면 다음 분기점이나 다음 신호기까지 신호기를 설치합니다.{}CTRL 키를 누른 채 클릭하면 신호기 선택 창을 전환합니다. SHIFT 키를 누르면 예상 가격을 볼 수 있습니다. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}철교를 짓습니다. SHIFT 키를 사용하면 예상 가격을 볼 수 있습니다. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}터널을 짓습니다. SHIFT 키를 사용하면 예상 가격을 볼 수 있습니다. STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}선로, 신호기, 경유지, 역 등의 철도 시설 건설/철거 모드를 켜거나 끌 수 있습니다. CTRL 키를 누르고 있어도 선로에서 경유지와 역을 제거할 수 있습니다. @@ -2334,17 +2356,17 @@ STR_STATION_CLASS_WAYP :{G=f}경유지 STR_BUILD_SIGNAL_CAPTION :{WHITE}신호기 선택 STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}폐색 신호기 (구식){}가장 기본적인 신호기 형식입니다. 단 한 대의 열차만이 이 폐색 구간을 통과할 수 있습니다. STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}입구 신호기 (구식){}다음 폐색 구간에 있는 출구 신호기가 하나라도 파란불이면 파란불이 되며, 그렇지 않은 경우에는 빨간불이 됩니다. -STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}출구 신호기 (구식){}일반 신호기와 기능이 똑같지만, 입구 & 콤보 신호기와 올바르게 연계되어야 합니다. -STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}콤보 신호기 (구식){}콤보 신호기는 입구 신호기와 출구 신호기의 역할을 동시에 합니다. 이 신호기는 사전 신호기의 거대한 "나뭇가지 구조"를 건설할 수 있도록 도와줍니다. +STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}출구 신호기 (구식){}일반 신호기와 기능이 똑같지만, 입구 & 복합 신호기와 올바르게 연계되어야 합니다. +STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}복합 신호기 (구식){}복합 신호기는 입구 신호기와 출구 신호기의 역할을 동시에 합니다. 이 신호기는 사전 신호기의 거대한 "나뭇가지 구조"를 건설할 수 있도록 도와줍니다. STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}경로 신호기 (구식){}경로 신호기는 경로가 겹치지 않는 경우에 한 대 이상의 열차가 한 폐색 구간에 동시에 들어갈 수 있게 해줍니다. 경로 신호기는 반대편에서 통과가 가능합니다. STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}단방향 경로 신호기 (구식){}경로 신호기는 경로가 겹치지 않는 경우에 한 대 이상의 열차가 한 폐색 구간에 동시에 들어갈 수 있게 해줍니다. 단방향 경로 신호기는 반대편에서 통과가 불가능합니다. STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}폐색 신호기 (전자식){}가장 기본적인 신호기 형식입니다. 단 한 대의 열차만이 이 폐색 구간을 통과할 수 있습니다. STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}입구 신호기 (전자식){}다음 폐색 구간에 있는 출구 신호기가 하나라도 파란불이면 파란불이 되며, 그렇지 않은 경우에는 빨간불이 됩니다. -STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}출구 신호기 (전자식){}일반 신호기와 기능이 똑같지만, 입구 & 콤보 신호기와 올바르게 연계되어야 합니다. -STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}콤보 신호기 (전자식){}콤보 신호기는 입구 신호기와 출구 신호기의 역할을 동시에 합니다. 이 신호기는 사전 신호기의 거대한 "나뭇가지식 구조"를 건설할 수 있도록 도와줍니다. +STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}출구 신호기 (전자식){}일반 신호기와 기능이 똑같지만, 입구 & 복합 신호기와 올바르게 연계되어야 합니다. +STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}복합 신호기 (전자식){}복합 신호기는 입구 신호기와 출구 신호기의 역할을 동시에 합니다. 이 신호기는 사전 신호기의 거대한 "나뭇가지식 구조"를 건설할 수 있도록 도와줍니다. STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}경로 신호기 (전자식){}경로 신호기는 경로가 겹치지 않는 경우에 한 대 이상의 열차가 한 폐색 구간에 동시에 들어갈 수 있게 해줍니다. 경로 신호기는 반대편에서 통과가 가능합니다. STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}단방향 경로 신호기 (전자식){}경로 신호기는 경로가 겹치지 않는 경우에 한 대 이상의 열차가 한 폐색 구간에 동시에 들어갈 수 있게 해줍니다. 단방향 경로 신호기는 반대편에서 통과가 불가능합니다. -STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}신호기 변환{}이 버튼을 선택한 뒤 이미 설치된 신호기를 클릭하면, 신호기의 종류(일반/입구/출구/콤보/경로)와 형식(구식↔전자식)을 변경하고, CTRL+클릭하면 신호기의 형식을 변경합니다. SHIFT+클릭을 사용하면 예상 가격을 볼 수 있습니다. +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}신호기 변환{}이 버튼을 선택한 뒤 이미 설치된 신호기를 클릭하면, 신호기의 종류(일반/입구/출구/복합/경로)와 형식(구식↔전자식)을 변경하고, CTRL+클릭하면 신호기의 형식을 변경합니다. SHIFT+클릭을 사용하면 예상 가격을 볼 수 있습니다. STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}드래그시 신호기 간격 STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}드래그시 신호기 간격 감소 STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}드래그시 신호기 증가 @@ -2435,7 +2457,7 @@ STR_AIRPORT_SMALL :소형 공항 STR_AIRPORT_CITY :도시 공항 STR_AIRPORT_METRO :대도시 공항 STR_AIRPORT_INTERNATIONAL :국제 공항 -STR_AIRPORT_COMMUTER :국내 공항 +STR_AIRPORT_COMMUTER :통근용 공항 STR_AIRPORT_INTERCONTINENTAL :대륙간 공항 STR_AIRPORT_HELIPORT :헬리콥터 탑승장 STR_AIRPORT_HELIDEPOT :헬리콥터 격납고 @@ -2537,7 +2559,7 @@ STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}소비 STR_INDUSTRY_CARGOES_HOUSES :{WHITE}도시 가구 STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}이 산업시설의 공급자와 고객을 보려면 클릭하세요. STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING}{}이 화물의 공급자와 고객을 보려면 클릭하세요. -STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}산업망 표시 +STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}산업시설 연계도 보기 STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}이 산업시설에서 생산/소비하는 화물을 보여줍니다. STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}지도에 표시 STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}위 산업망에 표시된 산업을 소형지도에서 볼 수 있게 합니다. @@ -2584,23 +2606,23 @@ STR_LAI_RAIL_DESCRIPTION_TRACK :{STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :일반 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :입구 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :출구 신호기가 설치된 {STRING} 선로 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :콤보 신호기가 설치된 {STRING} 선로 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :복합 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :단방향 경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :일반 신호기와 입구 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :일반 신호기와 출구 신호기가 설치된 {STRING} 선로 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :일반 신호기와 콤보 신호기가 설치된 {STRING} 선로 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :일반 신호기와 복합 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :일반 신호기와 경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :일반 신호기와 단방향 경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :입구 신호기와 출구 신호기가 설치된 {STRING} 선로 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :입구 신호기와 콤보 신호기가 설치된 {STRING} 선로 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :입구 신호기와 복합 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :입구 신호기와 경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_NOENTRYSIGNALS :입구 신호기와 단방향 경로 신호기가 설치된 {STRING} 선로 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :출구 신호기와 콤보 신호기가 설치된 {STRING} 선로 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :출구 신호기와 복합 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :출구 신호기와 경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :출구 신호기와 단방향 경로 신호기가 설치된 {STRING} 선로 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :콤보 신호기와 경로 신호기가 설치된 {STRING} 선로 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :콤보 신호기와 단방향 경로 신호기가 설치된 {STRING} 선로 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :복합 신호기와 경로 신호기가 설치된 {STRING} 선로 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :복합 신호기와 단방향 경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :경로 신호기와 단방향 경로 신호기가 설치된 {STRING} 선로 STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :{STRING} 차량기지 @@ -2666,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :회사 소유 STR_ABOUT_OPENTTD :{WHITE}OpenTTD에 대해서 STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD 버전 {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD 개발팀 +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD 개발팀 # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}게임 저장 @@ -2701,6 +2723,9 @@ STR_MAPGEN_BY :{BLACK}x STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}도시의 수: STR_MAPGEN_DATE :{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}설선 고도를 1칸 높입니다 STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}설선 고도를 1칸 낮춥니다 @@ -2730,6 +2755,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}높이 STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}크기: 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}시작 연도를 변경합니다. @@ -2843,14 +2869,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}스프라이트 정렬 {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}다음 스프라이트 -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}모조/재색상/글씨 스프라이트는 건너뛰고 다음 번호의 일반 스프라이트로 이동합니다. 마지막 번호에 다다르면 다시 처음으로 돌아옵니다. +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}(위조/재색상/글씨 스프라이트를 제외한) 다음 보통 스프라이트로 이동하고, 마지막 스프라이트에 다다르면 다시 처음으로 돌아갑니다. STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}스프라이트 번호 입력 STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}입력한 스프라이트 번호로 이동합니다. 만약 입력한 번호의 스프라이트가 일반 스프라이트가 아닐경우, 그 다음으로 오는 일반 스프라이트로 이동합니다. STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}이전 스프라이트 -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}모조/재색상/글씨 스프라이트는 건너뛰고 이전 번호의 정상 스프라이트로 이동합니다. 처음 번호에 다다르면 마지막 번호로 돌아옵니다. +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}(위조/재색상/글씨 스프라이트를 제외한) 이전 보통 스프라이트로 이동하고, 첫 번째 스프라이트에 다다르면 마지막으로 돌아갑니다. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}현재 선택된 스프라이트를 표시합니다. 이 스프라이트가 그려졌을때의 정렬은 무시합니다. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}X축이나 Y축 방향으로 스프라이트를 이동시킵니다. -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X축: {NUM}, Y축: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}상대값 초기화 +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}현재 상대값 좌표를 초기화 +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X 좌표: {NUM}, Y 좌표: {NUM} (절댓값) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X 좌표: {NUM}, Y 좌표: {NUM} (상대값) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}스프라이트 선택 STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}화면에서 스프라이트를 골라 냅니다. @@ -2904,7 +2933,7 @@ STR_NEWGRF_LIST_COMPATIBLE :{YELLOW}호환 STR_NEWGRF_LIST_MISSING :{RED}파일 없음 # NewGRF 'it's broken' warnings -STR_NEWGRF_BROKEN :{WHITE}'{STRING}' NewGRF이 하려는 행위는 비동기화 혹은 충돌을 일으킬 수 있습니다. +STR_NEWGRF_BROKEN :{WHITE}'{0:STRING}' NewGRF이 적용되는 과정에서 비동기화나 충돌이 일어날 수 있습니다. STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}차고지 안에 있지 않은 '{1:ENGINE}'에 대한 동력 차량 상태가 바뀌었습니다. STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}'{1:ENGINE}'{G 1 "이" "가"} 차고지 안에 있지 않으면 차량 길이가 바뀝니다. STR_NEWGRF_BROKEN_CAPACITY :{WHITE}차량이 기지 안에 있지 않거나 개조가 불가능한 상태에서 '{1:ENGINE}'의 수송량이 변경되었습니다. @@ -2926,10 +2955,10 @@ STR_NEWGRF_INVALID_INDUSTRYTYPE :<알 수 없는 STR_INVALID_VEHICLE :<알 수 없는 차량> # NewGRF scanning window -STR_NEWGRF_SCAN_CAPTION :{WHITE}NewGRF 검색 +STR_NEWGRF_SCAN_CAPTION :{WHITE}NewGRF 검색 중 STR_NEWGRF_SCAN_MESSAGE :{BLACK}NewGRF을 검색하는 중입니다. 파일 개수에 따라 시간이 조금 걸릴 수 있습니다... STR_NEWGRF_SCAN_STATUS :{BLACK}약 {1:NUM}개의 NewGRF 중에서 {0:NUM}개의 NewGRF을 찾았습니다 -STR_NEWGRF_SCAN_ARCHIVES :자료 검색 +STR_NEWGRF_SCAN_ARCHIVES :자료 검색 중 # Sign list window STR_SIGN_LIST_CAPTION :{WHITE}팻말 목록 - 팻말 {COMMA}개 @@ -2958,12 +2987,12 @@ STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}지난 STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}지난달 우편수: {ORANGE}{COMMA}{BLACK} 최고: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}도시가 성장하기 위해 필요한 화물: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED}{G 0 "이" "가"} 필요함 -STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :겨울에는 {ORANGE}{STRING}{BLACK}{G 0 "이" "가"} 필요합니다. +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :겨울에는 {ORANGE}{STRING}{BLACK}{G 0 "이" "가"} 필요함 STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} 수송됨 -STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (화물이 더 필요함) -STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (수송됨) +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{1:CARGO_LONG} \ {0:CARGO_TINY}{RED} (더 필요함) +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{1:CARGO_LONG} \ {0:CARGO_TINY}{GREEN} (수송됨) STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}도시가 {ORANGE}{COMMA}{BLACK}일마다 성장합니다. -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}도시가 {ORANGE}{COMMA}{BLACK}일마다 성장합니다. (투자 중) +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}도시가 {ORANGE}{COMMA}{BLACK}일마다 성장합니다. (투자됨) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}도시는 {RED}성장하지 않고{BLACK} 있습니다. STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}현재 소음 수준: {ORANGE}{COMMA}{BLACK} 최대 허용 수준: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}이 도시의 위치로 시점을 변경합니다. CTRL+클릭하면 이 도시 위치를 기준으로 새로운 외부 화면을 엽니다. @@ -3023,7 +3052,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :{G=f}정보 STR_GOAL_QUESTION_CAPTION_WARNING :{G=f}경고 STR_GOAL_QUESTION_CAPTION_ERROR :오류 -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :취소 STR_GOAL_QUESTION_BUTTON_OK :{G=m}확인 STR_GOAL_QUESTION_BUTTON_NO :아니요 @@ -3042,6 +3071,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :재시작 STR_GOAL_QUESTION_BUTTON_POSTPONE :연기 STR_GOAL_QUESTION_BUTTON_SURRENDER :양도 STR_GOAL_QUESTION_BUTTON_CLOSE :닫기 +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}보조금 @@ -3107,7 +3137,7 @@ STR_STATION_VIEW_VIA_ANY :{RED}어디든 STR_STATION_VIEW_FROM_HERE :{GREEN}여기에서 출발하는 {CARGO_SHORT} STR_STATION_VIEW_VIA_HERE :{GREEN}이 역을 경유하는 {CARGO_SHORT} STR_STATION_VIEW_TO_HERE :{GREEN}이 역에 도착하는 {CARGO_SHORT} -STR_STATION_VIEW_NONSTOP :{YELLOW}직통 {CARGO_SHORT} +STR_STATION_VIEW_NONSTOP :{YELLOW}직행 {CARGO_SHORT} STR_STATION_VIEW_GROUP_S_V_D :출발-경유-도착 STR_STATION_VIEW_GROUP_S_D_V :출발-도착-경유 @@ -3169,7 +3199,7 @@ STR_FINANCES_SECTION_OTHER :{GOLD}기타 STR_FINANCES_NEGATIVE_INCOME :{BLACK}-{CURRENCY_LONG} STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURRENCY_LONG} STR_FINANCES_TOTAL_CAPTION :{WHITE}총계: -STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}소유금 +STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}현 보유 금액 STR_FINANCES_LOAN_TITLE :{WHITE}대출 STR_FINANCES_MAX_LOAN :{WHITE}최대 대출: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} @@ -3187,17 +3217,17 @@ STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}설립: { STR_COMPANY_VIEW_COLOUR_SCHEME_TITLE :{GOLD}색상: STR_COMPANY_VIEW_VEHICLES_TITLE :{GOLD}차량: STR_COMPANY_VIEW_TRAINS :{WHITE}열차 {COMMA}대 -STR_COMPANY_VIEW_ROAD_VEHICLES :{WHITE}차량 {COMMA}대 +STR_COMPANY_VIEW_ROAD_VEHICLES :{WHITE}자동차/전차 {COMMA}대 STR_COMPANY_VIEW_AIRCRAFT :{WHITE}항공기 {COMMA}대 STR_COMPANY_VIEW_SHIPS :{WHITE}선박 {COMMA}대 STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}없음 STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}회사가치: {WHITE}{CURRENCY_LONG} 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_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_WATER :{WHITE}항만시설 {COMMA}칸 +STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}역 {COMMA}칸 STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}공항 {COMMA}개 STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}없음 @@ -3337,7 +3367,7 @@ STR_GROUP_RENAME_CAPTION :{BLACK}그룹 # Build vehicle window STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :새 열차 STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :새 전기 열차 -STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :새 모노레일 +STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :새 모노레일 열차 STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :새 자기부상열차 STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :새 열차 @@ -3366,10 +3396,10 @@ STR_PURCHASE_INFO_ALL_BUT :{CARGO_LIST} STR_PURCHASE_INFO_MAX_TE :{BLACK}최고 견인력: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}항속거리: {GOLD}{COMMA} 칸 -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}열차 선택 목록 - 차량 정보를 보려면 클릭 -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}차량 목록 - 차량 정보를 보려면 클릭 -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}선박 선택 목록 - 선박의 정보를 보려면 클릭하세요 -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}항공기 선택 목록 - 항공기 정보를 보려면 클릭하세요 +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}열차 차량 구매 목록입니다. 차량의 정보를 보려면 클릭하세요. CTRL + 클릭하면 해당 차량을 숨김/표시 처리할 수 있습니다. +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}자동차/전차 구매 목록입니다. 차량의 정보를 보려면 클릭하세요. CTRL + 클릭하면 해당 차량을 숨김/표시 처리할 수 있습니다. +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}선박 구매 목록입니다. 선박의 정보를 보려면 선박을 클릭하세요. CTRL + 클릭하면 해당 선박을 숨김/표시 처리할 수 있습니다. +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}항공기 구매 목록입니다. 항공기의 정보를 보려면 클릭하세요. CTRL + 클릭하면 해당 항공기를 숨김/표시 처리할 수 있습니다. STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}차량 구입 STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}차량 구입 @@ -3391,6 +3421,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}차량 STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}숨김 처리한 열차 차량을 목록에 보여주거나 숨깁니다. +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}숨김 처리한 자동차/전차 차량을 목록에 보여주거나 숨깁니다. +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}숨김 처리한 선박을 목록에 보여주거나 숨깁니다. +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}숨김 처리한 항공기를 목록에 보여주거나 숨깁니다. + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}열차의 차량 이름을 변경합니다. STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}차종명을 변경합니다. STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}선박의 차량 이름을 변경합니다. @@ -3495,6 +3540,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :{G=f}자동차/ STR_REPLACE_VEHICLE_SHIP :{G=m}선박 STR_REPLACE_VEHICLE_AIRCRAFT :{G=f}항공기 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}사용 중인 차량 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}이 열은 현재 사용 중인 차량 목록입니다. +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}교체할 수 있는 차량 +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}이 열은 교체할 수 있는 차량 목록입니다. + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}교체할 기관차 종류를 선택하십시오. STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}새로 교체될 기관차를 선택하십시오. @@ -3695,7 +3745,7 @@ STR_ORDERS_END_OF_SHARED_ORDERS :- - 공유된 # Order bottom buttons STR_ORDER_NON_STOP :{BLACK}통과 설정 -STR_ORDER_GO_TO :행선지 지정 +STR_ORDER_GO_TO :완행 STR_ORDER_GO_NON_STOP_TO :직행 STR_ORDER_GO_VIA :완행 경유 STR_ORDER_GO_NON_STOP_VIA :직행 경유 @@ -3830,7 +3880,7 @@ STR_ORDER_STOP_LOCATION_FAR_END :[먼쪽] STR_ORDER_OUT_OF_RANGE :{RED} (다음 목적지가 항속거리제한을 벗어납니다.) -STR_ORDER_CONDITIONAL_UNCONDITIONAL :{COMMA}번째 경로로 건너뛰기 +STR_ORDER_CONDITIONAL_UNCONDITIONAL :[조건 경로] {COMMA}번째 경로로 건너뛰기 STR_ORDER_CONDITIONAL_NUM :[조건 경로] {COMMA}번째 경로로 건너뛰기 ({STRING} {STRING} {COMMA} 일때) STR_ORDER_CONDITIONAL_TRUE_FALSE :[조건 경로] {COMMA}번째 경로로 건너뛰기 ({STRING}{STRING}) @@ -3926,7 +3976,7 @@ STR_AI_GAME_SCRIPT :{G=f}{BLACK}게 STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}게임 스크립트 기록 체크 STR_ERROR_AI_NO_AI_FOUND :사용할 수 있는 인공지능이 없습니다.{}따라서 이 경쟁사는 아무 것도 하지 못하는 회사입니다.{}'온라인 컨텐츠 다운로드'에서 새로운 인공지능을 다운로드받으세요. -STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}작동중인 스크립트 중 하나가 충돌했습니다. 인공지능 / 게임 스크립트 디버그 창에서 스크린샷을 찍어 스크립트 제작자에게 보고하십시오. +STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}작동 중이던 스크립트 중 하나에서 오류가 발생하여 중단되었습니다. 인공지능 / 게임 스크립트 디버그 창에서 스크린샷을 찍어 스크립트 제작자에게 보고하십시오. STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}인공지능/게임 스크립트 디버그창은 오직 서버만 사용 가능합니다 # AI configuration window @@ -4058,7 +4108,7 @@ STR_ERROR_SCREENSHOT_FAILED :{WHITE}스크 # Error message titles STR_ERROR_MESSAGE_CAPTION :{YELLOW}알림 -STR_ERROR_MESSAGE_CAPTION_OTHER_COMPANY :{YELLOW}{STRING}{G 0 "이" "가"} 보낸 메시지 +STR_ERROR_MESSAGE_CAPTION_OTHER_COMPANY :{YELLOW}{STRING} 회사가 보낸 메시지 # Generic construction errors STR_ERROR_OFF_EDGE_OF_MAP :{WHITE}지도 가장자리에서 너무 멉니다! @@ -4081,7 +4131,7 @@ STR_ERROR_GENERIC_OBJECT_IN_THE_WAY :{WHITE}중간 STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}일시 정지 중에는 할 수 없습니다 # Local authority errors -STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}{TOWN}에 대한 회사의 낮은 성취도로 인해 지역 당국이 이 행위를 거절했습니다! +STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}{TOWN} 지역 당국이 이 행동을 거부했습니다. STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}{TOWN} 지역 당국이 이 도시에 다른 공항이 들어서는 것을 거부하였습니다! STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}{TOWN} 지역 당국이 소음 문제로 인해 공항 건설을 거부하였습니다 STR_ERROR_BRIBE_FAILED :{WHITE}당신의 뇌물 수수 행위가 지역 당국에 의해 발각되었습니다! @@ -4094,6 +4144,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}터널 STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}이미 해수면에 도달했습니다 STR_ERROR_TOO_HIGH :{WHITE}너무 높습니다! STR_ERROR_ALREADY_LEVELLED :{WHITE}... 이미 평평합니다. +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}다리가 끝나는 부분의 높이가 너무 높습니다. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}회사 이름을 바꿀 수 없습니다... @@ -4120,7 +4171,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... 지 STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... 다른 도시와 너무 가깝습니다! STR_ERROR_TOO_MANY_TOWNS :{WHITE}... 도시가 너무 많습니다! STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... 지도에 더이상 공간이 없습니다! -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}도시가 도로를 짓지 않을 것입니다. [고급설정->경제->도시]에서 도로를 지을 수 있도록 설정을 변경하실 수 있습니다. +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}도시가 도로를 짓지 않을 것입니다. [설정→환경→도시]에서 도로를 지을 수 있도록 설정을 변경하실 수 있습니다. STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}도로 작업이 진행중입니다 STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}이 도시를 삭제할 수 없습니다...{}도시나 도시 소유의 땅에 역, 정류장, 항구, 공항 또는 차량기지, 차고지, 정박소 등이 존재하면 도시를 삭제할 수 없습니다. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... 이 도시의 중심에 동상을 세우기 적합한 장소가 없습니다. @@ -4144,6 +4195,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... 숲 STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... 만년설 고도 위에만 지을 수 있습니다 STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... 만년설 고도 아래에만 지을 수 있습니다 +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}적당한 장소가 없어 '{STRING}'{G 0 "이" "가"} 지어지지 않았습니다. +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}더 나은 지도가 생성되도록 설정 값을 변경해보십시오. + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}여기에 역을 건설할 수 없습니다... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}버스 정류장을 지을 수 없습니다... @@ -4280,6 +4334,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}다리 STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}같은 위치에서 시작하고 끝낼 수 없습니다 STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}다리는 같은 높이를 연결해야 합니다 STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}그 지형은 다리를 건설하기에 너무 낮습니다 +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}이 지형에 다리를 설치하기에는 고도가 너무 높습니다. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}시작과 끝은 한 줄 위에 있어야 합니다 STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... 다리의 양 끝은 모두 땅이어야합니다. STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... 다리가 너무 깁니다! @@ -4340,7 +4395,7 @@ STR_ERROR_CAN_T_SEND_AIRCRAFT_TO_HANGAR :{WHITE}항공 STR_ERROR_CAN_T_BUY_TRAIN :{WHITE}열차를 구입할 수 없습니다... STR_ERROR_CAN_T_BUY_ROAD_VEHICLE :{WHITE}차량을 구입할 수 없습니다... STR_ERROR_CAN_T_BUY_SHIP :{WHITE}선박을 구입할 수 없습니다... -STR_ERROR_CAN_T_BUY_AIRCRAFT :{WHITE}항공기를 구입 할 수 없습니다... +STR_ERROR_CAN_T_BUY_AIRCRAFT :{WHITE}항공기를 구입할 수 없습니다... STR_ERROR_CAN_T_RENAME_TRAIN_TYPE :{WHITE}열차의 차량 이름을 다시 지정할 수 없습니다... STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE_TYPE :{WHITE}차종명을 다시 지정할 수 없습니다... @@ -4844,6 +4899,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (숨김) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4879,8 +4935,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/latin.txt b/src/lang/latin.txt new file mode 100644 index 0000000000..99d88237f5 --- /dev/null +++ b/src/lang/latin.txt @@ -0,0 +1,5289 @@ +##name Latin +##ownname Latina +##isocode la_VA +##plural 0 +##textdir ltr +##digitsep {NBSP} +##digitsepcur {NBSP} +##decimalsep . +##winlangid 0x0476 +##grflangid 0x66 +##gender m f n mp fp np +##case gen acc abl dat + + +# $Id$ + +# This file is part of OpenTTD. +# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. +# OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + + +##id 0x0000 +STR_NULL : +STR_EMPTY : +STR_UNDEFINED :(series irrita) +STR_JUST_NOTHING :Nihil + +# Cargo related strings +# Plural cargo name +STR_CARGO_PLURAL_NOTHING : +STR_CARGO_PLURAL_PASSENGERS :{G=mp}Vectores +STR_CARGO_PLURAL_PASSENGERS.gen :{G=mp}vectorum +STR_CARGO_PLURAL_PASSENGERS.acc :{G=mp}Vectores +STR_CARGO_PLURAL_PASSENGERS.dat :{G=mp}Vectoribus +STR_CARGO_PLURAL_COAL :{G=m}Carbo +STR_CARGO_PLURAL_COAL.gen :{G=m}carbonis +STR_CARGO_PLURAL_COAL.acc :{G=m}Carbonem +STR_CARGO_PLURAL_COAL.dat :{G=m}Carboni +STR_CARGO_PLURAL_MAIL :{G=fp}Epistulae +STR_CARGO_PLURAL_MAIL.gen :{G=fp}epistularum +STR_CARGO_PLURAL_MAIL.acc :{G=fp}Epistulas +STR_CARGO_PLURAL_MAIL.dat :{G=fp}Epistulis +STR_CARGO_PLURAL_OIL :{G=n}Petroleum +STR_CARGO_PLURAL_OIL.gen :{G=n}petrolei +STR_CARGO_PLURAL_OIL.acc :{G=n}Petroleum +STR_CARGO_PLURAL_OIL.dat :{G=n}Petroleo +STR_CARGO_PLURAL_LIVESTOCK :{G=np}Pecora +STR_CARGO_PLURAL_LIVESTOCK.gen :{G=np}pecorum +STR_CARGO_PLURAL_LIVESTOCK.acc :{G=np}Pecora +STR_CARGO_PLURAL_LIVESTOCK.dat :{G=np}Pecoribus +STR_CARGO_PLURAL_GOODS :{G=fp}Merces +STR_CARGO_PLURAL_GOODS.gen :{G=fp}mercium +STR_CARGO_PLURAL_GOODS.acc :{G=fp}Merces +STR_CARGO_PLURAL_GOODS.dat :{G=fp}Mercibus +STR_CARGO_PLURAL_GRAIN :{G=n}Frumentum +STR_CARGO_PLURAL_GRAIN.gen :{G=n}frumenti +STR_CARGO_PLURAL_GRAIN.acc :{G=n}Frumentum +STR_CARGO_PLURAL_GRAIN.dat :{G=n}Frumento +STR_CARGO_PLURAL_WOOD :{G=n}Lignum +STR_CARGO_PLURAL_WOOD.gen :{G=n}ligni +STR_CARGO_PLURAL_WOOD.acc :{G=n}Lignum +STR_CARGO_PLURAL_WOOD.dat :{G=n}Ligno +STR_CARGO_PLURAL_IRON_ORE :{G=n}Ferrum +STR_CARGO_PLURAL_IRON_ORE.gen :{G=n}ferri +STR_CARGO_PLURAL_IRON_ORE.acc :{G=n}Ferrum +STR_CARGO_PLURAL_IRON_ORE.dat :{G=n}Ferro +STR_CARGO_PLURAL_STEEL :{G=m}Chalybs +STR_CARGO_PLURAL_STEEL.gen :{G=m}chalybis +STR_CARGO_PLURAL_STEEL.acc :{G=m}Chalybem +STR_CARGO_PLURAL_STEEL.dat :{G=m}Chalybi +STR_CARGO_PLURAL_VALUABLES :{G=fp}Res Pretiosa +STR_CARGO_PLURAL_VALUABLES.gen :{G=fp}rerum pretiosarum +STR_CARGO_PLURAL_VALUABLES.acc :{G=fp}Res Pretiosas +STR_CARGO_PLURAL_VALUABLES.dat :{G=fp}Rebus Pretiosis +STR_CARGO_PLURAL_COPPER_ORE :{G=n}Aes +STR_CARGO_PLURAL_COPPER_ORE.gen :{G=n}aeris +STR_CARGO_PLURAL_COPPER_ORE.acc :{G=n}Aes +STR_CARGO_PLURAL_COPPER_ORE.dat :{G=n}Aeri +STR_CARGO_PLURAL_MAIZE :{G=n}Maizium +STR_CARGO_PLURAL_MAIZE.gen :{G=n}maizii +STR_CARGO_PLURAL_MAIZE.acc :{G=n}Maizium +STR_CARGO_PLURAL_MAIZE.dat :{G=n}Maizio +STR_CARGO_PLURAL_FRUIT :{G=mp}Fructus +STR_CARGO_PLURAL_FRUIT.gen :{G=mp}fructuum +STR_CARGO_PLURAL_FRUIT.acc :{G=mp}Fructus +STR_CARGO_PLURAL_FRUIT.dat :{G=mp}Fructibus +STR_CARGO_PLURAL_DIAMONDS :{G=mp}Adamantes +STR_CARGO_PLURAL_DIAMONDS.gen :{G=mp}adamantum +STR_CARGO_PLURAL_DIAMONDS.acc :{G=mp}Adamantes +STR_CARGO_PLURAL_DIAMONDS.dat :{G=mp}Adamantibus +STR_CARGO_PLURAL_FOOD :{G=m}Cibus +STR_CARGO_PLURAL_FOOD.gen :{G=m}cibi +STR_CARGO_PLURAL_FOOD.acc :{G=m}Cibum +STR_CARGO_PLURAL_FOOD.dat :{G=m}Cibo +STR_CARGO_PLURAL_PAPER :{G=f}Charta +STR_CARGO_PLURAL_PAPER.gen :{G=f}chartae +STR_CARGO_PLURAL_PAPER.acc :{G=f}Chartam +STR_CARGO_PLURAL_PAPER.dat :{G=f}Chartae +STR_CARGO_PLURAL_GOLD :{G=n}Aurum +STR_CARGO_PLURAL_GOLD.gen :{G=n}auri +STR_CARGO_PLURAL_GOLD.acc :{G=n}Aurum +STR_CARGO_PLURAL_GOLD.dat :{G=n}Auro +STR_CARGO_PLURAL_WATER :{G=f}Aqua +STR_CARGO_PLURAL_WATER.gen :{G=f}aquae +STR_CARGO_PLURAL_WATER.acc :{G=f}Aquam +STR_CARGO_PLURAL_WATER.dat :{G=f}Aquae +STR_CARGO_PLURAL_WHEAT :{G=n}Triticum +STR_CARGO_PLURAL_WHEAT.gen :{G=n}tritici +STR_CARGO_PLURAL_WHEAT.acc :{G=n}Triticum +STR_CARGO_PLURAL_WHEAT.dat :{G=n}Tritico +STR_CARGO_PLURAL_RUBBER :{G=f}Gummis +STR_CARGO_PLURAL_RUBBER.gen :{G=f}gummis +STR_CARGO_PLURAL_RUBBER.acc :{G=f}Gummem +STR_CARGO_PLURAL_RUBBER.dat :{G=f}Gummi +STR_CARGO_PLURAL_SUGAR :{G=n}Saccharum +STR_CARGO_PLURAL_SUGAR.gen :{G=n}sacchari +STR_CARGO_PLURAL_SUGAR.acc :{G=n}Saccharum +STR_CARGO_PLURAL_SUGAR.dat :{G=n}Saccharo +STR_CARGO_PLURAL_TOYS :{G=np}Ludicra +STR_CARGO_PLURAL_TOYS.gen :{G=np}ludicrorum +STR_CARGO_PLURAL_TOYS.acc :{G=np}Ludicra +STR_CARGO_PLURAL_TOYS.dat :{G=np}Ludicris +STR_CARGO_PLURAL_CANDY :{G=np}Bellaria +STR_CARGO_PLURAL_CANDY.gen :{G=np}bellariorum +STR_CARGO_PLURAL_CANDY.acc :{G=np}Bellaria +STR_CARGO_PLURAL_CANDY.dat :{G=np}Bellariis +STR_CARGO_PLURAL_COLA :{G=f}Cola +STR_CARGO_PLURAL_COLA.gen :{G=f}colae +STR_CARGO_PLURAL_COLA.acc :{G=f}Colam +STR_CARGO_PLURAL_COLA.dat :{G=f}Colae +STR_CARGO_PLURAL_COTTON_CANDY :{G=n}Sacchari Xylinum +STR_CARGO_PLURAL_COTTON_CANDY.gen :{G=n}sacchari xylini +STR_CARGO_PLURAL_COTTON_CANDY.acc :{G=n}Sacchari Xylinum +STR_CARGO_PLURAL_COTTON_CANDY.dat :{G=n}Sacchari Xylino +STR_CARGO_PLURAL_BUBBLES :{G=fp}Bullae +STR_CARGO_PLURAL_BUBBLES.gen :{G=fp}bullarum +STR_CARGO_PLURAL_BUBBLES.acc :{G=fp}Bullas +STR_CARGO_PLURAL_BUBBLES.dat :{G=fp}Bullis +STR_CARGO_PLURAL_TOFFEE :{G=n}Saccharum Tostum +STR_CARGO_PLURAL_TOFFEE.gen :{G=n}sacchari tosti +STR_CARGO_PLURAL_TOFFEE.acc :{G=n}Saccharum Tostum +STR_CARGO_PLURAL_TOFFEE.dat :{G=n}Saccharo Tosto +STR_CARGO_PLURAL_BATTERIES :{G=fp}Pilae Electricae +STR_CARGO_PLURAL_BATTERIES.gen :{G=fp}pilarum electricarum +STR_CARGO_PLURAL_BATTERIES.acc :{G=fp}Pilas Electricas +STR_CARGO_PLURAL_BATTERIES.dat :{G=fp}Pilis Electricis +STR_CARGO_PLURAL_PLASTIC :{G=f}Plastica +STR_CARGO_PLURAL_PLASTIC.gen :{G=f}plasticae +STR_CARGO_PLURAL_PLASTIC.acc :{G=f}Plasticam +STR_CARGO_PLURAL_PLASTIC.dat :{G=f}Plasticae +STR_CARGO_PLURAL_FIZZY_DRINKS :{G=fp}Potiones Carbonatae +STR_CARGO_PLURAL_FIZZY_DRINKS.gen :{G=fp}potionum carbonatarum +STR_CARGO_PLURAL_FIZZY_DRINKS.acc :{G=fp}Potiones Carbonatas +STR_CARGO_PLURAL_FIZZY_DRINKS.dat :{G=fp}Potionibus Carbonatis + +# Singular cargo name +STR_CARGO_SINGULAR_NOTHING : +STR_CARGO_SINGULAR_PASSENGER :{G=mp}Vectores +STR_CARGO_SINGULAR_PASSENGER.gen :{G=mp}vectorum +STR_CARGO_SINGULAR_PASSENGER.acc :{G=mp}Vectores +STR_CARGO_SINGULAR_PASSENGER.dat :{G=mp}Vectoribus +STR_CARGO_SINGULAR_COAL :{G=m}Carbo +STR_CARGO_SINGULAR_COAL.gen :{G=m}carbonis +STR_CARGO_SINGULAR_COAL.acc :{G=m}Carbonem +STR_CARGO_SINGULAR_COAL.dat :{G=m}Carboni +STR_CARGO_SINGULAR_MAIL :{G=fp}Epistulae +STR_CARGO_SINGULAR_MAIL.gen :{G=fp}epistularum +STR_CARGO_SINGULAR_MAIL.acc :{G=fp}Epistulas +STR_CARGO_SINGULAR_MAIL.dat :{G=fp}Epistulis +STR_CARGO_SINGULAR_OIL :{G=n}Petroleum +STR_CARGO_SINGULAR_OIL.gen :{G=n}petrolei +STR_CARGO_SINGULAR_OIL.acc :{G=n}Petroleum +STR_CARGO_SINGULAR_OIL.dat :{G=n}Petroleo +STR_CARGO_SINGULAR_LIVESTOCK :{G=np}Pecora +STR_CARGO_SINGULAR_LIVESTOCK.gen :{G=np}pecorum +STR_CARGO_SINGULAR_LIVESTOCK.acc :{G=np}Pecora +STR_CARGO_SINGULAR_LIVESTOCK.dat :{G=np}Pecoribus +STR_CARGO_SINGULAR_GOODS :{G=fp}Merces +STR_CARGO_SINGULAR_GOODS.gen :{G=fp}mercium +STR_CARGO_SINGULAR_GOODS.acc :{G=fp}Merces +STR_CARGO_SINGULAR_GOODS.dat :{G=fp}Mercibus +STR_CARGO_SINGULAR_GRAIN :{G=n}Frumentum +STR_CARGO_SINGULAR_GRAIN.gen :{G=n}frumenti +STR_CARGO_SINGULAR_GRAIN.acc :{G=n}Frumentum +STR_CARGO_SINGULAR_GRAIN.dat :{G=n}Frumento +STR_CARGO_SINGULAR_WOOD :{G=n}Lignum +STR_CARGO_SINGULAR_WOOD.gen :{G=n}ligni +STR_CARGO_SINGULAR_WOOD.acc :{G=n}Lignum +STR_CARGO_SINGULAR_WOOD.dat :{G=n}Ligno +STR_CARGO_SINGULAR_IRON_ORE :{G=n}Ferrum +STR_CARGO_SINGULAR_IRON_ORE.gen :{G=n}ferri +STR_CARGO_SINGULAR_IRON_ORE.acc :{G=n}Ferrum +STR_CARGO_SINGULAR_IRON_ORE.dat :{G=n}Ferro +STR_CARGO_SINGULAR_STEEL :{G=m}Chalybs +STR_CARGO_SINGULAR_STEEL.gen :{G=m}chalybis +STR_CARGO_SINGULAR_STEEL.acc :{G=m}Chalybem +STR_CARGO_SINGULAR_STEEL.dat :{G=m}Chalybi +STR_CARGO_SINGULAR_VALUABLES :{G=fp}Res Pretiosa +STR_CARGO_SINGULAR_VALUABLES.gen :{G=fp}rerum pretiosarum +STR_CARGO_SINGULAR_VALUABLES.acc :{G=fp}Res Pretiosas +STR_CARGO_SINGULAR_VALUABLES.dat :{G=fp}Rebus Pretiosis +STR_CARGO_SINGULAR_COPPER_ORE :{G=n}Aes +STR_CARGO_SINGULAR_COPPER_ORE.gen :{G=n}aeris +STR_CARGO_SINGULAR_COPPER_ORE.acc :{G=n}Aes +STR_CARGO_SINGULAR_COPPER_ORE.dat :{G=n}Aeri +STR_CARGO_SINGULAR_MAIZE :{G=n}Maizium +STR_CARGO_SINGULAR_MAIZE.gen :{G=n}maizii +STR_CARGO_SINGULAR_MAIZE.acc :{G=n}Maizium +STR_CARGO_SINGULAR_MAIZE.dat :{G=n}Maizio +STR_CARGO_SINGULAR_FRUIT :{G=mp}Fructus +STR_CARGO_SINGULAR_FRUIT.gen :{G=mp}fructuum +STR_CARGO_SINGULAR_FRUIT.acc :{G=mp}Fructus +STR_CARGO_SINGULAR_FRUIT.dat :{G=mp}Fructibus +STR_CARGO_SINGULAR_DIAMOND :{G=mp}Adamantes +STR_CARGO_SINGULAR_DIAMOND.gen :{G=mp}adamantum +STR_CARGO_SINGULAR_DIAMOND.acc :{G=mp}Adamantes +STR_CARGO_SINGULAR_DIAMOND.dat :{G=mp}Adamantibus +STR_CARGO_SINGULAR_FOOD :{G=m}Cibus +STR_CARGO_SINGULAR_FOOD.gen :{G=m}cibi +STR_CARGO_SINGULAR_FOOD.acc :{G=m}Cibum +STR_CARGO_SINGULAR_FOOD.dat :{G=m}Cibo +STR_CARGO_SINGULAR_PAPER :{G=f}Charta +STR_CARGO_SINGULAR_PAPER.gen :{G=f}chartae +STR_CARGO_SINGULAR_PAPER.acc :{G=f}Chartam +STR_CARGO_SINGULAR_PAPER.dat :{G=f}Chartae +STR_CARGO_SINGULAR_GOLD :{G=n}Aurum +STR_CARGO_SINGULAR_GOLD.gen :{G=n}auri +STR_CARGO_SINGULAR_GOLD.acc :{G=n}Aurum +STR_CARGO_SINGULAR_GOLD.dat :{G=n}Auro +STR_CARGO_SINGULAR_WATER :{G=f}Aqua +STR_CARGO_SINGULAR_WATER.gen :{G=f}aquae +STR_CARGO_SINGULAR_WATER.acc :{G=f}Aquam +STR_CARGO_SINGULAR_WATER.dat :{G=f}Aquae +STR_CARGO_SINGULAR_WHEAT :{G=n}Triticum +STR_CARGO_SINGULAR_WHEAT.gen :{G=n}tritici +STR_CARGO_SINGULAR_WHEAT.acc :{G=n}Triticum +STR_CARGO_SINGULAR_WHEAT.dat :{G=n}Tritico +STR_CARGO_SINGULAR_RUBBER :{G=f}Gummis +STR_CARGO_SINGULAR_RUBBER.gen :{G=f}gummis +STR_CARGO_SINGULAR_RUBBER.acc :{G=f}Gummem +STR_CARGO_SINGULAR_RUBBER.dat :{G=f}Gummi +STR_CARGO_SINGULAR_SUGAR :{G=n}Saccharum +STR_CARGO_SINGULAR_SUGAR.gen :{G=n}sacchari +STR_CARGO_SINGULAR_SUGAR.acc :{G=n}Saccharum +STR_CARGO_SINGULAR_SUGAR.dat :{G=n}Saccharo +STR_CARGO_SINGULAR_TOY :{G=np}Ludicra +STR_CARGO_SINGULAR_TOY.gen :{G=np}ludicrorum +STR_CARGO_SINGULAR_TOY.acc :{G=np}Ludicra +STR_CARGO_SINGULAR_TOY.dat :{G=np}Ludicris +STR_CARGO_SINGULAR_CANDY :{G=np}Bellaria +STR_CARGO_SINGULAR_CANDY.gen :{G=np}bellariorum +STR_CARGO_SINGULAR_CANDY.acc :{G=np}Bellaria +STR_CARGO_SINGULAR_CANDY.dat :{G=np}Bellariis +STR_CARGO_SINGULAR_COLA :{G=f}Cola +STR_CARGO_SINGULAR_COLA.gen :{G=f}colae +STR_CARGO_SINGULAR_COLA.acc :{G=f}Colam +STR_CARGO_SINGULAR_COLA.dat :{G=f}Colae +STR_CARGO_SINGULAR_COTTON_CANDY :{G=n}Sacchari Xylinum +STR_CARGO_SINGULAR_COTTON_CANDY.gen :{G=n}sacchari xylini +STR_CARGO_SINGULAR_COTTON_CANDY.acc :{G=n}Sacchari Xylinum +STR_CARGO_SINGULAR_COTTON_CANDY.dat :{G=n}Sacchari Xylino +STR_CARGO_SINGULAR_BUBBLE :{G=fp}Bullae +STR_CARGO_SINGULAR_BUBBLE.gen :{G=fp}bullarum +STR_CARGO_SINGULAR_BUBBLE.acc :{G=fp}Bullas +STR_CARGO_SINGULAR_BUBBLE.dat :{G=fp}Bullis +STR_CARGO_SINGULAR_TOFFEE :{G=n}Saccharum Tostum +STR_CARGO_SINGULAR_TOFFEE.gen :{G=n}sacchari tosti +STR_CARGO_SINGULAR_TOFFEE.acc :{G=n}Saccharum Tostum +STR_CARGO_SINGULAR_TOFFEE.dat :{G=n}Saccharo Tosto +STR_CARGO_SINGULAR_BATTERY :{G=fp}Pilae Electricae +STR_CARGO_SINGULAR_BATTERY.gen :{G=fp}pilarum electricarum +STR_CARGO_SINGULAR_BATTERY.acc :{G=fp}Pilas Electricas +STR_CARGO_SINGULAR_BATTERY.dat :{G=fp}Pilis Electricis +STR_CARGO_SINGULAR_PLASTIC :{G=f}Plastica +STR_CARGO_SINGULAR_PLASTIC.gen :{G=f}plasticae +STR_CARGO_SINGULAR_PLASTIC.acc :{G=f}Plasticam +STR_CARGO_SINGULAR_PLASTIC.dat :{G=f}Plasticae +STR_CARGO_SINGULAR_FIZZY_DRINK :{G=fp}Potiones Carbonatae +STR_CARGO_SINGULAR_FIZZY_DRINK.gen :{G=fp}potionum carbonatarum +STR_CARGO_SINGULAR_FIZZY_DRINK.acc :{G=fp}Potiones Carbonatas +STR_CARGO_SINGULAR_FIZZY_DRINK.dat :{G=fp}Potionibus Carbonatis + +# Quantity of cargo +STR_QUANTITY_NOTHING : +STR_QUANTITY_PASSENGERS :{G=mp}{COMMA}{NBSP}vector{P "" es} +STR_QUANTITY_COAL :{WEIGHT_LONG} carbonis +STR_QUANTITY_MAIL :{G=mp}{COMMA}{NBSP}sacc{P us i} epistularum +STR_QUANTITY_OIL :{VOLUME_LONG} petrolei +STR_QUANTITY_LIVESTOCK :{G=np}{COMMA}{NBSP}pec{P us ora} +STR_QUANTITY_GOODS :{G=fp}{COMMA}{NBSP}capsa{P "" e} mercium +STR_QUANTITY_GRAIN :{WEIGHT_LONG} frumenti +STR_QUANTITY_WOOD :{WEIGHT_LONG} ligni +STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} ferri +STR_QUANTITY_STEEL :{WEIGHT_LONG} chalybis +STR_QUANTITY_VALUABLES :{G=mp}{COMMA}{NBSP}sacc{P us i} rerum pretiosarum +STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} aeris +STR_QUANTITY_MAIZE :{WEIGHT_LONG} maizii +STR_QUANTITY_FRUIT :{WEIGHT_LONG} fructuum +STR_QUANTITY_DIAMONDS :{G=mp}{COMMA}{NBSP}sacc{P us i} adamantum +STR_QUANTITY_FOOD :{WEIGHT_LONG} cibi +STR_QUANTITY_PAPER :{WEIGHT_LONG} chartae +STR_QUANTITY_GOLD :{G=mp}{COMMA}{NBSP}sacc{P us i} auri +STR_QUANTITY_WATER :{VOLUME_LONG} aquae +STR_QUANTITY_WHEAT :{WEIGHT_LONG} tritici +STR_QUANTITY_RUBBER :{VOLUME_LONG} gummis +STR_QUANTITY_SUGAR :{WEIGHT_LONG} sacchari +STR_QUANTITY_TOYS :{G=np}{COMMA}{NBSP}ludicr{P um a} +STR_QUANTITY_SWEETS :{G=mp}{COMMA}{NBSP}sacc{P us i} bellarii +STR_QUANTITY_COLA :{VOLUME_LONG} colae +STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} sacchari xylini +STR_QUANTITY_BUBBLES :{G=fp}{COMMA}{NBSP}bulla{P "" e} +STR_QUANTITY_TOFFEE :{WEIGHT_LONG} sacchari tosti +STR_QUANTITY_BATTERIES :{G=fp}{COMMA}{NBSP}pila{P "" e} electrica{P "" e} +STR_QUANTITY_PLASTIC :{VOLUME_LONG} plasticae +STR_QUANTITY_FIZZY_DRINKS :{G=fp}{COMMA}{NBSP}potio{P "" nes} carbonata{P "" e} +STR_QUANTITY_N_A :N/A + +# Two letter abbreviation of cargo name +STR_ABBREV_NOTHING : +STR_ABBREV_PASSENGERS :{TINY_FONT}VC +STR_ABBREV_COAL :{TINY_FONT}CA +STR_ABBREV_MAIL :{TINY_FONT}EP +STR_ABBREV_OIL :{TINY_FONT}OL +STR_ABBREV_LIVESTOCK :{TINY_FONT}PC +STR_ABBREV_GOODS :{TINY_FONT}ME +STR_ABBREV_GRAIN :{TINY_FONT}FR +STR_ABBREV_WOOD :{TINY_FONT}LI +STR_ABBREV_IRON_ORE :{TINY_FONT}FE +STR_ABBREV_STEEL :{TINY_FONT}CH +STR_ABBREV_VALUABLES :{TINY_FONT}RP +STR_ABBREV_COPPER_ORE :{TINY_FONT}AE +STR_ABBREV_MAIZE :{TINY_FONT}MZ +STR_ABBREV_FRUIT :{TINY_FONT}FT +STR_ABBREV_DIAMONDS :{TINY_FONT}AD +STR_ABBREV_FOOD :{TINY_FONT}AL +STR_ABBREV_PAPER :{TINY_FONT}CA +STR_ABBREV_GOLD :{TINY_FONT}AU +STR_ABBREV_WATER :{TINY_FONT}AQ +STR_ABBREV_WHEAT :{TINY_FONT}TR +STR_ABBREV_RUBBER :{TINY_FONT}GU +STR_ABBREV_SUGAR :{TINY_FONT}SC +STR_ABBREV_TOYS :{TINY_FONT}LD +STR_ABBREV_SWEETS :{TINY_FONT}BL +STR_ABBREV_COLA :{TINY_FONT}CL +STR_ABBREV_CANDYFLOSS :{TINY_FONT}SX +STR_ABBREV_BUBBLES :{TINY_FONT}BU +STR_ABBREV_TOFFEE :{TINY_FONT}ST +STR_ABBREV_BATTERIES :{TINY_FONT}PE +STR_ABBREV_PLASTIC :{TINY_FONT}PL +STR_ABBREV_FIZZY_DRINKS :{TINY_FONT}PC +STR_ABBREV_NONE :{TINY_FONT}NO +STR_ABBREV_ALL :{TINY_FONT}OMN + +# 'Mode' of transport for cargoes +STR_PASSENGERS :{G=mp}{COMMA}{NBSP}vector{P "" es} +STR_BAGS :{G=mp}{COMMA}{NBSP}sacc{P us i} +STR_TONS :{G=fp}{COMMA}{NBSP}tonna{P "" e} +STR_LITERS :{G=np}{COMMA}{NBSP}litr{P um a} +STR_ITEMS :{G=fp}{COMMA}{NBSP}res +STR_CRATES :{G=fp}{COMMA}{NBSP}caps{P "" e} + +# Colours, do not shuffle +STR_COLOUR_DARK_BLUE :Caeruleus Berolinensis +STR_COLOUR_PALE_GREEN :Viridis Pallidus +STR_COLOUR_PINK :Roseus +STR_COLOUR_YELLOW :Gilvus +STR_COLOUR_RED :Ruber +STR_COLOUR_LIGHT_BLUE :Caeruleus Candidus +STR_COLOUR_GREEN :Viridis +STR_COLOUR_DARK_GREEN :Viridis Obscurus +STR_COLOUR_BLUE :Caeruleus +STR_COLOUR_CREAM :Ravus +STR_COLOUR_MAUVE :Malva +STR_COLOUR_PURPLE :Purpureus +STR_COLOUR_ORANGE :Fulvus +STR_COLOUR_BROWN :Aquilus +STR_COLOUR_GREY :Canus +STR_COLOUR_WHITE :Albus + +# Units used in OpenTTD +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s + +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg + +STR_UNITS_WEIGHT_LONG_IMPERIAL :{G=fp}{COMMA}{NBSP}tona{P "" e} +STR_UNITS_WEIGHT_LONG_METRIC :{G=fp}{COMMA}{NBSP}tonna{P "" e} +STR_UNITS_WEIGHT_LONG_SI :{G=np}{COMMA}{NBSP}chiliogramma{P "" ta} + +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ + +STR_UNITS_VOLUME_LONG_IMPERIAL :{G=mp}{COMMA}{NBSP}congi{P us i} +STR_UNITS_VOLUME_LONG_METRIC :{G=np}{COMMA}{NBSP}litr{P um a} +STR_UNITS_VOLUME_LONG_SI :{G=np}{COMMA}{NBSP}m³ + +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN + +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pedes +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m + +# Common window strings +STR_LIST_FILTER_TITLE :{BLACK}Series colans: +STR_LIST_FILTER_OSKTITLE :{BLACK}Inscribe seriem colantem +STR_LIST_FILTER_TOOLTIP :{BLACK}Inscribe verbum ad indicem colandam + +STR_TOOLTIP_GROUP_ORDER :{BLACK}Eligere ordinem gregum +STR_TOOLTIP_SORT_ORDER :{BLACK}Eligere ordinem separandi (descendens/ascendens) +STR_TOOLTIP_SORT_CRITERIA :{BLACK}Eligere criteria separandi +STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Eligere criteria colandi +STR_BUTTON_SORT_BY :{BLACK}Ordinare +STR_BUTTON_LOCATION :{BLACK}Locus +STR_BUTTON_RENAME :{BLACK}Renominare + +STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Claudere fenestram +STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Titulus fenestrae - hunc trahe ut fenestra moveatur +STR_TOOLTIP_SHADE :{BLACK}Subvolvere fenestram - titulum modo monstrare +STR_TOOLTIP_DEBUG :{BLACK}Monstrare indicia NewGRF emendandi +STR_TOOLTIP_DEFSIZE :{BLACK}Refingere fenestram ad magnitudinem solitam. Ctrl+Preme ut magnitudo praesens solito servetur +STR_TOOLTIP_STICKY :{BLACK}Signare hanc fenestram 'glutinosam' esse; non clausum iri clave 'Omnes Fenestras Claudere' pressa. Ctrl+Preme ut modus praesens solito servetur +STR_TOOLTIP_RESIZE :{BLACK}Preme traheque ut fenestra refingatur +STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Intermutare magnitudinem fenestrae magnae parvaeve +STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Ansa vagationis - indicem sursum deorsumve movet +STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Ansa vagationis - indicem ad sinistram dextramve movet +STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Destruere aedificia etc. quae in terrae quadro sunt. Ctrl diagonaliter eligit. Shift mutat inter detructionem et aestimationem monstrandam + +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Monstrare celata +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Monstrare celata +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Monstrare celatas +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Monstrare celata + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Electa, vehicula ferriviaria celata etiam monstrantur +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Electa, vehicula viaria celata etiam monstrantur +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Electa, naves celatae etiam monstrantur +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Electa, aeroplana celata etiam monstrantur + +# Query window +STR_BUTTON_DEFAULT :{BLACK}Solitum +STR_BUTTON_CANCEL :{BLACK}Cancellare +STR_BUTTON_OK :{BLACK}Confirmare + +# On screen keyboard window +STR_OSK_KEYBOARD_LAYOUT :`1234567890-=\qwertyuiop[]asdfghjkl;' zxcvbnm,./ . +STR_OSK_KEYBOARD_LAYOUT_CAPS :~!@#$%^&*()_+|QWERTYUIOP{{}}ASDFGHJKL:" ZXCVBNM<>? . + +# Measurement tooltip +STR_MEASURE_LENGTH :{BLACK}Spatium: {NUM} +STR_MEASURE_AREA :{BLACK}Area: {NUM} x {NUM} +STR_MEASURE_LENGTH_HEIGHTDIFF :{BLACK}Spatium: {NUM}{}Differentia altitudinis: {HEIGHT} +STR_MEASURE_AREA_HEIGHTDIFF :{BLACK}Area: {NUM} x {NUM}{}Differentia altitudinis: {HEIGHT} + + +# These are used in buttons +STR_SORT_BY_CAPTION_NAME :{BLACK}Nomen +STR_SORT_BY_CAPTION_DATE :{BLACK}Dies +# These are used in dropdowns +STR_SORT_BY_NAME :Nomine +STR_SORT_BY_PRODUCTION :Productione +STR_SORT_BY_TYPE :Typo +STR_SORT_BY_TRANSPORTED :Quantitate Translata +STR_SORT_BY_NUMBER :Numero +STR_SORT_BY_PROFIT_LAST_YEAR :Lucro prioris anni +STR_SORT_BY_PROFIT_THIS_YEAR :Lucro huius anni +STR_SORT_BY_AGE :Aetate +STR_SORT_BY_RELIABILITY :Constantia +STR_SORT_BY_TOTAL_CAPACITY_PER_CARGOTYPE :Summa capacitatis per genera onerum +STR_SORT_BY_MAX_SPEED :Velocitate maxima +STR_SORT_BY_MODEL :Typo +STR_SORT_BY_VALUE :Aestimatione +STR_SORT_BY_LENGTH :Longitudine +STR_SORT_BY_LIFE_TIME :Aetate reliqua +STR_SORT_BY_TIMETABLE_DELAY :Mora horarii +STR_SORT_BY_FACILITY :Typo stationis +STR_SORT_BY_WAITING_TOTAL :Summa onerum manentium +STR_SORT_BY_WAITING_AVAILABLE :Onere manente parabile +STR_SORT_BY_RATING_MAX :Censione oneris maxima +STR_SORT_BY_RATING_MIN :Censione oneris minima +STR_SORT_BY_ENGINE_ID :Agnoscamento vehiculi (separatio antiqua) +STR_SORT_BY_COST :Pretio +STR_SORT_BY_POWER :Potestate +STR_SORT_BY_TRACTIVE_EFFORT :Vi tractionis +STR_SORT_BY_INTRO_DATE :Die introductionis +STR_SORT_BY_RUNNING_COST :Pretio operandi +STR_SORT_BY_POWER_VS_RUNNING_COST :Potestate pretio operandi divisa +STR_SORT_BY_CARGO_CAPACITY :Capacitate oneris +STR_SORT_BY_RANGE :Distantia volatus maxima +STR_SORT_BY_POPULATION :Numero Incolarum +STR_SORT_BY_RATING :Censione + +# Tooltips for the main toolbar +STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Ludum intermittere +STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Ludum adcelerare +STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Optiones +STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Servare ludum, relinquere ludum, exire +STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Monstrare tabulam geographicam, fenestram conspectus additiciam, sive indicem signorum +STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Monstrare indicem oppidorum +STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Monstrare subsidia +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Monstrare indicem stationum societatis +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Monstrare res fiscales societatis +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Monstrare facta generalia societatis +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Monstrare librum fabularum +STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Monstrare indicem metarum +STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Monstrare formulas graphicas +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Monstrare album foederis societatum +STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Industriam novam condere vel monstrare indicem industriarum +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Monstrare indicem traminum societatis. Ctrl+Preme ut mutetur ad indicem sine gregibus +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Monstrare indicem vehiculorum viariorum societatis. Ctrl+Preme ut mutetur ad indicem sine gregibus +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Monstrare indicem navium societatis. Ctrl+Preme ut mutetur ad indicem sine gregibus +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Monstrare indicem aeroplanorum societatis. Ctrl+Preme ut mutetur ad indicem sine gregibus +STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Amplificare conspectum +STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Retrahere conspectum +STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Struere ferrivias +STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Struere vias +STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Struere navalia +STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Struere aeroportus +STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Monstrare terrae arcam ferramentorum qua potes terram augere/minuere, arbores serere, etc. +STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Monstrare fenestram soni musicaeque +STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Monstrare nuntium novissimum sive optiones nuntii +STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Indicia terrae regionis, consola, emendatio scripti, imagines conspectus, de OpenTTD +STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Mutare inter arcas ferramentorum + +# Extra tooltips for the scenario editor toolbar +STR_SCENEDIT_TOOLBAR_TOOLTIP_SAVE_SCENARIO_LOAD_SCENARIO :{BLACK}Servare scaenarium, legere scaenarium, relinquere scriptorium scaenarii, exire +STR_SCENEDIT_TOOLBAR_OPENTTD :{YELLOW}OpenTTD +STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Scriptorium Scaenarii +STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Facit ut dies initii uno anno procedatur +STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Facit ut dies initii uno anno recedatur +STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Mutare diem initii +STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Monstrare tabulam geographicam vel indicem oppidorum +STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Plasmatio terrae +STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Conditus oppidorum +STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Conditus industriarum +STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Constructio viarum +STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Serere arbores. Shift mutat inter constructionem et aestimationem monstrandam +STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Ponere signum +STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Ponere ornamentum. Shift mutat inter constructionem et aestimationem monstrandam + +############ range for SE file menu starts +STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Servare scaenarium +STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Legere scaenarium +STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Servare tabulam altitudinum +STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Legere tabulam altitudinum +STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Relinquere scriptorium scaenarii +STR_SCENEDIT_FILE_MENU_SEPARATOR : +STR_SCENEDIT_FILE_MENU_QUIT :Exire +############ range for SE file menu starts + +############ range for settings menu starts +STR_SETTINGS_MENU_GAME_OPTIONS :Ludi optiones +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Electiones +STR_SETTINGS_MENU_SCRIPT_SETTINGS :Optiones IA/Ludi scriptorum +STR_SETTINGS_MENU_NEWGRF_SETTINGS :Optiones NewGRF +STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Optiones perluciditatis +STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Nomina oppidorum spectabilia +STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Nomina stationum spectabilia +STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :Nomina interlocorum spectabilia +STR_SETTINGS_MENU_SIGNS_DISPLAYED :Signa spectabilia +STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Signa nominaque competitorum spectabilia +STR_SETTINGS_MENU_FULL_ANIMATION :Animatio completa +STR_SETTINGS_MENU_FULL_DETAIL :Descriptio completa +STR_SETTINGS_MENU_TRANSPARENT_BUILDINGS :Aedificia perlucida +STR_SETTINGS_MENU_TRANSPARENT_SIGNS :Signa perlucida +############ range ends here + +############ range for file menu starts +STR_FILE_MENU_SAVE_GAME :Servare ludum +STR_FILE_MENU_LOAD_GAME :Legere ludum +STR_FILE_MENU_QUIT_GAME :Relinquere ludum +STR_FILE_MENU_SEPARATOR : +STR_FILE_MENU_EXIT :Exire +############ range ends here + +# map menu +STR_MAP_MENU_MAP_OF_WORLD :Orbis tabula +STR_MAP_MENU_EXTRA_VIEW_PORT :Fenestra conspectus additicia +STR_MAP_MENU_LINGRAPH_LEGEND :Formula graphica onerum cursus +STR_MAP_MENU_SIGN_LIST :Index signorum + +############ range for town menu starts +STR_TOWN_MENU_TOWN_DIRECTORY :Index oppidorum +STR_TOWN_MENU_FOUND_TOWN :Condere oppidum +############ range ends here + +############ range for subsidies menu starts +STR_SUBSIDIES_MENU_SUBSIDIES :Subsidia +############ range ends here + +############ range for graph menu starts +STR_GRAPH_MENU_OPERATING_PROFIT_GRAPH :Formula lucri operationis graphica +STR_GRAPH_MENU_INCOME_GRAPH :Formula reditus graphica +STR_GRAPH_MENU_DELIVERED_CARGO_GRAPH :Formula oneris traditi graphica +STR_GRAPH_MENU_PERFORMANCE_HISTORY_GRAPH :Formula historiae effectus graphica +STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Formula aestimationis societatis graphica +STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Tabula mercedum onerum +############ range ends here + +############ range for company league menu starts +STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :Album foederis societatum +STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Censio effectus descripta +STR_GRAPH_MENU_HIGHSCORE :Album punctorum supremorum +############ range ends here + +############ range for industry menu starts +STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :Index industriarum +STR_INDUSTRY_MENU_INDUSTRY_CHAIN :Catenae industriarum +STR_INDUSTRY_MENU_FUND_NEW_INDUSTRY :Condere novam industriam +############ range ends here + +############ range for railway construction menu starts +STR_RAIL_MENU_RAILROAD_CONSTRUCTION :Constructio ferriviarum +STR_RAIL_MENU_ELRAIL_CONSTRUCTION :Constructio electricarum ferriviarum +STR_RAIL_MENU_MONORAIL_CONSTRUCTION :Constructio monoorbitarum +STR_RAIL_MENU_MAGLEV_CONSTRUCTION :Constructio maglev +############ range ends here + +############ range for road construction menu starts +STR_ROAD_MENU_ROAD_CONSTRUCTION :Constructio viarum +STR_ROAD_MENU_TRAM_CONSTRUCTION :Constructio ferriviarum stratarium +############ range ends here + +############ range for waterways construction menu starts +STR_WATERWAYS_MENU_WATERWAYS_CONSTRUCTION :Constructio viarum aquariarum +############ range ends here + +############ range for airport construction menu starts +STR_AIRCRAFT_MENU_AIRPORT_CONSTRUCTION :Constructio aeroportuum +############ range ends here + +############ range for landscaping menu starts +STR_LANDSCAPING_MENU_LANDSCAPING :Plasmatio terrae +STR_LANDSCAPING_MENU_PLANT_TREES :Serere arbores +STR_LANDSCAPING_MENU_PLACE_SIGN :Ponere signum +############ range ends here + +############ range for music menu starts +STR_TOOLBAR_SOUND_MUSIC :Sonus musicave +############ range ends here + +############ range for message menu starts +STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :Monstrare nuntium novissimum +STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Historia nuntiorum +############ range ends here + +############ range for about menu starts +STR_ABOUT_MENU_LAND_BLOCK_INFO :Terrae regionis indicia +STR_ABOUT_MENU_SEPARATOR : +STR_ABOUT_MENU_TOGGLE_CONSOLE :Monstrare celareve consolam +STR_ABOUT_MENU_AI_DEBUG :Emendatio IA/Ludi scriptorum +STR_ABOUT_MENU_SCREENSHOT :Imago conspectus +STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Imago conspectus maxime amplificata +STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Imago conspectus solite amplificata +STR_ABOUT_MENU_GIANT_SCREENSHOT :Imago cunctae tabulae geographicae +STR_ABOUT_MENU_ABOUT_OPENTTD :De 'OpenTTD' +STR_ABOUT_MENU_SPRITE_ALIGNER :Norma spiritus +STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Monstrare celareve arcas finitionum +STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Incipere desinereve pictura sordidorum laterculorum +############ range ends here + +############ range for ordinal numbers used for the place in the highscore window +STR_ORDINAL_NUMBER_1ST :Primum +STR_ORDINAL_NUMBER_2ND :Secundum +STR_ORDINAL_NUMBER_3RD :Tertium +STR_ORDINAL_NUMBER_4TH :Quartum +STR_ORDINAL_NUMBER_5TH :Quintum +STR_ORDINAL_NUMBER_6TH :Sextum +STR_ORDINAL_NUMBER_7TH :Septimum +STR_ORDINAL_NUMBER_8TH :Octavum +STR_ORDINAL_NUMBER_9TH :Nonum +STR_ORDINAL_NUMBER_10TH :Decimum +STR_ORDINAL_NUMBER_11TH :Undecimum +STR_ORDINAL_NUMBER_12TH :Duodecimum +STR_ORDINAL_NUMBER_13TH :Tertium Decimum +STR_ORDINAL_NUMBER_14TH :Quartum Decimum +STR_ORDINAL_NUMBER_15TH :Quintum Decimum +############ range for ordinal numbers ends + +############ range for days starts +STR_DAY_NUMBER_1ST :I +STR_DAY_NUMBER_2ND :II +STR_DAY_NUMBER_3RD :III +STR_DAY_NUMBER_4TH :IV +STR_DAY_NUMBER_5TH :V +STR_DAY_NUMBER_6TH :VI +STR_DAY_NUMBER_7TH :VII +STR_DAY_NUMBER_8TH :VIII +STR_DAY_NUMBER_9TH :IX +STR_DAY_NUMBER_10TH :X +STR_DAY_NUMBER_11TH :XI +STR_DAY_NUMBER_12TH :XII +STR_DAY_NUMBER_13TH :XIII +STR_DAY_NUMBER_14TH :XIV +STR_DAY_NUMBER_15TH :XV +STR_DAY_NUMBER_16TH :XVI +STR_DAY_NUMBER_17TH :XVII +STR_DAY_NUMBER_18TH :XVIII +STR_DAY_NUMBER_19TH :XIX +STR_DAY_NUMBER_20TH :XX +STR_DAY_NUMBER_21ST :XXI +STR_DAY_NUMBER_22ND :XXII +STR_DAY_NUMBER_23RD :XXIII +STR_DAY_NUMBER_24TH :XXIV +STR_DAY_NUMBER_25TH :XXV +STR_DAY_NUMBER_26TH :XXVI +STR_DAY_NUMBER_27TH :XXVII +STR_DAY_NUMBER_28TH :XXVIII +STR_DAY_NUMBER_29TH :XXIX +STR_DAY_NUMBER_30TH :XXX +STR_DAY_NUMBER_31ST :XXXI +############ range for days ends + +############ range for months starts +STR_MONTH_ABBREV_JAN :Ian +STR_MONTH_ABBREV_FEB :Feb +STR_MONTH_ABBREV_MAR :Mar +STR_MONTH_ABBREV_APR :Apr +STR_MONTH_ABBREV_MAY :Mai +STR_MONTH_ABBREV_JUN :Iun +STR_MONTH_ABBREV_JUL :Iul +STR_MONTH_ABBREV_AUG :Aug +STR_MONTH_ABBREV_SEP :Sep +STR_MONTH_ABBREV_OCT :Oct +STR_MONTH_ABBREV_NOV :Nov +STR_MONTH_ABBREV_DEC :Dec + +STR_MONTH_JAN :Ianuarii +STR_MONTH_FEB :Februarii +STR_MONTH_MAR :Martii +STR_MONTH_APR :Aprilis +STR_MONTH_MAY :Maii +STR_MONTH_JUN :Iunii +STR_MONTH_JUL :Iulii +STR_MONTH_AUG :Augusti +STR_MONTH_SEP :Septembris +STR_MONTH_OCT :Octobris +STR_MONTH_NOV :Novembris +STR_MONTH_DEC :Decembris +############ range for months ends + +# Graph window +STR_GRAPH_KEY_BUTTON :{BLACK}Clavis +STR_GRAPH_KEY_TOOLTIP :{BLACK}Monstrare formularum clavem +STR_GRAPH_X_LABEL_MONTH :{TINY_FONT}{STRING}{} {STRING} +STR_GRAPH_X_LABEL_MONTH_YEAR :{TINY_FONT}{STRING}{} {STRING}{}{NUM} +STR_GRAPH_Y_LABEL :{TINY_FONT}{STRING} +STR_GRAPH_Y_LABEL_NUMBER :{TINY_FONT}{COMMA} + +STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Formula Lucri Operationis Graphica +STR_GRAPH_INCOME_CAPTION :{WHITE}Formula Reditus Graphica +STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Unitates oneris traditae +STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Censiones effectus societatis (Censio maxima = 1000) +STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Aestimationes societatis + +STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Mercedes Onerum +STR_GRAPH_CARGO_PAYMENT_RATES_X_LABEL :{TINY_FONT}{BLACK}Dies in itinere +STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Merces tradendi 10 oneris unitates (aut 10,000 litra) per 20 quadra +STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Omnia Monstrare +STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Omnia Celare +STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Monstrare omnia onera in grapho mercedum onerum +STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}Monstrare nulla onera in grapho mercedum onerum +STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Monstrare celareve aspectum huius oneris in grapho +STR_GRAPH_CARGO_PAYMENT_CARGO :{TINY_FONT}{BLACK}{STRING} + +STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP :{BLACK}Monstrare censiones effectus descriptas + +# Graph key window +STR_GRAPH_KEY_CAPTION :{WHITE}Clavis graphicarum societatum +STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}Preme ut conspectum huius societatis in grapho monstretur celeturve + +# Company league window +STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}Album Foederis Societatum +STR_COMPANY_LEAGUE_COMPANY_NAME :{ORANGE}{COMPANY} {BLACK}{COMPANY_NUM} '{STRING}' +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ENGINEER :Mechanicus +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :Curator Commercii +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :Procurator Vecturae +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :Praepositus Itineris +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_DIRECTOR :Rector +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :Moderator +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :Princeps +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_PRESIDENT :Praeses +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TYCOON :Dives Maximus + +# Performance detail window +STR_PERFORMANCE_DETAIL :{WHITE}Censio effectus descripta +STR_PERFORMANCE_DETAIL_KEY :{BLACK}Descriptio +STR_PERFORMANCE_DETAIL_AMOUNT_CURRENCY :{BLACK}({CURRENCY_SHORT}/{CURRENCY_SHORT}) +STR_PERFORMANCE_DETAIL_AMOUNT_INT :{BLACK}({COMMA}/{COMMA}) +STR_PERFORMANCE_DETAIL_PERCENT :{WHITE}{NUM}% +STR_PERFORMANCE_DETAIL_SELECT_COMPANY_TOOLTIP :{BLACK}Videre descriptionem de hac societate +############ Those following lines need to be in this order!! +STR_PERFORMANCE_DETAIL_VEHICLES :{BLACK}Vehicula: +STR_PERFORMANCE_DETAIL_STATIONS :{BLACK}Stationes: +STR_PERFORMANCE_DETAIL_MIN_PROFIT :{BLACK}Lucrum minimum: +STR_PERFORMANCE_DETAIL_MIN_INCOME :{BLACK}Reditus minimus: +STR_PERFORMANCE_DETAIL_MAX_INCOME :{BLACK}Reditus maximus: +STR_PERFORMANCE_DETAIL_DELIVERED :{BLACK}Tradita: +STR_PERFORMANCE_DETAIL_CARGO :{BLACK}Onera: +STR_PERFORMANCE_DETAIL_MONEY :{BLACK}Pecunia: +STR_PERFORMANCE_DETAIL_LOAN :{BLACK}Creditum: +STR_PERFORMANCE_DETAIL_TOTAL :{BLACK}Omnia: +############ End of order list +STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP :{BLACK}Numerus vehiculorum quae lucrum fecerunt anno priore. Vehicula viaria, hamaxostichi, naves, et aeroplana numerantur +STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Numerus stationum nuper adventorum. Stationes ferriviariae laophoricaeque, et aeroportus, et cetera numerantur separatim etsi in eadem statione sunt +STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP :{BLACK}Lucrum vehiculi quod minimum lucrum habet (modo vehicula plures quam duos annos in aetate) +STR_PERFORMANCE_DETAIL_MIN_INCOME_TOOLTIP :{BLACK}Copia pecuniae merita in quadrante cum minimo lucro ex 12 quadrantibus prioribus +STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}Copia pecuniae merita in quadrante cum maximo lucro ex 12 quadrantibus prioribus +STR_PERFORMANCE_DETAIL_DELIVERED_TOOLTIP :{BLACK}Unitates oneris traditae quattuor quadrantibus prioribus +STR_PERFORMANCE_DETAIL_CARGO_TOOLTIP :{BLACK}Numerus typorum oneris traditorum quadrante priore +STR_PERFORMANCE_DETAIL_MONEY_TOOLTIP :{BLACK}Pecunia huius societatis +STR_PERFORMANCE_DETAIL_LOAN_TOOLTIP :{BLACK}Copia crediti huius societatis +STR_PERFORMANCE_DETAIL_TOTAL_TOOLTIP :{BLACK}Puncta tota ex punctis maximis + +# Music window +STR_MUSIC_JAZZ_JUKEBOX_CAPTION :{WHITE}'Jazz Jukebox' +STR_MUSIC_PLAYLIST_ALL :{TINY_FONT}{BLACK}Omnes +STR_MUSIC_PLAYLIST_OLD_STYLE :{TINY_FONT}{BLACK}Vetus +STR_MUSIC_PLAYLIST_NEW_STYLE :{TINY_FONT}{BLACK}Novitas +STR_MUSIC_PLAYLIST_EZY_STREET :{TINY_FONT}{BLACK}Via Facilis +STR_MUSIC_PLAYLIST_CUSTOM_1 :{TINY_FONT}{BLACK}Propria I +STR_MUSIC_PLAYLIST_CUSTOM_2 :{TINY_FONT}{BLACK}Propria II +STR_MUSIC_MUSIC_VOLUME :{TINY_FONT}{BLACK}Amplitudo Musicae +STR_MUSIC_EFFECTS_VOLUME :{TINY_FONT}{BLACK}Amplitido Sonorum +STR_MUSIC_RULER_MIN :{TINY_FONT}{BLACK}MIN +STR_MUSIC_RULER_MAX :{TINY_FONT}{BLACK}MAX +STR_MUSIC_RULER_MARKER :{TINY_FONT}{BLACK}' +STR_MUSIC_TRACK_NONE :{TINY_FONT}{DKGREEN}-- +STR_MUSIC_TRACK_DIGIT :{TINY_FONT}{DKGREEN}{ZEROFILL_NUM} +STR_MUSIC_TITLE_NONE :{TINY_FONT}{DKGREEN}------ +STR_MUSIC_TITLE_NAME :{TINY_FONT}{DKGREEN}"{STRING}" +STR_MUSIC_TRACK :{TINY_FONT}{BLACK}Carmen +STR_MUSIC_XTITLE :{TINY_FONT}{BLACK}Titulus +STR_MUSIC_SHUFFLE :{TINY_FONT}{BLACK}Miscere +STR_MUSIC_PROGRAM :{TINY_FONT}{BLACK}Programma +STR_MUSIC_TOOLTIP_SKIP_TO_PREVIOUS_TRACK :{BLACK}Recedere carmini priori +STR_MUSIC_TOOLTIP_SKIP_TO_NEXT_TRACK_IN_SELECTION :{BLACK}Procedere carmini secundo +STR_MUSIC_TOOLTIP_STOP_PLAYING_MUSIC :{BLACK}Desinere musicae +STR_MUSIC_TOOLTIP_START_PLAYING_MUSIC :{BLACK}Incipere musicae +STR_MUSIC_TOOLTIP_DRAG_SLIDERS_TO_SET_MUSIC :{BLACK}Trahe ut amplitudines musicae sonorumque mutentur +STR_MUSIC_TOOLTIP_SELECT_ALL_TRACKS_PROGRAM :{BLACK}Eligere compositionem 'omnia carmina' +STR_MUSIC_TOOLTIP_SELECT_OLD_STYLE_MUSIC :{BLACK}Eligere compositionem 'musicam veterem' +STR_MUSIC_TOOLTIP_SELECT_NEW_STYLE_MUSIC :{BLACK}Eligere compositionem 'musicam novitatis' +STR_MUSIC_TOOLTIP_SELECT_EZY_STREET_STYLE :{BLACK}Eligere compositionem 'viam facilem' +STR_MUSIC_TOOLTIP_SELECT_CUSTOM_1_USER_DEFINED :{BLACK}Eligere compositionem 'Propriam I' (a lusore electam) +STR_MUSIC_TOOLTIP_SELECT_CUSTOM_2_USER_DEFINED :{BLACK}Eligere compositionem 'Propriam II' (a lusore electam) +STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Incipere desinereve admixtionem carminum +STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Monstrare fenestram electionis carminum + +STR_ERROR_NO_SONGS :{WHITE}Compositio sine carminibus electa est. Nulla carmina canentur + +# Playlist window +STR_PLAYLIST_MUSIC_PROGRAM_SELECTION :{WHITE}Electio Compositionis Musicae +STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} "{STRING}" +STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Index Carminum +STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Compositio - '{STRING}' +STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Vacuefacere +STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Vacuefacere compositionem (modo Propriam I aut Propriam II) +STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Preme in carmen ut compositioni addantur (modo Propriae I aut Propriae II) +STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Preme in carmen ut ex compositione removeatur (modo Propria I aut Propria II) + +# Highscore window +STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Societates supremae quae attigerunt {NUM} +STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Album Foederis Societatum in {NUM} +STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}. +STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :Laborator +STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :Venditor +STR_HIGHSCORE_PERFORMANCE_TITLE_INDUSTRIALIST :Negotiator +STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Mercator +STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Dominus +STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Optimas +STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Dives Saeclaris +STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY} +STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA}) +STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} attingit statum '{STRING}'! +STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} of {COMPANY} attingit statum '{STRING}'! + +# Smallmap window +STR_SMALLMAP_CAPTION :{WHITE}Tabula Geographica - {STRING} + +STR_SMALLMAP_TYPE_CONTOURS :Topographia +STR_SMALLMAP_TYPE_VEHICLES :Vehicula +STR_SMALLMAP_TYPE_INDUSTRIES :Industriae +STR_SMALLMAP_TYPE_ROUTEMAP :Itinera Onerum +STR_SMALLMAP_TYPE_ROUTES :Viae +STR_SMALLMAP_TYPE_VEGETATION :Vegetatio +STR_SMALLMAP_TYPE_OWNERS :Possessores +STR_SMALLMAP_TOOLTIP_SHOW_LAND_CONTOURS_ON_MAP :{BLACK}Monstrare topographiam in tabula +STR_SMALLMAP_TOOLTIP_SHOW_VEHICLES_ON_MAP :{BLACK}Monstrare vehicula in tabula +STR_SMALLMAP_TOOLTIP_SHOW_INDUSTRIES_ON_MAP :{BLACK}Monstrare industrias in tabula +STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Monstrare itinera onerum in tabula +STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Monstrare itinera in tabula +STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Monstrare vegetationem in tabula +STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Monstrare terrarum possessores in tabula +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Preme in typum industriae ut monstretur celeturve. Ctrl+Preme ut omnes typi praeter eum qui electus est celentur. Ctrl+Preme denuo ut omnes typi monstrentur +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Preme in societatem ut monstretur celeturve. Ctrl+Preme ut omnes praeter eam quae electa est celentur. Ctrl+Preme denuo ut omnes societates monstrentur +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Preme in onus ut monstretur celeturve. Ctrl+Preme ut omnia praeter id quod electum est celentur. Ctrl+Preme denuo ut omnia onera monstrentur + +STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Viae +STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Ferriviae +STR_SMALLMAP_LEGENDA_STATIONS_AIRPORTS_DOCKS :{TINY_FONT}{BLACK}Stationes/Aeroportus/Navalia +STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES :{TINY_FONT}{BLACK}Aedificia/Industriae +STR_SMALLMAP_LEGENDA_VEHICLES :{TINY_FONT}{BLACK}Vehicula +STR_SMALLMAP_LEGENDA_TRAINS :{TINY_FONT}{BLACK}Tramina +STR_SMALLMAP_LEGENDA_ROAD_VEHICLES :{TINY_FONT}{BLACK}Vehicula Viaria +STR_SMALLMAP_LEGENDA_SHIPS :{TINY_FONT}{BLACK}Naves +STR_SMALLMAP_LEGENDA_AIRCRAFT :{TINY_FONT}{BLACK}Aeroplana +STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES :{TINY_FONT}{BLACK}Itinera +STR_SMALLMAP_LEGENDA_FOREST :{TINY_FONT}{BLACK}Silva +STR_SMALLMAP_LEGENDA_RAILROAD_STATION :{TINY_FONT}{BLACK}Statio ferriviaria +STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{TINY_FONT}{BLACK}Statio autoplaustrica +STR_SMALLMAP_LEGENDA_BUS_STATION :{TINY_FONT}{BLACK}Statio laophorica +STR_SMALLMAP_LEGENDA_AIRPORT_HELIPORT :{TINY_FONT}{BLACK}Aeroportus/Heliportus +STR_SMALLMAP_LEGENDA_DOCK :{TINY_FONT}{BLACK}Navale +STR_SMALLMAP_LEGENDA_ROUGH_LAND :{TINY_FONT}{BLACK}Terra Aspera +STR_SMALLMAP_LEGENDA_GRASS_LAND :{TINY_FONT}{BLACK}Terra Herbosa +STR_SMALLMAP_LEGENDA_BARE_LAND :{TINY_FONT}{BLACK}Terra Nuda +STR_SMALLMAP_LEGENDA_FIELDS :{TINY_FONT}{BLACK}Agri +STR_SMALLMAP_LEGENDA_TREES :{TINY_FONT}{BLACK}Arbores +STR_SMALLMAP_LEGENDA_ROCKS :{TINY_FONT}{BLACK}Saxa +STR_SMALLMAP_LEGENDA_WATER :{TINY_FONT}{BLACK}Aqua +STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Sine posessore +STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Oppida +STR_SMALLMAP_LEGENDA_INDUSTRIES :{TINY_FONT}{BLACK}Industriae +STR_SMALLMAP_LEGENDA_DESERT :{TINY_FONT}{BLACK}Deserta +STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLACK}Nix + +STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Monstrare celareve nomina oppidorum in tabula +STR_SMALLMAP_CENTER :{BLACK}Movere tabulam geographicam supra conspectum praesentem +STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STRING} ({NUM}) +STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING} +STR_SMALLMAP_COMPANY :{TINY_FONT}{COMPANY} +STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} +STR_SMALLMAP_DISABLE_ALL :{BLACK}Omnia celare +STR_SMALLMAP_ENABLE_ALL :{BLACK}Omnia monstrare +STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Monstrare altitudinem +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}Celare omnes industrias in tabula +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Monstrare omnes industrias in tabula +STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Monstrare celareve topographiam +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Celare possessiones societatum in tabula +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Monstrare possessiones societatum in tabula +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Celare onera in tabula +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Monstrare onera in tabula + +# Status bar messages +STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Monstrare nuntium novissimum +STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - +STR_STATUSBAR_PAUSED :{YELLOW}* * INTERMISSUS * * +STR_STATUSBAR_AUTOSAVE :{RED}AUTOSERVANS +STR_STATUSBAR_SAVING_GAME :{RED}* * LUDUM SERVANS * * + +# News message history +STR_MESSAGE_HISTORY :{WHITE}Historia Nuntiorum +STR_MESSAGE_HISTORY_TOOLTIP :{BLACK}Index nuntiorum recentium +STR_MESSAGE_NEWS_FORMAT :{STRING} - {STRING} + +STR_NEWS_MESSAGE_CAPTION :{WHITE}Nuntium +STR_NEWS_CUSTOM_ITEM :{BIG_FONT}{BLACK}{STRING} + +STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK}Cives celebrant . . .{}Hamaxostichus primus advenit ad {STATION}! +STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}Cives celebrant . . .{}Laophorium primum advenit ad {STATION}! +STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}Cives celebrant . . .{}Autoplaustrum primum advenit ad {STATION}! +STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Cives celebrant . . .{}Prima transviaria raeda vectoria advenit ad {STATION}! +STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Cives celebrant . . .{}Prima transviaria raeda oneraria advenit ad {STATION}! +STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Cives celebrant . . .{}Navis prima advenit ad {STATION}! +STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Cives celebrant . . .{}Aeroplanum primum advenit ad {STATION}! + +STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Calamitas Ferriviaria!{}{COMMA} in incendio pereunt post conflictum! +STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Calamitas Autocinetica!{}Gubernator in incendio perit post conflictum contra tramen! +STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Calamitas Autocinetica!{}{COMMA} in incendio pereunt post conflictum contra tramen! +STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Calamitas Aeroplanica!{}{COMMA} in incendio pereunt apud {STATION}! +STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Calamitas Aeroplanica!{}Aeroplano fomes caruit, {COMMA} in incendio pereunt! + +STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}Calamitas Zeppelinaria apud {STATION}! +STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}Vehiculum destructum est in conflictu cum re volante ignota! +STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}Ergasterium petrolearium fractum est apud {TOWN}! +STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}Fabrica fracta est condicionibus suspectis apud {TOWN}! +STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}Res volans ignota appellit apud {TOWN}! +STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Labes carbonifodinae ruinam facit apud {TOWN}! +STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Inundationes!{}Amplius {COMMA} irreperti, mortui rati post magnas inundationes! + +STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Tribulatio Societatis! +STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} venum detur aut perdatur nisi effectus mox increscit! +STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Consolidatio Societatum! +STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} vendita est; {STRING} emit, pretio {CURRENCY_LONG}! +STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Perditum! +STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} clusus est possessionibus venditis abs creditoribus! +STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova societas incohata! +STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} incipit apud {TOWN}! +STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} sumpta est a {STRING}! +STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Praeses) + +STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}Novum oppidum {1:TOWN} constructum expensis a {0:STRING} comparatis! + +STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Nov{G us a um i ae a} {STRING} construitur apud {TOWN}! +STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Nov{G us a um i ae a} {STRING} adsit{G 0 us a um i ae a} apud {TOWN}! + +STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLACK}{STRING} se claudend{G 0 um am um os as a} esse nuntiat! +STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}{STRING} se claudend{G 0 um am um os as a} esse nuntiat propter inopiam materiarum! +STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK}{STRING} se claudend{G 0 um am um os as a} esse nuntiat propter inopiam arborum vicinarum! + +STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}Unio Monetaria Europaea!{}{}Euro iam solus nummus in civitate tua est! +STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLACK}Recessio Universa!{}{}Argentarii terrent oeconomia decrescente! +STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}Recessio Finita!{}{}Industriae oeconomiae crescenti accredunt! + +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} productionem auget! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}{INDUSTRY} nuntiat novam venam carbonis repertam esse!{}Productionem duplicatum iri nuntiatur! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}{INDUSTRY} nuntiat novum fontem petrolei repertum esse!{}Productionem duplicatum iri nuntiatur! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}{INDUSTRY} nuntiat productionem duplicatum iri arte agriculturae meliore! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_SMOOTH :{BIG_FONT}{BLACK}{1:INDUSTRY} productionem {0:STRING.gen} {2:COMMA}% augere nuntiat! +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} productionem dimidiare nuntiat! +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLACK}{INDUSTRY} se bestiolis infest{G 0 um am um os as a} esse nuntiat!{}Productionem dimidiare nuntiatur! +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLACK}{1:INDUSTRY} productionem {0:STRING.gen} {2:COMMA}% decrescere nuntiat! + +STR_NEWS_TRAIN_IS_WAITING :{WHITE}{VEHICLE} manens est in receptaculo +STR_NEWS_ROAD_VEHICLE_IS_WAITING :{WHITE}{VEHICLE} manens est in receptaculo +STR_NEWS_SHIP_IS_WAITING :{WHITE}{VEHICLE} manens est in receptaculo +STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}{VEHICLE} manens est in tugurio + +# Order review system / warnings +STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE} parum habet iussa in horario +STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} iussum irritum habet +STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} iussa duplicata habet +STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} stationem irritam habet in horario +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} habet in iussis aeroportum cuius aerodromus nimis brevis est + +STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} veterascit +STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} valde veterascit +STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}{VEHICLE} valde veterascit atque necesse est redimi +STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE} non potest iter invenire +STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} errans est +STR_NEWS_VEHICLE_IS_UNPROFITABLE :{WHITE}{VEHICLE} anno priore {CURRENCY_LONG} lucratur +STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE} non potest ire ad destinatum nam extra distantiam volatus maximam est + +STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} constitit quia ordo reficiendi defecit +STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Autoredemptio defecit {VEHICLE}{}{STRING} + +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nov{G us a um i ae a} {STRING} parabil{G 0 is is e es es ia}! +STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nov{G us a um i ae a} {STRING} parabil{G 0 is is e es es ia}! - {ENGINE} + +STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} non diutius {STRING.acc} accipit +STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} non diutius {STRING.acc} {STRING.acc}que accipit +STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} nunc {STRING.acc} accipit +STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} nunc {STRING.acc} {STRING.acc}que accipit + +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Condicio subsidii discedit:{}{}Vectura {STRING.gen} a {STRING.abl} ad {STRING.acc} non diutius subveniatur +STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subsidium retractum:{}{}Vectura {STRING.gen} a {STRING.abl} ad {STRING.acc} non diutius subvenietur +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subsidium oblatum:{}{}Prima vectura {STRING.gen} a {STRING.abl} ad {STRING.acc} unum annum subveniatur ab auctoritate vicinale! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}{STRING} assignatur subsidium!{}{}Vectura {STRING.gen} a {STRING.abl} ad {STRING.acc} merebit reditum sesquiplicem anno secundo! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}{STRING} assignatur subsidium!{}{}Vectura {STRING.gen} a {STRING.abl} ad {STRING.acc} merebit reditum duplicem anno secundo! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}{STRING} assignatur subsidium!{}{}Vectura {STRING.gen} a {STRING.abl} ad {STRING.acc} merebit reditum triplicem anno secundo! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}{STRING} assignatur subsidium!{}{}Vectura {STRING.gen} a {STRING.abl} ad {STRING.acc} merebit reditum quadruplicem anno secundo! + +STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Chaos vehicularium in {TOWN}!{}{}Reconstructio viarum, expensis a {STRING} compartis, affert miseriam autoraedariis 6 menses! +STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Monopolium Vecturae! +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}{TOWN}: Auctoritas vicinalis nuntiat {STRING} esse societatem unicam cui uno anno licet transportare intra oppidum! + +# Extra view window +STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Fenestra conspectus {COMMA} +STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Transcribere ad fenestram conspectus +STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Transcribere locum primarium ad hanc fenestram conspectus +STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Glutinare ex fenestra conspectus +STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Glutinare locum ex hac fenestra ad conspectum primarium + +# Game options window +STR_GAME_OPTIONS_CAPTION :{WHITE}Ludi optiones +STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Unitates nummi +STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Electio unitatum nummi + +############ start of currency region +STR_GAME_OPTIONS_CURRENCY_GBP :Libra Britannica (GBP) +STR_GAME_OPTIONS_CURRENCY_USD :Dollarium CFA (USD) +STR_GAME_OPTIONS_CURRENCY_EUR :Euro (EUR) +STR_GAME_OPTIONS_CURRENCY_JPY :Ien Iaponicus (JPY) +STR_GAME_OPTIONS_CURRENCY_ATS :Scellinus Austriacus (ATS) +STR_GAME_OPTIONS_CURRENCY_BEF :Francus Belgicus (BEF) +STR_GAME_OPTIONS_CURRENCY_CHF :Francus Helveticus (CHF) +STR_GAME_OPTIONS_CURRENCY_CZK :Corona Cecha (CZK) +STR_GAME_OPTIONS_CURRENCY_DEM :Marca Germanica (DEM) +STR_GAME_OPTIONS_CURRENCY_DKK :Corona Danica (DKK) +STR_GAME_OPTIONS_CURRENCY_ESP :Peseta Hispanica (ESP) +STR_GAME_OPTIONS_CURRENCY_FIM :Marca Finnica (FIM) +STR_GAME_OPTIONS_CURRENCY_FRF :Francus Francogallicus (FRF) +STR_GAME_OPTIONS_CURRENCY_GRD :Drachma Graeca (GRD) +STR_GAME_OPTIONS_CURRENCY_HUF :Florenus Hungaricus (HUF) +STR_GAME_OPTIONS_CURRENCY_ISK :Corona Islandica (ISK) +STR_GAME_OPTIONS_CURRENCY_ITL :Libra Italiana (ITL) +STR_GAME_OPTIONS_CURRENCY_NLG :Florenus Batavicus (NLG) +STR_GAME_OPTIONS_CURRENCY_NOK :Corona Norvegica (NOK) +STR_GAME_OPTIONS_CURRENCY_PLN :Złoty Polonica (PLN) +STR_GAME_OPTIONS_CURRENCY_RON :Leu Romanicus (RON) +STR_GAME_OPTIONS_CURRENCY_RUR :Rubelus Russicus (RUR) +STR_GAME_OPTIONS_CURRENCY_SIT :Dollarium Slovenicum (SIT) +STR_GAME_OPTIONS_CURRENCY_SEK :Corona Suecica (SEK) +STR_GAME_OPTIONS_CURRENCY_TRY :Libra Turcica (TRY) +STR_GAME_OPTIONS_CURRENCY_SKK :Corona Slovaca (SKK) +STR_GAME_OPTIONS_CURRENCY_BRL :Regalis Brasilica (BRL) +STR_GAME_OPTIONS_CURRENCY_EEK :Corona Estonica (EEK) +STR_GAME_OPTIONS_CURRENCY_LTL :Litas Lithuanica (LTL) +STR_GAME_OPTIONS_CURRENCY_KRW :Von Coreanus (KRW) +STR_GAME_OPTIONS_CURRENCY_ZAR :Randum Africae Australis (ZAR) +STR_GAME_OPTIONS_CURRENCY_CUSTOM :Propria... +STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgiana (GEL) +STR_GAME_OPTIONS_CURRENCY_IRR :Regalis Iranica (IRR) +############ end of currency region + +STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehicula Viaria +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Eligere latus viae gubernandi +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Gubernantur sinistro +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Gubernantur dextro + +STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Nomina oppidorum +STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Eligere oppidorum nomina + +############ start of townname region +STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Anglica (Primigenia) +STR_GAME_OPTIONS_TOWN_NAME_FRENCH :Francogallica +STR_GAME_OPTIONS_TOWN_NAME_GERMAN :Theodisca +STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Anglica (Additicia) +STR_GAME_OPTIONS_TOWN_NAME_LATIN_AMERICAN :Americae Latinae +STR_GAME_OPTIONS_TOWN_NAME_SILLY :Ridicula +STR_GAME_OPTIONS_TOWN_NAME_SWEDISH :Suecica +STR_GAME_OPTIONS_TOWN_NAME_DUTCH :Batavica +STR_GAME_OPTIONS_TOWN_NAME_FINNISH :Finnica +STR_GAME_OPTIONS_TOWN_NAME_POLISH :Polonica +STR_GAME_OPTIONS_TOWN_NAME_SLOVAK :Slovaca +STR_GAME_OPTIONS_TOWN_NAME_NORWEGIAN :Norvegica +STR_GAME_OPTIONS_TOWN_NAME_HUNGARIAN :Hungarica +STR_GAME_OPTIONS_TOWN_NAME_AUSTRIAN :Austriaca +STR_GAME_OPTIONS_TOWN_NAME_ROMANIAN :Romanica +STR_GAME_OPTIONS_TOWN_NAME_CZECH :Cecha +STR_GAME_OPTIONS_TOWN_NAME_SWISS :Helvetica +STR_GAME_OPTIONS_TOWN_NAME_DANISH :Danica +STR_GAME_OPTIONS_TOWN_NAME_TURKISH :Turcica +STR_GAME_OPTIONS_TOWN_NAME_ITALIAN :Italiana +STR_GAME_OPTIONS_TOWN_NAME_CATALAN :Catalana +############ end of townname region + +STR_GAME_OPTIONS_AUTOSAVE_FRAME :{BLACK}Servare automatice +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Eligere crebritatem automatice ludum servandi + +############ start of autosave dropdown +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_OFF :Numquam +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_1_MONTH :Singulis mensibus +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_3_MONTHS :Ternis mensibus +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_6_MONTHS :Senis mensibus +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_12_MONTHS :Duodenis mensibus +############ end of autosave dropdown + +STR_GAME_OPTIONS_LANGUAGE :{BLACK}Lingua +STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Eligere linguam interfaciei + +STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Cunctum scrinium +STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Optione electa, OpenTTD cuncto scrinio ostenditur + +STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resolutio scrinii +STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Eligere resolutio scrinii adhibenda +STR_GAME_OPTIONS_RESOLUTION_OTHER :alia + +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Magnitudo interfaciei +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Eligere magnitudinem interfaciei adhibendam + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Solita +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Duplex +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quadruplex + +STR_GAME_OPTIONS_BASE_GRF :{BLACK}Fundamentum graphicum +STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Eligere fundamentum graphicum adhibendum +STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fascicul{P us i} absen{P s tes}/corrupt{P us i} +STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Indicia additicia de hoc fundamento graphico + +STR_GAME_OPTIONS_BASE_SFX :{BLACK}Fundamentum sonicum +STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Eligere fundamentum sonicum adhibendum +STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Indicia additicia de hoc fundamento sonico + +STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Fundamentum musicum +STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Eligere fundamentum musicum adhibendum +STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} fascicul{P us i} corrupt{P us i} +STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Indicia additicia de hoc fundamento musico + +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Non potuit repperire indicem resolutionum +STR_ERROR_FULLSCREEN_FAILED :{WHITE}Mutatio ad cunctum scrinium defecit + +# Custom currency window + +STR_CURRENCY_WINDOW :{WHITE}Nummus Proprius +STR_CURRENCY_EXCHANGE_RATE :{LTBLUE}Collybus: {ORANGE}{CURRENCY_LONG} = £ {COMMA} +STR_CURRENCY_DECREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Minuere copiam nummi tui quae aequa est uni Librae Brittanicae (£) +STR_CURRENCY_INCREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Augere copiam nummi tui quae aequa est uni Librae Brittanicae (£) +STR_CURRENCY_SET_EXCHANGE_RATE_TOOLTIP :{BLACK}Eligere collybum nummi tui + +STR_CURRENCY_SEPARATOR :{LTBLUE}Symbolum separans: {ORANGE}{STRING} +STR_CURRENCY_SET_CUSTOM_CURRENCY_SEPARATOR_TOOLTIP :{BLACK}Eligere symbolum separans nummi tui + +STR_CURRENCY_PREFIX :{LTBLUE}Praefixum: {ORANGE}{STRING} +STR_CURRENCY_SET_CUSTOM_CURRENCY_PREFIX_TOOLTIP :{BLACK}Eligere praefixum nummi tui +STR_CURRENCY_SUFFIX :{LTBLUE}Suffixum: {ORANGE}{STRING} +STR_CURRENCY_SET_CUSTOM_CURRENCY_SUFFIX_TOOLTIP :{BLACK}Eligere suffixum nummi tui + +STR_CURRENCY_SWITCH_TO_EURO :{LTBLUE}Mutare ad Euro: {ORANGE}{NUM} +STR_CURRENCY_SWITCH_TO_EURO_NEVER :{LTBLUE}Mutare ad Euro: {ORANGE}numquam +STR_CURRENCY_SET_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Eligere annum ad Euro mutandi +STR_CURRENCY_DECREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Mutare ad Euro ocius +STR_CURRENCY_INCREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Mutare ad Euro lentius + +STR_CURRENCY_PREVIEW :{LTBLUE}Praevisum: {ORANGE}{CURRENCY_LONG} +STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}Copia nummi tui quae aequa est 10000 Librae Britannicae (£) +STR_CURRENCY_CHANGE_PARAMETER :{BLACK}Mutare parametrum nummi proprii + +STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Numerus competitorum maximus: {ORANGE}{COMMA} + +STR_NONE :Nullae +STR_FUNDING_ONLY :Modo conditu +STR_MINIMAL :Minimus +STR_NUM_VERY_LOW :Minor +STR_NUM_LOW :Parvus +STR_NUM_NORMAL :Mediocris +STR_NUM_HIGH :Magnus +STR_NUM_CUSTOM :Proprius +STR_NUM_CUSTOM_NUMBER :Proprius ({NUM}) + +STR_VARIETY_NONE :Nulla +STR_VARIETY_VERY_LOW :Minima +STR_VARIETY_LOW :Parva +STR_VARIETY_MEDIUM :Mediocris +STR_VARIETY_HIGH :Magna +STR_VARIETY_VERY_HIGH :Maxima + +STR_AI_SPEED_VERY_SLOW :Lentissima +STR_AI_SPEED_SLOW :Lenta +STR_AI_SPEED_MEDIUM :Mediocris +STR_AI_SPEED_FAST :Celeris +STR_AI_SPEED_VERY_FAST :Celerrima + +STR_SEA_LEVEL_VERY_LOW :Minima +STR_SEA_LEVEL_LOW :Parva +STR_SEA_LEVEL_MEDIUM :Mediocris +STR_SEA_LEVEL_HIGH :Magna +STR_SEA_LEVEL_CUSTOM :Propria +STR_SEA_LEVEL_CUSTOM_PERCENTAGE :Propria ({NUM}%) + +STR_RIVERS_NONE :Nulli +STR_RIVERS_FEW :Parvus +STR_RIVERS_MODERATE :Mediocris +STR_RIVERS_LOT :Magnus + +STR_DISASTER_NONE :Nullae +STR_DISASTER_REDUCED :Rarae +STR_DISASTER_NORMAL :Mediocres + +STR_SUBSIDY_X1_5 :Sesquiplex +STR_SUBSIDY_X2 :Duplex +STR_SUBSIDY_X3 :Triplex +STR_SUBSIDY_X4 :Quadruplex + +STR_TERRAIN_TYPE_VERY_FLAT :Planissimus +STR_TERRAIN_TYPE_FLAT :Planus +STR_TERRAIN_TYPE_HILLY :Clivosus +STR_TERRAIN_TYPE_MOUNTAINOUS :Montanus +STR_TERRAIN_TYPE_ALPINIST :Alpinus + +STR_CITY_APPROVAL_PERMISSIVE :Longe +STR_CITY_APPROVAL_TOLERANT :Breviter +STR_CITY_APPROVAL_HOSTILE :Brevissime + +STR_WARNING_NO_SUITABLE_AI :{WHITE}Nullae IA parabiles sunt...{}Potes arcessere nunullas IA in 'Inventario Interretiale' + +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Electiones +STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Series colans: +STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Omnia expandere +STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Omnia collocare +STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(nulla explicatio parabilis) +STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Valor solitus: {ORANGE}{STRING} +STR_CONFIG_SETTING_TYPE :{LTBLUE}Electionis typus: {ORANGE}{STRING} +STR_CONFIG_SETTING_TYPE_CLIENT :Electio clientis (non inclusa in ludis servatis; omnes ludos afficit) +STR_CONFIG_SETTING_TYPE_GAME_MENU :Electio ludi (inclusa in ludis servatis; modo ludos novos afficit) +STR_CONFIG_SETTING_TYPE_GAME_INGAME :Electio ludi (inclusa in ludo servato; modo ludum currentem afficit) +STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Electio societatis (inclusa in ludis servatis; modo ludos novos afficit) +STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Electio societatis (inclusa in ludo servato; modo societatem currentem afficit) + +STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categoria: +STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Typus: +STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Definit indicem optionum ut solum electiones simplices aut mutatae monstrentur +STR_CONFIG_SETTING_RESTRICT_BASIC :Electiones simplices (modo monstrare electiones magni momenti) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Electiones doctae (monstrare pleras electiones) +STR_CONFIG_SETTING_RESTRICT_ALL :Electiones peritae (monstrare omnes electiones, etiam insolitas) +STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Electiones cuius valores differunt solitis +STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Electiones cuius valores differunt eis ludorum novorum + +STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Definit indicem ut tantum quaedam optiones monstrentur +STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Omnes electiones +STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Electiones clientis (non inclusae in ludis servatis; omnes ludos afficiunt) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Electiones ludi (inclusae in ludis servatis; modo ludos novos afficiunt) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Electiones ludi (inclusae in ludo servato; modo ludum currentem afficiunt) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Electiones societatis (inclusae in ludis servatis; modo ludos novos afficiunt) +STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Electiones societatis (inclusae in ludo servato; modo societatem currentem afficiunt) +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Monstrare eventum investigationis optione separatum{}{SILVER}Categoria {BLACK}ad {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Monstrare eventum investigationis optione separatum{}{SILVER}Typus {BLACK}ad {WHITE}Omnes electionis typi +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Monstrare eventum investigationis optione separatum{}{SILVER}Categoria {BLACK}ad {WHITE}{STRING} {BLACK}et {SILVER}Typus {BLACK}ad {WHITE}Omnes electionis typi +STR_CONFIG_SETTINGS_NONE :{WHITE}- Nullae - + +STR_CONFIG_SETTING_OFF :Non +STR_CONFIG_SETTING_ON :Ita +STR_CONFIG_SETTING_DISABLED :Neglecta + +STR_CONFIG_SETTING_COMPANIES_OFF :Non +STR_CONFIG_SETTING_COMPANIES_OWN :Tuae societati +STR_CONFIG_SETTING_COMPANIES_ALL :Omnibus societatibus + +STR_CONFIG_SETTING_NONE :Nullus +STR_CONFIG_SETTING_ORIGINAL :Originalis +STR_CONFIG_SETTING_REALISTIC :Realisticus + +STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT :Laevo +STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Medio +STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Dextro + +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Creditum maximum in initio: {STRING} +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Copia crediti maxima (sine inflatione) +STR_CONFIG_SETTING_INTEREST_RATE :Proportio faenoris: {STRING} +STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Proportio faenoris creditorum; etiam inflationem afficit, si inflatio adest +STR_CONFIG_SETTING_RUNNING_COSTS :Pretii operandi: {STRING} +STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Eligere magnitudinem pretiorum vehicula operandi atque infrastructuram ministrandi +STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocitas struendi: {STRING} +STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Definire IA velocitatem struendi +STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Defectiones vehiculorum: {STRING} +STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Eligere crebritatem vehiculis deficiendi quae parum ministrantur +STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Multiplicator subsidiorum: {STRING} +STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Eligere proportionem reditus additicii subsidiorum +STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Pretii struendi: {STRING} +STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Eligere magnitudinem pretiorum struendi emendique +STR_CONFIG_SETTING_RECESSIONS :Recessiones: {STRING} +STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Sinere recessiones oeconomicae aliquando accidere. In recessione oeconomica, productio omnino minuitur (sed, recessione confecta, productio redit ad magnitudinem priorem) +STR_CONFIG_SETTING_TRAIN_REVERSING :Vetare tramina cursum reflectere in stationibus: {STRING} +STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si electa, tramina non possunt cursum reflectere in stationibus quae non sunt termini, etsi adest iter brevius ad destinatum cursu reflexo +STR_CONFIG_SETTING_DISASTERS :Calamitates: {STRING} +STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Sinere calamitates accidere, quae forte vehicula aut infrastructuram destruant +STR_CONFIG_SETTING_CITY_APPROVAL :Quamdiu auctoritas vicinalis patitur malas actiones a societatibus: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Eligere patientiam auctoritatis vicinalis - quomodo venia eius afficitur a sonito et detrimento vicinitatis. Nimis malis actionibus, auctoritates vetant stationes struere, aedificia viasque removere + +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altitudo tabulae maxima: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Eligere altitudinem montium maximam in tabula +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Non licet hanc altitudinem eligere. Unus pluresve mons in tabula altior est +STR_CONFIG_SETTING_AUTOSLOPE :Sinere terram plasmare sub aedificia, vias, etc.: {STRING} +STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Sinere terram plasmare sub aedificia et vias; tum necesse non est aedificia viasve removere +STR_CONFIG_SETTING_CATCHMENT :Sinere magnitudines regionum acceptionis magis realisticas esse: {STRING} +STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Si electa, aeroportus et alii stationum typi habent meliores regiones acceptionis +STR_CONFIG_SETTING_EXTRADYNAMITE :Sinere plures vias, pontes, et cuniculos removere in oppidis: {STRING} +STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Si electa, infrastructura et aedificia oppidorum sunt magis facilia remotu +STR_CONFIG_SETTING_TRAIN_LENGTH :Longitudo traminum maxima: {STRING} +STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Eligere longitudinem traminum maximam +STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} tegul{P 0 ae arum} +STR_CONFIG_SETTING_SMOKE_AMOUNT :Algorithmus fumi/favillarum vehiculorum: {STRING} +STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Eligere crebritatem fumi favillarumve quae e vehiculis emissi sunt +STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL :Algorithmus accelerationis traminum: {STRING} +STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Eligere algorithmum physicae accelerationis hamaxostichorum. Algorithmus "originalis" facit ut omnes hamaxostichi aeque tardescant in clivis. Algorithmus "realisticus" facit ut hamaxostichi tardescant in clivis et flexibus per potestate, longitudine, etc. +STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL :Algorithmus accelerationis vehiculorum viariorum: {STRING} +STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT :Eligere algorithmum physicae accelerationis vehiculorum viariorum. Algorithmus "originalis" facit ut omnes vehicula aeque tardescant in clivis. Algorithmus "realisticus" facit ut vehicula tardescant in clivis et flexibus per potestate, vire tractionis, etc. +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS :Arduitas clivorum traminibus: {STRING} +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Arduitas tegulae clivosae hamaxosticho. Arduitate maiore, difficultas ascendendi maior est hamaxostichis +STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% +STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Arduitas clivorum vehiculis viariis: {STRING} +STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Arduitas tegulae clivosae vehiculo viario. Arduitate maiore, difficultas ascendendi maior est vehiculis +STR_CONFIG_SETTING_FORBID_90_DEG :Vetare tramina et naves cursum flectere 90°: {STRING} +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Tramina possunt cursum flectere in astariis aut 45° (diagonale deinde horizontale/verticale) aut 90° (horizontale deinde verticale); quoque naves possunt cursum 90° aut 45° cursum flectere. Hac electa, tantum 45° licet +STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Sinere stationes iungi quae non contigua sunt: {STRING} +STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Sinere partes stationi addere quae non prorsus contigua sunt. Necesse est Ctrl premere dum novae partes adduntur. +STR_CONFIG_SETTING_INFLATION :Inflatio: {STRING} +STR_CONFIG_SETTING_INFLATION_HELPTEXT :Sinere inflationem oeconomicam fieri, i.e. cum expensa surgunt celerius quam reditus +STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Longitudo pontium maxima: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Eligere longitudinem pontium maximam +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altitudo pontium maxima: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Eligere altitudinem pontium maximam +STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Longitudo cuniculorum maxima: {STRING} +STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Eligere longitudinem cuniculorum maximam +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Modus industrias primarias a lusore condendi: {STRING} +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Modus industriam primariam condendi. Optione 'nullo' electa, industrias condere non licet; 'prospiciendo' electa, licet condere industrias, sed locus industriae forte apparet in tabula atque forsitan desit; 'in loco aliarum industriarum' electa, licet industrias primarias condere a societatibus sicut industrias secondarias, in quovis loco +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Nullo +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :In loco aliarum industriarum +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Prospiciendo +STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Spatium planum circa industrias: {STRING} +STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Magnitudo spatii plani circa industriam. Facit ut adsit spatium circa quamque industriam ad ferriviam struendam, etc. +STR_CONFIG_SETTING_MULTIPINDTOWN :Sinere plures industrias eiusdem typi adesse apud oppidum: {STRING} +STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Generaliter, oppidum non vult plus quam unam industriam eiusdem typi. Hac electa, licet plures industrias eiusdem typi adesse in eodem oppido +STR_CONFIG_SETTING_SIGNALSIDE :Signalia ponuntur: {STRING} +STR_CONFIG_SETTING_SIGNALSIDE_HELPTEXT :Eligere latus astarii in quo signalia ponuntur +STR_CONFIG_SETTING_SIGNALSIDE_LEFT :in sinistro +STR_CONFIG_SETTING_SIGNALSIDE_DRIVING_SIDE :in latere gubernandi +STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :in dextro +STR_CONFIG_SETTING_SHOWFINANCES :Monstrare fenestram argentariam anno finito: {STRING} +STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Electa, fenestra argentaria ostenditur quoque anno finito ut facile inspiciatur status argentarius societatis +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Nova iussa solite 'continua' sunt: {STRING} +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Solite, vehicula consistunt cuique stationi quam inveniunt. Hac electa, vehicula praeteribunt, non consistentes, omnibus stationibus usque ad destinatum ultimum. Cave, haec electio modo valorem iussi novi solitum definit. Quidque tamen iussum potest utrique modo adlegi +STR_CONFIG_SETTING_STOP_LOCATION :Tramina solite sistunt in {STRING} suggestus +STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Pars suggestus in qua hamaxostichi solite sistunt. 'Citera pars' est juxta aditum, in 'medio' certe est in medio suggestus, et 'ultra pars' est procul ab aditu. Cave, haec electio modo valorem iussi novi solitum definit. Quidque tamen iussum potest utrique modo adlegi +STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :citera parte +STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :medio +STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :ultra parte +STR_CONFIG_SETTING_AUTOSCROLL :Cum cursor in margine est, movere: {STRING} +STR_CONFIG_SETTING_AUTOSCROLL_HELPTEXT :Electa, conspectus vagari incipiunt cum cursor muris apud marginem fenestrae est +STR_CONFIG_SETTING_AUTOSCROLL_DISABLED :Nullam fenestram +STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Fenestram primariam (cunctum scrinium) +STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Fenestram primariam +STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Quamque fenestram +STR_CONFIG_SETTING_BRIBE :Sinere largiri auctoritatem vicinalem: {STRING} +STR_CONFIG_SETTING_BRIBE_HELPTEXT :Sinere societatibus conari largiri auctoritatem vicinalem. Si largitio animadversa est ab inquisitore, non licet societati agere in oppido 6 menses +STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Sinere societatibus emere monopolia: {STRING} +STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Si societas monopolium oppidi emit, nulla onera mittet stationibus competitorum in oppido (et onerariis et vectoriis) unum totum annum +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Sinere condere aedificia: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Electa, licet societatibus donare pecuniam oppidis ut nova aedificia condantur +STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Sinere donare oppidis ut viae reconstruantur: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Sinere societatibus pecuniam donare oppidis ut viae reconstruantur et vectura viaria in oppido pessumdetur +STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Sinere dare pecuniam aliis societatibus: {STRING} +STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Sinere tradere pecuniam inter societates pluribus lusoribus +STR_CONFIG_SETTING_FREIGHT_TRAINS :Multiplicator ponderis onerum ad hamaxostichos graves simulandos: {STRING} +STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Eligere momentum onerum hamaxostichis. Valoribus maioribus, difficilis est hamaxostichis onera trahere, magnopere in collibus +STR_CONFIG_SETTING_PLANE_SPEED :Multiplicator velocitatis aeroplanorum: {STRING} +STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Eligere si aeroplana eant lentius quam alia vehicula, ut reditus aeroplanorum minuatur +STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} +STR_CONFIG_SETTING_PLANE_CRASHES :Calamitates aeroplanicae accidunt: {STRING} +STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Eligere crebritatem calamitatum aeroplanicarum +STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Numquam +STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Raro +STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Mediocriter +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Sinere stationes viarias pervias esse in viis oppidorum: {STRING} +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Sinere struere stationes viarias pervias in viis quas oppida possident +STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Sinere stationes viarias pervias esse in viis competitorum: {STRING} +STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Sinere struere stationes viarias pervias in viis quas competitores possident +STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Non licet mutare hanc electionem cum adsunt vehicula +STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Tuitio infrastructurae: {STRING} +STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Electa, infrastructura prodit expensa tuitionis. Expensa crescunt celerius quam pro portione magnitudini retis, ergo societates magnae affectantur magis quam parvae + +STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Aeroportus numquam recedunt: {STRING} +STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Electa, omnes aeroportuum typi permanent post introductionem + +STR_CONFIG_SETTING_WARN_LOST_VEHICLE :Monere si vehiculum errans sit: {STRING} +STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Electa, nuntiatur cum vehicula non possint invenire viam ad destinatum +STR_CONFIG_SETTING_ORDER_REVIEW :Recensere iussa vehiculorum: {STRING} +STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Electa, iussa vehiculorum aliquando recensentur, atque nonnulla manifesta problemata nuntiantur, si detecta sint +STR_CONFIG_SETTING_ORDER_REVIEW_OFF :Non +STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Ita, sed non vehicluorum constitorum +STR_CONFIG_SETTING_ORDER_REVIEW_ON :Ita, omnium vehiculorum +STR_CONFIG_SETTING_WARN_INCOME_LESS :Monere si reditus vehiculi negativus sit: {STRING} +STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Electa, nuntium ostenditur cum vehiculum non facit lucrum in anno +STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Vehicula numquam recedunt: {STRING} +STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Electa, omnes vehiculorum typi permanent post introductionem +STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Autoredimere vehicula cum veterascunt: {STRING} +STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Electa, vehicula veterascentia automatice redimuntur, condicionibus satisfactis +STR_CONFIG_SETTING_AUTORENEW_MONTHS :Autoredimere vehiculum cum {STRING} aetatem maximam est +STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Aetas relativa in qua vehicula esse autoredimenda debet +STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} mens{P em es} ante +STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} mens{P em es} post +STR_CONFIG_SETTING_AUTORENEW_MONEY :Copia pecuniae minima necesse ad redimere: {STRING} +STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Copia pecuniae minima quam debet esse in ratione argentaria antequam vehicula autoredimenda sunt +STR_CONFIG_SETTING_ERRMSG_DURATION :Duratio nuntiorum errorum: {STRING} +STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duratio nuntia errorum in fenestra rubra ostendendi. Cave, aliquae (severa) nuntia errorum non automatice clauditur, et necesse est lusori claudere +STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} secund{P um a} +STR_CONFIG_SETTING_HOVER_DELAY :Ostendere nuntia adiuvantia: {STRING} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Mora antequam nuntia adiuvantia ostenduntur cum mus elemento interfaciei superponitur. Etiam adiuvantia nuntia possunt ostendi globulo muris dextro cum hic valor 0 est +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Superponere {COMMA} millisecund{P um a} +STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Globulo muris dextro +STR_CONFIG_SETTING_POPULATION_IN_LABEL :Monstrare incolas in signis nominis oppidorum: {STRING} +STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Monstrare numerum incolarum oppidorum in signis nominis eorum in tabula geographica +STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Crassitudo linearum in formulis graphicis: {STRING} +STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Crassitudo/latitudo linearum in formulis graphicis. Linea tenuis est subtilis lectu, sed linea crassa facilior est visu atque colores faciliores discretu + +STR_CONFIG_SETTING_LANDSCAPE :Terra: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Terrae definiunt quomodo ludis, nam varia onera habent atque oppida varia poscunt ut crescantur. Sed NewGRF et Ludi Scripta possunt subtilius gubernare ludum +STR_CONFIG_SETTING_LAND_GENERATOR :Generatrum terrae: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Generatrum originale dependet fundamento graphico, et conficit figuras terrae fixas. TerraGenesis est generatrum sonitus Perlin cum electionibus subtilioribus +STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Originale +STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Typus terrae: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(modo TerraGenesis) Clivositas terrae +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Numerus industriarum: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Eligere quot industriae oportet esse constructae ac oportet sustineri intra ludum +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Spatium maximum a finibus tabulae ad ergasteria petrolearia struenda: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Ergasteria petrolearia modo struuntur apud fines tabulae, i.e. in littore si mappa est insula +STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altitudo lineae nivis: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Eligere altitudinem apud quam nix incipit cadere in terra subarctica. Nix etiam afficit conditionem industriarum et desideria oppidorum +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Asperitas terrae (modo TerraGenesis): {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(modo TerraGenesis) Eligere crebritatem collium: Terra teres habet minores rarosque colles. Terra aspera habet multos colles, et forsitan videtur esse repetita +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Teretissima +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Teres +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Aspera +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Asperrima +STR_CONFIG_SETTING_VARIETY :Partitio varietatis: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(modo TerraGenesis) Eligere si tabula contineat et montanos et planos locos. Quoniam haec solum facit ut tabula planior sit, electiones aliae oportet esse montanae +STR_CONFIG_SETTING_RIVER_AMOUNT :Numerus fluviorum: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Eligere quot fluvii creandi sunt +STR_CONFIG_SETTING_TREE_PLACER :Algorithmus arbores ponendi: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Eligere partitionem arborum in tabula: Algorithmus 'Originalis' aequaliter serit arbores, 'Melior' arbores serit gregatim +STR_CONFIG_SETTING_TREE_PLACER_NONE :Nullus +STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Originalis +STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Melior +STR_CONFIG_SETTING_ROAD_SIDE :Vehicula viaria: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Eligere latus viae gubernandi +STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Circuitus tabulae altitudinum: {STRING} +STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Sinistrorsus +STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Dextrorsus +STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Altitudo scaenario plano data: {STRING} +STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Una pluresve tegulae apud finem septentrionalem non vacuae sunt +STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Una pluresve tegulae apud unum finem non aquae sunt + +STR_CONFIG_SETTING_STATION_SPREAD :Spatium stationum maximum: {STRING} +STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Area maxima in qua partes stationum possunt esse sita. Cave, numeris spatii magnis, ludus lentus sit +STR_CONFIG_SETTING_SERVICEATHELIPAD :Ministrare helicoptera automatice in helicopterariis: {STRING} +STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Ministrare helicoptera post quemque appulsum, etsi non est tugurium portui +STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Connectere terrae arcam ferramentorum arcis ferriviariae/viariae/aquariae/aeriae ferramentorum: {STRING} +STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Cum arca ferramentorum constructionis aperitur, etiam plasmationis terrae arca ferramentorum aperitur +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Color terrae in tabula adhibitus: {STRING} +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Color terrae in tabula geographica parva +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :Viridis +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Viridis Obscurus +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Purpureus +STR_CONFIG_SETTING_REVERSE_SCROLLING :Revertere cursum vagationis: {STRING} +STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Quomodo tabula vagatur globulo dextri presso. Neglecta, mus conspectum movet. Electa, mus tabulam movet +STR_CONFIG_SETTING_SMOOTH_SCROLLING :Vagari conspectum leniter: {STRING} +STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Quomodo conspectus vagatur ad quemdam locum globulo sinistro in tabula premendi aut cum iubetur vagari ad quamdam rem in tabula. Electa, conspectus leniter vagatur. Neglecta, statim salit ad locum +STR_CONFIG_SETTING_MEASURE_TOOLTIP :Ostendere nuntium adiuvans apud varia ferramenta construendi: {STRING} +STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Ostendere spatium atque altitudinem inter tegulas dum mus trahitur in construendo +STR_CONFIG_SETTING_LIVERIES :Monstrare schemata coloris vehiculorum per typum: {STRING} +STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Sinere schemata coloris esse per vehiculi typum (non tantum per vehiculi societatem) +STR_CONFIG_SETTING_LIVERIES_NONE :Non +STR_CONFIG_SETTING_LIVERIES_OWN :Modo meae societati +STR_CONFIG_SETTING_LIVERIES_ALL :Omnibus societatibus +STR_CONFIG_SETTING_PREFER_TEAMCHAT :Praeferre colloquium manus cum : {STRING} +STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Mutare iussum colloquii interni et publici ad aut +STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING :Actio rotulae vagationis: {STRING} +STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Sinere vagari rotulis muris volvendis +STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM :Amplificare/retrahere tabulam +STR_CONFIG_SETTING_SCROLLWHEEL_SCROLL :Vagari tabulam +STR_CONFIG_SETTING_SCROLLWHEEL_OFF :Nulla +STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Velocitas tabulam rotula muris vagandi: {STRING} +STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Eligere velocitatem rotula muris vagationis +STR_CONFIG_SETTING_OSK_ACTIVATION :Claviatura in scrinio: {STRING} +STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Eligere modum claviaturam aperiendi in scrinio ut verba scribantur modo a mure (vel instrumento simile). Magnopere utilis est machinis parvis sine claviaturis veris +STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Celata +STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Bis premendo +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Semel premendo (dum conspicua est) +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Semel premendo (statim) + +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Aemulatio dextrum premendi: {STRING} +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT :Eligere modum aemulationis dextrum globulum muris premendi +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND :Cmd+Premere +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+Premere +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Neglecta + +STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Vagatio globuli sinistri: {STRING} +STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Annuere tabulam vagari trahendo globuli sinistri. Magnopere utilis est cum tangendo navigas in scrinio + +STR_CONFIG_SETTING_AUTOSAVE :Servare automatice: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Eligere crebritatem automatice ludum servandi + +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Forma {STRING} diei adhibenda in nominibus ludorum servatorum +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Forma diei in nominibus ludorum servatorum +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :longa (XXXI Dec 2008) +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :brevis (31-12-2008) +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31) + +STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Intermittere automatice cum novus ludus incipitur: {STRING} +STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Electa, ludus automatice intermittitur cum incipitur, tunc tabula potest inspici +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Ludo intermisso, sinere: {STRING} +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Eligere quas actiones licet fieri, ludo intermisso +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Nullam actionem +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Omnes actiones praeter constructionem +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Omnes actiones praeter terrae plasmationem +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Omnes actiones +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Greges in indicibus vehiculorum adhibendae: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Annuere indices cum gregibus vehiculorum adesse +STR_CONFIG_SETTING_LOADING_INDICATORS :Signa onerandi adhibenda: {STRING} +STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Annuere signa onerandi monstrari super vehicula onerantia/exonerantia +STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Monstrare horarium cum punctis et non cum diebus: {STRING} +STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Monstrare tempora navigandi in horariis punctis ludi et non diebus +STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Monstrare adventum atque exitum in horariis: {STRING} +STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Monstrare in horariis adventum atque exitum aestimatum +STR_CONFIG_SETTING_QUICKGOTO :Celeris datio iussorum vehiculorum: {STRING} +STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Praesumere ferramentum 'I ad' cum fenestra iussorum aperitur +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Typus astarii solitus (novo ludo/ludo lecto): {STRING} +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Typus astarii adhibendus in novo ludo sive ludo lecto. 'Primus parabilis' typus est veterrimus, 'postremus parabilis' est novissimus typus, et 'frequentissime usus' est typus maxime in tabula usus +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :Primus parabilis +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :Postremus parabilis +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :Frequentissime usus +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Monstrare cursus reservatos in astariis: {STRING} +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Facit ut astaria cum cursibus a tramine reservatis habeant alium colorem, ut facilior sit videre errores hamaxostichorum qui nolunt inire quosdam locos cum signalibus +STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Ferramenta struendi manent post usum: {STRING} +STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Electa, ferramenta struendi (cuniculorum, pontium, ceterorum) tamen activa sunt postquam usa sunt +STR_CONFIG_SETTING_EXPENSES_LAYOUT :Congregare expensa in fenestra argentaria societatis: {STRING} +STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Definire dispositionem fenestrae argentariae societatis + +STR_CONFIG_SETTING_SOUND_TICKER :Nuntia breviaria: {STRING} +STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Sonare cum nuntium breviarium emittitur +STR_CONFIG_SETTING_SOUND_NEWS :Ephemeris: {STRING} +STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Sonare cum ephemeris ostenditur +STR_CONFIG_SETTING_SOUND_NEW_YEAR :Annni finis: {STRING} +STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Sonare anno finito cum summarium effectus societatis ostenditur +STR_CONFIG_SETTING_SOUND_CONFIRM :Constructio: {STRING} +STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Sonare cum res struuntur +STR_CONFIG_SETTING_SOUND_CLICK :Pressus globulorum: {STRING} +STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Sonare globulo presso +STR_CONFIG_SETTING_SOUND_DISASTER :Calamitates/accidentes: {STRING} +STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Sonare cum calamitates accidentesve accidunt +STR_CONFIG_SETTING_SOUND_VEHICLE :Vehicula: {STRING} +STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Sinere vehicula sonare +STR_CONFIG_SETTING_SOUND_AMBIENT :Ambientes: {STRING} +STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Sinere sonos ambientes industriarum, oppidorum, terraeque fieri + +STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Vetare constructionem infrastructurae dum nulla vehicula parabilia sunt: {STRING} +STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Electa, infrastructura modo parabilis est si adsunt vehicula parabilia. Itaque non licet absumere pecuniam tempusque struendi infrastructuram inutilem +STR_CONFIG_SETTING_MAX_TRAINS :Numerus maximus traminum cuiusque societatis: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Numerus maximus hamaxostichorum quos societas habere licet +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Numerus maximus vehiculorum viariorum cuiusque societatis: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Numerus maximus vehiculorum viariorum quae societas habere licet +STR_CONFIG_SETTING_MAX_AIRCRAFT :Numerus maximus aeroplanorum cuiusque societatis: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Numerus maximus aeroplanorum quae societas habere licet +STR_CONFIG_SETTING_MAX_SHIPS :Numerus maximus navium cuiusque societatis: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Numerus maximus navium quas societas habere licet + +STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Vetare IA tramina habere: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Electa, non licet lusori IA tramina tenere +STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :Vetare IA vehicula viaria habere: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT :Electa, non licet lusori IA vehicula viaria tenere +STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT :Vetare IA aeroplana habere: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT :Electa, non licet lusori IA aeroplana tenere +STR_CONFIG_SETTING_AI_BUILDS_SHIPS :Vetare IA naves habere: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Electa, non licet lusori IA naves tenere + +STR_CONFIG_SETTING_AI_PROFILE :Ratio optionum solita: {STRING} +STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Eligere quae ratio optionum adhibenda est ad fortuitam IA, sive valores initiales cum nova IA seu Ludi Scriptum legitur +STR_CONFIG_SETTING_AI_PROFILE_EASY :Facilis +STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Mediocris +STR_CONFIG_SETTING_AI_PROFILE_HARD :Difficilis + +STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Sinere IA in ludis cum pluribus lusoribus: {STRING} +STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Sinere lusores IA asesse in ludis cum pluribus lusoribus +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes antequam scripta suspensa sunt: {STRING} +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Numerus maximus computationum scripti uno vice + +STR_CONFIG_SETTING_SERVINT_ISPERCENT :Intervalla ministrationis monstrantur centesimis partibus: {STRING} +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Eligere si ministratio vehiculorum fiat aut quia satis sit tempus post ministrationem priorem, aut quia constantia vehiculi minuatur quamdam partem centesimam de constantia maxima +STR_CONFIG_SETTING_SERVINT_TRAINS :Intervallum ministrationis solitum traminibus: {STRING} +STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Eligere solitum intervallum ministrationis novis vehiculis ferriviariis, si non est proprium intervallum ministrationis vehiculo +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}die{P 0 m s}/% +STR_CONFIG_SETTING_SERVINT_DISABLED :Neglectum +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Intervallum ministrationis solitum vehiculis viariis: {STRING} +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Eligere solitum intervallum ministrationis novis vehiculis viariis, si non est proprium intervallum ministrationis vehiculo +STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Intervallum ministrationis solitum aeroplanis: {STRING} +STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Eligere solitum intervallum ministrationis novis aeroplanis, si non est proprium intervallum ministrationis vehiculo +STR_CONFIG_SETTING_SERVINT_SHIPS :Intervallum ministrationis solitum navibus: {STRING} +STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Eligere solitum intervallum ministrationis novis navibus, si non est proprium intervallum ministrationis vehiculo +STR_CONFIG_SETTING_NOSERVICE :Neglegere ministrationem cum nullae sunt defectiones vehiculorum: {STRING} +STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Electa, vehicula non ministrantur defectionibus vetatis +STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Annuere currus ferriviarios habere velocitates maximas: {STRING} +STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Electa, velocitates maximae curruum afficiunt velocitatem maximam traminis +STR_CONFIG_SETTING_DISABLE_ELRAILS :Neglegere ferrivias electricas: {STRING} +STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Electa, tramina electrica non postulant electricam ferriviam, modo ferriviam solitam + +STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :De adventu primi vehiculi stationi lusoris: {STRING} +STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Ostendere ephemeridem cum primum vehiculum adveniat stationi lusoris +STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :De adventu primi vehiculi stationi competitoris: {STRING} +STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Ostendere ephemeridem cum primum vehiculum adveniat stationi competitoris +STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :De accidentibus / calamitatibus: {STRING} +STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Ostendere ephemeridem cum accidentes calamitatesve fiant +STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :De indicio societatis: {STRING} +STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Ostendere ephemeridem cum nova societas condiatur, sive cum societas in angustiis sit +STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :De apertione industriae: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT :Ostendere ephemeridem cum industria nova condiatur +STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE :De industriis claudendis: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :Ostendere ephemeridem cum industria mox claudatur +STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :De mutationibus oeconomicis: {STRING} +STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :Ostendere ephemeridem cum magna eventa oeconomica fiant +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :De mutationibus productionis industriarum a societate lusoris attentae: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Ostendere ephemeridem cum productio industriarum a societate lusoris attentae mutet +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :De mutationibus productionis industriarum a societatibus competitorum attentae: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :Ostendere ephemeridem cum productio industriarum a societatibus competitorum attentae mutet +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :De mutationibus productionis aliarum industriarum: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Ostendere ephemeridem cum productio industriarum a nulla societate attentae mutet +STR_CONFIG_SETTING_NEWS_ADVICE :De admonitione / indicio vehiculorum societatis lusoris: {STRING} +STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Ostendere nuntium de vehiculis attendendis +STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :De novis vehiculis: {STRING} +STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Ostendere ephemeridem cum novus vehiculi typus parabilis sit +STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :De mutationibus onerum acceptorum: {STRING} +STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Ostendere nuntium cum statio onera accepta mutet +STR_CONFIG_SETTING_NEWS_SUBSIDIES :De subsidiis: {STRING} +STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Ostendere ephemeridem de eventis subsidiaribus +STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :De indicio generale: {STRING} +STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION_HELPTEXT :Ostendere ephemeridem de eventis generalibus, e.g. de emptione monopolii vel inceptione reconstructionis viarii + +STR_CONFIG_SETTING_NEWS_MESSAGES_OFF :Neglecta +STR_CONFIG_SETTING_NEWS_MESSAGES_SUMMARY :Breviaria +STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :Completa + +STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Ephemeris colorata apparet anno: {STRING} +STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Eligere annum in quo nuntia periodicorum colorata apparet. Antea, nuntia nigra albaque sunt +STR_CONFIG_SETTING_STARTING_YEAR :Annus initii: {STRING} +STR_CONFIG_SETTING_SMOOTH_ECONOMY :Sinere oeconomiam teretem esse (i.e. plures ac minores mutationes): {STRING} +STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Electa, productio industriarum saepius mutat, et minores per gradus. Sed haec electio nihil affert si industriae apparatae sunt a NewGRF +STR_CONFIG_SETTING_ALLOW_SHARES :Sinere mercari sortes societatum: {STRING} +STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Sinere mercari sortes a societatibus. Sortes societatum satis aetatis modo mercari licet +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Centesimae partes lucri pendenda in translatione: {STRING} +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Centesimae lucri pars medietati data in systematibus transferendi, ut melius distribuatur lucrum vehiculorum +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Trahens, ponere signalia: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Eligere spatium signalia struendi usque ad impedimentum proximum (i.e. aliud signale, compitum), si signalia ponuntur trahendo +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} quaque tegula +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Trahens, continere spatium fixum inter signalia: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Eligere modum signalia ponendi Ctrl+trahente. Neglecta, signalia ponuntur circa cuniculos pontesque ut non essent magna spatia sine signalibus. Electa, signalia ponuntur N quaque tegula, ut signalia in astariis parallelis faciliora sint directu +STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Struere signalia semaphorica automatice ante annum: {STRING} +STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Eligere annum in quo mutandum ad signalia electrica est. Antea, signalia semaphorica adhibenda sunt (quae idem munus habent, sed dissimilia sunt visu) +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Annuere GUI signalium: {STRING} +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Monstrare fenestram ad typos signalium struendos, in loco typum signalis mutando sine fenestra Ctrl+premendi +STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Solitus typus signalis struendus: {STRING} +STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Typus solitus signalis adhibendus +STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Signalia zonalia +STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBS :Signalia itineris +STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBSOWAY :Signalia itineris unius cursus +STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Mutare inter typus signalium: {STRING} +STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Eligere typos signalium mutandos cum premitur Ctrl pressa in signale structum +STR_CONFIG_SETTING_CYCLE_SIGNAL_NORMAL :Modo signalia zonalia +STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :Modo signalia itineris +STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Omnes + +STR_CONFIG_SETTING_TOWN_LAYOUT :Dispositio viarum novis oppidis: {STRING} +STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Dispositio retis viarii oppidorum +STR_CONFIG_SETTING_TOWN_LAYOUT_DEFAULT :Originalis +STR_CONFIG_SETTING_TOWN_LAYOUT_BETTER_ROADS :Viae satius +STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :Cancelli 2x2 +STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :Cancelli 3x3 +STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :Fortuita +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Oppidis licet vias struere: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Sinere oppida vias struere. Neglege ut auctoritates oppidorum prohibeantur ipsas struere vias +STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Oppidis licet transitus ferriviarios struere: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Electa, licet auctoritatibus oppidorum struere ferriviarios transitus +STR_CONFIG_SETTING_NOISE_LEVEL :Sinere oppida moderari aeroportus finibus soniti: {STRING} +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Neglecta, modo licet duo esse aeroportus in quoque oppido. Electa, quot aeroportus licet esse in oppido finitur a sonito et distantia cuiusque aeroportus etiam a patientia soniti oppidi, quae afficitur numero incolarum oppidi +STR_CONFIG_SETTING_TOWN_FOUNDING :Lusoribus oppida condere: {STRING} +STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Electa, licet lusoribus condere oppida intra ludum +STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Non licet +STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Licet +STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Licet, atque propria dispositio oppidi + +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Positio arborum in ludo: {STRING} +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Quomodo arbores apparent intra ludum. Forsitan industriae afficiuntur quibus necesse sunt arbores, e.g. castra lignatorum +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NONE :Nulla {RED}(rumpit castra lignatorum) +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_RAINFOREST :Modo in silvis plivualibus +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :Ubique + +STR_CONFIG_SETTING_TOOLBAR_POS :Locus primariae arcae ferramentorum: {STRING} +STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Locus horizontalis arcae ferramentorum primariae apud apicem fenestrae +STR_CONFIG_SETTING_STATUSBAR_POS :Locus serae status: {STRING} +STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT :Locus horizontalis serae status apud infimam partem fenestrae +STR_CONFIG_SETTING_SNAP_RADIUS :Radius fenestrae adhaerendae: {STRING} +STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :Spatium minimum inter fenestras antequam automatice adhaesae sunt aliis fenestris +STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} punct{P 0 um a} +STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Neglectus +STR_CONFIG_SETTING_SOFT_LIMIT :Numerus fenestrarum non glutinosarum maximus: {STRING} +STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Quot fenestrae non glutinosae licet apertae esse antequam veteres fenestrae clauduntur ut spatium novarum fenestrarum liberetur +STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} +STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :Infinitus +STR_CONFIG_SETTING_ZOOM_MIN :Conspectus licet amplificari: {STRING} +STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Valor maximus ad conspectum amplificandum. Cave, desideria memoriae augetur valoribus huius electionis maioribus +STR_CONFIG_SETTING_ZOOM_MAX :Conspectus licet retrahi: {STRING} +STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Valor maximus ad conspectum retrahendum. Valores magni possunt ludum tardare +STR_CONFIG_SETTING_ZOOM_LVL_MIN :Quadruplex +STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :Duplex +STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Numquam +STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :Duplex +STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :Quadruplex +STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :Octuplex +STR_CONFIG_SETTING_TOWN_GROWTH :Oppida crescunt: {STRING} +STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Eligere celeritatem oppidorum crescendi +STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Numquam +STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :Lente +STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Mediocriter +STR_CONFIG_SETTING_TOWN_GROWTH_FAST :Celeriter +STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :Valde celeriter +STR_CONFIG_SETTING_LARGER_TOWNS :Proportio oppidorum quae urbes fient: {STRING} +STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Quot oppida ex toto fient urbes, maiores conditu et celerius crescentes +STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 ex {COMMA} +STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nulla +STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicator magnitudinis initialis urbis: {STRING} +STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Quam maiores sunt urbes quam oppida in initio ludi + +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Recensere formulam partitionis {STRING} quoque die +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Tempus inter recensiones formulae partitionis. Quaeque recensio calculat rationes unius partis formulae. Ergo valor X huius electionis non facit ut cuncta formula recenseatur X quoque die; modo aliquot pars/partes recensebuntur. Valoribus minoribus, plus tempus CPU requiritur. Valoribus maioribus, plus tempus erit ad onerum partitionem incipiendam novis itineribus. +STR_CONFIG_SETTING_LINKGRAPH_TIME :{STRING}{NBSP}die{P 0:2 "" s} ad formulam partitionis recalculandam +STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Tempus cuiusque recalculationis partis partitionis. Cum recalculatio incipitur, linea generatur quae agitur hos dies electos. Paucis diebus, magis probabilis est lineam non finiri cum debet esse finitam; tunc ludus intermittitur usque ad finitur ("segnitia"). Pluribus diebus, plus tempus requiritur ad partitionem mutandam cum itinera mutantur. +STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manu +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetrica +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :symmetrica +STR_CONFIG_SETTING_DISTRIBUTION_PAX :Modus partitionis vectoribus: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Partitio "symmetrica" facit ut fere eadem copia vectorum mittatur a statione A ad stationem B quam a B ad A. Partitio "asymmetrica" facit ut quaelibet copia vectorum mittatur inter A et B. In partitione "manu" vectores non automatice partiuntur. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Modus partitionis epistulis: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Partitio "symmetrica" facit ut fere eadem copia epistularum mittatur a statione A ad stationem B quam a B ad A. Partitio "asymmetrica" facit ut quaelibet copia epistularum mittatur inter A et B. In partitione "manu" epistulae non automatice partitur. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Modus partitionis classi oneris CATAPHRACTA: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Classis oneris CATAPHRACTA continet res pretiosas in terra temperata, adamantes in terra subtropica, aut aurum in terra subarctica; sed NewGRF possunt hoc mutare. Partitio "symmetrica" facit ut fere eadem copia oneris mittatur a statione A ad stationem B quam a B ad A. Partitio "asymmetrica" facit ut quaelibet copia oneris mittatur inter A et B. In partitione "manu" onera non automatice partiuntur. Admonetur eligere aut partitionem asymmetricam aut partitionem manu cum ludis in terra subarctica, nam argentariae non remittet aurum aurifodinis. In terris temperata sive subtropica potes eligere partitionem symmetricam nam argentariae adeo remittet res pretiosas originibus argentariis. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Modus partitionis aliis oneribus: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Partitio "asymmetrica" facit ut quaelibet copia onerum mittatur inter destinata et origines. In partitione "manu" onera non automatice partiuntur. +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Accuratio partitionis: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Valoribus maioribus, plus tempus CPU requiritur in calculando. Si nimis magna est, ludus forsitan cunctetur. At si nimis parva est, partitio non erit accurata, et onera fortasse non mittantur ad destinata idonea. +STR_CONFIG_SETTING_DEMAND_DISTANCE :Consecutio distantiae quaesitis: {STRING} +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Si valor huius est plus quam 0, distantia inter originem cuiusdam oneris, stationem A, et destinatum B afficit copiam oneris missam ex A ad B. Si B multo procul ab A est, paucius onus mittetur. Valoribus maioribus, paucius onus mittetur stationibus longinquis ac plus onus mittetur stationibus propinquis. +STR_CONFIG_SETTING_DEMAND_SIZE :Copia oneris remittenda in partitione symmetrica: {STRING} +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Si haec minor est quam 100%, partitio symmetrica magis agit sicut asymmetrica; pauciora onera remittentur si quaedam copia missa est ad stationem. Dum est 0%, partitio symmetrica agit velut asymmetrica. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Saturitas itinerum brevium antequam itinera magnae capacitatis utenda sunt: {STRING} +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Frequenter sunt multa itinera inter duas stationes. Partitio onerum imprimis saturat iter brevissimum, deinde paenultime brevissimum, etc. Saturitas computatur aestimatione et capacitatis et usus. Cum omnia itinera saturata sunt, si tamen est quaesitum, superonerabit omnia itinera, ea magnae capacitatis praelata. Sed saepe algorithmus non capacitatem aestimat satis accurate. Hac electione potes optare ad quam partem centesimam itineri breviori oportet esse saturum antequam iter longius optatur. Uti valoribus minoribus quam 100% ut stationes non superonerentur si capacitates superaestimatae sunt. + +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Unitates velocitatis: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Quandocumque velocitas monstratur, monstrabitur his unitatibus electis +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Anglicae (mph) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Metricae (km/h) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) + +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Unitates potestatis vehiculorum: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Quandocumque potestas vehiculi monstratur, monstrabitur his unitatibus electis +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Anglicae (hp) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metricae (hp) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) + +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Unitates ponderis: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Quandocumque pondus monstratur, monstrabitur his unitatibus electis +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Anglicae (short t/ton) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metricae (t/tonne) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) + +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Unitates voluminis: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Quandocumque volumen monstratur, monstrabitur his unitatibus electis +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Anglicae (gal) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metricae (l) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) + +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Unitates viris tractionis: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Quandocumque vis tractionis monstratur, monstrabitur his unitatibus electis +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Anglicae (lbf) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metricae (kgf) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) + +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Unitates altitudinis: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Quandocumque altitudo monstratur, monstrabitur his unitatibus electis +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Anglicae (ft) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metricae (m) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) + +STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Localizatio +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Res Graphicae +STR_CONFIG_SETTING_SOUND :{ORANGE}Soni +STR_CONFIG_SETTING_INTERFACE :{ORANGE}Interfacies +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Res Generales +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Fenestrae Conspectus +STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Constructio +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Nuntia / Admonitio +STR_CONFIG_SETTING_COMPANY :{ORANGE}Societas +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Ratiocinium +STR_CONFIG_SETTING_VEHICLES :{ORANGE}Vehicula +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Physica +STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Itinera +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Fines +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Calamitates / Accidentes +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Generatio Mundi +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Circumiecta +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Auctoritates +STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Oppida +STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industriae +STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Partitio onerum +STR_CONFIG_SETTING_AI :{ORANGE}Competitores +STR_CONFIG_SETTING_AI_NPC :{ORANGE}Lusores computatrales + +STR_CONFIG_SETTING_PATHFINDER_OPF :Originale +STR_CONFIG_SETTING_PATHFINDER_NPF :NPF +STR_CONFIG_SETTING_PATHFINDER_YAPF_RECOMMENDED :YAPF {BLUE}(Commendatum) + +STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS :Inventrum itineris traminum: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT :Inventrum itineris hamaxostichis adhibendum +STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES :Inventrum itineris vehiculorum viariorum: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES_HELPTEXT :Inventrum itineris vehiculis viariis adhibendum +STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Inventrum itineris navium: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :Inventrum itineris navibus adhibendum +STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Reversio automatica apud signalia: {STRING} +STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Sinere tramina reverti apud signale, si illic valde morati sunt + +STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Mutare valorem optionis + +# Config errors +STR_CONFIG_ERROR :{WHITE}Error in fasciculo configurationis... +STR_CONFIG_ERROR_ARRAY :{WHITE}... error in indice '{STRING}' +STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... valor irritus '{STRING}' spectans ad '{STRING}' +STR_CONFIG_ERROR_TRAILING_CHARACTERS :{WHITE}... littera postrema apud finem electionis '{STRING}' +STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... neglectum NewGRF '{STRING}': agnoscamentum GRF duplicatum cum '{STRING}' +STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... neglectum NewGRF irritum '{STRING}': {STRING} +STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :non inventum +STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :non salvus est usui fixo +STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :systematis NewGRF +STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :incompatibilis est huic OpenTTD editioni +STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :ignotum +STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... magnitudo compressionis '{STRING}' irrita est +STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... forma ludum servandi '{STRING}' parabilis non est. Revertens ad '{STRING}' +STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... neglectum Fundamentum Graphicum '{STRING}': non inventum +STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... neglectum Fundamentum Sonicum '{STRING}': non inventum +STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... neglectum Fundamentum Musicum '{STRING}': non inventum +STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Memoria deest +STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Non potuit collocare {BYTES} promptuarii spiritus. Promptuarium spiritus minuitur ad {BYTES}. Haec minuit effectum OpenTTD. Conare removere graphicas 32bpp ut desideria memoriae minuatur + +# Intro window +STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} + +STR_INTRO_NEW_GAME :{BLACK}Ludus Novus +STR_INTRO_LOAD_GAME :{BLACK}Legere Ludum +STR_INTRO_PLAY_SCENARIO :{BLACK}Ludere Scaenarium +STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Ludere Tabulam Altitudinum +STR_INTRO_SCENARIO_EDITOR :{BLACK}Scriptorium Scaenarii +STR_INTRO_MULTIPLAYER :{BLACK}Plurium Lusorum + +STR_INTRO_GAME_OPTIONS :{BLACK}Ludi Optiones +STR_INTRO_HIGHSCORE :{BLACK}Album Punctorum Supremorum +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Electiones +STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Optiones +STR_INTRO_ONLINE_CONTENT :{BLACK}Inspicere Inventarium Interretiale +STR_INTRO_SCRIPT_SETTINGS :{BLACK}IA/Ludi Scriptorum Optiones +STR_INTRO_QUIT :{BLACK}Exire + +STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Incipere novum ludum. Ctrl+Preme ut configuratio tabulae omittatur +STR_INTRO_TOOLTIP_LOAD_GAME :{BLACK}Legere ludum servatum +STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Incipere novum ludum, tabula altitudinum adhibita +STR_INTRO_TOOLTIP_PLAY_SCENARIO :{BLACK}Incipere novum ludum, scaenario proprio adhibito +STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Creare scaenarium proprium +STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Incipere ludum cum pluribus lusoribus + +STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Eligere hanc terram, nomine 'temperata' +STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Eligere hanc terram, nomine 'subarctica' +STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Eligere hanc terram, nomine 'subtropica' +STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Eligere hanc terram, nomine 'terra ludicrorum' + +STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Monstrare ludi optiones +STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Monstrare album punctorum supremorum +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Monstrare electiones +STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Monstrare optiones NewGRF +STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Inspicere inventarium Interretiale in quo res sicut NewGRF, scaenaria, musica, etc. sunt +STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Monstrare optiones IA/Ludi scriptorum +STR_INTRO_TOOLTIP_QUIT :{BLACK}Exire OpenTTD + +STR_INTRO_TRANSLATION :{BLACK}In hac interpretatione, {NUM} series desunt. Quaesimus, iuva OpenTTD meliorari et dic te velle interpretem esse. Vide readme.txt in quo plura sunt. + +# Quit window +STR_QUIT_CAPTION :{WHITE}Exire +STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}Esne certus te velle exire OpenTTD et redire ad {STRING}? +STR_QUIT_YES :{BLACK}Ita +STR_QUIT_NO :{BLACK}Non + +# Supported OSes +STR_OSNAME_WINDOWS :Windows +STR_OSNAME_DOS :DOS +STR_OSNAME_UNIX :Unix +STR_OSNAME_OSX :OS{NBSP}X +STR_OSNAME_BEOS :BeOS +STR_OSNAME_HAIKU :Haiku +STR_OSNAME_MORPHOS :MorphOS +STR_OSNAME_AMIGAOS :AmigaOS +STR_OSNAME_OS2 :OS/2 +STR_OSNAME_SUNOS :SunOS + +# Abandon game +STR_ABANDON_GAME_CAPTION :{WHITE}Relinquere Ludum +STR_ABANDON_GAME_QUERY :{YELLOW}Esne certus te velle ludum relinquere? +STR_ABANDON_SCENARIO_QUERY :{YELLOW}Esne certus te velle scaenarium relinquere? + +# Cheat window +STR_CHEATS :{WHITE}Tricae +STR_CHEATS_TOOLTIP :{BLACK}Quadrum signi plenum indicat trica iam a te usa est +STR_CHEATS_WARNING :{BLACK}Cave! Competitores tuas falsurus es! Memento tantam infamiam memoria omnium in aeternum teneri! +STR_CHEAT_MONEY :{LTBLUE}Augere pecuniam {CURRENCY_LONG} +STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Ludens es in loco societatis: {ORANGE}{COMMA} +STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magica machina aggerandi (removet industrias, obiecta immobilia): {ORANGE}{STRING} +STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Sinere cuniculos sese transgredi: {ORANGE}{STRING} +STR_CHEAT_NO_JETCRASH :{LTBLUE}Magna aeroplana non corruent (frequenter) in aeroportibus parvis: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Eligere altitudinem tabulae maximam: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Eligere altitudinem montium maximam in tabula +STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Terra temperata +STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Terra subarctica +STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Terra subtropica +STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :Terra ludicrorum +STR_CHEAT_CHANGE_DATE :{LTBLUE}Mutare annum: {ORANGE}{DATE_SHORT} +STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Mutare annum currentem +STR_CHEAT_SETUP_PROD :{LTBLUE}Sinere mutare productiones industriarum: {ORANGE}{STRING} + +# Livery window +STR_LIVERY_CAPTION :{WHITE}Schema Coloris Novum + +STR_LIVERY_GENERAL_TOOLTIP :{BLACK}Monstrare schemata coloris generalia +STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Monstrare schemata coloris traminum +STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Monstrare schemata coloris vehiculorum viariorum +STR_LIVERY_SHIP_TOOLTIP :{BLACK}Monstrare schemata coloris navium +STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Monstrare schemata coloris aeroplanorum +STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Eligere colorem primarium schematis electi. Ctrl+Preme ut color omnibus schematibus sit primarius +STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Eligere colorem secundum schematis electi. Ctrl+Preme ut color omnibus schematibus sit secundus +STR_LIVERY_PANEL_TOOLTIP :{BLACK}Eligere schema mutandum, sive schemata plura (Ctrl pressa). Preme in quadrum ut usus schematis mutetur + +STR_LIVERY_DEFAULT :Schema Solitum +STR_LIVERY_STEAM :Hamaxa Vaporaria +STR_LIVERY_DIESEL :Hamaxa Diseliana +STR_LIVERY_ELECTRIC :Hamaxa Electrica +STR_LIVERY_MONORAIL :Hamaxa Monoorbitalis +STR_LIVERY_MAGLEV :Hamaxa Maglev +STR_LIVERY_DMU :DMU +STR_LIVERY_EMU :EMU +STR_LIVERY_PASSENGER_WAGON_STEAM :Currus Vectorius (Vaporaria) +STR_LIVERY_PASSENGER_WAGON_DIESEL :Currus Vectorius (Diseliana) +STR_LIVERY_PASSENGER_WAGON_ELECTRIC :Currus Vectorius (Electrica) +STR_LIVERY_PASSENGER_WAGON_MONORAIL :Currus Vectorius (Monoorbitalis) +STR_LIVERY_PASSENGER_WAGON_MAGLEV :Currus Vectorius (Maglev) +STR_LIVERY_FREIGHT_WAGON :Currus Onerarius +STR_LIVERY_BUS :Laophorium +STR_LIVERY_TRUCK :Autoplaustrum +STR_LIVERY_PASSENGER_SHIP :Navis Vectoria +STR_LIVERY_FREIGHT_SHIP :Navis Oneraria +STR_LIVERY_HELICOPTER :Helicopterum +STR_LIVERY_SMALL_PLANE :Aeroplanum Parvum +STR_LIVERY_LARGE_PLANE :Aeroplanum Magnum +STR_LIVERY_PASSENGER_TRAM :Transviaria Raeda Vectoria +STR_LIVERY_FREIGHT_TRAM :Transviaria Raeda Oneraria + +# Face selection window +STR_FACE_CAPTION :{WHITE}Electio Faciei +STR_FACE_CANCEL_TOOLTIP :{BLACK}Cancellare electionem novae faciei +STR_FACE_OK_TOOLTIP :{BLACK}Confirmare electionem novae faciei +STR_FACE_RANDOM :{BLACK}Commiscere + +STR_FACE_MALE_BUTTON :{BLACK}Masculina +STR_FACE_MALE_TOOLTIP :{BLACK}Eligere facies masculinas +STR_FACE_FEMALE_BUTTON :{BLACK}Feminea +STR_FACE_FEMALE_TOOLTIP :{BLACK}Eligere facies femineas +STR_FACE_NEW_FACE_BUTTON :{BLACK}Facies Nova +STR_FACE_NEW_FACE_TOOLTIP :{BLACK}Creare novam faciem fortuitam +STR_FACE_ADVANCED :{BLACK}Praecipua +STR_FACE_ADVANCED_TOOLTIP :{BLACK}Electio faciei praecipua +STR_FACE_SIMPLE :{BLACK}Simpliciter +STR_FACE_SIMPLE_TOOLTIP :{BLACK}Eligere faciem simpliciter +STR_FACE_LOAD :{BLACK}Legere +STR_FACE_LOAD_TOOLTIP :{BLACK}Legere faciem dilectam +STR_FACE_LOAD_DONE :{WHITE}Facies dilecta lecta est ex fasciculo OpenTTD configurationis +STR_FACE_FACECODE :{BLACK}Numerus faciei lusoris +STR_FACE_FACECODE_TOOLTIP :{BLACK}Spicere vel eligere numerum praesidis societatis faciei +STR_FACE_FACECODE_CAPTION :{WHITE}Spicere vel eligere numerum praesidis societatis faciei +STR_FACE_FACECODE_SET :{WHITE}Novus numerus faciei electus est +STR_FACE_FACECODE_ERR :{WHITE}Numerus faciei confirmatus non est - oportet esse numerus inter 0 et 4,294,967,295! +STR_FACE_SAVE :{BLACK}Servare +STR_FACE_SAVE_TOOLTIP :{BLACK}Servare faciem dilectam +STR_FACE_SAVE_DONE :{WHITE}Haec facies servabit ad dilectam tuam in fasciculo OpenTTD configurationis +STR_FACE_EUROPEAN :{BLACK}Europaea +STR_FACE_SELECT_EUROPEAN :{BLACK}Eligere facies Europaeas +STR_FACE_AFRICAN :{BLACK}Africana +STR_FACE_SELECT_AFRICAN :{BLACK}Eligere facies Africanas +STR_FACE_YES :Ita +STR_FACE_NO :Non +STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Apponere mystacem vel inaurem +STR_FACE_HAIR :Capilli: +STR_FACE_HAIR_TOOLTIP :{BLACK}Mutare capillos +STR_FACE_EYEBROWS :Supercilia: +STR_FACE_EYEBROWS_TOOLTIP :{BLACK}Mutare supercilia +STR_FACE_EYECOLOUR :Color oculorum: +STR_FACE_EYECOLOUR_TOOLTIP :{BLACK}Mutare colorem oculorum +STR_FACE_GLASSES :Perspicilla: +STR_FACE_GLASSES_TOOLTIP :{BLACK}Apponere perspicilla +STR_FACE_GLASSES_TOOLTIP_2 :{BLACK}Mutare perspicilla +STR_FACE_NOSE :Nasus: +STR_FACE_NOSE_TOOLTIP :{BLACK}Mutare nasum +STR_FACE_LIPS :Labra: +STR_FACE_MOUSTACHE :Mystax: +STR_FACE_LIPS_MOUSTACHE_TOOLTIP :{BLACK}Mutare labra vel mystacem +STR_FACE_CHIN :Mentum: +STR_FACE_CHIN_TOOLTIP :{BLACK}Mutare mentum +STR_FACE_JACKET :Vestis: +STR_FACE_JACKET_TOOLTIP :{BLACK}Mutare vestem +STR_FACE_COLLAR :Collare: +STR_FACE_COLLAR_TOOLTIP :{BLACK}Mutare collare +STR_FACE_TIE :Focale: +STR_FACE_EARRING :Inauris: +STR_FACE_TIE_EARRING_TOOLTIP :{BLACK}Mutare focale vel inaurem + +# Network server list +STR_NETWORK_SERVER_LIST_CAPTION :{WHITE}Modus Plurium Lusorum +STR_NETWORK_SERVER_LIST_ADVERTISED :{BLACK}Ostensum +STR_NETWORK_SERVER_LIST_ADVERTISED_TOOLTIP :{BLACK}Eligere servatrum ostensum (interretis) aut non ostensum (LAN) +STR_NETWORK_SERVER_LIST_ADVERTISED_NO :Non +STR_NETWORK_SERVER_LIST_ADVERTISED_YES :Ita +STR_NETWORK_SERVER_LIST_PLAYER_NAME :{BLACK}Nomen lusoris: +STR_NETWORK_SERVER_LIST_ENTER_NAME_TOOLTIP :{BLACK}Hoc est nomen tuum aliis lusoribus visibile + +STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Nomen +STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Nomen ludi +STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} - {COMMA}/{COMMA} +STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Clientes +STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Clientes currentes / clientes max.{}Societates currentes / societates max. +STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} +STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Magnitudo tabulae +STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Magnitudo ludi tabulae{}Preme ut magnitudine separenur +STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Dies +STR_NETWORK_SERVER_LIST_DATE_CAPTION_TOOLTIP :{BLACK}Dies currens +STR_NETWORK_SERVER_LIST_YEARS_CAPTION :{BLACK}Anni +STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Numerus ludi annorum +STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Lingua, editio servatri, etc. + +STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Eligere ludum ex indice +STR_NETWORK_SERVER_LIST_LAST_JOINED_SERVER :{BLACK}Servatrum prius iunctum: +STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Eligere servatrum abs te prius adhibitum + +STR_NETWORK_SERVER_LIST_GAME_INFO :{SILVER}LUDI INDICIA +STR_NETWORK_SERVER_LIST_CLIENTS :{SILVER}Clientes: {WHITE}{COMMA} / {COMMA} - {COMMA} / {COMMA} +STR_NETWORK_SERVER_LIST_LANGUAGE :{SILVER}Lingua: {WHITE}{STRING} +STR_NETWORK_SERVER_LIST_LANDSCAPE :{SILVER}Terra: {WHITE}{STRING} +STR_NETWORK_SERVER_LIST_MAP_SIZE :{SILVER}Magnitudo tabulae: {WHITE}{COMMA}x{COMMA} +STR_NETWORK_SERVER_LIST_SERVER_VERSION :{SILVER}Editio servatri: {WHITE}{STRING} +STR_NETWORK_SERVER_LIST_SERVER_ADDRESS :{SILVER}Inscriptio servatri: {WHITE}{STRING} +STR_NETWORK_SERVER_LIST_START_DATE :{SILVER}Dies initii: {WHITE}{DATE_SHORT} +STR_NETWORK_SERVER_LIST_CURRENT_DATE :{SILVER}Dies currens: {WHITE}{DATE_SHORT} +STR_NETWORK_SERVER_LIST_PASSWORD :{SILVER}Tessera custoditum! +STR_NETWORK_SERVER_LIST_SERVER_OFFLINE :{SILVER}SERVATRUM CLAUSUM +STR_NETWORK_SERVER_LIST_SERVER_FULL :{SILVER}SERVATRUM PLENUM +STR_NETWORK_SERVER_LIST_VERSION_MISMATCH :{SILVER}EDITIO IMPAR +STR_NETWORK_SERVER_LIST_GRF_MISMATCH :{SILVER}NEWGRF IMPARIA + +STR_NETWORK_SERVER_LIST_JOIN_GAME :{BLACK}Ludum iungere +STR_NETWORK_SERVER_LIST_REFRESH :{BLACK}Servatrum instaurare +STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP :{BLACK}Iterum arcessere indicia servatri + +STR_NETWORK_SERVER_LIST_FIND_SERVER :{BLACK}Servatrum quaerere +STR_NETWORK_SERVER_LIST_FIND_SERVER_TOOLTIP :{BLACK}Quarere servatrum in rete +STR_NETWORK_SERVER_LIST_ADD_SERVER :{BLACK}Addere servatrum +STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP :{BLACK}Addit servatrum indici quod semper inspicetur si ludus activus insit +STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Servatrum incohare +STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP :{BLACK}Servatrum tuum proprium incohare + +STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE :{BLACK}Nomen tuum inscribe +STR_NETWORK_SERVER_LIST_ENTER_IP :{BLACK}Inscribe inscriptionem IP servatri + +# Start new multiplayer server +STR_NETWORK_START_SERVER_CAPTION :{WHITE}Incipere novum ludum cum pluribus lusoribus + +STR_NETWORK_START_SERVER_NEW_GAME_NAME :{BLACK}Nomen ludi: +STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}Hoc ludi nomen monstrabitur aliis lusoribus in ludorum indice +STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Elige tesseram +STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Custodire tessera ludum tuum, si non vis publicos iungere + +STR_NETWORK_START_SERVER_UNADVERTISED :Non +STR_NETWORK_START_SERVER_ADVERTISED :Ita +STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} clien{P s tes} +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Clientes maximi: +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Eligere numerum maximum clientorum. Necesse non est omnes loci pleni esse +STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} societa{P s tes} +STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Societates maximae: +STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}Eligere numerum maximum societatum +STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} spectator{P "" es} +STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Spectatores maximi: +STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS_TOOLTIP :{BLACK}Eligere numerum maximum spectatorum +STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Lingua adhibita: +STR_NETWORK_START_SERVER_LANGUAGE_TOOLTIP :{BLACK}Lingua in servatro adhibita + +STR_NETWORK_START_SERVER_NEW_GAME_NAME_OSKTITLE :{BLACK}Inscribe nomen ludi retis + +# Network game languages +############ Leave those lines in this order!! +STR_NETWORK_LANG_ANY :Quaevis +STR_NETWORK_LANG_ENGLISH :Anglica +STR_NETWORK_LANG_GERMAN :Theodisca +STR_NETWORK_LANG_FRENCH :Francogallica +STR_NETWORK_LANG_BRAZILIAN :Brasilica +STR_NETWORK_LANG_BULGARIAN :Bulgarica +STR_NETWORK_LANG_CHINESE :Sinica +STR_NETWORK_LANG_CZECH :Cecha +STR_NETWORK_LANG_DANISH :Danica +STR_NETWORK_LANG_DUTCH :Batavica +STR_NETWORK_LANG_ESPERANTO :Esperantica +STR_NETWORK_LANG_FINNISH :Finnica +STR_NETWORK_LANG_HUNGARIAN :Hungarica +STR_NETWORK_LANG_ICELANDIC :Islandica +STR_NETWORK_LANG_ITALIAN :Italiana +STR_NETWORK_LANG_JAPANESE :Iaponica +STR_NETWORK_LANG_KOREAN :Coreana +STR_NETWORK_LANG_LITHUANIAN :Lithuanica +STR_NETWORK_LANG_NORWEGIAN :Norvegica +STR_NETWORK_LANG_POLISH :Polonica +STR_NETWORK_LANG_PORTUGUESE :Lusitana +STR_NETWORK_LANG_ROMANIAN :Romanica +STR_NETWORK_LANG_RUSSIAN :Russica +STR_NETWORK_LANG_SLOVAK :Slovaca +STR_NETWORK_LANG_SLOVENIAN :Slovena +STR_NETWORK_LANG_SPANISH :Hispanica +STR_NETWORK_LANG_SWEDISH :Suecica +STR_NETWORK_LANG_TURKISH :Turcica +STR_NETWORK_LANG_UKRAINIAN :Ucrainica +STR_NETWORK_LANG_AFRIKAANS :Africana +STR_NETWORK_LANG_CROATIAN :Croatica +STR_NETWORK_LANG_CATALAN :Catalana +STR_NETWORK_LANG_ESTONIAN :Estonica +STR_NETWORK_LANG_GALICIAN :Gallaica +STR_NETWORK_LANG_GREEK :Graeca +STR_NETWORK_LANG_LATVIAN :Lettonica +############ End of leave-in-this-order + +# Network game lobby +STR_NETWORK_GAME_LOBBY_CAPTION :{WHITE}Atrium Plurium Lusorum + +STR_NETWORK_GAME_LOBBY_PREPARE_TO_JOIN :{BLACK}Parans ad iungendum: {ORANGE}{STRING} +STR_NETWORK_GAME_LOBBY_COMPANY_LIST_TOOLTIP :{BLACK}Index societatum in hoc ludo. Potes iungere aut novam incipere si locus vacuus adest + +STR_NETWORK_GAME_LOBBY_COMPANY_INFO :{SILVER}INDICIA SOCIETATIS +STR_NETWORK_GAME_LOBBY_COMPANY_NAME :{SILVER}Nomen societatis: {WHITE}{STRING} +STR_NETWORK_GAME_LOBBY_INAUGURATION_YEAR :{SILVER}Initium: {WHITE}{NUM} +STR_NETWORK_GAME_LOBBY_VALUE :{SILVER}Aestimatio societatis: {WHITE}{CURRENCY_LONG} +STR_NETWORK_GAME_LOBBY_CURRENT_BALANCE :{SILVER}Pecunia currens: {WHITE}{CURRENCY_LONG} +STR_NETWORK_GAME_LOBBY_LAST_YEARS_INCOME :{SILVER}Reditus anni prioris: {WHITE}{CURRENCY_LONG} +STR_NETWORK_GAME_LOBBY_PERFORMANCE :{SILVER}Effectus: {WHITE}{NUM} + +STR_NETWORK_GAME_LOBBY_VEHICLES :{SILVER}Vehicula: {WHITE}{NUM} {TRAIN}, {NUM} {LORRY}, {NUM} {BUS}, {NUM} {SHIP}, {NUM} {PLANE} +STR_NETWORK_GAME_LOBBY_STATIONS :{SILVER}Stationes: {WHITE}{NUM} {TRAIN}, {NUM} {LORRY}, {NUM} {BUS}, {NUM} {SHIP}, {NUM} {PLANE} +STR_NETWORK_GAME_LOBBY_PLAYERS :{SILVER}Lusores: {WHITE}{STRING} + +STR_NETWORK_GAME_LOBBY_NEW_COMPANY :{BLACK}Societas Nova +STR_NETWORK_GAME_LOBBY_NEW_COMPANY_TOOLTIP :{BLACK}Creare societatem novam +STR_NETWORK_GAME_LOBBY_SPECTATE_GAME :{BLACK}Ludum spectare +STR_NETWORK_GAME_LOBBY_SPECTATE_GAME_TOOLTIP :{BLACK}Aspicere ludum sicut spectator +STR_NETWORK_GAME_LOBBY_JOIN_COMPANY :{BLACK}Societatem iungere +STR_NETWORK_GAME_LOBBY_JOIN_COMPANY_TOOLTIP :{BLACK}Administrare hanc societatem + +# Network connecting window +STR_NETWORK_CONNECTING_CAPTION :{WHITE}Coniungens... + +############ Leave those lines in this order!! +STR_NETWORK_CONNECTING_1 :{BLACK}(1/6) Coniungens... +STR_NETWORK_CONNECTING_2 :{BLACK}(2/6) Auctorans... +STR_NETWORK_CONNECTING_3 :{BLACK}(3/6) Manens... +STR_NETWORK_CONNECTING_4 :{BLACK}(4/6) Tabulam arcessens... +STR_NETWORK_CONNECTING_5 :{BLACK}(5/6) Data componens... +STR_NETWORK_CONNECTING_6 :{BLACK}(6/6) Nuntians... + +STR_NETWORK_CONNECTING_SPECIAL_1 :{BLACK}Lndicium ludi arcessens... +STR_NETWORK_CONNECTING_SPECIAL_2 :{BLACK}Indicium societatis arcessens... +############ End of leave-in-this-order +STR_NETWORK_CONNECTING_WAITING :{BLACK}{NUM} clien{P s tes} ante te +STR_NETWORK_CONNECTING_DOWNLOADING_1 :{BLACK}{BYTES} adhuc arcessita +STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} / {BYTES} adhuc arcessita + +STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}Disiungere + +STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Servatrum tutum est. Tesseram inscribe +STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Societas tuta est. Tesseram inscribe + +# Network company list added strings +STR_NETWORK_COMPANY_LIST_CLIENT_LIST :{WHITE}Index clientum +STR_NETWORK_COMPANY_LIST_SPECTATE :{WHITE}Spectare +STR_NETWORK_COMPANY_LIST_NEW_COMPANY :{WHITE}Societas Nova + +# Network client list +STR_NETWORK_CLIENTLIST_KICK :Dimittere +STR_NETWORK_CLIENTLIST_BAN :Expellere +STR_NETWORK_CLIENTLIST_GIVE_MONEY :Dare pecuniam +STR_NETWORK_CLIENTLIST_SPEAK_TO_ALL :Ad omnes loqui +STR_NETWORK_CLIENTLIST_SPEAK_TO_COMPANY :Ad societatem loqui +STR_NETWORK_CLIENTLIST_SPEAK_TO_CLIENT :Ad clientem loqui + +STR_NETWORK_SERVER :Servatrum +STR_NETWORK_CLIENT :Cliens +STR_NETWORK_SPECTATORS :Spectatores + +STR_NETWORK_GIVE_MONEY_CAPTION :{WHITE}Inscribe quantitatem pecuniae dandam +STR_NETWORK_TOOLBAR_LIST_SPECTATOR :{BLACK}Spectator + +# Network set password +STR_COMPANY_PASSWORD_CANCEL :{BLACK}Relinquere tesseram inscriptam +STR_COMPANY_PASSWORD_OK :{BLACK}Dare novam tesseram societati +STR_COMPANY_PASSWORD_CAPTION :{WHITE}Tessera societatis +STR_COMPANY_PASSWORD_MAKE_DEFAULT :{BLACK}Tessera societatis solita +STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}Fac ut haec tessera societatis solita sit novis societatibus + +# Network company info join/password +STR_COMPANY_VIEW_JOIN :{BLACK}Iungere +STR_COMPANY_VIEW_JOIN_TOOLTIP :{BLACK}Iungere ludereque in hac societate +STR_COMPANY_VIEW_PASSWORD :{BLACK}Tessera +STR_COMPANY_VIEW_PASSWORD_TOOLTIP :{BLACK}Custodire tessera societatem tuam ut clientes inauctorati iungere non possint +STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}Eligere tesseram societatis + +# Network chat +STR_NETWORK_CHAT_SEND :{BLACK}Mittere +STR_NETWORK_CHAT_COMPANY_CAPTION :[Manui] : +STR_NETWORK_CHAT_CLIENT_CAPTION :[Privatum] {STRING}: +STR_NETWORK_CHAT_ALL_CAPTION :[Omnibus] : + +STR_NETWORK_CHAT_COMPANY :[Manui] {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_TO_COMPANY :[Manui] Ad {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_CLIENT :[Privatum] {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_TO_CLIENT :[Privatum] Ad {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_ALL :[Omnibus] {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_OSKTITLE :{BLACK}Inscribere nuntium ad retis colloquium + +# Network messages +STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Nullae res retis inventae vel compilata sine ENABLE_NETWORK +STR_NETWORK_ERROR_NOSERVER :{WHITE}Nulli ludi in rete inventi +STR_NETWORK_ERROR_NOCONNECTION :{WHITE}Nulla responsa a servatro +STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Non potest iungere propter NewGRF imparia +STR_NETWORK_ERROR_DESYNC :{WHITE}Synchronizatio ludi retis defecit +STR_NETWORK_ERROR_LOSTCONNECTION :{WHITE}Connexus retis amissus +STR_NETWORK_ERROR_SAVEGAMEERROR :{WHITE}Non potest legere ludum servatum +STR_NETWORK_ERROR_SERVER_START :{WHITE}Servatrum non potest incipi +STR_NETWORK_ERROR_CLIENT_START :{WHITE}Non potest coniungere +STR_NETWORK_ERROR_TIMEOUT :{WHITE}Connexus #{NUM} defecit +STR_NETWORK_ERROR_SERVER_ERROR :{WHITE}Error protocolis adfuit atque connexus clausus est +STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Editio clientis impar est editioni servatri +STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Tessera impar +STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Servatrum plenum est +STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Expulsus servatro es +STR_NETWORK_ERROR_KICKED :{WHITE}Dimissus ex servatro es +STR_NETWORK_ERROR_CHEATER :{WHITE}Fallere non licet in hoc servatro +STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Nimium iussa servatro mittebas +STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Nimis lente eras in tesseram inscribendo +STR_NETWORK_ERROR_TIMEOUT_COMPUTER :{WHITE}Computatrum tuum nimis lentius quam servatrum est +STR_NETWORK_ERROR_TIMEOUT_MAP :{WHITE}Computatrum tuum nimis lente erat in tabulam geographicam arcessendo +STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Computatrum tuum nimis lente erat in ad servatrum iungendo + +############ Leave those lines in this order!! +STR_NETWORK_ERROR_CLIENT_GENERAL :error generalis +STR_NETWORK_ERROR_CLIENT_DESYNC :error desync +STR_NETWORK_ERROR_CLIENT_SAVEGAME :non potuit legere tabulam +STR_NETWORK_ERROR_CLIENT_CONNECTION_LOST :connexus amissus +STR_NETWORK_ERROR_CLIENT_PROTOCOL_ERROR :error protocolli +STR_NETWORK_ERROR_CLIENT_NEWGRF_MISMATCH :NewGRF imparia +STR_NETWORK_ERROR_CLIENT_NOT_AUTHORIZED :inauctoratus +STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :fasciculus irritus vel ignotus +STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :editio impar +STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nomen iam adhibitum +STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :tessera impar +STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :agnoscamentum societatis impar in 'DoCommand' +STR_NETWORK_ERROR_CLIENT_KICKED :dimissus a servatro +STR_NETWORK_ERROR_CLIENT_CHEATER :conabatur trica uti +STR_NETWORK_ERROR_CLIENT_SERVER_FULL :servatrum plenum +STR_NETWORK_ERROR_CLIENT_TOO_MANY_COMMANDS :mittebat nimium iussa +STR_NETWORK_ERROR_CLIENT_TIMEOUT_PASSWORD :nulla tessera recipitur +STR_NETWORK_ERROR_CLIENT_TIMEOUT_COMPUTER :connexus nimis lentus +STR_NETWORK_ERROR_CLIENT_TIMEOUT_MAP :tabula geographica arcessebatur nimis lente +STR_NETWORK_ERROR_CLIENT_TIMEOUT_JOIN :tabula geographica componebatur nimis lente +############ End of leave-in-this-order + +STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Connexus forsitan amissus +STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}In {NUM} prior{P e ibus} secund{P o is} nulla data e servatro accipitur + +# Network related errors +STR_NETWORK_SERVER_MESSAGE :*** {1:STRING} +############ Leave those lines in this order!! +STR_NETWORK_SERVER_MESSAGE_GAME_PAUSED :Ludus intermissus ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Ludus adhuc intermissus ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Ludus adhuc intermissus ({STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Ludus adhuc intermissus ({STRING}, {STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :Ludus adhuc intermissus ({STRING}, {STRING}, {STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_UNPAUSED :Ludus resumptus ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :numerus lusorum +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :lusores coniungentes +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :a lusore +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :a ludi scripto +############ End of leave-in-this-order +STR_NETWORK_MESSAGE_CLIENT_LEAVING :exiens +STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} ludum iungit +STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} ludum iungit (Cliens #{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {STRING} iungit societatem #{2:NUM} +STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} spectatores iungit +STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} novam societatem incipit (#{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ludum disiungit ({2:STRING}) +STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} nomen suum mutat ad {STRING} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} tuae societati largitur {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Largiris {1:STRING} {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Servatrum iam clausum est +STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Servatrum resumit...{}Maneas... + +# Content downloading window +STR_CONTENT_TITLE :{WHITE}Arcessitus Rerum +STR_CONTENT_TYPE_CAPTION :{BLACK}Typus +STR_CONTENT_TYPE_CAPTION_TOOLTIP :{BLACK}Typus rei +STR_CONTENT_NAME_CAPTION :{BLACK}Nomen +STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}Nomen rei +STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Preme in lineam ut indicia monstretur{}Preme in quadrum ut res eligatur ad arcessendum +STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Omnes eligere +STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Signare omnes res arcessendas esse +STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Eligere novas editiones +STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Signare omnes editiones noviores quam eas quas iam habes arcessendas esse +STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Nullas eligere +STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Signare nullam rem arcessendam esse +STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Quaerere situs externos +STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Quaerere res in aliis sitibus interretialibus non in inventario OpenTTD parabiles +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}OpenTTD exiens es! +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Condiciones res arcessendi ex sitibus externis sunt variae.{}Necesse est tibi inspicere eos situs et quaerere institutionem quomodo res imponatur intra OpenTTD.{}Visne pergere? +STR_CONTENT_FILTER_TITLE :{BLACK}Colum nominis: +STR_CONTENT_OPEN_URL :{BLACK}Ire ad situm interretialem +STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Ire ad situm huius rei +STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Arcessere +STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK}Incipere arcessere res electas +STR_CONTENT_TOTAL_DOWNLOAD_SIZE :{SILVER}Magnitudo cuncti arcessitus: {WHITE}{BYTES} +STR_CONTENT_DETAIL_TITLE :{SILVER}INDICIA REI +STR_CONTENT_DETAIL_SUBTITLE_UNSELECTED :{SILVER}Non optavisti hanc rem arcessendam esse +STR_CONTENT_DETAIL_SUBTITLE_SELECTED :{SILVER}Optavisti hanc rem arcessendam esse +STR_CONTENT_DETAIL_SUBTITLE_AUTOSELECTED :{SILVER}Hic ambactus optatus est arcessendus +STR_CONTENT_DETAIL_SUBTITLE_ALREADY_HERE :{SILVER}Iam hanc rem habes +STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Haec res ignota est ac non potest arcessi in OpenTTD +STR_CONTENT_DETAIL_UPDATE :{SILVER}H{G ic aec oc i ae aec} est nova editio veteris {STRING.gen} +STR_CONTENT_DETAIL_NAME :{SILVER}Nomen: {WHITE}{STRING} +STR_CONTENT_DETAIL_VERSION :{SILVER}Editio: {WHITE}{STRING} +STR_CONTENT_DETAIL_DESCRIPTION :{SILVER}Descriptio: {WHITE}{STRING} +STR_CONTENT_DETAIL_URL :{SILVER}URL: {WHITE}{STRING} +STR_CONTENT_DETAIL_TYPE :{SILVER}Typus: {WHITE}{STRING} +STR_CONTENT_DETAIL_FILESIZE :{SILVER}Magnitudo arcessus: {WHITE}{BYTES} +STR_CONTENT_DETAIL_SELECTED_BECAUSE_OF :{SILVER}Electa propter: {WHITE}{STRING} +STR_CONTENT_DETAIL_DEPENDENCIES :{SILVER}Ambacti: {WHITE}{STRING} +STR_CONTENT_DETAIL_TAGS :{SILVER}Notae: {WHITE}{STRING} +STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD compilata est sine "zlib"... +STR_CONTENT_NO_ZLIB_SUB :{WHITE}... itaque non potest ullam rem e rete arcessere! + +# Order of these is important! +STR_CONTENT_TYPE_BASE_GRAPHICS :{G=n}Fundamentum Graphicum +STR_CONTENT_TYPE_BASE_GRAPHICS.gen :{G=n}Fundamenti Graphici +STR_CONTENT_TYPE_NEWGRF :{G=n}NewGRF +STR_CONTENT_TYPE_NEWGRF.gen :{G=n}NewGRF +STR_CONTENT_TYPE_AI :{G=f}IA +STR_CONTENT_TYPE_AI.gen :{G=f}IA +STR_CONTENT_TYPE_AI_LIBRARY :{G=f}Bibliotheca IA +STR_CONTENT_TYPE_AI_LIBRARY.gen :{G=f}Bibliothecae IA +STR_CONTENT_TYPE_SCENARIO :{G=n}Scaenarium +STR_CONTENT_TYPE_SCENARIO.gen :{G=n}Scaenarii +STR_CONTENT_TYPE_HEIGHTMAP :{G=f}Tabula Altitudinum +STR_CONTENT_TYPE_HEIGHTMAP.gen :{G=f}Tabulae Altitudinum +STR_CONTENT_TYPE_BASE_SOUNDS :{G=n}Fundamentum Sonicum +STR_CONTENT_TYPE_BASE_SOUNDS.gen :{G=n}Fundamenti Sonici +STR_CONTENT_TYPE_BASE_MUSIC :{G=n}Fundamentum Musicum +STR_CONTENT_TYPE_BASE_MUSIC.gen :{G=n}Fundamenti Musici +STR_CONTENT_TYPE_GAME_SCRIPT :{G=n}Ludi Scriptum +STR_CONTENT_TYPE_GAME_SCRIPT.gen :{G=n}Ludi Scripti +STR_CONTENT_TYPE_GS_LIBRARY :{G=f}Bibliotheca Ludi Scriptorum +STR_CONTENT_TYPE_GS_LIBRARY.gen :{G=f}Bibliothecae Ludi Scriptorum + +# Content downloading progress window +STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Res arcessens... +STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Fasciculos requirens... +STR_CONTENT_DOWNLOAD_FILE :{WHITE}Arcessens {STRING} ({NUM} ex {NUM}) +STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Transmissio completa +STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} ex {BYTES} arcessita ({NUM} %) + +# Content downloading error messages +STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}Non poterat iungere ad rerum servatrum... +STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}Transmissio defecit... +STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... connexus amissus +STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... fasciculus non scriptabilis +STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Non poterat fasciculum arcessitum decomprimere + +STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Graphica absenta +STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD graphica requirit sed nulla inventa sunt. Permittisne OpenTTD arcessere et imponere haec graphica? +STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ita, arcessere graphica +STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Non, OpenTTD exire + +# Transparency settings window +STR_TRANSPARENCY_CAPTION :{WHITE}Optiones Perluciditatis +STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Mutare perluciditatem signorum. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Mutare perluciditatem arborum. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Mutare perluciditatem aedificiorum. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Mutare perluciditatem industriarum. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Mutare perluciditatem structurarum sicut stationes, receptacula, et interloci. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Mutare perluciditatem pontium. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Mutare perluciditatem ornamentorum sicut phari et emissoria. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Mutare perluciditatem catenariae. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Mutare perluciditatem signorum onerandi. Ctrl+Preme ut figatur (non mutabitur globulo perluciditatem mutandi presso) +STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Facere ut res invisibles sint, non tantum perlucidae + +# Linkgraph legend window +STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Formula Graphica Onerum Cursus +STR_LINKGRAPH_LEGEND_ALL :{BLACK}Omnia +STR_LINKGRAPH_LEGEND_NONE :{BLACK}Nulla +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Eligere societates monstrandas + +# Linkgraph legend window and linkgraph legend in smallmap +STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}non usus +STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLACK}satur +STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}superoneratus + +# Base for station construction window(s) +STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Regio Acceptionis +STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Celata +STR_STATION_BUILD_COVERAGE_ON :{BLACK}Ostensa +STR_STATION_BUILD_COVERAGE_AREA_OFF_TOOLTIP :{BLACK}Haud ostendere regionem acceptionis loci struendi +STR_STATION_BUILD_COVERAGE_AREA_ON_TOOLTIP :{BLACK}Ostendere regionem acceptionis loci struendi +STR_STATION_BUILD_ACCEPTS_CARGO :{BLACK}Accipiuntur: {GOLD}{CARGO_LIST} +STR_STATION_BUILD_SUPPLIES_CARGO :{BLACK}Produntur: {GOLD}{CARGO_LIST} + +# Join station window +STR_JOIN_STATION_CAPTION :{WHITE}Iungere stationem +STR_JOIN_STATION_CREATE_SPLITTED_STATION :{YELLOW}Struere discretam stationem + +STR_JOIN_WAYPOINT_CAPTION :{WHITE}Iungere interlocum +STR_JOIN_WAYPOINT_CREATE_SPLITTED_WAYPOINT :{YELLOW}Struere discretum interlocum + +# Rail construction toolbar +STR_RAIL_TOOLBAR_RAILROAD_CONSTRUCTION_CAPTION :Constructio Ferriviarum +STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Constructio Electricarum Ferriviarum +STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Constructio Monoorbitarum +STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Constructio Maglev + +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Struere ferriviam. Ctrl mutat inter ferrivias struendas/removendas. Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Struere ferriviam automatico modo. Ctrl mutat inter ferrivias struendas/removendas. Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Struere receptaculum traminum (ad tramina ministranda ac emenda). Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Struere interlocum ferriviarium. Ctrl pressa, interloci iungendi essent. Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Struere stationem ferriviariam. Ctrl pressa, stationes iungendae essent. Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Struere signalia ferriviaria. Ctrl mutat inter semaphora et signalia electrica{}Constuctio trahendo struit signalia in lineam; Ctrl+trahendo signalia struit usque ad compitum signaleve secundum{}Ctrl+Preme ut fenestra signalium ostendatur celeturve. Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Struere pontem ferriviarium. Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Struere cuniculum ferriviarium. Shift mutat inter constructionem et aestimationem monstrandam +STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Mutare inter ferrivias, signalia, interlocos, et stationes struendas/removendas. Ctrl pressa, etiam astaria interlocorum stationumque removenda sunt. +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Mutare typum astarii. Shift mutat inter constructionem et aestimationem monstrandam + +STR_RAIL_NAME_RAILROAD :Ferrivia +STR_RAIL_NAME_RAILROAD.gen :Ferriviarium +STR_RAIL_NAME_ELRAIL :Ferrivia electrica +STR_RAIL_NAME_ELRAIL.gen :Electricum Ferriviarium +STR_RAIL_NAME_MONORAIL :Monoorbita +STR_RAIL_NAME_MONORAIL.gen :Monoorbitarium +STR_RAIL_NAME_MAGLEV :Maglev +STR_RAIL_NAME_MAGLEV.gen :Maglev + +# Rail depot construction window +STR_BUILD_DEPOT_TRAIN_ORIENTATION_CAPTION :{WHITE}Directio Receptaculi Traminum +STR_BUILD_DEPOT_TRAIN_ORIENTATION_TOOLTIP :{BLACK}Eligere directionem receptaculi traminum + +# Rail waypoint construction window +STR_WAYPOINT_CAPTION :{WHITE}Interlocus +STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}Eligere typum interloci + +# Rail station construction window +STR_STATION_BUILD_RAIL_CAPTION :{WHITE}Electio Ferriviariae Stationis +STR_STATION_BUILD_ORIENTATION :{BLACK}Directio +STR_STATION_BUILD_RAILROAD_ORIENTATION_TOOLTIP :{BLACK}Eligere directionem ferriviae stationis +STR_STATION_BUILD_NUMBER_OF_TRACKS :{BLACK}Numerus suggestuum +STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Eligere numerum suggestuum ferriviae stationis +STR_STATION_BUILD_PLATFORM_LENGTH :{BLACK}Longitudo suggestuum +STR_STATION_BUILD_PLATFORM_LENGTH_TOOLTIP :{BLACK}Eligere longitudinem ferriviae stationis +STR_STATION_BUILD_DRAG_DROP :{BLACK}Trahere Ponereque +STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Struere stationem trahendo ponendoque + +STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Eligere classem stationum monstrandam +STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Eligere typum stationis struendum + +STR_STATION_CLASS_DFLT :Statio solita +STR_STATION_CLASS_WAYP :Interloci + +# Signal window +STR_BUILD_SIGNAL_CAPTION :{WHITE}Electio Signalium +STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Signale Zonale (semaphoricum){}Hoc est signale simplicissimum, tantum unum tramen licet inesse inter signalia zonalia +STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Signale Aditus (semaphoricum){}Viride est dum est signale viride exitus in astariis sequentibus. Alioquin rubrum est +STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Signale Exitus (semaphoricum){}Agit sicut signale zonale sed necesse est signalibus compositis aditusque +STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Signale Compositum (semaphoricum){}Signale compositum agit sicut et aditus et exitus signale. Igitur potes facere magnas "arbores" signalium +STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Signale Itineris (semaphoricum){}Signale itineris sinit plura tramina inire intra signalia eodem tempore, si tramen potest reservare iter ad destinatum tutum. Signalia itineris usitata possunt transiri a tergo +STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Signale Itineris Unius Cursus (semaphoricum){}Signale itineris sinit plura tramina inire intra signalia eodem tempore, si tramen potest reservare iter ad destinatum tutum. Signalia itineris unius cursus non possunt transiri a tergo +STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Signale Zonale (electricum){}Hoc est signale simplicissimum, tantum unum tramen licet inesse inter signalia zonalia +STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Signale Aditus (electricum){}Viride est dum est signale viride exitus in astariis sequentibus. Alioquin rubrum est +STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Signale Exitus (electricum){}Agit sicut signale zonale sed necesse est signalibus compositis aditusque +STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Signale Compositum (electricum){}Signale compositum agit sicut et aditus et exitus signale. Igitur potes facere magnas "arbores" signalium +STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Signale Itineris (electricum){}Signale itineris sinit plura tramina inire intra signalia eodem tempore, si tramen potest reservare iter ad destinatum tutum. Signalia itineris usitata possunt transiri a tergo +STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Signale Itineris Unius Cursus (electricum){}Signale itineris sinit plura tramina inire intra signalia eodem tempore, si tramen potest reservare iter ad destinatum tutum. Signalia itineris unius cursus non possunt transiri a tergo +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Mutare Signalia{}Electa, pressio in signale facit ut mutetur in novum typum electum. Ctrl+Preme ut signale mutetur inter semaphoricum et electricum. Shift mutat inter mutationem et aestimationem monstrandam +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Densitas signalia trahendi +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Minuere densitatem signalia trahendi +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Augere densitatem signalia trahendi + +# Bridge selection window +STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Eligere Pontem Ferriviarium +STR_SELECT_ROAD_BRIDGE_CAPTION :{WHITE}Eligere Pontem Viarium +STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Electio pontium - preme in pontem delectum ut struatur +STR_SELECT_BRIDGE_INFO :{GOLD}{STRING},{} {VELOCITY} {WHITE}{CURRENCY_LONG} +STR_SELECT_BRIDGE_SCENEDIT_INFO :{GOLD}{STRING},{} {VELOCITY} +STR_BRIDGE_NAME_SUSPENSION_STEEL :Pendulus, Chalybeius +STR_BRIDGE_NAME_GIRDER_STEEL :Trabum, Chalybeius +STR_BRIDGE_NAME_CANTILEVER_STEEL :Prominens, Chalybeius +STR_BRIDGE_NAME_SUSPENSION_CONCRETE :Pendulus, Caementicius +STR_BRIDGE_NAME_WOODEN :Ligneus +STR_BRIDGE_NAME_CONCRETE :Caementicius +STR_BRIDGE_NAME_TUBULAR_STEEL :Tubulorum, Chalybeius +STR_BRIDGE_TUBULAR_SILICON :Tubulorum, Silicii + + +# Road construction toolbar +STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Constructio Viarum +STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Constructio Ferriviarum Stratarium +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Struere viam. Ctrl mutat inter vias struendas/removendas. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Struere ferriviam stratariam. Ctrl mutat inter struendum/removendum. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Struere partem viae automatico modo. Ctrl mutat inter vias struendas/removendas. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Struere ferriviam stratariam automatico modo. Ctrl mutat inter ferrivias struendas/removendas. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Struere receptaculum viarium (ad vehicula viaria ministranda ac emenda). Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Struere receptaculum transviarium (ad raedas transviarias ministrandas ac emendas). Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Struere stationem laophoricam. Ctrl pressa, stationes iungendae essent. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Struere stationem transviariam vectoriam. Ctrl pressa, stationes iungendae essent. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Struere stationem autoplaustricam. Ctrl pressa, stationes iungendae essent. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Struere stationem transviariam onerariam. Ctrl pressa, stationes iungendae essent. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Monodromus adhibendus/non adhibendus +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Struere pontem viarium. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Struere pontem transviarium. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Struere cuniculum viarium. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Struere cuniculum transviarium. Shift mutat inter constructionem et aestimationem monstrandam +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Mutare inter vias struendas/removendas +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Mutare inter ferrivias stratarias struendas/removendas + +# Road depot construction window +STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Directio receptaculi viarii +STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP :{BLACK}Eligere directionem receptaculi viarii +STR_BUILD_DEPOT_TRAM_ORIENTATION_CAPTION :{WHITE}Directio receptaculi transviarii +STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Eligere directionem receptaculi transviarii + +# Road vehicle station construction window +STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Directio stationis laophoricae +STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Eligere directionem stationis laophoricae +STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Directio stationis autoplaustricae +STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Eligere directionem stationis autoplaustricae +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Directio stationis transviariae vectoriae +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Eligere directionem stationis transviariae vectoriae +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Directio stationis transviariae onerariae +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Eligere directionem stationis transviariae onerariae + +# Waterways toolbar (last two for SE only) +STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Constructio Viarum Aquarium +STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Viae Aquariae +STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Struere canales. Shift mutat inter constructionem et aestimationem monstrandam +STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Struere cataracta. Shift mutat inter constructionem et aestimationem monstrandam +STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Struere receptaculum navium (ad naves emendas ac ministrandas). Shift mutat inter constructionem et aestimationem monstrandam +STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Struere navale. Ctrl pressa, stationes iungendae essent. Shift mutat inter constructionem et aestimationem monstrandam +STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Ponere signum monitorium quod interlocus potest esse. Shift mutat inter constructionem et aestimationem monstrandam +STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Struere aquae ductum. Shift mutat inter constructionem et aestimationem monstrandam +STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Delineare aquae spatium.{}Ponere canalem. Si Ctrl premitur in libra maris, facit ut circumiectum inundetur +STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Ponere fluvios + +# Ship depot construction window +STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Directio receptaculi navium +STR_DEPOT_BUILD_SHIP_ORIENTATION_TOOLTIP :{BLACK}Eligere directionem receptaculi navium + +# Dock construction window +STR_STATION_BUILD_DOCK_CAPTION :{WHITE}Navale + +# Airport toolbar +STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Aeroportus +STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Struere aeroportum. Ctrl pressa, stationes iungendae essent. Shift mutat inter constructionem et aestimationem monstrandam + +# Airport construction window +STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Electio aeroportuum +STR_STATION_BUILD_AIRPORT_TOOLTIP :{BLACK}Eligere typum aeroportus +STR_STATION_BUILD_AIRPORT_CLASS_LABEL :{BLACK}Typus aeroportus +STR_STATION_BUILD_AIRPORT_LAYOUT_NAME :{BLACK}Dispositio {NUM} + +STR_AIRPORT_SMALL :Parvus +STR_AIRPORT_CITY :Urbanus +STR_AIRPORT_METRO :Metropolitanus +STR_AIRPORT_INTERNATIONAL :Internationalis +STR_AIRPORT_COMMUTER :Suburbanus +STR_AIRPORT_INTERCONTINENTAL :Intercontinentalis +STR_AIRPORT_HELIPORT :Helicopterarium +STR_AIRPORT_HELIDEPOT :Heliportus +STR_AIRPORT_HELISTATION :Helistatio + +STR_AIRPORT_CLASS_SMALL :Aeroportus parvi +STR_AIRPORT_CLASS_LARGE :Aeroportus magni +STR_AIRPORT_CLASS_HUB :Aeroportus amplissimi +STR_AIRPORT_CLASS_HELIPORTS :Heliportus + +STR_STATION_BUILD_NOISE :{BLACK}Sonitus factus: {GOLD}{COMMA} + +# Landscaping toolbar +STR_LANDSCAPING_TOOLBAR :{WHITE}Plasmatio Terrae +STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Inclinare angulum terrae. Dum trahitur, primus angulus electus inclinatur deinde area electa levigatur ad altitudinem primi anguli inclinati. Ctrl diagonaliter eligit. Shift mutat inter plasmationem et aestimationem monstrandam +STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Tollere angulum terrae. Dum trahitur, primus angulus electus tollitur deinde area electa levigatur ad altitudinem primi anguli sublati. Ctrl diagonaliter eligit. Shift mutat inter plasmationem et aestimationem monstrandam +STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Levigare terram ad altitudinem primi anguli electi. Ctrl diagonaliter eligit. Shift mutat inter plasmationem et aestimationem monstrandam +STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Emere terram utendam. Shift mutat inter constructionem et aestimationem monstrandam + +# Object construction window +STR_OBJECT_BUILD_CAPTION :{WHITE}Electio ornamentorum +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Eligere ornamentum struendum. Shift mutat inter constructionem et aestimationem monstrandam +STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Eligere classem ornamenti struendi +STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Praevisum ornamenti +STR_OBJECT_BUILD_SIZE :{BLACK}Magnitudo: {GOLD}{NUM} x {NUM} tegulae + +STR_OBJECT_CLASS_LTHS :Phari +STR_OBJECT_CLASS_TRNS :Emissoria + +# Tree planting window (last two for SE only) +STR_PLANT_TREE_CAPTION :{WHITE}Arbores +STR_PLANT_TREE_TOOLTIP :{BLACK}Eligere arborem serendam. Si tegula iam arborem habet, plures arbores fortuitas addentur (forsitan non idem typus arboris) +STR_TREES_RANDOM_TYPE :{BLACK}Arbor fortuita +STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Ponere atbores fortuitas. Shift mutat inter constructionem et aestimationem monstrandam +STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Arbores fortuitae +STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Serere arbores fortuitas per terram + +# Land generation window (SE) +STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Plasmatio Terrae +STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Ponere locos saxosos in terra +STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Definire spatium desertum.{}Ctrl pressa, desertum removeatur +STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Augere spatium terrae inclinandae/tollendae +STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Minuere spatium terrae inclinandae/tollendae +STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Creare terram forte +STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Novum scaenarium creare +STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Reponere terram +STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Removere omnes societatis possessiones + +STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Reponere terram +STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Esne certus te velle omnes societatis possessiones removere? + +# Town generation window (SE) +STR_FOUND_TOWN_CAPTION :{WHITE}Conditus Oppidorum +STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Novum Oppidum +STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Condere novum oppidum. Shift mutat inter constructionem et aestimationem monstrandam +STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Oppidum Fortuitum +STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Condere oppidum in loco fortuito +STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Plura Oppida Fortuita +STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Condere oppida fortuita per tabulam + +STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Nomen Oppidi: +STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Inscribe nomen oppidi +STR_FOUND_TOWN_NAME_EDITOR_HELP :{BLACK}Preme ut oppidi nomen inscribas +STR_FOUND_TOWN_NAME_RANDOM_BUTTON :{BLACK}Nomen fortuitum +STR_FOUND_TOWN_NAME_RANDOM_TOOLTIP :{BLACK}Creare novum nomen fortuitum + +STR_FOUND_TOWN_INITIAL_SIZE_TITLE :{YELLOW}Magnitudo oppidi: +STR_FOUND_TOWN_INITIAL_SIZE_SMALL_BUTTON :{BLACK}Parva +STR_FOUND_TOWN_INITIAL_SIZE_MEDIUM_BUTTON :{BLACK}Mediocris +STR_FOUND_TOWN_INITIAL_SIZE_LARGE_BUTTON :{BLACK}Magna +STR_FOUND_TOWN_SIZE_RANDOM :{BLACK}Fortuita +STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Eligere magnitudinem oppidi +STR_FOUND_TOWN_CITY :{BLACK}Urbs +STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Urbes crescunt oppidis celerius{}Etiam maiores sunt cum conduntur + +STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Dispositio viarum oppidi: +STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Eligere dispositionem viarum huic oppido adhibendam +STR_FOUND_TOWN_SELECT_LAYOUT_ORIGINAL :{BLACK}Originalis +STR_FOUND_TOWN_SELECT_LAYOUT_BETTER_ROADS :{BLACK}Viae satius +STR_FOUND_TOWN_SELECT_LAYOUT_2X2_GRID :{BLACK}Cancelli 2x2 +STR_FOUND_TOWN_SELECT_LAYOUT_3X3_GRID :{BLACK}Cancelli 3x3 +STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Fortuita + +# Fund new industry window +STR_FUND_INDUSTRY_CAPTION :{WHITE}Condere novam industriam +STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Eligere industriam ex indice +STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Plures industrae fortuitae +STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Serere industrias fortuitas per tabulam +STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Pretium: {YELLOW}{CURRENCY_LONG} +STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prospicere +STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Struere +STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Condere + +# Industry cargoes window +STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Catena industrialis {STRING.gen} +STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}Catena industrialis {STRING.gen} +STR_INDUSTRY_CARGOES_PRODUCERS :{WHITE}Industriae producentes +STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}Industriae accipientes +STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Aedificia Oppidorum +STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}Preme in industriam ut monstrentur praebitores emptoresque eius +STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING}{}Preme in onus ut monstrentur praebitores emptoresque eius +STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Ostendere catenam +STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Ostendere onera, praebitores, ac emptores huius industriae +STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Connectere ad tabulam parvam +STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Etiam monstrare industrias aptas in parva tabula +STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Onus eligere +STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Eligere onus monstrandum +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Industriam eligere +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Eligere industriam monstrandam + +# Land area window +STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}Indicia Terrae Regionis +STR_LAND_AREA_INFORMATION_COST_TO_CLEAR_N_A :{BLACK}Pretium vacuefaciendi: {LTBLUE}N/A +STR_LAND_AREA_INFORMATION_COST_TO_CLEAR :{BLACK}Pretium vacuefaciendi: {RED}{CURRENCY_LONG} +STR_LAND_AREA_INFORMATION_REVENUE_WHEN_CLEARED :{BLACK}Reditus vacuefaciendi: {LTBLUE}{CURRENCY_LONG} +STR_LAND_AREA_INFORMATION_OWNER_N_A :N/A +STR_LAND_AREA_INFORMATION_OWNER :{BLACK}Possessor: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_ROAD_OWNER :{BLACK}Possessor viae: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Possessor ferriviae stratariae: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Possessor ferriviae: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Auctoritas vicinalis: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Nulla +STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Coordinatae: {LTBLUE}{NUM} x {NUM} x {NUM} ({STRING}) +STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Dies struendi: {LTBLUE}{DATE_LONG} +STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Classis stationis: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Typus stationis: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Typus aeroportus: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_AIRPORT_NAME :{BLACK}Nomen aeroportus: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Nomen tegulae aeroportus: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Onera accepta: {LTBLUE} +STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) +STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Velocitas maxima ferriviae: {LTBLUE}{VELOCITY} +STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Velocitas maxima viae: {LTBLUE}{VELOCITY} + +# Description of land area of different tiles +STR_LAI_CLEAR_DESCRIPTION_ROCKS :Saxa +STR_LAI_CLEAR_DESCRIPTION_ROUGH_LAND :Terra Aspera +STR_LAI_CLEAR_DESCRIPTION_BARE_LAND :Terra Nuda +STR_LAI_CLEAR_DESCRIPTION_GRASS :Herba +STR_LAI_CLEAR_DESCRIPTION_FIELDS :Agri +STR_LAI_CLEAR_DESCRIPTION_SNOW_COVERED_LAND :Terra Nivea +STR_LAI_CLEAR_DESCRIPTION_DESERT :Deserta + +STR_LAI_RAIL_DESCRIPTION_TRACK :Astarium {STRING.gen} +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :Astarium {STRING.gen} cum signalibus zonalibus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :Astarium {STRING.gen} cum signalibus aditus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :Astarium {STRING.gen} cum signalibus exitus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :Astarium {STRING.gen} cum signalibus compositis +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :Astarium {STRING.gen} cum signalibus itineris +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :Astarium {STRING.gen} cum signalibus itineris unius cursus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :Astarium {STRING.gen} cum signalibus zonalibus et aditus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :Astarium {STRING.gen} cum signalibus zonalibus et exitus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :Astarium {STRING.gen} cum signalibus zonalibus et compositis +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :Astarium {STRING.gen} cum signalibus zonalibus et itineris +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :Astarium {STRING.gen} cum signalibus zonalibus et itineris unius cursus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :Astarium {STRING.gen} cum signalibus aditus et exitus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :Astarium {STRING.gen} cum signalibus aditus et compositis +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :Astarium {STRING.gen} cum signalibus aditus et itineris +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_NOENTRYSIGNALS :Astarium {STRING.gen} cum signalibus aditus et itineris unius cursus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :Astarium {STRING.gen} cum signalibus exitus et compositis +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :Astarium {STRING.gen} cum signalibus exitus et itineris +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :Astarium {STRING.gen} cum signalibus exitus et itineris unius cursus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :Astarium {STRING.gen} cum signalibus compositis et itineris +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :Astarium {STRING.gen} cum signalibus compositis et itineris unius cursus +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :Astarium {STRING.gen} cum signalibus itineris et unius cursus itineris +STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :Receptaculum {STRING.gen} + +STR_LAI_ROAD_DESCRIPTION_ROAD :Via +STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :Via cum lampadibus +STR_LAI_ROAD_DESCRIPTION_TREE_LINED_ROAD :Via arborata +STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT :Receptaculum viarium +STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING :Transitus ferriviarius +STR_LAI_ROAD_DESCRIPTION_TRAMWAY :Ferrivia strataria + +# Houses come directly from their building names +STR_LAI_TOWN_INDUSTRY_DESCRIPTION_UNDER_CONSTRUCTION :{STRING} (adhuc construitur) + +STR_LAI_TREE_NAME_TREES :Arbores +STR_LAI_TREE_NAME_RAINFOREST :Silva pluvialis +STR_LAI_TREE_NAME_CACTUS_PLANTS :Cacti + +STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION :Statio ferriviaria +STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR :Tugurium +STR_LAI_STATION_DESCRIPTION_AIRPORT :Aeroportus +STR_LAI_STATION_DESCRIPTION_TRUCK_LOADING_AREA :Statio autoplaustrica +STR_LAI_STATION_DESCRIPTION_BUS_STATION :Statio laophorica +STR_LAI_STATION_DESCRIPTION_SHIP_DOCK :Navale +STR_LAI_STATION_DESCRIPTION_BUOY :Signum monitorium +STR_LAI_STATION_DESCRIPTION_WAYPOINT :Interlocus + +STR_LAI_WATER_DESCRIPTION_WATER :Aqua +STR_LAI_WATER_DESCRIPTION_CANAL :Canalis +STR_LAI_WATER_DESCRIPTION_LOCK :Cataracta +STR_LAI_WATER_DESCRIPTION_RIVER :Flumen +STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK :Littus vel ripa +STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Receptaculum Navium + +# Industries come directly from their industry names + +STR_LAI_TUNNEL_DESCRIPTION_RAILROAD :Ferriviae cuniculus +STR_LAI_TUNNEL_DESCRIPTION_ROAD :Viae cuniculus + +STR_LAI_BRIDGE_DESCRIPTION_RAIL_SUSPENSION_STEEL :Pons ferriviarius pendulus chalybeius +STR_LAI_BRIDGE_DESCRIPTION_RAIL_GIRDER_STEEL :Pons ferriviarius trabum chalybeius +STR_LAI_BRIDGE_DESCRIPTION_RAIL_CANTILEVER_STEEL :Pons ferriviarius prominens chalybeius +STR_LAI_BRIDGE_DESCRIPTION_RAIL_SUSPENSION_CONCRETE :Pons ferriviarius pendulus caementicius ferratus +STR_LAI_BRIDGE_DESCRIPTION_RAIL_WOODEN :Pons ferriviarius ligneus +STR_LAI_BRIDGE_DESCRIPTION_RAIL_CONCRETE :Pons ferriviarius caementicius +STR_LAI_BRIDGE_DESCRIPTION_RAIL_TUBULAR_STEEL :Pons ferriviarius tubulorum + +STR_LAI_BRIDGE_DESCRIPTION_ROAD_SUSPENSION_STEEL :Pons viarius pendulus chalybeius +STR_LAI_BRIDGE_DESCRIPTION_ROAD_GIRDER_STEEL :Pons viarius trabibus chalybeius +STR_LAI_BRIDGE_DESCRIPTION_ROAD_CANTILEVER_STEEL :Pons viarius prominens chalybeius +STR_LAI_BRIDGE_DESCRIPTION_ROAD_SUSPENSION_CONCRETE :Pons viarius pendulus caementicius ferratus +STR_LAI_BRIDGE_DESCRIPTION_ROAD_WOODEN :Pons viarius ligneus +STR_LAI_BRIDGE_DESCRIPTION_ROAD_CONCRETE :Pons viarius caementicius +STR_LAI_BRIDGE_DESCRIPTION_ROAD_TUBULAR_STEEL :Pons viarius tubulorum + +STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT :Aquae ductus + +STR_LAI_OBJECT_DESCRIPTION_TRANSMITTER :Emissorium +STR_LAI_OBJECT_DESCRIPTION_LIGHTHOUSE :Pharus +STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS :Sedes primaria societatis +STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terra societatis + +# About OpenTTD window +STR_ABOUT_OPENTTD :{WHITE}De OpenTTD +STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Privilegium impressorium originale {COPYRIGHT} MCMXCV Chris Sawyer, Omnia proprietatis iura reservantur +STR_ABOUT_VERSION :{BLACK}OpenTTD editio {REV} +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} MMII-MMXV Manus OpenTTD + +# Save/load game/scenario +STR_SAVELOAD_SAVE_CAPTION :{WHITE}Servare Ludum +STR_SAVELOAD_LOAD_CAPTION :{WHITE}Legere Ludum +STR_SAVELOAD_SAVE_SCENARIO :{WHITE}Servare Scaenarium +STR_SAVELOAD_LOAD_SCENARIO :{WHITE}Legere Scaenarium +STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Legere tabulam altitudinum +STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Servare tabulam altitudinum +STR_SAVELOAD_HOME_BUTTON :{BLACK}Preme ut salias ad currens directorium solitum servandi/legendi +STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} reliqua +STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Index discorum, directoriorum, et ludorum servatorum +STR_SAVELOAD_EDITBOX_TOOLTIP :{BLACK}Nomen electum ludo servato +STR_SAVELOAD_DELETE_BUTTON :{BLACK}Delere +STR_SAVELOAD_DELETE_TOOLTIP :{BLACK}Delere ludum electum +STR_SAVELOAD_SAVE_BUTTON :{BLACK}Servare +STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Servare ludum currentem nomine electo +STR_SAVELOAD_LOAD_BUTTON :{BLACK}Legere +STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Legere ludum electum +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Legere tabulam altitudinum electam +STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Ludi indicia +STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Nulla indicia parabilia +STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} +STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING} + +STR_SAVELOAD_OSKTITLE :{BLACK}Inscribe nomen ludi + +# World generation +STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Creatio Orbis Terrarum +STR_MAPGEN_MAPSIZE :{BLACK}Tabulae magnitudo: +STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Eligere magnitudinem tegularum tabulae geographicae. Tegulae parabiles fere minores erunt +STR_MAPGEN_BY :{BLACK}* +STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Numerus oppidorum: +STR_MAPGEN_DATE :{BLACK}Dies: +STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Numerus industriarum: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altitudo tabulae maxima: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Augere maximam altitudinem montium in tabula unum gradum +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Minuere maximam altitudinem montium in tabula unum gradum +STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altitudo nivis lineae: +STR_MAPGEN_SNOW_LINE_UP :{BLACK}Tollere altitudinem lineae nivis +STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Inclinere altitudinem lineae nivis +STR_MAPGEN_LAND_GENERATOR :{BLACK}Generatrum terrae: +STR_MAPGEN_TREE_PLACER :{BLACK}Algorithmus arbores ponendi: +STR_MAPGEN_TERRAIN_TYPE :{BLACK}Typus terrae: +STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Magnitudo maris: +STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Numerus fluviorum: +STR_MAPGEN_SMOOTHNESS :{BLACK}Lenitas: +STR_MAPGEN_VARIETY :{BLACK}Partitio Varietatis: +STR_MAPGEN_GENERATE :{WHITE}Creare + +# Strings for map borders at game generation +STR_MAPGEN_BORDER_TYPE :{BLACK}Fines tabulae: +STR_MAPGEN_NORTHWEST :{BLACK}Corus +STR_MAPGEN_NORTHEAST :{BLACK}Eurus +STR_MAPGEN_SOUTHEAST :{BLACK}Aquilo +STR_MAPGEN_SOUTHWEST :{BLACK}Africus +STR_MAPGEN_BORDER_FREEFORM :{BLACK}Quilibet +STR_MAPGEN_BORDER_WATER :{BLACK}Aqua +STR_MAPGEN_BORDER_RANDOM :{BLACK}Fortuiti +STR_MAPGEN_BORDER_RANDOMIZE :{BLACK}Fortuiti +STR_MAPGEN_BORDER_MANUAL :{BLACK}Manu + +STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Circuitus tabulae altitudinum: +STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nomen tabulae altitudinum: +STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Magnitudo: +STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} + +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Mutare altitudinem tabulae maximam +STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Mutare altitudinem lineae nivis +STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Mutare annum initii + +# SE Map generation +STR_SE_MAPGEN_CAPTION :{WHITE}Typus Scaenarii +STR_SE_MAPGEN_FLAT_WORLD :{WHITE}Terra plana +STR_SE_MAPGEN_FLAT_WORLD_TOOLTIP :{BLACK}Creare terram planam +STR_SE_MAPGEN_RANDOM_LAND :{WHITE}Terrae fortuitae +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Altitudo terrae planae: +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Inclinere altitudinem terram planam +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Tollere altitudinem terram planam + +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Mutare altitudinem planae terrae + +# Map generation progress +STR_GENERATION_WORLD :{WHITE}Mundum Plasmans... +STR_GENERATION_ABORT :{BLACK}Desinere +STR_GENERATION_ABORT_CAPTION :{WHITE}Desinere Creationem Mundi +STR_GENERATION_ABORT_MESSAGE :{YELLOW}Esne certus te velle desinere creationem? +STR_GENERATION_PROGRESS :{WHITE}{NUM}% factum +STR_GENERATION_PROGRESS_NUM :{BLACK}{NUM} / {NUM} +STR_GENERATION_WORLD_GENERATION :{BLACK}Creatio orbis terrarum +STR_GENERATION_RIVER_GENERATION :{BLACK}Creatio fluminum +STR_GENERATION_TREE_GENERATION :{BLACK}Creatio arborum +STR_GENERATION_OBJECT_GENERATION :{BLACK}Creatio ornamentorum +STR_GENERATION_CLEARING_TILES :{BLACK}Creatio terrarum saxosarum asperarumque +STR_GENERATION_SETTINGUP_GAME :{BLACK}Ludum instruens +STR_GENERATION_PREPARING_TILELOOP :{BLACK}Tegularum cursum exsequens +STR_GENERATION_PREPARING_SCRIPT :{BLACK}Scriptum exsequens +STR_GENERATION_PREPARING_GAME :{BLACK}Ludum parans + +# NewGRF settings +STR_NEWGRF_SETTINGS_CAPTION :{WHITE}Optiones NewGRF +STR_NEWGRF_SETTINGS_INFO_TITLE :{WHITE}Indicia NewGRF descripta +STR_NEWGRF_SETTINGS_ACTIVE_LIST :{WHITE}Fasciculi NewGRF activi +STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE}Fasciculi NewGRF inactivi +STR_NEWGRF_SETTINGS_SELECT_PRESET :{ORANGE}Eligere rationem: +STR_NEWGRF_FILTER_TITLE :{ORANGE}Series colans: +STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Legere rationem electam +STR_NEWGRF_SETTINGS_PRESET_SAVE :{BLACK}Servare rationem +STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Servare hanc indicem rationi +STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Inscribere nomen rationis +STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Delere rationem +STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Delere rationem electam +STR_NEWGRF_SETTINGS_ADD :{BLACK}Addere +STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Addere fasciculum NewGRF electum configurationi tuae +STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK}Iterum quaerere fasciculos +STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK}Recensere indicem fasciculorum NewGRF +STR_NEWGRF_SETTINGS_REMOVE :{BLACK}Removere +STR_NEWGRF_SETTINGS_REMOVE_TOOLTIP :{BLACK}Removere fasciculum NewGRF electum ex indice +STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Sursum Movere +STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Movere fasciculum NewGRF electum sursum in indice +STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Deosrum Movere +STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Movere fasciculum NewGRF electum deorsum in indice +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Imponere novas editiones +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Imponere eos fasciculos NewGRF qui novior sunt +STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Index fasciculorum NewGRF qui sunt impositi + +STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Eligere parametra +STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Monstrare parametra +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Mutare coloris tabulam +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Mutare coloris tabulam huius NewGRF.{}Utere cum colores huius NewGRF videntur esse rosei +STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Confirmare mutationes + +STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Quaere res absentes in interrete +STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Inspicere si res absentes in inventario Interretiale sunt + +STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Nomen fasciculi: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}Agnoscamentum GRF: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_VERSION :{BLACK}Editio: {SILVER}{NUM} +STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Editio congrua minima: {SILVER}{NUM} +STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5sum: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Coloris tabula: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Parametra: {SILVER}{STRING} + +STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}Nulla indicia parabilia +STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}Par fasciculus non inventus +STR_NEWGRF_SETTINGS_DISABLED :{RED}Neglectum +STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Incompatibilis est huic OpenTTD editioni + +# NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Servare rationem +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Index rationum. Unam elige ut transcribatur nomini infero +STR_SAVE_PRESET_TITLE :{BLACK}Inscribe nomen rationis +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Nomen electum rationis conservandum +STR_SAVE_PRESET_CANCEL :{BLACK}Cancellare +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Non mutare rationem +STR_SAVE_PRESET_SAVE :{BLACK}Servare +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Rationem conservare huic nomini + +# NewGRF parameters window +STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Mutare parametra NewGRF +STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Claudere +STR_NEWGRF_PARAMETERS_RESET :{BLACK}Redire +STR_NEWGRF_PARAMETERS_RESET_TOOLTIP :{BLACK}Facere ut quodque parametrum solito reversum sit +STR_NEWGRF_PARAMETERS_DEFAULT_NAME :Parametrum {NUM} +STR_NEWGRF_PARAMETERS_SETTING :{STRING}: {ORANGE}{STRING} +STR_NEWGRF_PARAMETERS_NUM_PARAM :{LTBLUE}Numerus parametrorum: {ORANGE}{NUM} + +# NewGRF inspect window +STR_NEWGRF_INSPECT_CAPTION :{WHITE}Inspicere - {STRING} +STR_NEWGRF_INSPECT_PARENT_BUTTON :{BLACK}Parens +STR_NEWGRF_INSPECT_PARENT_TOOLTIP :{BLACK}Inspicere obiectum parentis + +STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT :{STRING} ad {HEX} +STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_OBJECT :Obiectum +STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_RAIL_TYPE :Typus ferriviae + +STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF var 60+x parametrum (sedecimale) + +# Sprite aligner window +STR_SPRITE_ALIGNER_CAPTION :{WHITE}Dirigens spiritum {COMMA} ({STRING}) +STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Spiritum secundum +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Procedere ad spiritum naturalem secundum et, termino contacto, ad primum revertere +STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Ire ad spiritum +STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ire ad spiritum electum. Si spiritus non naturalis sit, procedere ad secundum spiritum naturalem +STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Spiritum priorem +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Ire ad spiritum naturalem priorem et, termino contacto, ad ultimum revertere +STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Imago spiritus electi. Directio neglegitur cum hic spiritus pingitur +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Movere spiritum mutatione X et Y incrementa +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reponere relativas +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reponere positiones relativas +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Positio X: {NUM}, Positio Y: {NUM} (Absolutae) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Positio X: {NUM}, Positio Y: {NUM} (Relativae) +STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Eligere spiritum +STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Eligere spiritum e scrinio + +STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}Ire ad spiritum + +# NewGRF (self) generated warnings/errors +STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING} +STR_NEWGRF_ERROR_MSG_WARNING :{RED}Cautio: {SILVER}{STRING} +STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} +STR_NEWGRF_ERROR_MSG_FATAL :{RED}Error Fatalis: {SILVER}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Error NewGRF fatalis: {}{STRING} +STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} non operat apud editionem TTDPatch ab OpenTTD dicta +STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} spectat ad editionem {STRING} TTD +STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} spectat ad {STRING} +STR_NEWGRF_ERROR_INVALID_PARAMETER :Parametrum irritum {1:STRING}: parametrum {STRING} ({NUM}) +STR_NEWGRF_ERROR_LOAD_BEFORE :Necesse est {1:STRING} legere ante {STRING} +STR_NEWGRF_ERROR_LOAD_AFTER :Necesse est {1:STRING} legere post {STRING} +STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} poscit editionem OpenTTD {STRING} sive maiorem +STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :fasciculum GRF cui designatus est transferre +STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Nimis NewGRF lecta sunt +STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Lectio {1:STRING} ut NewGRF fixum cum {STRING} potest desynchronizare +STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Spiritus repens (spiritus {3:NUM}) +STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Obiectum Actionis 0 ignotum {4:HEX} (spiritus {3:NUM}) +STR_NEWGRF_ERROR_INVALID_ID :Conatus agnoscamento irrito uti (spiritus {3:NUM}) +STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} spiritum corruptum habet. Omnes spiritus corrupti monstrabuntur forma rubro puncto interrogativo - ? +STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Continet plures Actiones 8 (spiritus {3:NUM}) +STR_NEWGRF_ERROR_READ_BOUNDS :Lectio post terminum pseudospiritus (spiritus {3:NUM}) +STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Fundamento graphico adhibito deest nonulli spiritus.{}Utinam arcessas novam editionem +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Fundamento graphico adhibito deest nonulli spiritus.{}Utinam arcessas novam editionem.{}Quoniam ludis {YELLOW}editionem OpenTTD adhuc in explicando{WHITE}, fortasse etiam tibi necesse est {YELLOW}editio fundamenti graphici OpenTTD in explicando{WHITE} +STR_NEWGRF_ERROR_GRM_FAILED :Opes GRF desideratae non parabiles (spiritus {3:NUM}) +STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} neglectus est a {2:STRING} +STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Irrita/ignota dispositio spiritus (spiritus {3:NUM}) + +# NewGRF related 'general' warnings +STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Maxime Cavendum Est! +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Ludum euntem mutaturus es. Igitur, ludum corruatur sive OpenTTD frangatur. Noli queri de mendis harum rerum.{}Esne valde certus te pergere velle? + +STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Addere fasciculum non licet nam adest agnoscamentum GRF duplicatum +STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Fasciculus congruus lectus (nam fasciculus idem non inventum fuit) +STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Addere fasciculum non licet; nimis NewGRF adsunt + +STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Fasciculi congrui lecti in loco fasciculorum absentorum +STR_NEWGRF_DISABLED_WARNING :{WHITE}Fasciculi absentes remoti sunt +STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}Fasciculi GRF absunt +STR_NEWGRF_UNPAUSE_WARNING :{WHITE}OpenTTD forsitan corruatur resumendo. Noli queri de ruinis sequentibus.{}Esne valde certus te ludum resumere velle? + +# NewGRF status +STR_NEWGRF_LIST_NONE :Nulli +STR_NEWGRF_LIST_ALL_FOUND :Omnes fasciculi adsunt +STR_NEWGRF_LIST_COMPATIBLE :{YELLOW}Fasciculi congrui inventi +STR_NEWGRF_LIST_MISSING :{RED}Fasciculi absunt + +# NewGRF 'it's broken' warnings +STR_NEWGRF_BROKEN :{WHITE}NewGRF '{0:STRING}' probabiliter faciet ut ludus desynchronizetur corruaturve +STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Nam mutavit potestatem currus '{1:ENGINE}' extra receptaculum +STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Nam mutavit longitudinem vehiculi '{1:ENGINE}' extra receptaculum +STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Nam mutavit capacitatem vehiculi '{1:ENGINE}' extra aut receptaculum aut reficiendum +STR_BROKEN_VEHICLE_LENGTH :{WHITE}Tramen '{VEHICLE}' a '{COMPANY}' posessum longitudinem irritam habet. Probabiliter accidit quod menda sunt in NewGRF. Ludus desynchronizet vel corruat + +STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' affert indicium mendosum +STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Indicium oneris/reficiendi '{1:ENGINE}' post constructionem differt eo quod est in indice emptionis. Ergo fortasse autoredemptio/automutatio non possit reficere +STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}'{1:STRING}' facit ut versatur ad infinitum in revocatione productionis +STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Revocatio {1:HEX} reddidit conlationem ignotam irritamve {2:HEX} + +# 'User removed essential NewGRFs'-placeholders for stuff without specs +STR_NEWGRF_INVALID_CARGO : +STR_NEWGRF_INVALID_CARGO_ABBREV :?? +STR_NEWGRF_INVALID_CARGO_QUANTITY :{COMMA} +STR_NEWGRF_INVALID_ENGINE : +STR_NEWGRF_INVALID_INDUSTRYTYPE : + +# Placeholders for other invalid stuff, e.g. vehicles that have gone (Game Script). +STR_INVALID_VEHICLE : + +# NewGRF scanning window +STR_NEWGRF_SCAN_CAPTION :{WHITE}Fasciculos NewGRF inspiciens +STR_NEWGRF_SCAN_MESSAGE :{BLACK}Fasciculos NewGRF inspiciens. Fortasse diu erit si multi fasciculi adsunt... +STR_NEWGRF_SCAN_STATUS :{BLACK}{NUM} NewGRF inspecta ex fere {NUM} NewGRF +STR_NEWGRF_SCAN_ARCHIVES :Fasciculos compressos inspiciens + +# Sign list window +STR_SIGN_LIST_CAPTION :{WHITE}Index Signorum - {COMMA} Sign{P um a} +STR_SIGN_LIST_MATCH_CASE :{BLACK}Sequi casum litterarum +STR_SIGN_LIST_MATCH_CASE_TOOLTIP :{BLACK}Mutare secutionem casus litterarum cum signa comparantur seriei colanti + +# Sign window +STR_EDIT_SIGN_CAPTION :{WHITE}Mutare signum +STR_EDIT_SIGN_NEXT_SIGN_TOOLTIP :{BLACK}Procedere signo secundo +STR_EDIT_SIGN_PREVIOUS_SIGN_TOOLTIP :{BLACK}Recedere signo priori + +STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Inscribe nomen signi + +# Town directory window +STR_TOWN_DIRECTORY_CAPTION :{WHITE}Oppida +STR_TOWN_DIRECTORY_NONE :{ORANGE}- Nulla - +STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) +STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Nomina oppidorum - preme in nomen ut conspectus supra oppidum locetur. Ctrl+Preme ut novam fenestram conspectus supra oppidum aperiatur +STR_TOWN_POPULATION :{BLACK}Incolae mundi: {COMMA} + +# Town view window +STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN} +STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (Urbs) +STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Incolae: {ORANGE}{COMMA}{BLACK} Aedificia: {ORANGE}{COMMA} +STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}Vectores mensis prioris: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} +STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}Epistulae mensis prioris: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Onera mandata ad oppidum crescendum: +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} mandatur +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} hieme mandatur +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} tradit{G 0 us a um i ae a} +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (adhuc mandat{G 1 us a um i ae a}) +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (tradit{G 1 us a um i ae a}) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Oppidum crescit {ORANGE}{COMMA}{BLACK} quoque die +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Oppidum crescit {ORANGE}{COMMA}{BLACK} quoque die (stimulatus) +STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Oppidum {RED}non{BLACK} crescit +STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Finis soniti in oppido: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} +STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Movere conspectum supra hoc oppidum. Ctrl+Preme ut nova fenestra conspectus aperiatur supra oppidum +STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Auctoritas vicinalis +STR_TOWN_VIEW_LOCAL_AUTHORITY_TOOLTIP :{BLACK}Monstrare indicia auctoritatis vicinalis +STR_TOWN_VIEW_RENAME_TOOLTIP :{BLACK}Mutare nomen oppidi + +STR_TOWN_VIEW_EXPAND_BUTTON :{BLACK}Augere +STR_TOWN_VIEW_EXPAND_TOOLTIP :{BLACK}Augere oppidum +STR_TOWN_VIEW_DELETE_BUTTON :{BLACK}Delere +STR_TOWN_VIEW_DELETE_TOOLTIP :{BLACK}Delere omnino hoc oppidum + +STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Renominare Oppidum + +# Town local authority window +STR_LOCAL_AUTHORITY_CAPTION :{WHITE}{TOWN} Auctoritas vicinalis +STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Censiones societatum: +STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} +STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Actiones parabiles: +STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Index rerum in hoc oppido adhibendarum - preme in rem ut indicia rei monstretur +STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Facere +STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Exsequi actionem electam ex indice + +STR_LOCAL_AUTHORITY_ACTION_SMALL_ADVERTISING_CAMPAIGN :Coepta praeconia parva +STR_LOCAL_AUTHORITY_ACTION_MEDIUM_ADVERTISING_CAMPAIGN :Coepta praeconia mediocria +STR_LOCAL_AUTHORITY_ACTION_LARGE_ADVERTISING_CAMPAIGN :Coepta praeconia magna +STR_LOCAL_AUTHORITY_ACTION_ROAD_RECONSTRUCTION :Condere reconstructionem viarum vicinalium +STR_LOCAL_AUTHORITY_ACTION_STATUE_OF_COMPANY :Struere effigiem praesidis societatis +STR_LOCAL_AUTHORITY_ACTION_NEW_BUILDINGS :Condere nova aedificia +STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Emere monopolium +STR_LOCAL_AUTHORITY_ACTION_BRIBE :Largiri auctoritatem vicinalem + +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Incipere coepta praeconia parva, ut plures vectores oneraque alliciantur tuis muneribus.{}Pretium: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Incipere coepta praeconia mediocria, ut plures vectores oneraque alliciantur tuis muneribus.{}Pretium: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Incipere coepta praeconia magna, ut plures vectores oneraque alliciantur tuis muneribus.{}Pretium: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Condere reconstructionem retis viarum urbanarum. Reconstructio facit magnam turbam viariam in oppido 6 menses.{}Pretium: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}Struere effigiem praesidis tuae societatis in oppido.{}Pretium: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Condere nova aedificia mercatoria in oppido.{}Pretium: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Emere monopolium unius anni in oppido. Auctoritas oppidi licebit vectores oneraque solum ire ad stationes tuas.{}Pretium: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Largiri auctoritatem vicinalem ut tua censio augeatur, at difficultas adest: forsitan animadvertaris et graviter puniaris.{}Pretium: {CURRENCY_LONG} + +# Goal window +STR_GOALS_CAPTION :{WHITE}{COMPANY} Metae +STR_GOALS_SPECTATOR_CAPTION :{WHITE}Metae Globales +STR_GOALS_GLOBAL_TITLE :{BLACK}Metae globales: +STR_GOALS_TEXT :{ORANGE}{STRING} +STR_GOALS_NONE :{ORANGE}- Nullae - +STR_GOALS_SPECTATOR_NONE :{ORANGE}- Non applicabiles - +STR_GOALS_PROGRESS :{ORANGE}{STRING} +STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} +STR_GOALS_COMPANY_TITLE :{BLACK}Metae Societatis: +STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Preme in metam ut conspectus moveatur supra industriam/oppidum/tegulam. Ctrl+Preme ut nova fenestra conspectus aperiatur supra industriam/oppidum/tegulam + +# Goal question window +STR_GOAL_QUESTION_CAPTION_QUESTION :Quaestio +STR_GOAL_QUESTION_CAPTION_INFORMATION :Indicia +STR_GOAL_QUESTION_CAPTION_WARNING :Cautio +STR_GOAL_QUESTION_CAPTION_ERROR :Error + +############ Start of Goal Question button list +STR_GOAL_QUESTION_BUTTON_CANCEL :Cancellare +STR_GOAL_QUESTION_BUTTON_OK :Ita +STR_GOAL_QUESTION_BUTTON_NO :Non +STR_GOAL_QUESTION_BUTTON_YES :Ita +STR_GOAL_QUESTION_BUTTON_DECLINE :Recusare +STR_GOAL_QUESTION_BUTTON_ACCEPT :Accipere +STR_GOAL_QUESTION_BUTTON_IGNORE :Neglegere +STR_GOAL_QUESTION_BUTTON_RETRY :Iterum conari +STR_GOAL_QUESTION_BUTTON_PREVIOUS :Priorem +STR_GOAL_QUESTION_BUTTON_NEXT :Secundam +STR_GOAL_QUESTION_BUTTON_STOP :Desinere +STR_GOAL_QUESTION_BUTTON_START :Incipere +STR_GOAL_QUESTION_BUTTON_GO :Incipiamus! +STR_GOAL_QUESTION_BUTTON_CONTINUE :Pergere +STR_GOAL_QUESTION_BUTTON_RESTART :Incipere denuo +STR_GOAL_QUESTION_BUTTON_POSTPONE :Procrastinare +STR_GOAL_QUESTION_BUTTON_SURRENDER :Dedere +STR_GOAL_QUESTION_BUTTON_CLOSE :Claudere +############ End of Goal Question button list + +# Subsidies window +STR_SUBSIDIES_CAPTION :{WHITE}Subsidia +STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Subsidia portationis oblata: +STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} a {STRING.abl} ad {STRING.acc}{YELLOW} (ante {DATE_SHORT}) +STR_SUBSIDIES_NONE :{ORANGE}- Nulla - +STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Itinera iam subventa: +STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} a {STRING} ad {STRING}{YELLOW} ({COMPANY}{YELLOW}, ad {DATE_SHORT}) +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Preme in subsidium ut conspectus moveatur supra industriam/oppidum. Ctrl+Preme ut nova fenestra conspectus aperiatur supra industriam/oppidum + +# Story book window +STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY} Librum Fabularum +STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Librum Fabularum Globalis +STR_STORY_BOOK_TITLE :{YELLOW}{STRING} +STR_STORY_BOOK_GENERIC_PAGE_ITEM :Pagina {NUM} +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Salire ad quamdam paginam eligendo eam in hac indice +STR_STORY_BOOK_PREV_PAGE :{BLACK}Priorem +STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Ire ad paginam priorem +STR_STORY_BOOK_NEXT_PAGE :{BLACK}Secundam +STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Ire ad paginam secundam +STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Meta irrita + +# Station list window +STR_STATION_LIST_TOOLTIP :{BLACK}Nomina stationum - preme in nomen ut conspectus moveatur supra stationem. Ctrl+Preme ut nova fenestra conspectus aperiatur supra stationem +STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Comprime Ctrl ut plures res eligantur +STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} Statio{P "" nes} +STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} +STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} +STR_STATION_LIST_NONE :{YELLOW}- Nullae - +STR_STATION_LIST_SELECT_ALL_FACILITIES :{BLACK}Omnes eligere +STR_STATION_LIST_SELECT_ALL_TYPES :{BLACK}Omnes onerum typos eligere (etiam onera non in ulla statione) +STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Nullum onus manens est + +# Station view window +STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} +STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG} +STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} a {STATION}) +STR_STATION_VIEW_RESERVED :{YELLOW}({CARGO_SHORT} reservata ad onerandum) + +STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Accipit +STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Monstrare index onerum acceptorum +STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Onera accepta: {WHITE}{CARGO_LIST} + +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Haec statio monopolio benefit. +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} monopolium emit in hoc oppido. + +STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Censiones +STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Monstrare censiones stationum +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Oblatum menstruum et censio vicinalis: +STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) + +STR_STATION_VIEW_GROUP :{BLACK}Ordo +STR_STATION_VIEW_WAITING_STATION :Statione: Manentia +STR_STATION_VIEW_WAITING_AMOUNT :Copia: Manentia +STR_STATION_VIEW_PLANNED_STATION :Statione: Rata +STR_STATION_VIEW_PLANNED_AMOUNT :Copia: Rata +STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} a {STATION} +STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT} per {STATION} +STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} ad {STATION} +STR_STATION_VIEW_FROM_ANY :{RED}{CARGO_SHORT} e statione ignota +STR_STATION_VIEW_TO_ANY :{RED}{CARGO_SHORT} ad aliquam stationem +STR_STATION_VIEW_VIA_ANY :{RED}{CARGO_SHORT} per aliquam stationem +STR_STATION_VIEW_FROM_HERE :{GREEN}{CARGO_SHORT} ex hac statione +STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_SHORT} per hanc stationem +STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} ad hanc stationem +STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} continue + +STR_STATION_VIEW_GROUP_S_V_D :Origo-Via-Destinatum +STR_STATION_VIEW_GROUP_S_D_V :Origo-Destinatum-Via +STR_STATION_VIEW_GROUP_V_S_D :Via-Origo-Destinatum +STR_STATION_VIEW_GROUP_V_D_S :Via-Destinatum-Origo +STR_STATION_VIEW_GROUP_D_S_V :Destinatum-Origo-Via +STR_STATION_VIEW_GROUP_D_V_S :Destinatum-Via-Origo + +############ range for rating starts +STR_CARGO_RATING_APPALLING :Pessima +STR_CARGO_RATING_VERY_POOR :Prava +STR_CARGO_RATING_POOR :Mala +STR_CARGO_RATING_MEDIOCRE :Mediocris +STR_CARGO_RATING_GOOD :Bona +STR_CARGO_RATING_VERY_GOOD :Proba +STR_CARGO_RATING_EXCELLENT :Praestans +STR_CARGO_RATING_OUTSTANDING :Optima +############ range for rating ends + +STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Movere conspectum supra hanc stationem. Ctrl+Preme ut nova fenestra conspectus aperiatur supra stationem +STR_STATION_VIEW_RENAME_TOOLTIP :{BLACK}Mutare nomen stationis + +STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Monstrare omnia tramina quae hanc stationem in horario habent +STR_STATION_VIEW_SCHEDULED_ROAD_VEHICLES_TOOLTIP :{BLACK}Monstrare omnia vehicula viaria quae hanc stationem in horario habent +STR_STATION_VIEW_SCHEDULED_AIRCRAFT_TOOLTIP :{BLACK}Monstrare omnia aeroplana quae hanc stationem in horario habent +STR_STATION_VIEW_SCHEDULED_SHIPS_TOOLTIP :{BLACK}Monstrare omnes naves quae hanc stationem in horario habent + +STR_STATION_VIEW_RENAME_STATION_CAPTION :Renominare stationem + +STR_STATION_VIEW_CLOSE_AIRPORT :{BLACK}Claudere aeroportum +STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Facere ut aeroplana non appellant in hoc aeroportu + +# Waypoint/buoy view window +STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} +STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Movere conspectum supra hunc interlocum. ut nova fenestra conspectus aperiatur supra interlocum +STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Mutare nomen interloci +STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Movere conspectum supra hoc signum monitorium. ut nova fenestra conspectus aperiatur supra signum monitorium +STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Mutare nomen signi monitorii + +STR_EDIT_WAYPOINT_NAME :{WHITE}Recensere nomen interloci + +# Finances window +STR_FINANCES_CAPTION :{WHITE}{COMPANY} Res Fiscales {BLACK}{COMPANY_NUM} +STR_FINANCES_EXPENDITURE_INCOME_TITLE :{WHITE}Expensa/Reditus +STR_FINANCES_YEAR :{WHITE}{NUM} +STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Constructio +STR_FINANCES_SECTION_NEW_VEHICLES :{GOLD}Nova Vehicula +STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Pretium Operandi Traminum +STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Pretium Operandi Vehiculorum Viariorum +STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Pretium Operandi Aeroplanorum +STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Pretium Operandi Navium +STR_FINANCES_SECTION_PROPERTY_MAINTENANCE :{GOLD}Tuitio Possessionum +STR_FINANCES_SECTION_TRAIN_INCOME :{GOLD}Reditus Traminum +STR_FINANCES_SECTION_ROAD_VEHICLE_INCOME :{GOLD}Reditus Vehiculorum Viariorum +STR_FINANCES_SECTION_AIRCRAFT_INCOME :{GOLD}Reditus Aeroplanorum +STR_FINANCES_SECTION_SHIP_INCOME :{GOLD}Reditus Navium +STR_FINANCES_SECTION_LOAN_INTEREST :{GOLD}Faenus +STR_FINANCES_SECTION_OTHER :{GOLD}Aliarum Rerum +STR_FINANCES_NEGATIVE_INCOME :{BLACK}-{CURRENCY_LONG} +STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURRENCY_LONG} +STR_FINANCES_TOTAL_CAPTION :{WHITE}Summa: +STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Pecunia +STR_FINANCES_LOAN_TITLE :{WHITE}Creditum +STR_FINANCES_MAX_LOAN :{WHITE}Creditum Maximum: {BLACK}{CURRENCY_LONG} +STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} +STR_FINANCES_BORROW_BUTTON :{BLACK}Mutuari {CURRENCY_LONG} +STR_FINANCES_BORROW_TOOLTIP :{BLACK}Mutuari plurem pecuniam. Ctrl+Preme ut creditum mutuetur quam maxime possis +STR_FINANCES_REPAY_BUTTON :{BLACK}Solvere {CURRENCY_LONG} +STR_FINANCES_REPAY_TOOLTIP :{BLACK}Solvere partem crediti. Ctrl+Preme ut creditum solvatur quam maxime possis +STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Infrastructura + +# Company view +STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM} +STR_COMPANY_VIEW_PRESIDENT_MANAGER_TITLE :{WHITE}{PRESIDENT_NAME}{}{GOLD}(Praeses) + +STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Condita: {WHITE}{NUM} +STR_COMPANY_VIEW_COLOUR_SCHEME_TITLE :{GOLD}Schema Coloris: +STR_COMPANY_VIEW_VEHICLES_TITLE :{GOLD}Vehicula: +STR_COMPANY_VIEW_TRAINS :{WHITE}{COMMA} tram{P en ina} +STR_COMPANY_VIEW_ROAD_VEHICLES :{WHITE}{COMMA} vehicul{P um a} viari{P um a} +STR_COMPANY_VIEW_AIRCRAFT :{WHITE}{COMMA} aeroplan{P um a} +STR_COMPANY_VIEW_SHIPS :{WHITE}{COMMA} nav{P is es} +STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}Nulla +STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Aestimatio societatis: {WHITE}{CURRENCY_LONG} +STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}({COMMA}% posessa a {COMPANY}) +STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}Infrastructura: +STR_COMPANY_VIEW_INFRASTRUCTURE_RAIL :{WHITE}{COMMA} par{P s tes} ferriviae +STR_COMPANY_VIEW_INFRASTRUCTURE_ROAD :{WHITE}{COMMA} par{P s tes} viae +STR_COMPANY_VIEW_INFRASTRUCTURE_WATER :{WHITE}{COMMA} tegula{P "" e} aquaria{P "" e} +STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} tegula{P "" e} stationum +STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} aeroportus +STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Nulla + +STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Struere sedem +STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Struere primariam sedem societatis +STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Videre sedem +STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Videre primariam sedem societatis +STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Movere sedem +STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Movere primariam sedem societatis aliquo pretio 1% aestimationis valoris societatis. Shift+Preme ut pretium monstretur sine sedem movendo +STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Indicia +STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Videre indicia descripta infrastructurae + +STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Facies Nova +STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Eligere novam faciem praesidis +STR_COMPANY_VIEW_COLOUR_SCHEME_BUTTON :{BLACK}Schema Coloris +STR_COMPANY_VIEW_COLOUR_SCHEME_TOOLTIP :{BLACK}Mutare schema coloris societatis +STR_COMPANY_VIEW_COMPANY_NAME_BUTTON :{BLACK}Nomen Societatis +STR_COMPANY_VIEW_COMPANY_NAME_TOOLTIP :{BLACK}Mutare nomen societatis +STR_COMPANY_VIEW_PRESIDENT_NAME_BUTTON :{BLACK}Nomen Praesidis +STR_COMPANY_VIEW_PRESIDENT_NAME_TOOLTIP :{BLACK}Mutare nomen praesidis + +STR_COMPANY_VIEW_BUY_SHARE_BUTTON :{BLACK}Quadrantem sortium huius societatis emere +STR_COMPANY_VIEW_SELL_SHARE_BUTTON :{BLACK}Quadrantem sortium huius societatis vendere +STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}Quadrantem sortium huius societatis emere. Shift+Preme ut pretium monstretur sine emptione +STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Quadrantem sortium huius societatis vendere. Shift+Preme ut pretium monstretur sine emptione + +STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Nomen Societatis +STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nomen Praesidis + +STR_BUY_COMPANY_MESSAGE :{WHITE}Quaerimus aliam societatem emere nostram societatem.{}{}Visne emere {COMPANY} pretio {CURRENCY_LONG}? + +# Company infrastructure window +STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Infrastructura quam {COMPANY} habet +STR_COMPANY_INFRASTRUCTURE_VIEW_RAIL_SECT :{GOLD}Partes ferriviariae: +STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}Signalia +STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}Partes viariae: +STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD :{WHITE}Viariae +STR_COMPANY_INFRASTRUCTURE_VIEW_TRAMWAY :{WHITE}Ferriviae stratariae +STR_COMPANY_INFRASTRUCTURE_VIEW_WATER_SECT :{GOLD}Tegulae aquariae: +STR_COMPANY_INFRASTRUCTURE_VIEW_CANALS :{WHITE}Canales +STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Stationes: +STR_COMPANY_INFRASTRUCTURE_VIEW_STATIONS :{WHITE}Tegulae stationum +STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}Aeroportus +STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENCY_LONG} per annum + +# Industry directory +STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}Industriae +STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- Nullae - +STR_INDUSTRY_DIRECTORY_ITEM :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}){YELLOW} ({COMMA}% translat{G 1 us a um i ae a}) +STR_INDUSTRY_DIRECTORY_ITEM_TWO :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}/{CARGO_LONG}{STRING}){YELLOW} ({COMMA}%/{COMMA}% translat{G 3 us a um i ae a}) +STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY} +STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Nomina industriarum - preme in nomen ut conspectus moveatur supra industriam. Ctrl+Preme ut nova fenestra conspectus aperiatur supra industriam + +# Industry view +STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY} +STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Productio mensis prioris: +STR_INDUSTRY_VIEW_TRANSPORTED :{YELLOW}{CARGO_LONG}{STRING}{BLACK} ({COMMA}% translat{G 0 us a um i ae a}) +STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hanc industriam. Ctrl+Preme ut nova fenestra conspectus aperiatur supra industriam +STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Quantitas productionis: {YELLOW}{COMMA}% +STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Haec industria mox claudetur! + +############ range for requires starts +STR_INDUSTRY_VIEW_REQUIRES_CARGO :{BLACK}Postulat: {YELLOW}{STRING.acc}{STRING} +STR_INDUSTRY_VIEW_REQUIRES_CARGO_CARGO :{BLACK}Postulat: {YELLOW}{STRING.acc}{STRING}, {STRING.acc}{STRING} +STR_INDUSTRY_VIEW_REQUIRES_CARGO_CARGO_CARGO :{BLACK}Postulat: {YELLOW}{STRING.acc}{STRING}, {STRING.acc}{STRING}, {STRING.acc}{STRING} +############ range for requires ends + +############ range for produces starts +STR_INDUSTRY_VIEW_WAITING_FOR_PROCESSING :{BLACK}Onera utenda manentia: +STR_INDUSTRY_VIEW_WAITING_STOCKPILE_CARGO :{YELLOW}{CARGO_LONG}{STRING}{BLACK} +STR_INDUSTRY_VIEW_PRODUCES_CARGO :{BLACK}Efficit: {YELLOW}{STRING.acc}{STRING} +STR_INDUSTRY_VIEW_PRODUCES_CARGO_CARGO :{BLACK}Efficit: {YELLOW}{STRING.acc}{STRING}, {STRING.acc}{STRING} +############ range for produces ends + +STR_CONFIG_GAME_PRODUCTION :{WHITE}Mutare productionem (per octo multiplicatur, ad 2040) +STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Mutare productionem (centesima, ad 800%) + +# Vehicle lists +STR_VEHICLE_LIST_TRAIN_CAPTION :{WHITE}{STRING} - {COMMA} Tram{P en ina} +STR_VEHICLE_LIST_ROAD_VEHICLE_CAPTION :{WHITE}{STRING} - {COMMA} Vehicul{P um a} Viari{P um a} +STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} - {COMMA} Nav{P is es} +STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} - {COMMA} Aeroplan{P um a} + +STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Tramina - preme in tramen ut indicia monstretur +STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Vehicula viaria - preme in vehiculum ut indicia monstretur +STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Naves - preme in navem ut indicia monstretur +STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Aeroplana - preme in aeroplanum ut indicia monstretur + +STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Lucrum huius anni: {CURRENCY_LONG} (anni prioris: {CURRENCY_LONG}) + +STR_VEHICLE_LIST_AVAILABLE_TRAINS :Hamaxostichi Parabiles +STR_VEHICLE_LIST_AVAILABLE_ROAD_VEHICLES :Vehicula Viaria Parabilia +STR_VEHICLE_LIST_AVAILABLE_SHIPS :Naves Parabiles +STR_VEHICLE_LIST_AVAILABLE_AIRCRAFT :Aeroplana Parabilia +STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP :{BLACK}Videre indicem qui ad vehicula parabilia huius typi spectat + +STR_VEHICLE_LIST_MANAGE_LIST :{BLACK}Recensere indicem +STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Mittere iussa ad omnia vehicula huius indicis +STR_VEHICLE_LIST_REPLACE_VEHICLES :Mutare vehicula +STR_VEHICLE_LIST_SEND_FOR_SERVICING :Ministranda Dimmitere + +STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :Dimittere ad Receptaculum +STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :Dimittere ad Receptaculum +STR_VEHICLE_LIST_SEND_SHIP_TO_DEPOT :Dimittere ad Receptaculum +STR_VEHICLE_LIST_SEND_AIRCRAFT_TO_HANGAR :Dimittere ad Tugurium + +STR_VEHICLE_LIST_MASS_STOP_LIST_TOOLTIP :{BLACK}Preme ut omnia vehicula huius indicis sistantur +STR_VEHICLE_LIST_MASS_START_LIST_TOOLTIP :{BLACK}Preme ut omnia vehicula huius indicis incohentur + +STR_VEHICLE_LIST_SHARED_ORDERS_LIST_CAPTION :{WHITE}Iussa communia {COMMA} vehicul{P i orum} + +# Group window +STR_GROUP_ALL_TRAINS :Omnia tramina +STR_GROUP_ALL_ROAD_VEHICLES :Omnia vehicula viaria +STR_GROUP_ALL_SHIPS :Omnes naves +STR_GROUP_ALL_AIRCRAFTS :Omnia aeroplana + +STR_GROUP_DEFAULT_TRAINS :Tramina sine grege +STR_GROUP_DEFAULT_ROAD_VEHICLES :Vehicula viaria sine grege +STR_GROUP_DEFAULT_SHIPS :Naves sine grege +STR_GROUP_DEFAULT_AIRCRAFTS :Aeroplana sine grege + +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Greges - preme in gregem ut index vehiculorum huius gregis ostendeatur. Trahe poneque greges ut ordinentur. +STR_GROUP_CREATE_TOOLTIP :{BLACK}Preme ut grex creatur +STR_GROUP_DELETE_TOOLTIP :{BLACK}Delere gregem electam +STR_GROUP_RENAME_TOOLTIP :{BLACK}Renominare gregem electam +STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Preme ut vehicula huius gregis custodiantur contra autocommutationem globalem + +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Gregem Delere +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Esne certus te velle delere hanc gregem eiusque descendentes? + +STR_GROUP_ADD_SHARED_VEHICLE :Addere vehicula communia +STR_GROUP_REMOVE_ALL_VEHICLES :Removere omnia vehicula + +STR_GROUP_RENAME_CAPTION :{BLACK}Renominare gregem + +# Build vehicle window +STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Vehicula Ferriviaria Nova +STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Vehicula Ferriviaria Electrica Nova +STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Vehicula Monoorbitalia Nova +STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Vehicula Maglev Nova + +STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Vehicula Ferriviaria Nova +STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Vehicula Viaria Nova +STR_BUY_VEHICLE_SHIP_CAPTION :Naves Novae +STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Aeroplana Nova + +STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Pretium: {GOLD}{CURRENCY_LONG}{BLACK} Pondus: {GOLD}{WEIGHT_SHORT} +STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Velocitas: {GOLD}{VELOCITY}{BLACK} Potestas: {GOLD}{POWER} +STR_PURCHASE_INFO_SPEED :{BLACK}Velocitas: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}Velocitas in mare: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}Velocitas in canale flumineve: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Pretium Operandi: {GOLD}{CURRENCY_LONG} per annum +STR_PURCHASE_INFO_CAPACITY :{BLACK}Capacitas: {GOLD}{CARGO_LONG} {STRING} +STR_PURCHASE_INFO_REFITTABLE :(refectabilis) +STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Productum: {GOLD}{NUM}{BLACK} Aetas: {GOLD}{COMMA} ann{P us i} +STR_PURCHASE_INFO_RELIABILITY :{BLACK}Constantia Maxima: {GOLD}{COMMA}% +STR_PURCHASE_INFO_COST :{BLACK}Pretium: {GOLD}{CURRENCY_LONG} +STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}Pondus: {GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT}) +STR_PURCHASE_INFO_COST_SPEED :{BLACK}Pretium: {GOLD}{CURRENCY_LONG}{BLACK} Velocitas: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}Capacitas: {GOLD}{CARGO_LONG}, {CARGO_LONG} +STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}Currus Potentiati: {GOLD}+{POWER}{BLACK} Pondus: {GOLD}+{WEIGHT_SHORT} +STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Refectabilis: {GOLD}{STRING.dat} +STR_PURCHASE_INFO_ALL_TYPES :Omnibus onerum typis +STR_PURCHASE_INFO_ALL_BUT :Omnibus praeterquam {CARGO_LIST.dat} +STR_PURCHASE_INFO_MAX_TE :{BLACK}Vis Tractionis Maxima: {GOLD}{FORCE} +STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Max. distantia volatus: {GOLD}{COMMA} tegulas + +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Index electionis vehiculorum ferriviariorum. Preme in vehiculum ut plura indicia monstrentur. Ctrl+Preme ut typus vehiculi celetur +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Index electionis vehiculorum viariorum. Preme in vehiculum ut plura indicia monstrentur. Ctrl+Preme ut typus vehiculi celetur +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Index electionis navium. Preme in navem ut plura indicia monstrentur. Ctrl+Preme ut typus navis celetur +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Index electionis aeroplanorum. Preme in aeroplanum ut plura indicia monstrentur. Ctrl+Preme ut typus aeroplani celetur + +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Emere Vehiculum +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Emere Vehiculum +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Emere Navem +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Emere Aeroplanum + +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Emere vehiculum ferriviarium electum. Shift+Preme ut pretium monstretur sine emptione +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Emere vehiculum viarium electum. Shift+Preme ut pretium monstretur sine emptione +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Emere navem electam. Shift+Preme ut pretium monstretur sine emptione +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Emere aeroplanum electum. Shift+Preme ut pretium monstretur sine emptione + +STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Renominare +STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Renominare +STR_BUY_VEHICLE_SHIP_RENAME_BUTTON :{BLACK}Renominare +STR_BUY_VEHICLE_AIRCRAFT_RENAME_BUTTON :{BLACK}Renominare + +STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Renominare typum ferriviarii vehiculi +STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Renominare typum viarii vehiculi +STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Renominare typum navis +STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Renominare typum aeroplani + +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Celare +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Celare +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Celare +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Celare + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Monstrare +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Monstrare +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Monstrare +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Monstrare + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Monstrare/celare typum vehiculi ferriviarii +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Monstrare/celare typum vehiculi viarii +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Monstrare/celare typum navis +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Monstrare/celare typum aeroplani + +STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Renominare typum ferriviarii vehiculi +STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Renominare typum viarii vehiculi +STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Renominare typum navis +STR_QUERY_RENAME_AIRCRAFT_TYPE_CAPTION :{WHITE}Renominare typum aeroplani + +# Depot window +STR_DEPOT_CAPTION :{WHITE}{DEPOT} + +STR_DEPOT_RENAME_TOOLTIP :{BLACK}Mutare nomen receptaculi +STR_DEPOT_RENAME_DEPOT_CAPTION :Renominare receptaculum + +STR_DEPOT_NO_ENGINE :{BLACK}- +STR_DEPOT_VEHICLE_TOOLTIP :{BLACK}{ENGINE}{STRING} +STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} vehicul{P um a}{STRING} +STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) + +STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Tramina - sinistro trahe vehiculum ut addatur/removeatur tramini, dextrum preme ut indicium monstretur. Ctrl pressa, cuncta catena vehiculorum sequens additur/removetur/indicium eius monstratur +STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Vehicula - dextrum preme in vehiculum ut indicium monstretur +STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Naves - dextrum preme in navem ut indicium monstretur +STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aeroplana - dextrum preme in aeroplanum ut indicium monstretur + +STR_DEPOT_TRAIN_SELL_TOOLTIP :{BLACK}Huc trahe vehiculum ut vendatur +STR_DEPOT_ROAD_VEHICLE_SELL_TOOLTIP :{BLACK}Huc trahe vehiculum ut vendatur +STR_DEPOT_SHIP_SELL_TOOLTIP :{BLACK}Huc trahe navem ut vendatur +STR_DEPOT_AIRCRAFT_SELL_TOOLTIP :{BLACK}Huc trahe aeroplanum ut vendatur + +STR_DEPOT_DRAG_WHOLE_TRAIN_TO_SELL_TOOLTIP :{BLACK}Huc trahe hamaxam ut cunctum tramen vendatur + +STR_DEPOT_SELL_ALL_BUTTON_TRAIN_TOOLTIP :{BLACK}Vendere omnia tramina in receptaculo +STR_DEPOT_SELL_ALL_BUTTON_ROAD_VEHICLE_TOOLTIP :{BLACK}Vendere omnia vehicula in receptaculo +STR_DEPOT_SELL_ALL_BUTTON_SHIP_TOOLTIP :{BLACK}Vendere omnes naves in receptaculo +STR_DEPOT_SELL_ALL_BUTTON_AIRCRAFT_TOOLTIP :{BLACK}Vendere omnia aeroplana in tugurio + +STR_DEPOT_AUTOREPLACE_TRAIN_TOOLTIP :{BLACK}Automutare omnia tramina in receptaculo +STR_DEPOT_AUTOREPLACE_ROAD_VEHICLE_TOOLTIP :{BLACK}Automutare omnia vehicula viaria in receptaculo +STR_DEPOT_AUTOREPLACE_SHIP_TOOLTIP :{BLACK}Automutare omnes naves in receptaculo +STR_DEPOT_AUTOREPLACE_AIRCRAFT_TOOLTIP :{BLACK}Automutare omnia aeroplana in tugurio + +STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Nova Vehicula +STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_BUTTON :{BLACK}Nova Vehicula +STR_DEPOT_SHIP_NEW_VEHICLES_BUTTON :{BLACK}Novae Naves +STR_DEPOT_AIRCRAFT_NEW_VEHICLES_BUTTON :{BLACK}Nova Aeroplana + +STR_DEPOT_TRAIN_NEW_VEHICLES_TOOLTIP :{BLACK}Emere novam partem traminis +STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_TOOLTIP :{BLACK}Emere novum vehiculum viarium +STR_DEPOT_SHIP_NEW_VEHICLES_TOOLTIP :{BLACK}Emere novam navem +STR_DEPOT_AIRCRAFT_NEW_VEHICLES_TOOLTIP :{BLACK}Emere novum aeroplanum + +STR_DEPOT_CLONE_TRAIN :{BLACK}Duplicare Tramen +STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Duplicare Vehiculum +STR_DEPOT_CLONE_SHIP :{BLACK}Duplicare Navem +STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Duplicare Aeroplanum + +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Emet exemplar hamaxostichi electi et omnes currus eius. Preme hunc globulum deinde in hamaxostichum vel intra vel extra receptaculum. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Emet exemplar vehiculi viarii electi. Preme hunc globulum deinde in vehiculum viarium vel intra vel extra receptaculum. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione +STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Emet exemplar navis electae. Preme hunc globulum deinde in navem vel intra vel extra receptaculum. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione +STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Emet exemplar aeroplani electi. Preme hunc globulum deinde in aeroplanum vel intra vel extra receptaculum. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione + +STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hoc receptaculum ferriviarium. Ctrl+Preme ut nova fenestra conspectus aperiatur supra receptaculum ferriviarium +STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hoc receptaculum viarium. Ctrl+Preme ut nova fenestra conspectus aperiatur supra receptaculum viarium +STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hoc receptaculum navium. Ctrl+Preme ut nova fenestra conspectus aperiatur supra receptaculum navium +STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hoc tugurium. Ctrl+Preme ut nova fenestra conspectus aperiatur supra tugurium + +STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Ostendere indicem omnium traminum quae habent hoc receptaculum in iussis eorum +STR_DEPOT_VEHICLE_ORDER_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Ostendere indicem omnium vehiculorum viariorum qui habent hoc receptaculum in iussis eorum +STR_DEPOT_VEHICLE_ORDER_LIST_SHIP_TOOLTIP :{BLACK}Ostendere indicem omnium navium qui habent hoc receptaculum in iussis earum +STR_DEPOT_VEHICLE_ORDER_LIST_AIRCRAFT_TOOLTIP :{BLACK}Ostendere indicem omnium aeroplanorum qui habent hoc receptaculum in iussis eorum + +STR_DEPOT_MASS_STOP_DEPOT_TRAIN_TOOLTIP :{BLACK}Preme ut omnia tramina in hoc receptaculo sistantur +STR_DEPOT_MASS_STOP_DEPOT_ROAD_VEHICLE_TOOLTIP :{BLACK}Preme ut omnia vehicula in hoc receptaculo sistantur +STR_DEPOT_MASS_STOP_DEPOT_SHIP_TOOLTIP :{BLACK}Preme ut omnes naves in hoc receptaculo sistantur +STR_DEPOT_MASS_STOP_HANGAR_TOOLTIP :{BLACK}Preme ut omnia aeroplana in hoc tugurio sistantur + +STR_DEPOT_MASS_START_DEPOT_TRAIN_TOOLTIP :{BLACK}Preme ut omnia tramina in hoc receptaculo incohentur +STR_DEPOT_MASS_START_DEPOT_ROAD_VEHICLE_TOOLTIP :{BLACK}Preme ut omnia vehicula in hoc receptaculo incohentur +STR_DEPOT_MASS_START_DEPOT_SHIP_TOOLTIP :{BLACK}Preme ut omnes naves in hoc receptaculo incohentur +STR_DEPOT_MASS_START_HANGAR_TOOLTIP :{BLACK}Preme ut omnia aeroplana in hoc tugurio incohentur + +STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Omnia vehicula in receptaculo venditurus es. Esne certus? + +# Engine preview window +STR_ENGINE_PREVIEW_CAPTION :{WHITE}Nuntium a fabricatore vehiculorum +STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Nuper fabricamus nov{G um am um os as a} {STRING} - visne uti hoc vehiculo unum annum, ut videamus quomodo operatur antequam omnibus venum damus? +STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :{G=f}hamaxam +STR_ENGINE_PREVIEW_ROAD_VEHICLE :{G=n}vehiculum viarium +STR_ENGINE_PREVIEW_AIRCRAFT :{G=n}aeroplanum +STR_ENGINE_PREVIEW_SHIP :{G=f}navem +STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :{G=f}hamaxam monoorbitalem +STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :{G=f}hamaxam maglev + +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Pretium: {CURRENCY_LONG} Pondus: {WEIGHT_SHORT}{}Velocitas: {VELOCITY} Potestas: {POWER}{}Pretium Operandi: {CURRENCY_LONG} per annum{}Capacitas: {CARGO_LONG} +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Pretium: {CURRENCY_LONG} Pondus: {WEIGHT_SHORT}{}Velocitas: {VELOCITY} Potestas: {POWER} V.T. Max.: {6:FORCE}{}Pretium Operandi: {4:CURRENCY_LONG} per annum{}Capacitas: {5:CARGO_LONG} +STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_CAPACITY_RUNCOST :{BLACK}Pretium: {CURRENCY_LONG} Velocitas Maxima: {VELOCITY}{}Capacitas: {CARGO_LONG}, {CARGO_LONG}{}Pretium Operandi: {CURRENCY_LONG} per annum +STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK}Pretium: {CURRENCY_LONG} Velocitas Maxima: {VELOCITY}{}Capacitas: {CARGO_LONG}{}Pretium Operandi: {CURRENCY_LONG} per annum +STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_CAPACITY_RUNCOST:{BLACK}Pretium: {CURRENCY_LONG} Velocitas Maxima: {VELOCITY} Range: {COMMA} tiles{}Capacitas: {CARGO_LONG}, {CARGO_LONG}{}Pretium Operandi: {CURRENCY_LONG} per annum +STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_RUNCOST :{BLACK}Pretium: {CURRENCY_LONG} Velocitas Maxima: {VELOCITY} Range: {COMMA} tiles{}Capacitas: {CARGO_LONG}{}Pretium Operandi: {CURRENCY_LONG} per annum + +# Autoreplace window +STR_REPLACE_VEHICLES_WHITE :{WHITE}Mutare {STRING} - {STRING} +STR_REPLACE_VEHICLE_TRAIN :Tramen +STR_REPLACE_VEHICLE_ROAD_VEHICLE :Vehiculum Viarium +STR_REPLACE_VEHICLE_SHIP :Navem +STR_REPLACE_VEHICLE_AIRCRAFT :Aeroplanum + +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Vehicula possessa +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Columna cum vehiculis quae possides +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Vehicula parabilia +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Columna cum vehiculis parabilibus ad mutandum + +STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Eligere typum mutandum +STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Eligere novum typum in loco typi sinistri utendum + +STR_REPLACE_VEHICLES_START :{BLACK}Mutationem Vehiculorum Incipere +STR_REPLACE_VEHICLES_NOW :Omnia vehicula statim mutare +STR_REPLACE_VEHICLES_WHEN_OLD :Vehicula vetera solum mutare +STR_REPLACE_HELP_START_BUTTON :{BLACK}Preme ut vehiculum sinistrum electum incipiat commutari vehiculo dextro electo +STR_REPLACE_NOT_REPLACING :{BLACK}Non mutandum est +STR_REPLACE_NOT_REPLACING_VEHICLE_SELECTED :{BLACK}Nullum vehiculum electum +STR_REPLACE_REPLACING_WHEN_OLD :{ENGINE} cum vetus +STR_REPLACE_VEHICLES_STOP :{BLACK}Consistere mutationem vehiculorum +STR_REPLACE_HELP_STOP_BUTTON :{BLACK}Preme ut mutatio vehiculi sinistri consistatur + +STR_REPLACE_ENGINE_WAGON_SELECT :{BLACK}Mutatio: {ORANGE}{STRING} +STR_REPLACE_ENGINE_WAGON_SELECT_HELP :{BLACK}Mutare inter mutationem hamaxarum curruumque +STR_REPLACE_ENGINES :Hamaxarum +STR_REPLACE_WAGONS :Curruum + +STR_REPLACE_HELP_RAILTYPE :{BLACK}Eligere typum astarii cui est hamaxas commutandas +STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Haec monstrat novum vehiculum desideratum, si adest +STR_REPLACE_RAIL_VEHICLES :Vehicula Ferriviaria +STR_REPLACE_ELRAIL_VEHICLES :Vehicula Ferriviaria Electrica +STR_REPLACE_MONORAIL_VEHICLES :Vehicula Monoorbitalia +STR_REPLACE_MAGLEV_VEHICLES :Vehicula Maglev + +STR_REPLACE_REMOVE_WAGON :{BLACK}Ablatio curruum: {ORANGE}{STRING} +STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Facere ut automutatio longitudinem traminis contineat ablatione curruum (primo primorum), si tramen longius fiat mutatione hamaxae + +# Vehicle view +STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} + +STR_VEHICLE_VIEW_TRAIN_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hoc tramen. Ctrl+Preme ut conspectus tramen sequatur +STR_VEHICLE_VIEW_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hoc vehiculum. Ctrl+Preme ut conspectus vechiculum sequatur +STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hanc navem. Ctrl+Preme ut conspectus navem sequatur +STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Movere conspectum supra hoc aeroplanum. Ctrl+Preme ut conspectus aeroplanum sequatur + +STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Mittere tramen ad receptaculum. Ctrl+Preme ut modo ministretur +STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Mittere vehiculum ad receptaculum. Ctrl+Preme ut modo ministretur +STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Mittere navem ad receptaculum. Ctrl+Preme ut modo ministretur +STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Mittere aeroplanum ad tugurium. Ctrl+Preme ut modo ministretur + +STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Emet exemplar hamaxostichi electi et omnes currus eius. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione +STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Emet exemplar vehiculi viarii electi. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione +STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Emet exemplar navis electae. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione +STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Emet exemplar aeroplani electi. Ctrl+Preme ut iussa communicentur. Shift+Preme ut pretium monstretur sine emptione + +STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Impellere tramen post signale sine mora, etsi signale rubrum est + +STR_VEHICLE_VIEW_TRAIN_REFIT_TOOLTIP :{BLACK}Reficere tramen alio generi oneris +STR_VEHICLE_VIEW_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Reficere vehiculum alii typo oneri +STR_VEHICLE_VIEW_SHIP_REFIT_TOOLTIP :{BLACK}Reficere navem alii typo oneri +STR_VEHICLE_VIEW_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Reficere aeroplanum alii typo oneri + +STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Cursum traminis reflectere +STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Fac ut vehiculum revertatur + +STR_VEHICLE_VIEW_TRAIN_ORDERS_TOOLTIP :{BLACK}Monstrare iussa hamaxostichi. Ctrl+Preme ut horarius hamaxostichi monstretur +STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Monstrare iussa vehiculi. Ctrl+Preme ut horarius vehiculi monstretur +STR_VEHICLE_VIEW_SHIP_ORDERS_TOOLTIP :{BLACK}Monstrare iussa navis. Ctrl+Preme ut horarius navis monstretur +STR_VEHICLE_VIEW_AIRCRAFT_ORDERS_TOOLTIP :{BLACK}Monstrare iussa aeroplani. Ctrl+Preme ut horarius aeroplani monstretur + +STR_VEHICLE_VIEW_TRAIN_SHOW_DETAILS_TOOLTIP :{BLACK}Monstrare indicia traminis +STR_VEHICLE_VIEW_ROAD_VEHICLE_SHOW_DETAILS_TOOLTIP :{BLACK}Monstrare indicia vehiculi +STR_VEHICLE_VIEW_SHIP_SHOW_DETAILS_TOOLTIP :{BLACK}Monstrare indicia navis +STR_VEHICLE_VIEW_AIRCRAFT_SHOW_DETAILS_TOOLTIP :{BLACK}Monstrare indicia aeroplani + +STR_VEHICLE_VIEW_TRAIN_STATE_START_STOP_TOOLTIP :{BLACK}Actio traminis currens - preme ut tramen sistatur/incohatur. Ctrl+Preme ut conspectus movetur ad destinatum +STR_VEHICLE_VIEW_ROAD_VEHICLE_STATE_START_STOP_TOOLTIP :{BLACK}Actio vehiculi currens - preme ut vehiculum sistatur/incohatur. Ctrl+Preme ut conspectus movetur ad destinatum +STR_VEHICLE_VIEW_SHIP_STATE_START_STOP_TOOLTIP :{BLACK}Actio navis currens - preme ut navis sistatur/incohatur. Ctrl+Preme ut conspectus movetur ad destinatum +STR_VEHICLE_VIEW_AIRCRAFT_STATE_START_STOP_TOOLTIP :{BLACK}Actio aeroplani currens - preme ut aeroplanum sistatur/incohatur. Ctrl+Preme ut conspectus movetur ad destinatum + +# Messages in the start stop button in the vehicle view +STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Onerans / Exonerans +STR_VEHICLE_STATUS_LEAVING :{LTBLUE}Exiens +STR_VEHICLE_STATUS_CRASHED :{RED}Destructum! +STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Defectum +STR_VEHICLE_STATUS_STOPPED :{RED}Constitum +STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Sistens, {VELOCITY} +STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Sine potestate +STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Cursum apertum exspectans +STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Destinatum nimis procul + +STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Navigans ad {STATION}, {VELOCITY} +STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}Sine iussis, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}Navigans ad {WAYPOINT}, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}Navigans ad {DEPOT}, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}Iens ministrandum ad {DEPOT}, {VELOCITY} + +# Vehicle stopped/started animations +STR_VEHICLE_COMMAND_STOPPED_SMALL :{TINY_FONT}{RED}Constitum +STR_VEHICLE_COMMAND_STOPPED :{RED}Constitum +STR_VEHICLE_COMMAND_STARTED_SMALL :{TINY_FONT}{GREEN}Incohatum +STR_VEHICLE_COMMAND_STARTED :{GREEN}Incohatum + +# Vehicle details +STR_VEHICLE_DETAILS_CAPTION :{WHITE}{VEHICLE} (Indicia) +STR_VEHICLE_NAME_BUTTON :{BLACK}Nominare + +STR_VEHICLE_DETAILS_TRAIN_RENAME :{BLACK}Nominare tramen +STR_VEHICLE_DETAILS_ROAD_VEHICLE_RENAME :{BLACK}Nominare vehiculum +STR_VEHICLE_DETAILS_SHIP_RENAME :{BLACK}Nominare navem +STR_VEHICLE_DETAILS_AIRCRAFT_RENAME :{BLACK}Nominare aeroplanum + +STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Aetas: {LTBLUE}{STRING}{BLACK} Pretium operandi: {LTBLUE}{CURRENCY_LONG} per annum +# The next two need to stay in this order +STR_VEHICLE_INFO_AGE :{COMMA} ann{P us i} ({COMMA}) +STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} ann{P us i} ({COMMA}) + +STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Velocitas maxima: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}Velocitas maxima: {LTBLUE}{VELOCITY} {BLACK}Max. distantia volatus: {LTBLUE}{COMMA} tegulas +STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Pondus: {LTBLUE}{WEIGHT_SHORT} {BLACK}Potestas: {LTBLUE}{POWER}{BLACK} Velocitas maxima: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Pondus: {LTBLUE}{WEIGHT_SHORT} {BLACK}Potestas: {LTBLUE}{POWER}{BLACK} Velocitas maxima: {LTBLUE}{VELOCITY} {BLACK}V.T. Max.: {LTBLUE}{FORCE} + +STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR :{BLACK}Lucrum huius anni: {LTBLUE}{CURRENCY_LONG} (anni prioris: {CURRENCY_LONG}) +STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Constantia: {LTBLUE}{COMMA}% {BLACK}Defecta post ministrationem priorem: {LTBLUE}{COMMA} + +STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Factum: {LTBLUE}{NUM}{BLACK} Aestimatio: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_INFO_NO_CAPACITY :{BLACK}Capacitas: {LTBLUE}Nulla{STRING} +STR_VEHICLE_INFO_CAPACITY :{BLACK}Capacitas: {LTBLUE}{CARGO_LONG}{3:STRING} +STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Capacitas: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM}) +STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacitas: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} + +STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Credita transferendi: {LTBLUE}{CURRENCY_LONG} + +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervallum ministrationis: {LTBLUE}{COMMA}{NBSP}dies{BLACK} Ministratio prior: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Intervallum ministrationis: {LTBLUE}{COMMA}%{BLACK} Ministratio prior: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Augere intervallum ministrationis 10. Ctrl+Preme ut augeatur 5 +STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Minuere intervallum ministrationis 10. Ctrl+Preme ut minuatur 5 + +STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Eligere genus intervalli ministrationis +STR_VEHICLE_DETAILS_DEFAULT :Solitus +STR_VEHICLE_DETAILS_DAYS :Diebus +STR_VEHICLE_DETAILS_PERCENT :Per centum + +STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Nominare tramen +STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Nominare vehiculum +STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Nominare navem +STR_QUERY_RENAME_AIRCRAFT_CAPTION :{WHITE}Nominare aeroplanum + +# Extra buttons for train details windows +STR_VEHICLE_DETAILS_TRAIN_ENGINE_BUILT_AND_VALUE :{LTBLUE}{ENGINE}{BLACK} Factum: {LTBLUE}{NUM}{BLACK} Aestimatio: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_DETAILS_TRAIN_WAGON_VALUE :{LTBLUE}{ENGINE}{BLACK} Aestimatio: {LTBLUE}{CURRENCY_LONG} + +STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT :{BLACK}Tota capacitas huius traminis: +STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) +STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_MULT :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) (x{NUM}) + +STR_VEHICLE_DETAILS_CARGO_EMPTY :{LTBLUE}Vacuum +STR_VEHICLE_DETAILS_CARGO_FROM :{LTBLUE}{CARGO_LONG} a {STATION} +STR_VEHICLE_DETAILS_CARGO_FROM_MULT :{LTBLUE}{CARGO_LONG} a {STATION} (x{NUM}) + +STR_VEHICLE_DETAIL_TAB_CARGO :{BLACK}Onus +STR_VEHICLE_DETAILS_TRAIN_CARGO_TOOLTIP :{BLACK}Monstrare indicia oneris portatum +STR_VEHICLE_DETAIL_TAB_INFORMATION :{BLACK}Indicia +STR_VEHICLE_DETAILS_TRAIN_INFORMATION_TOOLTIP :{BLACK}Monstrare indicia vehiculorum traminis +STR_VEHICLE_DETAIL_TAB_CAPACITIES :{BLACK}Capacitates +STR_VEHICLE_DETAILS_TRAIN_CAPACITIES_TOOLTIP :{BLACK}Monstrare capacitates cuiusque vehiculi +STR_VEHICLE_DETAIL_TAB_TOTAL_CARGO :{BLACK}Tota Onera +STR_VEHICLE_DETAILS_TRAIN_TOTAL_CARGO_TOOLTIP :{BLACK}Monstrare totam capacitatem hamaxostichi, per oneris typum + +STR_VEHICLE_DETAILS_TRAIN_ARTICULATED_RV_CAPACITY :{BLACK}Capacitas: {LTBLUE} + +# Vehicle refit +STR_REFIT_CAPTION :{WHITE}{VEHICLE} (Reficere) +STR_REFIT_TITLE :{GOLD}Eligere typum oneris portandum: +STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Capacitas nova: {GOLD}{CARGO_LONG}{}{BLACK}Pretium reficiendi: {RED}{CURRENCY_LONG} +STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Capacitas nova: {GOLD}{CARGO_LONG}{}{BLACK}Reditus reficiendi: {GREEN}{CURRENCY_LONG} +STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Capacitas nova: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Pretium reficiendi: {RED}{CURRENCY_LONG} +STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Capacitas nova: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Reditus reficiendi: {GREEN}{CURRENCY_LONG} +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Eligere vehicula reficienda. Multa vehicula eligantur murem trahendo. Preme in locum vacuum ut cuncta eligatur. Ctrl+Preme ut vehiculum ac omnia sequentia eligantur + +STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Eligere oneris typum hamaxosticho transportandum +STR_REFIT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Eligere oneris typum vehiculo transportandum +STR_REFIT_SHIP_LIST_TOOLTIP :{BLACK}Eligere oneris typum navi transportandum +STR_REFIT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Eligere oneris typum aeroplano transportandum + +STR_REFIT_TRAIN_REFIT_BUTTON :{BLACK}Reficere tramen +STR_REFIT_ROAD_VEHICLE_REFIT_BUTTON :{BLACK}Reficere vehiculum viarium +STR_REFIT_SHIP_REFIT_BUTTON :{BLACK}Reficere navem +STR_REFIT_AIRCRAFT_REFIT_BUTTON :{BLACK}Reficere aeroplanum + +STR_REFIT_TRAIN_REFIT_TOOLTIP :{BLACK}Reficere tramen generi oneris electo +STR_REFIT_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Reficere vehiculum viarium typo oneris electo +STR_REFIT_SHIP_REFIT_TOOLTIP :{BLACK}Reficere navem typo oneris electo +STR_REFIT_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Reficere aeroplanum typo oneris electo + +# Order view +STR_ORDERS_CAPTION :{WHITE}{VEHICLE} (Iussa) +STR_ORDERS_TIMETABLE_VIEW :{BLACK}Horarius +STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Mutare ad horarium + +STR_ORDERS_LIST_TOOLTIP :{BLACK}Index iussorum - preme in iussum ut eligatur. Ctrl+Preme vagatur ad destinatum +STR_ORDER_INDEX :{COMMA}:{NBSP} +STR_ORDER_TEXT :{STRING} {STRING} {STRING} + +STR_ORDERS_END_OF_ORDERS :- - Finis Iussorum - - +STR_ORDERS_END_OF_SHARED_ORDERS :- - Finis Iussorum Communium - - + +# Order bottom buttons +STR_ORDER_NON_STOP :{BLACK}Continue +STR_ORDER_GO_TO :I ad +STR_ORDER_GO_NON_STOP_TO :I continue ad +STR_ORDER_GO_VIA :I per +STR_ORDER_GO_NON_STOP_VIA :I continue per +STR_ORDER_TOOLTIP_NON_STOP :{BLACK}Eligere si electum iussum continuum sit + +STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}Plene quidquam onerare +STR_ORDER_DROP_LOAD_IF_POSSIBLE :Onerare si parabile est +STR_ORDER_DROP_FULL_LOAD_ALL :Plene omnia onera onerare +STR_ORDER_DROP_FULL_LOAD_ANY :Plene quidquam onerare +STR_ORDER_DROP_NO_LOADING :Non onerare +STR_ORDER_TOOLTIP_FULL_LOAD :{BLACK}Mutare modum onerandi iusso electo + +STR_ORDER_TOGGLE_UNLOAD :{BLACK}Omnia exonerare +STR_ORDER_DROP_UNLOAD_IF_ACCEPTED :Exonerare si accipitur +STR_ORDER_DROP_UNLOAD :Plene quidquam onerare +STR_ORDER_DROP_TRANSFER :Transfer +STR_ORDER_DROP_NO_UNLOADING :Non exonerare +STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Mutare modum exonerandi iusso electo + +STR_ORDER_REFIT :{BLACK}Reficere +STR_ORDER_REFIT_TOOLTIP :{BLACK}Eligere onus cui reficiendum est in hoc iusso. Ctrl+Preme ut iussum reficiendi removeatur +STR_ORDER_REFIT_AUTO :{BLACK}Reficere in statione +STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Eligere onus cui reficiendum est in hoc iusso. Ctrl+Preme ut iussum reficiendi removeatur. Vehicula possunt refici in stationibus tantum si NewGRF sinit +STR_ORDER_DROP_REFIT_AUTO :Oneri fixo +STR_ORDER_DROP_REFIT_AUTO_ANY :Oneri parabili + +STR_ORDER_SERVICE :{BLACK}Ministratio +STR_ORDER_DROP_GO_ALWAYS_DEPOT :Ire semper +STR_ORDER_DROP_SERVICE_DEPOT :Ministrari si necesse est +STR_ORDER_DROP_HALT_DEPOT :Consiste +STR_ORDER_SERVICE_TOOLTIP :{BLACK}Transilire huic iusso nisi necesse est ministrari + +STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Indicia vehiculi ad quae spectat ordines conditionales + +# Conditional order variables, must follow order of OrderConditionVariable enum +STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :portio oneris +STR_ORDER_CONDITIONAL_RELIABILITY :constantia +STR_ORDER_CONDITIONAL_MAX_SPEED :velocitas maxima +STR_ORDER_CONDITIONAL_AGE :aetas (annorum) +STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :ministrandum +STR_ORDER_CONDITIONAL_UNCONDITIONALLY :semper +STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :aetas reliqua (anni) + +STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Quomodo valores electi componuntur indicio vehiculi +STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :aequalis est +STR_ORDER_CONDITIONAL_COMPARATOR_NOT_EQUALS :non aequalis est +STR_ORDER_CONDITIONAL_COMPARATOR_LESS_THAN :minor est quam +STR_ORDER_CONDITIONAL_COMPARATOR_LESS_EQUALS :aequalis minorve est quam +STR_ORDER_CONDITIONAL_COMPARATOR_MORE_THAN :maior est quam +STR_ORDER_CONDITIONAL_COMPARATOR_MORE_EQUALS :aequalis maiorve est quam +STR_ORDER_CONDITIONAL_COMPARATOR_IS_TRUE :est +STR_ORDER_CONDITIONAL_COMPARATOR_IS_FALSE :non est + +STR_ORDER_CONDITIONAL_VALUE_TOOLTIP :{BLACK}Valor componendum indicio vehiculi +STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Inscribe valorem componendum + +STR_ORDERS_SKIP_BUTTON :{BLACK}Salire +STR_ORDERS_SKIP_TOOLTIP :{BLACK}Transilire iusso currenti, et incipere secundum. Ctrl+Preme ut transiliat ad iussum electum + +STR_ORDERS_DELETE_BUTTON :{BLACK}Delere +STR_ORDERS_DELETE_TOOLTIP :{BLACK}Delere iussum electum +STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Delere omnia iussa +STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Desinere communicationem +STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Desinere iussa communicare. Ctrl+Preme ut etiam omnia iussa huius vehiculi deleantur + +STR_ORDERS_GO_TO_BUTTON :{BLACK}I ad +STR_ORDER_GO_TO_NEAREST_DEPOT :I ad proximum receptaculum +STR_ORDER_GO_TO_NEAREST_HANGAR :I ad proximum tugurium +STR_ORDER_CONDITIONAL :Iussum conditionale +STR_ORDER_SHARE :Iussa communicare +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Inserere novum iussum ante iussum electum, aut ad finem indicis. Ctrl pressa, iussa stationum sunt 'plene quidquam onerare', iussa interlocorum 'continue', et iussa receptaculorum 'ministrare'. 'Iussa communicare' sive Ctrl facit ut iussa communicentur inter hoc ac electum vehiculum. Pressio in aliud vehiculum transcribit iussa ex illo vehiculo. Si adest iussum receptaculi, vehiculum non automatice ministratur + +STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Monstrare omnia vehicula quae hunc horarium communicant + +# String parts to build the order string +STR_ORDER_GO_TO_WAYPOINT :I per {WAYPOINT} +STR_ORDER_GO_NON_STOP_TO_WAYPOINT :I continue per {WAYPOINT} + +STR_ORDER_SERVICE_AT :Ministrare ad +STR_ORDER_SERVICE_NON_STOP_AT :Ministrare continue ad + +STR_ORDER_NEAREST_DEPOT :proxmimum +STR_ORDER_NEAREST_HANGAR :proxmimum tugurium +STR_ORDER_TRAIN_DEPOT :receptaculum traminum +STR_ORDER_ROAD_VEHICLE_DEPOT :receptaculum viarium +STR_ORDER_SHIP_DEPOT :receptaculum navium +STR_ORDER_GO_TO_NEAREST_DEPOT_FORMAT :{STRING} {STRING} {STRING} +STR_ORDER_GO_TO_DEPOT_FORMAT :{STRING} {DEPOT} + +STR_ORDER_REFIT_ORDER :(Reficere {STRING.dat}) +STR_ORDER_REFIT_STOP_ORDER :(Reficere {STRING.dat} consisteque) +STR_ORDER_STOP_ORDER :(Consiste) + +STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} + +STR_ORDER_IMPLICIT :(Implicitum) + +STR_ORDER_FULL_LOAD :(Plene onerare) +STR_ORDER_FULL_LOAD_ANY :(Plene quidquam onerare) +STR_ORDER_NO_LOAD :(Non onerare) +STR_ORDER_UNLOAD :(Exonerare et onerare) +STR_ORDER_UNLOAD_FULL_LOAD :(Exonerare et plene onerare) +STR_ORDER_UNLOAD_FULL_LOAD_ANY :(Exonerare et plene quidquam onerare) +STR_ORDER_UNLOAD_NO_LOAD :(Exonerare et exire vacue) +STR_ORDER_TRANSFER :(Transfer et onerare) +STR_ORDER_TRANSFER_FULL_LOAD :(Transfer et plene onerare) +STR_ORDER_TRANSFER_FULL_LOAD_ANY :(Transfer et plene quidquam onerare) +STR_ORDER_TRANSFER_NO_LOAD :(Transfer et exi vacue) +STR_ORDER_NO_UNLOAD :(Non exonerare et onerare) +STR_ORDER_NO_UNLOAD_FULL_LOAD :(Non exonerare et plene onerare) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Non exonerare et plene quidquam onerare) +STR_ORDER_NO_UNLOAD_NO_LOAD :(Non exonerare et non onerare) + +STR_ORDER_AUTO_REFIT :(Reficere {STRING.dat}) +STR_ORDER_FULL_LOAD_REFIT :(Reficere {STRING.dat} et plene onerare) +STR_ORDER_FULL_LOAD_ANY_REFIT :(Reficere {STRING.dat} et plene quidquam onerare) +STR_ORDER_UNLOAD_REFIT :(Exonerare, reficere {STRING.dat}, et onerare) +STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Exonerare, reficere {STRING.dat}, et plene onerare) +STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Exonerare, reficere {STRING.dat}, et plene quidquam onerare) +STR_ORDER_TRANSFER_REFIT :(Transfer, reficere {STRING.dat}, et onerare) +STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Transfer, reficere {STRING.dat}, et plene onerare) +STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Transfer, reficere {STRING.dat}, et plene quidquam onerare) +STR_ORDER_NO_UNLOAD_REFIT :(Non exonerare, reficere {STRING.dat}, et onerare) +STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Non exonerare, reficere {STRING.dat}, et plene onerare) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Non exonerare, reficere {STRING.dat}, et plene quidquam onerare) + +STR_ORDER_AUTO_REFIT_ANY :oneri parabili + +STR_ORDER_STOP_LOCATION_NEAR_END :[citera] +STR_ORDER_STOP_LOCATION_MIDDLE :[medio] +STR_ORDER_STOP_LOCATION_FAR_END :[ultra] + +STR_ORDER_OUT_OF_RANGE :{RED} (Destinatum secundum extra distantiam volatus maximam est) + +STR_ORDER_CONDITIONAL_UNCONDITIONAL :Sali ad iussum {COMMA} +STR_ORDER_CONDITIONAL_NUM :Sali ad iussum {COMMA} cum {STRING} {STRING} {COMMA} +STR_ORDER_CONDITIONAL_TRUE_FALSE :Sali ad iussum {COMMA} cum {STRING} {STRING} + +STR_INVALID_ORDER :{RED} (Iussum Irritum) + +# Time table window +STR_TIMETABLE_TITLE :{WHITE}{VEHICLE} (Horarius) +STR_TIMETABLE_ORDER_VIEW :{BLACK}Iussa +STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Mutare ad aspectum iussorum + +STR_TIMETABLE_TOOLTIP :{BLACK}Horarius - preme in iussum ut eligatur + +STR_TIMETABLE_NO_TRAVEL :(Non est navigandum) +STR_TIMETABLE_NOT_TIMETABLEABLE :Iter (horarius curatur a secundo fixo iusso) +STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Iter (sine horario) +STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Iter cum {2:VELOCITY} velocitas maxima (sine horario) +STR_TIMETABLE_TRAVEL_FOR :Iter {STRING} +STR_TIMETABLE_TRAVEL_FOR_SPEED :Iter {STRING} cum {VELOCITY} velocitas maxima +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Iter ({STRING}, sine horario) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Iter ({STRING}, sine horario) cum {VELOCITY} velocitas maxima +STR_TIMETABLE_STAY_FOR_ESTIMATED :(mora {STRING}, sine horario) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(iter {STRING}, sine horario) +STR_TIMETABLE_STAY_FOR :cum mora {STRING} +STR_TIMETABLE_AND_TRAVEL_FOR :cum itinere {STRING} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}die{P i rum} +STR_TIMETABLE_DAYS.acc :{COMMA}{NBSP}die{P m s} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}punct{P i orum} +STR_TIMETABLE_TICKS.acc :{COMMA}{NBSP}punct{P um a} + +STR_TIMETABLE_TOTAL_TIME :{BLACK}Hic horarius peragitur {STRING.acc} +STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Hic horarius peragitur saltem {STRING.acc} (omnia non in horario) + +STR_TIMETABLE_STATUS_ON_TIME :{BLACK}Hoc vehiculum ad tempus est +STR_TIMETABLE_STATUS_LATE :{BLACK}Hoc vehiculum est {STRING.acc} tardum +STR_TIMETABLE_STATUS_EARLY :{BLACK}Hoc vehiculum est {STRING.acc} citum +STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}Hic horarius adhuc non incipitur +STR_TIMETABLE_STATUS_START_AT :{BLACK}Hic horarius incipietur {STRING} + +STR_TIMETABLE_STARTING_DATE :{BLACK}Dies Initii +STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}Elige diem ad initium huius horarii. Ctrl+Preme ut dies initialis huius horarii eligatur ac aequaliter partiuntur omnia vehicula quae hoc iussum communicant secundum ordinem eorum, si iussa tota in horariis sunt + +STR_TIMETABLE_CHANGE_TIME :{BLACK}Mutare Tempus +STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Mutare durationem iussi electi + +STR_TIMETABLE_CLEAR_TIME :{BLACK}Delere Tempus +STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Delere durationem iussi electi + +STR_TIMETABLE_CHANGE_SPEED :{BLACK}Mutare Velocitatem Maximam +STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Mutare velocitatem itineris maximam iussi electi + +STR_TIMETABLE_CLEAR_SPEED :{BLACK}Delere Velocitatem Maximam +STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Delere elocitatem itineris maximam iussi electi + +STR_TIMETABLE_RESET_LATENESS :{BLACK}Reponere Numerationem Tarditatis +STR_TIMETABLE_RESET_LATENESS_TOOLTIP :{BLACK}Reponere numerationem tarditatis, igitur vehiculum ad tempus sit + +STR_TIMETABLE_AUTOFILL :{BLACK}Implere Automatice +STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Implere horarium automatice valoribus itineris secundi (Ctrl+Preme ut conetur tempora morae tenere) + +STR_TIMETABLE_EXPECTED :{BLACK}Aestimata +STR_TIMETABLE_SCHEDULED :{BLACK}Secundum horarium +STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Mutare inter tempora quae aestimata sunt ac secundum horarium sunt + +STR_TIMETABLE_ARRIVAL_ABBREVIATION :A: +STR_TIMETABLE_DEPARTURE_ABBREVIATION :E: + + +# Date window (for timetable) +STR_DATE_CAPTION :{WHITE}Electio diei +STR_DATE_SET_DATE :{BLACK}Eligere diem +STR_DATE_SET_DATE_TOOLTIP :{BLACK}Adhibere diem ut initium horarii +STR_DATE_DAY_TOOLTIP :{BLACK}Elige diem +STR_DATE_MONTH_TOOLTIP :{BLACK}Elige mensem +STR_DATE_YEAR_TOOLTIP :{BLACK}Elige anum + + +# AI debug window +STR_AI_DEBUG :{WHITE}Emendatio IA/Ludi Scripti +STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} (e{NUM}) +STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Nomen scripti +STR_AI_DEBUG_SETTINGS :{BLACK}Optiones +STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Mutare optiones scripti +STR_AI_DEBUG_RELOAD :{BLACK}Iterum legere IA +STR_AI_DEBUG_RELOAD_TOOLTIP :{BLACK}Occidere IA, iterum scriptum legere, et denuo incipere IA +STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}Sinere/vetare frangendum esse cum nuntium IA idem est quam series frangendi +STR_AI_DEBUG_BREAK_ON_LABEL :{BLACK}Frangere: +STR_AI_DEBUG_BREAK_STR_OSKTITLE :{BLACK}Frangere +STR_AI_DEBUG_BREAK_STR_TOOLTIP :{BLACK}Cum nuntium IA idem est huic seriei, ludus intermittitur +STR_AI_DEBUG_MATCH_CASE :{BLACK}Sequi casum litterarum +STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Eligere si sit casus litterarum sequendus cum nuntia IA componuntur seriei frangendi +STR_AI_DEBUG_CONTINUE :{BLACK}Pergere +STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Resumere ludum et IA pergere +STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Inspicere nuntia emendationis huius IA +STR_AI_GAME_SCRIPT :{BLACK}Ludi Scriptum +STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Inspicere nuntia Ludi Scripti + +STR_ERROR_AI_NO_AI_FOUND :Nulla IA idonea reperta est.{}Haec IA substituta est et nihil agit.{}Potes arcessere nonullas IA in Inventario Interretale +STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Unum currens scriptum corruit. Si potes, admone scriptori de hoc cum imagine fenestrae Emendationis IA/Ludi Scripti +STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Fenestra Emendationis IA/Ludi Scripti tantum servatro licet uti + +# AI configuration window +STR_AI_CONFIG_CAPTION :{WHITE}Configuratio IA/Ludi Scriptum +STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Ludi Scriptum quod imponet ludo proximo +STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}IA quae imponet ludo proximo +STR_AI_CONFIG_HUMAN_PLAYER :Lusor humanus +STR_AI_CONFIG_RANDOM_AI :IA Fortuita +STR_AI_CONFIG_NONE :(nullum) + +STR_AI_CONFIG_MOVE_UP :{BLACK}Sursum Movere +STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Movere IA electam sursum in indice +STR_AI_CONFIG_MOVE_DOWN :{BLACK}Deorsum Movere +STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Movere IA electam sursum in indice + +STR_AI_CONFIG_GAMESCRIPT :{SILVER}Ludi Scriptum +STR_AI_CONFIG_AI :{SILVER}AI + +STR_AI_CONFIG_CHANGE :{BLACK}Eligere {STRING} +STR_AI_CONFIG_CHANGE_NONE : +STR_AI_CONFIG_CHANGE_AI :IA +STR_AI_CONFIG_CHANGE_GAMESCRIPT :Scriptum +STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Legere aliud ludi scriptum +STR_AI_CONFIG_CONFIGURE :{BLACK}Parametra +STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Recensere parametra Scripti + +# Available AIs window +STR_AI_LIST_CAPTION :{WHITE}Parabilia {STRING} +STR_AI_LIST_CAPTION_AI :IA +STR_AI_LIST_CAPTION_GAMESCRIPT :Ludi Scripta +STR_AI_LIST_TOOLTIP :{BLACK}Preme ut scriptum eligatur + +STR_AI_LIST_AUTHOR :{LTBLUE}Scriptor: {ORANGE}{STRING} +STR_AI_LIST_VERSION :{LTBLUE}Editio: {ORANGE}{NUM} +STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING} + +STR_AI_LIST_ACCEPT :{BLACK}Accipere +STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Eligere scriptum +STR_AI_LIST_CANCEL :{BLACK}Cancellare +STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Non scriptum mutare + +# AI Parameters +STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametra +STR_AI_SETTINGS_CAPTION_AI :IA +STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Ludi Scripti +STR_AI_SETTINGS_CLOSE :{BLACK}Claudere +STR_AI_SETTINGS_RESET :{BLACK}Revertere +STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} +STR_AI_SETTINGS_START_DELAY :Quot dies post IA priorem haec IA incipiet (plus minusve): {ORANGE}{STRING} + + +# Textfile window +STR_TEXTFILE_README_CAPTION :{WHITE}{STRING} - {STRING} LegeMe +STR_TEXTFILE_CHANGELOG_CAPTION :{WHITE}{STRING} - {STRING} Index Mutationum +STR_TEXTFILE_LICENCE_CAPTION :{WHITE}{STRING} - {STRING} Licentia +STR_TEXTFILE_WRAP_TEXT :{WHITE}Verba volvere +STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Volvere verba fenestrae ut omnia intra adsunt sine vagando +STR_TEXTFILE_VIEW_README :{BLACK}Inspicere LegeMe +STR_TEXTFILE_VIEW_CHANGELOG :{BLACK}Index Mutationum +STR_TEXTFILE_VIEW_LICENCE :{BLACK}Licentia + + +# Vehicle loading indicators +STR_PERCENT_UP_SMALL :{TINY_FONT}{WHITE}{NUM}%{UP_ARROW} +STR_PERCENT_UP :{WHITE}{NUM}%{UP_ARROW} +STR_PERCENT_DOWN_SMALL :{TINY_FONT}{WHITE}{NUM}%{DOWN_ARROW} +STR_PERCENT_DOWN :{WHITE}{NUM}%{DOWN_ARROW} +STR_PERCENT_UP_DOWN_SMALL :{TINY_FONT}{WHITE}{NUM}%{UP_ARROW}{DOWN_ARROW} +STR_PERCENT_UP_DOWN :{WHITE}{NUM}%{UP_ARROW}{DOWN_ARROW} +STR_PERCENT_NONE_SMALL :{TINY_FONT}{WHITE}{NUM}% +STR_PERCENT_NONE :{WHITE}{NUM}% + +# Income 'floats' +STR_INCOME_FLOAT_COST_SMALL :{TINY_FONT}{RED}Expensum: {CURRENCY_LONG} +STR_INCOME_FLOAT_COST :{RED}Expensum: {CURRENCY_LONG} +STR_INCOME_FLOAT_INCOME_SMALL :{TINY_FONT}{GREEN}Reditus: {CURRENCY_LONG} +STR_INCOME_FLOAT_INCOME :{GREEN}Reditus: {CURRENCY_LONG} +STR_FEEDER_TINY :{TINY_FONT}{YELLOW}Translatio: {CURRENCY_LONG} +STR_FEEDER :{YELLOW}Translatio: {CURRENCY_LONG} +STR_FEEDER_INCOME_TINY :{TINY_FONT}{YELLOW}Translatio: {CURRENCY_LONG}{WHITE} / {GREEN}Reditus: {CURRENCY_LONG} +STR_FEEDER_INCOME :{YELLOW}Translatio: {CURRENCY_LONG}{WHITE} / {GREEN}Reditus: {CURRENCY_LONG} +STR_FEEDER_COST_TINY :{TINY_FONT}{YELLOW}Translatio: {CURRENCY_LONG}{WHITE} / {RED}Expensum: {CURRENCY_LONG} +STR_FEEDER_COST :{YELLOW}Translatio: {CURRENCY_LONG}{WHITE} / {RED}Expensum: {CURRENCY_LONG} +STR_MESSAGE_ESTIMATED_COST :{WHITE}Pretium Aestimatum: {CURRENCY_LONG} +STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Reditus Aestimatus: {CURRENCY_LONG} + +# Saveload messages +STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Adhuc in servando,{}maneas usque ad terminum! +STR_ERROR_AUTOSAVE_FAILED :{WHITE}Autoservare defecit +STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Non poterat discum legere +STR_ERROR_GAME_SAVE_FAILED :{WHITE}Servare Ludum Defecit{}{STRING} +STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}Non poterat fasciculum delere +STR_ERROR_GAME_LOAD_FAILED :{WHITE}Legere Ludum Defecit{}{STRING} +STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Mendum internum: {STRING} +STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :Ludus corruptus - {STRING} +STR_GAME_SAVELOAD_ERROR_TOO_NEW_SAVEGAME :Ludus servatus est in editione noviore +STR_GAME_SAVELOAD_ERROR_FILE_NOT_READABLE :Fasciculus non legibilis est +STR_GAME_SAVELOAD_ERROR_FILE_NOT_WRITEABLE :Fasciculus non scriptabilis est +STR_GAME_SAVELOAD_ERROR_DATA_INTEGRITY_CHECK_FAILED :Integreitatem datorum collegere defecit +STR_GAME_SAVELOAD_NOT_AVAILABLE : +STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}Ludus servatus est in editione sine transviariis raedis. Omnes transviariae raedae remotae sunt + +# Map generation messages +STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Creatio tabulae constita...{}... nulli loci oppidis idonei +STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... nullum adest oppidum in hoc scaenario + +STR_ERROR_PNGMAP :{WHITE}Non potest legere ex PNG... +STR_ERROR_PNGMAP_FILE_NOT_FOUND :{WHITE}... fasciculus non inventus +STR_ERROR_PNGMAP_IMAGE_TYPE :{WHITE}... non poterat convertere typum imaginis. 8 vel 24-bit PNG necesse est +STR_ERROR_PNGMAP_MISC :{WHITE}... aliquid defecit (fortasse fasciculus corruptus) + +STR_ERROR_BMPMAP :{WHITE}Non potest legere ex BMP... +STR_ERROR_BMPMAP_IMAGE_TYPE :{WHITE}... non poterat convertere typum imaginis + +STR_ERROR_HEIGHTMAP_TOO_LARGE :{WHITE}... imago nimis magna + +STR_WARNING_HEIGHTMAP_SCALE_CAPTION :{WHITE}Admonitio magnitudinis +STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Non bene censetur nimis mutare magnitudinem tabulae. Visne pergere? + +# Soundset messages +STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Modo fundamentum sonicum substitutum repertum est. Si vis sonos audire, impone verum fundamentum sonicum ex inventario interretiale + +# Screenshot related messages +STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Imago conspectus ingens +STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Imago conspectus resolutionem {COMMA} x {COMMA} habebit. Forsitan diu erit in imaginem faciendo. Visne pergere? + +STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Imago servata est nomine '{STRING}' +STR_ERROR_SCREENSHOT_FAILED :{WHITE}Creatio imaginis defecit! + +# Error message titles +STR_ERROR_MESSAGE_CAPTION :{YELLOW}Nuntium +STR_ERROR_MESSAGE_CAPTION_OTHER_COMPANY :{YELLOW}{STRING} affert nuntium + +# Generic construction errors +STR_ERROR_OFF_EDGE_OF_MAP :{WHITE}Extra tabulam est +STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP :{WHITE}Nimis propinquus est fini tabulae +STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Pecunia deest - {CURRENCY_LONG} poscitur +STR_ERROR_FLAT_LAND_REQUIRED :{WHITE}Terra plana necesse est +STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION :{WHITE}Terra prave acclivis est +STR_ERROR_CAN_T_DO_THIS :{WHITE}Non licet... +STR_ERROR_BUILDING_MUST_BE_DEMOLISHED :{WHITE}Aedificum oportet destructum esse +STR_ERROR_CAN_T_CLEAR_THIS_AREA :{WHITE}Non licet locum vacuefacere... +STR_ERROR_SITE_UNSUITABLE :{WHITE}... situs non idoneus +STR_ERROR_ALREADY_BUILT :{WHITE}... iam structum +STR_ERROR_OWNED_BY :{WHITE}... possessus a {STRING} +STR_ERROR_AREA_IS_OWNED_BY_ANOTHER :{WHITE}... situs ab alia societate possessus +STR_ERROR_TERRAFORM_LIMIT_REACHED :{WHITE}... finis plasmationis contingitur +STR_ERROR_CLEARING_LIMIT_REACHED :{WHITE}... finis tegulas vacuefaciendi contingitur +STR_ERROR_TREE_PLANT_LIMIT_REACHED :{WHITE}... finis arbores serendi contingitur +STR_ERROR_NAME_MUST_BE_UNIQUE :{WHITE}Oportet nomen unicum esse +STR_ERROR_GENERIC_OBJECT_IN_THE_WAY :{WHITE}{1:STRING} obstat +STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Non licet ludo intermisso + +# Local authority errors +STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}{TOWN} auctoritas vicinalis vetat +STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}{TOWN} auctoritas vicinalis alium aeroportum in hoc oppido struere vetat +STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}{TOWN} auctoritas vicinalis alium aeroportum struere vetat soniti causa +STR_ERROR_BRIBE_FAILED :{WHITE}Largitio tua animadversa est ab inquisitore regionale! + +# Levelling errors +STR_ERROR_CAN_T_RAISE_LAND_HERE :{WHITE}Non licet hanc terram tollere... +STR_ERROR_CAN_T_LOWER_LAND_HERE :{WHITE}Non licet hanc terram inclinere... +STR_ERROR_CAN_T_LEVEL_LAND_HERE :{WHITE}Non licet hanc terram levigare... +STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Cuniculus fractus esset +STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... iam ad maris aequor est +STR_ERROR_TOO_HIGH :{WHITE}... nimis alta est +STR_ERROR_ALREADY_LEVELLED :{WHITE}... iam plana est +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Postea pons supernus nimis altus sit. + +# Company related errors +STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Non licet societatem renominare... +STR_ERROR_CAN_T_CHANGE_PRESIDENT :{WHITE}Non licet praesidem renominare... + +STR_ERROR_MAXIMUM_PERMITTED_LOAN :{WHITE}... creditum maximum est {CURRENCY_LONG} +STR_ERROR_CAN_T_BORROW_ANY_MORE_MONEY :{WHITE}Non licet plurem pecuniae mutuari... +STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... non est creditum solvendum +STR_ERROR_CURRENCY_REQUIRED :{WHITE}... {CURRENCY_LONG} poscitur +STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Non licet creditum reddere... +STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}Non licet pecuniam mutuam largiri... +STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Non licet societatem emere... +STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Non licet sedem societatis struere... +STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}Non licet quadrantem sortium huius societatis emere... +STR_ERROR_CAN_T_SELL_25_SHARE_IN :{WHITE}Non licet quadrantem sortium huius societatis vendere... +STR_ERROR_PROTECTED :{WHITE}Nondum licet sortes societatis mercari... + +# Town related errors +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Non licet oppida condi +STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Non licet oppidum renominare... +STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Non licet oppidum condere hic... +STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Non licet augere oppidum... +STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... nimis prope finem tabulae +STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... nimis prope aliud oppidum +STR_ERROR_TOO_MANY_TOWNS :{WHITE}... nimis oppida adsunt +STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... plus spatium tabulae deest +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Oppidum non vias faciet. Potest sinere vias facere in Electionibus->Circumiecta->Oppida +STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Constructio viaria agitur +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Non licet oppidum delere...{}Statio receptaculumve est oppido sive non licet tegulam oppidi removere +STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... non est locus effigiei idoneus in medio oppidi + +# Industry related errors +STR_ERROR_TOO_MANY_INDUSTRIES :{WHITE}... nimis industriae adsunt +STR_ERROR_CAN_T_GENERATE_INDUSTRIES :{WHITE}Non licet industrias condere... +STR_ERROR_CAN_T_BUILD_HERE :{WHITE}Non licet {STRING.acc} hic strui... +STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY :{WHITE}Non licet industriam huius typi hic struere... +STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... nimis prope aliam industriam +STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... oportet oppidum conditum esse +STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... modo semel per oppidum licet strui +STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... modo in oppidis quae plures quam 1200 incolas habent licet strui +STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... modo in silvis pluvialibus licet strui +STR_ERROR_CAN_ONLY_BE_BUILT_IN_DESERT :{WHITE}... modo in desertis licet strui +STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... modo in oppidis licet strui (in locis aedificiorum) +STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... modo apud media oppidorum licet strui +STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... modo in locis humilibus licet strui +STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... modo apud fines tabulae licet strui +STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... modo licet silvas struere supra lineam nivis +STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... modo supra lineam nivis licet strui +STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... modo infra lineam nivis licet strui + +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nulli loci idonei erat ad industrias '{STRING}' construendas +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Muta parametra tabulam generandi ut melior tabula habeas + +# Station construction related errors +STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Non licet stationem ferriviariam hic struere... +STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Non licet stationem laophoricam hic struere... +STR_ERROR_CAN_T_BUILD_TRUCK_STATION :{WHITE}Non licet stationem autoplaustricam hic struere... +STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION :{WHITE}Non licet stationem transviariam vectoriam hic struere... +STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION :{WHITE}Non licet stationem transviariam onerariam hic struere... +STR_ERROR_CAN_T_BUILD_DOCK_HERE :{WHITE}Non licet navale hic struere... +STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Non licet aeroportum hic struere... + +STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Apposita est pluribus stationibus +STR_ERROR_STATION_TOO_SPREAD_OUT :{WHITE}... statio nimis strata +STR_ERROR_TOO_MANY_STATIONS_LOADING :{WHITE}Nimis stationes adsunt +STR_ERROR_TOO_MANY_STATION_SPECS :{WHITE}Nimis partes stationum ferriviariarum adsunt +STR_ERROR_TOO_MANY_BUS_STOPS :{WHITE}Nimis stationes laophoricae adsunt +STR_ERROR_TOO_MANY_TRUCK_STOPS :{WHITE}Nimis stationes autoplaustricae adsunt +STR_ERROR_TOO_CLOSE_TO_ANOTHER_STATION :{WHITE}Nimis prope aliam stationem +STR_ERROR_TOO_CLOSE_TO_ANOTHER_DOCK :{WHITE}Nimis prope aliud navale +STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Nimis prope alium aeroportum +STR_ERROR_CAN_T_RENAME_STATION :{WHITE}Non licet stationem renominare... +STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... via oppido est +STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... viae directio non convenit +STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... stationi perviae non licet esse curva +STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... stationi perviae non licet compita habere + +# Station destruction related errors +STR_ERROR_CAN_T_REMOVE_PART_OF_STATION :{WHITE}Non licet partem stationis removere... +STR_ERROR_MUST_REMOVE_RAILWAY_STATION_FIRST :{WHITE}Stationem ferriviariam removere necesse est +STR_ERROR_CAN_T_REMOVE_BUS_STATION :{WHITE}Non licet stationem laophoricam removere... +STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Non licet stationem autoplaustricam removere... +STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Non licet stationem transviariam vectoria removere... +STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Non licet stationem transviariam oneraria removere... +STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Stationem viariam removere necesse est +STR_ERROR_THERE_IS_NO_STATION :{WHITE}... non est statio + +STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}Necesse est stationem ferriviariam destruere +STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}Necesse est stationem laophoricam destruere +STR_ERROR_MUST_DEMOLISH_TRUCK_STATION_FIRST :{WHITE}Necesse est stationem autoplaustricam destruere +STR_ERROR_MUST_DEMOLISH_PASSENGER_TRAM_STATION_FIRST :{WHITE}Necesse est stationem transviariam vectoria destruere +STR_ERROR_MUST_DEMOLISH_CARGO_TRAM_STATION_FIRST :{WHITE}Necesse est stationem transviariam oneraria destruere +STR_ERROR_MUST_DEMOLISH_DOCK_FIRST :{WHITE}Necesse est navale destruere +STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Necesse est aeroportum destruere + +# Waypoint related errors +STR_ERROR_WAYPOINT_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Appositus est pluribus quam uni interlocis +STR_ERROR_TOO_CLOSE_TO_ANOTHER_WAYPOINT :{WHITE}Nimis prope alium interlocum + +STR_ERROR_CAN_T_BUILD_TRAIN_WAYPOINT :{WHITE}Non licet interlocum ferriviarium hic struere... +STR_ERROR_CAN_T_POSITION_BUOY_HERE :{WHITE}Non licet signum monitorium huc ponere... +STR_ERROR_CAN_T_CHANGE_WAYPOINT_NAME :{WHITE}Non licet interlocum renominare... + +STR_ERROR_CAN_T_REMOVE_TRAIN_WAYPOINT :{WHITE}Non licet interlocum removere... +STR_ERROR_MUST_REMOVE_RAILWAYPOINT_FIRST :{WHITE}Necesse est interlocum ferriviarium removere +STR_ERROR_BUOY_IN_THE_WAY :{WHITE}... signum monitorium obstat +STR_ERROR_BUOY_IS_IN_USE :{WHITE}... signum monitorium ab alia societate usum + +# Depot related errors +STR_ERROR_CAN_T_BUILD_TRAIN_DEPOT :{WHITE}Non licet receptaculum traminum hic struere... +STR_ERROR_CAN_T_BUILD_ROAD_DEPOT :{WHITE}Non licet receptaculum viarium hic struere... +STR_ERROR_CAN_T_BUILD_TRAM_DEPOT :{WHITE}Non licet receptaculum transviarium hic struere... +STR_ERROR_CAN_T_BUILD_SHIP_DEPOT :{WHITE}Non licet receptaculum navium hic struere... + +STR_ERROR_CAN_T_RENAME_DEPOT :{WHITE}Non licet receptaculum renominare... + +STR_ERROR_TRAIN_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... oportet constitum esse in receptaculo +STR_ERROR_ROAD_VEHICLE_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... oportet constitum esse in receptaculo +STR_ERROR_SHIP_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... oportet constitam esse in receptaculo +STR_ERROR_AIRCRAFT_MUST_BE_STOPPED_INSIDE_HANGAR :{WHITE}... oportet constitum esse in tugurio + +STR_ERROR_TRAINS_CAN_ONLY_BE_ALTERED_INSIDE_A_DEPOT :{WHITE}Commutare tramen licet modo dum manet in receptaculo +STR_ERROR_TRAIN_TOO_LONG :{WHITE}Tramen nimis longum +STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE :{WHITE}Non licet vehiculum reflectere... +STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}... constat ex pluribus unitatibus +STR_ERROR_INCOMPATIBLE_RAIL_TYPES :Typi ferriviarum impares + +STR_ERROR_CAN_T_MOVE_VEHICLE :{WHITE}Non licet vehiculum movere... +STR_ERROR_REAR_ENGINE_FOLLOW_FRONT :{WHITE}Hamaxa postrema semper hamaxam primam comitat +STR_ERROR_UNABLE_TO_FIND_ROUTE_TO :{WHITE}Non potest iter ad receptaculum invenire +STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Non potest receptaculum invenire + +STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Typus receptaculi impar + +# Autoreplace related errors +STR_ERROR_TRAIN_TOO_LONG_AFTER_REPLACEMENT :{WHITE}{VEHICLE} nimis long(G us a um) est post commutationem +STR_ERROR_AUTOREPLACE_NOTHING_TO_DO :{WHITE}Nullae regulae automutandi/autoredimendi +STR_ERROR_AUTOREPLACE_MONEY_LIMIT :(finis pecuniae) + +# Rail construction errors +STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION :{WHITE}Compositio astariorum impossibilis +STR_ERROR_MUST_REMOVE_SIGNALS_FIRST :{WHITE}Necesse est signalia delere +STR_ERROR_NO_SUITABLE_RAILROAD_TRACK :{WHITE}Nulla astaria idonea +STR_ERROR_MUST_REMOVE_RAILROAD_TRACK :{WHITE}Necesse est ferriviam removere +STR_ERROR_CROSSING_ON_ONEWAY_ROAD :{WHITE}Via est monodromus vel obstructa +STR_ERROR_CROSSING_DISALLOWED :{WHITE}Non licet huic typo ferriviae habere transitus +STR_ERROR_CAN_T_BUILD_SIGNALS_HERE :{WHITE}Non licet signalia hic struere... +STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK :{WHITE}Non licet ferriviam hic struere... +STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK :{WHITE}Non licet ferriviam removere hic... +STR_ERROR_CAN_T_REMOVE_SIGNALS_FROM :{WHITE}Non licet signalia removere hic... +STR_ERROR_SIGNAL_CAN_T_CONVERT_SIGNALS_HERE :{WHITE}Non licet signalia convertere hic... +STR_ERROR_THERE_IS_NO_RAILROAD_TRACK :{WHITE}... nulla adest ferrivia +STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}... nulla adsunt signalia + +STR_ERROR_CAN_T_CONVERT_RAIL :{WHITE}Non licet typum ferriviae convertere hic... + +# Road construction errors +STR_ERROR_MUST_REMOVE_ROAD_FIRST :{WHITE}Necesse est viam removere +STR_ERROR_ONEWAY_ROADS_CAN_T_HAVE_JUNCTION :{WHITE}... monodromis non licet compita habere +STR_ERROR_CAN_T_BUILD_ROAD_HERE :{WHITE}Non licet viam hic struere... +STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE :{WHITE}Non licet ferriviam stratariam hic struere... +STR_ERROR_CAN_T_REMOVE_ROAD_FROM :{WHITE}Non licet viam removere hic... +STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}Non licet ferriviam stratariam removere hic... +STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... nullae adsunt viae +STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... nullae adsunt ferriviae stratariae + +# Waterway construction errors +STR_ERROR_CAN_T_BUILD_CANALS :{WHITE}Non licet canales hic struere... +STR_ERROR_CAN_T_BUILD_LOCKS :{WHITE}Non licet cataractas hic struere... +STR_ERROR_CAN_T_PLACE_RIVERS :{WHITE}Non licet fluvios hic ponere... +STR_ERROR_MUST_BE_BUILT_ON_WATER :{WHITE}... oportet supra mare situm esse +STR_ERROR_CAN_T_BUILD_ON_WATER :{WHITE}... non licet in aqua struere +STR_ERROR_CAN_T_BUILD_ON_SEA :{WHITE}... non licet in alto struere +STR_ERROR_CAN_T_BUILD_ON_CANAL :{WHITE}... non licet in canale struere +STR_ERROR_CAN_T_BUILD_ON_RIVER :{WHITE}... non licet in flucio struere +STR_ERROR_MUST_DEMOLISH_CANAL_FIRST :{WHITE}Necesse est canalem removere +STR_ERROR_CAN_T_BUILD_AQUEDUCT_HERE :{WHITE}Non licet aquae ductum hic struere... + +# Tree related errors +STR_ERROR_TREE_ALREADY_HERE :{WHITE}... arbor iam adest +STR_ERROR_TREE_WRONG_TERRAIN_FOR_TREE_TYPE :{WHITE}... terra non convenit huic arboris typo +STR_ERROR_CAN_T_PLANT_TREE_HERE :{WHITE}Non licet hic arbores serere... + +# Bridge related errors +STR_ERROR_CAN_T_BUILD_BRIDGE_HERE :{WHITE}Non licet pontem hic struere... +STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Necesse est pontem destruere +STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Non licet initium et terminum in eodem loco esse +STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Non sunt eadem altitudo capitibus pontis +STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Pons nimis humilis est huic terrae +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Pons nimis altus est huic terrae +STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Necesse est initium et terminum in linea esse +STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... fines pontis oportet ambos in terra esse +STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... pons nimis longus +STR_ERROR_BRIDGE_THROUGH_MAP_BORDER :{WHITE}Pons extra tabulam finiatur + +# Tunnel related errors +STR_ERROR_CAN_T_BUILD_TUNNEL_HERE :{WHITE}Non licet cuniculus hic strui... +STR_ERROR_SITE_UNSUITABLE_FOR_TUNNEL :{WHITE}Situs non idoneus ad cuniculi portam +STR_ERROR_MUST_DEMOLISH_TUNNEL_FIRST :{WHITE}Necesse est cuniculum destruere +STR_ERROR_ANOTHER_TUNNEL_IN_THE_WAY :{WHITE}Alius cuniculus obstat +STR_ERROR_TUNNEL_THROUGH_MAP_BORDER :{WHITE}Cuniculus extra tabulam finiatur +STR_ERROR_UNABLE_TO_EXCAVATE_LAND :{WHITE}Non licet terram cuniculi finis plasmare +STR_ERROR_TUNNEL_TOO_LONG :{WHITE}... cuniculus nimis longus + +# Object related errors +STR_ERROR_TOO_MANY_OBJECTS :{WHITE}... nimis ornamenta adsunt +STR_ERROR_CAN_T_BUILD_OBJECT :{WHITE}Non licet ornamentum struere... +STR_ERROR_OBJECT_IN_THE_WAY :{WHITE}Ornamentum obstat +STR_ERROR_COMPANY_HEADQUARTERS_IN :{WHITE}... sedes societatis obstat +STR_ERROR_CAN_T_PURCHASE_THIS_LAND :{WHITE}Non licet hanc terram emere... +STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... nam posessor iam es! + +# Group related errors +STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Non licet gregem creare... +STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Non licet gregem delere... +STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Non licet gregem renominare... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Non licet gregem parentem eligere... +STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Non licet omnia vehicula e grege removere... +STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Non licet vehiculum huic gregi addere... +STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Non licet vehicula communia gregi addere... + +# Generic vehicle errors +STR_ERROR_TRAIN_IN_THE_WAY :{WHITE}Tramen obstat +STR_ERROR_ROAD_VEHICLE_IN_THE_WAY :{WHITE}Vehiculum viarium obstat +STR_ERROR_SHIP_IN_THE_WAY :{WHITE}Navis obstat +STR_ERROR_AIRCRAFT_IN_THE_WAY :{WHITE}Aeroplanum obstat + +STR_ERROR_CAN_T_REFIT_TRAIN :{WHITE}Non licet tramen reficere... +STR_ERROR_CAN_T_REFIT_ROAD_VEHICLE :{WHITE}Non licet vehiculum reficere... +STR_ERROR_CAN_T_REFIT_SHIP :{WHITE}Non licet navem reficere... +STR_ERROR_CAN_T_REFIT_AIRCRAFT :{WHITE}Non licet aeroplanum reficere... + +STR_ERROR_CAN_T_RENAME_TRAIN :{WHITE}Non licet tramen nominare... +STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE :{WHITE}Non licet vehiculum nominare... +STR_ERROR_CAN_T_RENAME_SHIP :{WHITE}Non licet navem nominare... +STR_ERROR_CAN_T_RENAME_AIRCRAFT :{WHITE}Non licet aeroplanum nominare... + +STR_ERROR_CAN_T_STOP_START_TRAIN :{WHITE}Non licet tramen sistere incohareve... +STR_ERROR_CAN_T_STOP_START_ROAD_VEHICLE :{WHITE}Non licet vehiculum viarium sistere incohareve... +STR_ERROR_CAN_T_STOP_START_SHIP :{WHITE}Non licet navem sistere incohareve... +STR_ERROR_CAN_T_STOP_START_AIRCRAFT :{WHITE}Non licet aeroplanum sistere incohareve... + +STR_ERROR_CAN_T_SEND_TRAIN_TO_DEPOT :{WHITE}Non licet mittere tramen ad receptaculum... +STR_ERROR_CAN_T_SEND_ROAD_VEHICLE_TO_DEPOT :{WHITE}Non licet mittere vehiculum ad receptaculum... +STR_ERROR_CAN_T_SEND_SHIP_TO_DEPOT :{WHITE}Non licet mittere navem d receptaculum... +STR_ERROR_CAN_T_SEND_AIRCRAFT_TO_HANGAR :{WHITE}Non licet mittere aeroplanum ad tugurium... + +STR_ERROR_CAN_T_BUY_TRAIN :{WHITE}Non licet emere vehiculum ferriviarium... +STR_ERROR_CAN_T_BUY_ROAD_VEHICLE :{WHITE}Non licet emere vehiculum viarium... +STR_ERROR_CAN_T_BUY_SHIP :{WHITE}Non licet emere navem... +STR_ERROR_CAN_T_BUY_AIRCRAFT :{WHITE}Non licet emere aeroplanum... + +STR_ERROR_CAN_T_RENAME_TRAIN_TYPE :{WHITE}Non licet renominare traminis typum... +STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE_TYPE :{WHITE}Non licet renominare vehiculi viarii typum... +STR_ERROR_CAN_T_RENAME_SHIP_TYPE :{WHITE}Non licet renominare navis typum... +STR_ERROR_CAN_T_RENAME_AIRCRAFT_TYPE :{WHITE}Non licet renominare aeroplani typum.. + +STR_ERROR_CAN_T_SELL_TRAIN :{WHITE}Non licet vendere vehiculum ferriviarium... +STR_ERROR_CAN_T_SELL_ROAD_VEHICLE :{WHITE}Non licet vendere vehiculum viarium... +STR_ERROR_CAN_T_SELL_SHIP :{WHITE}Non licet vendere navem... +STR_ERROR_CAN_T_SELL_AIRCRAFT :{WHITE}Non licet vendere aeroplanum... + +STR_ERROR_RAIL_VEHICLE_NOT_AVAILABLE :{WHITE}Vehiculum non parabile est +STR_ERROR_ROAD_VEHICLE_NOT_AVAILABLE :{WHITE}Vehiculum non parabile est +STR_ERROR_SHIP_NOT_AVAILABLE :{WHITE}Navis non parabilis est +STR_ERROR_AIRCRAFT_NOT_AVAILABLE :{WHITE}Aeroplanum non parabile est + +STR_ERROR_TOO_MANY_VEHICLES_IN_GAME :{WHITE}Nimis vehicula adsunt in ludo +STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Non licet intervallum ministrationis mutare... + +STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vehiculum est destructum! + +STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL :{WHITE}Nulla vehicula omnino parabilia erunt +STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Muta configurationem NewGRF tuam +STR_ERROR_NO_VEHICLES_AVAILABLE_YET :{WHITE}Nulla vehicula adhuc parabilia sunt +STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}Incipe ludum post {DATE_SHORT} sive eligere idoneum NewGRF quod vehicula antiqua parat + +# Specific vehicle errors +STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Non licet tramen impellere post signale... +STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Non licet tramini cursum reflectere... +STR_ERROR_TRAIN_START_NO_POWER :Nulla potestas hamaxosticho est + +STR_ERROR_CAN_T_MAKE_ROAD_VEHICLE_TURN :{WHITE}Non licet vehiculo viario cursum reflectere... + +STR_ERROR_AIRCRAFT_IS_IN_FLIGHT :{WHITE}Aeroplanum adhuc volat + +# Order related errors +STR_ERROR_NO_MORE_SPACE_FOR_ORDERS :{WHITE}Non est spatium iussorum +STR_ERROR_TOO_MANY_ORDERS :{WHITE}Nimium iussa +STR_ERROR_CAN_T_INSERT_NEW_ORDER :{WHITE}Non licet novum iussum addere... +STR_ERROR_CAN_T_DELETE_THIS_ORDER :{WHITE}Non licet hoc iussum delere... +STR_ERROR_CAN_T_MODIFY_THIS_ORDER :{WHITE}Non licet hoc iussum mutare... +STR_ERROR_CAN_T_MOVE_THIS_ORDER :{WHITE}Non licet hoc iussum movere... +STR_ERROR_CAN_T_SKIP_ORDER :{WHITE}Non licet transilire iussum currens... +STR_ERROR_CAN_T_SKIP_TO_ORDER :{WHITE}Non licet salire ad iussum electum... +STR_ERROR_CAN_T_COPY_SHARE_ORDER :{WHITE}... vehiculum non potest ire ad omnes stationes +STR_ERROR_CAN_T_ADD_ORDER :{WHITE}... vehiculum non potest ire ad illam stationem +STR_ERROR_CAN_T_ADD_ORDER_SHARED :{WHITE}... vehiculum quod hoc iussum communicat non potest ire ad illam stationem + +STR_ERROR_CAN_T_SHARE_ORDER_LIST :{WHITE}Non licet iussa communicare... +STR_ERROR_CAN_T_STOP_SHARING_ORDER_LIST :{WHITE}Non licet desinere communicationem iussorum... +STR_ERROR_CAN_T_COPY_ORDER_LIST :{WHITE}Non licet iussa transcribere... +STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... nimis procul a destinato priore +STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... aeroplano non est satis distantia volatus + +# Timetable related errors +STR_ERROR_CAN_T_TIMETABLE_VEHICLE :{WHITE}Non licet vehiculo dare horarium... +STR_ERROR_TIMETABLE_ONLY_WAIT_AT_STATIONS :{WHITE}Vehicula modo in stationibus possunt manere +STR_ERROR_TIMETABLE_NOT_STOPPING_HERE :{WHITE}Vehiculum non consistit huic stationi + +# Sign related errors +STR_ERROR_TOO_MANY_SIGNS :{WHITE}... nimis signa adsunt +STR_ERROR_CAN_T_PLACE_SIGN_HERE :{WHITE}Non licet signum ponere... +STR_ERROR_CAN_T_CHANGE_SIGN_NAME :{WHITE}Non licet signum renominare... +STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Non licet signum delere... + +# Translatable comment for OpenTTD's desktop shortcut +STR_DESKTOP_SHORTCUT_COMMENT :Ludus computatralis simulatorius cuius fundamentum est Transport Tycoon Deluxe + +# Translatable descriptions in media/baseset/*.ob* files +STR_BASEGRAPHICS_DOS_DESCRIPTION :Graphica ex editione originale Transport Tycoon Deluxe DOS. +STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Graphica ex editione originale Transport Tycoon Deluxe DOS (Germanica). +STR_BASEGRAPHICS_WIN_DESCRIPTION :Graphica ex editione originale Transport Tycoon Deluxe Windows. +STR_BASESOUNDS_DOS_DESCRIPTION :Soni ex editione originale Transport Tycoon Deluxe DOS. +STR_BASESOUNDS_WIN_DESCRIPTION :Soni ex editione originale Transport Tycoon Deluxe Windows. +STR_BASESOUNDS_NONE_DESCRIPTION :Sarcina sonorum sine ullis sonis. +STR_BASEMUSIC_WIN_DESCRIPTION :Musica ex editione originale Transport Tycoon Deluxe Windows. +STR_BASEMUSIC_NONE_DESCRIPTION :Sarcina musicae sine ulla musica. + +##id 0x2000 +# Town building names +STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Altum multizonium officinarum +STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_1 :Multizonium officinarum +STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Parva Insula +STR_TOWN_BUILDING_NAME_CHURCH_1 :Ecclesia +STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :Magnum multizonium officinarum +STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Domus urbanae +STR_TOWN_BUILDING_NAME_HOTEL_1 :Deversorium +STR_TOWN_BUILDING_NAME_STATUE_1 :Effigies +STR_TOWN_BUILDING_NAME_FOUNTAIN_1 :Fons +STR_TOWN_BUILDING_NAME_PARK_1 :Hortus +STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_2 :Multizonium officinarum +STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_1 :Tabernae et officinae +STR_TOWN_BUILDING_NAME_MODERN_OFFICE_BUILDING_1 :Modernum multizonium officinarum +STR_TOWN_BUILDING_NAME_WAREHOUSE_1 :Horreum +STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_3 :Multizonium officinarum +STR_TOWN_BUILDING_NAME_STADIUM_1 :Stadium +STR_TOWN_BUILDING_NAME_OLD_HOUSES_1 :Domus Antiquae +STR_TOWN_BUILDING_NAME_COTTAGES_1 :Domunculae +STR_TOWN_BUILDING_NAME_HOUSES_1 :Domus +STR_TOWN_BUILDING_NAME_FLATS_1 :Insula +STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_2 :Altum multizonium officinarum +STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_2 :Tabernae et officinae +STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_3 :Tabernae et officinae +STR_TOWN_BUILDING_NAME_THEATER_1 :Theatrum +STR_TOWN_BUILDING_NAME_STADIUM_2 :Stadium +STR_TOWN_BUILDING_NAME_OFFICES_1 :Officinae +STR_TOWN_BUILDING_NAME_HOUSES_2 :Domus +STR_TOWN_BUILDING_NAME_CINEMA_1 :Cinemateum +STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1 :Emporium +STR_TOWN_BUILDING_NAME_IGLOO_1 :Iglu +STR_TOWN_BUILDING_NAME_TEPEES_1 :Tipi +STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1 :Domus Urceolaris +STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Argentaria Porcellina + +##id 0x4800 +# industry names +STR_INDUSTRY_NAME_COAL_MINE :{G=f}Carbonifodina +STR_INDUSTRY_NAME_COAL_MINE.gen :{G=f}carbonifodinae +STR_INDUSTRY_NAME_COAL_MINE.acc :{G=f}Carbonifodinam +STR_INDUSTRY_NAME_COAL_MINE.abl :{G=f}Carbonifodina +STR_INDUSTRY_NAME_POWER_STATION :{G=f}Electrificina +STR_INDUSTRY_NAME_POWER_STATION.gen :{G=f}electrificinae +STR_INDUSTRY_NAME_POWER_STATION.acc :{G=f}Electrificinam +STR_INDUSTRY_NAME_POWER_STATION.abl :{G=f}Electrificina +STR_INDUSTRY_NAME_SAWMILL :{G=f}Serraria +STR_INDUSTRY_NAME_SAWMILL.gen :{G=f}serrariae +STR_INDUSTRY_NAME_SAWMILL.acc :{G=f}Serrariam +STR_INDUSTRY_NAME_SAWMILL.abl :{G=f}Serraria +STR_INDUSTRY_NAME_FOREST :{G=f}Silva +STR_INDUSTRY_NAME_FOREST.gen :{G=f}silvae +STR_INDUSTRY_NAME_FOREST.acc :{G=f}Silvam +STR_INDUSTRY_NAME_FOREST.abl :{G=f}Silva +STR_INDUSTRY_NAME_OIL_REFINERY :{G=n}Ergasterium Petrolearium +STR_INDUSTRY_NAME_OIL_REFINERY.gen :{G=n}ergasterii petrolearii +STR_INDUSTRY_NAME_OIL_REFINERY.acc :{G=n}Ergasterium Petrolearium +STR_INDUSTRY_NAME_OIL_REFINERY.abl :{G=n}Ergasterio Petroleario +STR_INDUSTRY_NAME_OIL_RIG :{G=m}Suggestus Petrolearius +STR_INDUSTRY_NAME_OIL_RIG.gen :{G=m}suggestus petrolearii +STR_INDUSTRY_NAME_OIL_RIG.acc :{G=m}Suggestum Petrolearium +STR_INDUSTRY_NAME_OIL_RIG.abl :{G=m}Suggestu Petroleario +STR_INDUSTRY_NAME_FACTORY :{G=f}Fabrica +STR_INDUSTRY_NAME_FACTORY.gen :{G=f}fabricae +STR_INDUSTRY_NAME_FACTORY.acc :{G=f}Fabricam +STR_INDUSTRY_NAME_FACTORY.abl :{G=f}Fabrica +STR_INDUSTRY_NAME_PRINTING_WORKS :{G=n}Impressorium +STR_INDUSTRY_NAME_PRINTING_WORKS.gen :{G=n}impressorii +STR_INDUSTRY_NAME_PRINTING_WORKS.acc :{G=n}Impressorium +STR_INDUSTRY_NAME_PRINTING_WORKS.abl :{G=n}Impressorio +STR_INDUSTRY_NAME_STEEL_MILL :{G=f}Fabrica Chalybeia +STR_INDUSTRY_NAME_STEEL_MILL.gen :{G=f}fabricae chalybeiae +STR_INDUSTRY_NAME_STEEL_MILL.acc :{G=f}Fabricam Chalybeiam +STR_INDUSTRY_NAME_STEEL_MILL.abl :{G=f}Fabrica Chalybeia +STR_INDUSTRY_NAME_FARM :{G=m}Fundus +STR_INDUSTRY_NAME_FARM.gen :{G=m}fundi +STR_INDUSTRY_NAME_FARM.acc :{G=m}Fundum +STR_INDUSTRY_NAME_FARM.abl :{G=m}Fundo +STR_INDUSTRY_NAME_COPPER_ORE_MINE :{G=f}Aerifodina +STR_INDUSTRY_NAME_COPPER_ORE_MINE.gen :{G=f}aerifodinae +STR_INDUSTRY_NAME_COPPER_ORE_MINE.acc :{G=f}Aerifodinam +STR_INDUSTRY_NAME_COPPER_ORE_MINE.abl :{G=f}Aerifodina +STR_INDUSTRY_NAME_OIL_WELLS :{G=mp}Putei Petrolearii +STR_INDUSTRY_NAME_OIL_WELLS.gen :{G=mp}puteorum petroleariorum +STR_INDUSTRY_NAME_OIL_WELLS.acc :{G=mp}Puteos Petrolearios +STR_INDUSTRY_NAME_OIL_WELLS.abl :{G=mp}Puteis Petroleariis +STR_INDUSTRY_NAME_BANK :{G=f}Argentaria +STR_INDUSTRY_NAME_BANK.gen :{G=f}argentariae +STR_INDUSTRY_NAME_BANK.acc :{G=f}Argentariam +STR_INDUSTRY_NAME_BANK.abl :{G=f}Argentaria +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT :{G=f}Fabrica Cibaria +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.gen :{G=f}fabricae cibariae +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.acc :{G=f}Fabricam Cibariam +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.abl :{G=f}Fabrica Cibaria +STR_INDUSTRY_NAME_PAPER_MILL :{G=f}Fabrica Chartaria +STR_INDUSTRY_NAME_PAPER_MILL.gen :{G=f}fabricae chartariae +STR_INDUSTRY_NAME_PAPER_MILL.acc :{G=f}Fabricam Chartariam +STR_INDUSTRY_NAME_PAPER_MILL.abl :{G=f}Fabrica Chartaria +STR_INDUSTRY_NAME_GOLD_MINE :{G=f}Aurifodina +STR_INDUSTRY_NAME_GOLD_MINE.gen :{G=f}aurifodinae +STR_INDUSTRY_NAME_GOLD_MINE.acc :{G=f}Aurifodinam +STR_INDUSTRY_NAME_GOLD_MINE.abl :{G=f}Aurifodina +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC :{G=f}Argentaria +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.gen :{G=f}argentariae +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.acc :{G=f}Argentariam +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.abl :{G=f}Argentaria +STR_INDUSTRY_NAME_DIAMOND_MINE :{G=f}Adamantifodina +STR_INDUSTRY_NAME_DIAMOND_MINE.gen :{G=f}adamantifodinae +STR_INDUSTRY_NAME_DIAMOND_MINE.acc :{G=f}Adamantifodinam +STR_INDUSTRY_NAME_DIAMOND_MINE.abl :{G=f}Adamantifodina +STR_INDUSTRY_NAME_IRON_ORE_MINE :{G=f}Ferrifodina +STR_INDUSTRY_NAME_IRON_ORE_MINE.gen :{G=f}ferrifodinae +STR_INDUSTRY_NAME_IRON_ORE_MINE.acc :{G=f}Ferrifodinam +STR_INDUSTRY_NAME_IRON_ORE_MINE.abl :{G=f}Ferrifodina +STR_INDUSTRY_NAME_FRUIT_PLANTATION :{G=n}Arbustum Fructuarium +STR_INDUSTRY_NAME_FRUIT_PLANTATION.gen :{G=n}arbusti fructuarii +STR_INDUSTRY_NAME_FRUIT_PLANTATION.acc :{G=n}Arbustum Fructuarium +STR_INDUSTRY_NAME_FRUIT_PLANTATION.abl :{G=n}Arbusto Fructuario +STR_INDUSTRY_NAME_RUBBER_PLANTATION :{G=n}Arbustum Gummosum +STR_INDUSTRY_NAME_RUBBER_PLANTATION.gen :{G=n}arbusti gummosi +STR_INDUSTRY_NAME_RUBBER_PLANTATION.acc :{G=n}Arbustum Gummosum +STR_INDUSTRY_NAME_RUBBER_PLANTATION.abl :{G=n}Arbusto Gummoso +STR_INDUSTRY_NAME_WATER_SUPPLY :{G=m}Fons Aquae +STR_INDUSTRY_NAME_WATER_SUPPLY.gen :{G=m}fontis aquae +STR_INDUSTRY_NAME_WATER_SUPPLY.acc :{G=m}Fontem Aquae +STR_INDUSTRY_NAME_WATER_SUPPLY.abl :{G=m}Fonte Aquae +STR_INDUSTRY_NAME_WATER_TOWER :{G=f}Turris Aquaria +STR_INDUSTRY_NAME_WATER_TOWER.gen :{G=f}turris aquariae +STR_INDUSTRY_NAME_WATER_TOWER.acc :{G=f}Turrim Aquariam +STR_INDUSTRY_NAME_WATER_TOWER.abl :{G=f}Turri Aquaria +STR_INDUSTRY_NAME_FACTORY_2 :{G=f}Fabrica +STR_INDUSTRY_NAME_FACTORY_2.gen :{G=f}fabricae +STR_INDUSTRY_NAME_FACTORY_2.acc :{G=f}Fabricam +STR_INDUSTRY_NAME_FACTORY_2.abl :{G=f}Fabrica +STR_INDUSTRY_NAME_FARM_2 :{G=m}Fundus +STR_INDUSTRY_NAME_FARM_2.gen :{G=m}fundi +STR_INDUSTRY_NAME_FARM_2.acc :{G=m}Fundum +STR_INDUSTRY_NAME_FARM_2.abl :{G=m}Fundo +STR_INDUSTRY_NAME_LUMBER_MILL :{G=np}Castra Lignatorum +STR_INDUSTRY_NAME_LUMBER_MILL.gen :{G=np}castrorum lignatorum +STR_INDUSTRY_NAME_LUMBER_MILL.acc :{G=np}Castra Lignatorum +STR_INDUSTRY_NAME_LUMBER_MILL.abl :{G=np}Castris Lignatorum +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :{G=f}Silva Saccari Xylini +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.gen :{G=f}silvae saccari xylini +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.acc :{G=f}Silvam Saccari Xylini +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.abl :{G=f}Silva Saccari Xylini +STR_INDUSTRY_NAME_CANDY_FACTORY :{G=f}Fabrica Bellarica +STR_INDUSTRY_NAME_CANDY_FACTORY.gen :{G=f}fabricae bellaricae +STR_INDUSTRY_NAME_CANDY_FACTORY.acc :{G=f}Fabricam Bellaricam +STR_INDUSTRY_NAME_CANDY_FACTORY.abl :{G=f}Fabrica Bellarica +STR_INDUSTRY_NAME_BATTERY_FARM :{G=m}Fundus Pilarum Electricarum +STR_INDUSTRY_NAME_BATTERY_FARM.gen :{G=m}fundi pilarum electricarum +STR_INDUSTRY_NAME_BATTERY_FARM.acc :{G=m}Fundum Pilarum Electricarum +STR_INDUSTRY_NAME_BATTERY_FARM.abl :{G=m}Fundo Pilarum Electricarum +STR_INDUSTRY_NAME_COLA_WELLS :{G=mp}Putei Colae +STR_INDUSTRY_NAME_COLA_WELLS.gen :{G=mp}puteorum colae +STR_INDUSTRY_NAME_COLA_WELLS.acc :{G=mp}Puteos Colae +STR_INDUSTRY_NAME_COLA_WELLS.abl :{G=mp}Puteis Colae +STR_INDUSTRY_NAME_TOY_SHOP :{G=f}Taberna Ludicrorum +STR_INDUSTRY_NAME_TOY_SHOP.gen :{G=f}tabernae ludicrorum +STR_INDUSTRY_NAME_TOY_SHOP.acc :{G=f}Tabernam Ludicrorum +STR_INDUSTRY_NAME_TOY_SHOP.abl :{G=f}Taberna Ludicrorum +STR_INDUSTRY_NAME_TOY_FACTORY :{G=f}Fabrica Ludicrorum +STR_INDUSTRY_NAME_TOY_FACTORY.gen :{G=f}fabricae ludicrorum +STR_INDUSTRY_NAME_TOY_FACTORY.acc :{G=f}Fabricam Ludicrorum +STR_INDUSTRY_NAME_TOY_FACTORY.abl :{G=f}Fabrica Ludicrorum +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS :{G=mp}Fontes Plasticae +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.gen :{G=mp}fontium plasticae +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.acc :{G=mp}Fontes Plasticae +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.abl :{G=mp}Fontibus Plasticae +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY :{G=f}Fabrica Potionum Carbonatarum +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.gen :{G=f}fabricae potionum carbonatarum +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.acc :{G=f}Fabricam Potionum Carbonatarum +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.abl :{G=f}Fabrica Potionum Carbonatarum +STR_INDUSTRY_NAME_BUBBLE_GENERATOR :{G=n}Generatrum Bullarum +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.gen :{G=n}generatri bullarum +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.acc :{G=n}Generatrum Bullarum +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.abl :{G=n}Generatro Bullarum +STR_INDUSTRY_NAME_TOFFEE_QUARRY :{G=fp}Lapicidinae Sacchari Tosti +STR_INDUSTRY_NAME_TOFFEE_QUARRY.gen :{G=fp}lapicidinarum sacchari tosti +STR_INDUSTRY_NAME_TOFFEE_QUARRY.acc :{G=fp}Lapicidinas Sacchari Tosti +STR_INDUSTRY_NAME_TOFFEE_QUARRY.abl :{G=fp}Lapicidinis Sacchari Tosti +STR_INDUSTRY_NAME_SUGAR_MINE :{G=f}Saccharifodina +STR_INDUSTRY_NAME_SUGAR_MINE.gen :{G=f}saccharifodinae +STR_INDUSTRY_NAME_SUGAR_MINE.acc :{G=f}Saccharifodinam +STR_INDUSTRY_NAME_SUGAR_MINE.abl :{G=f}Saccharifodina + +############ WARNING, using range 0x6000 for strings that are stored in the savegame +############ These strings may never get a new id, or savegames will break! +##id 0x6000 +STR_SV_EMPTY : +STR_SV_UNNAMED :Sine Nomine +STR_SV_TRAIN_NAME :Tramen {COMMA} +STR_SV_ROAD_VEHICLE_NAME :Vehiculum Viarium {COMMA} +STR_SV_SHIP_NAME :Navis {COMMA} +STR_SV_AIRCRAFT_NAME :Aeroplanum {COMMA} + +STR_SV_STNAME :{STRING} +STR_SV_STNAME_NORTH :{STRING} Borealis +STR_SV_STNAME_SOUTH :{STRING} Australis +STR_SV_STNAME_EAST :{STRING} Orientalis +STR_SV_STNAME_WEST :{STRING} Occidentalis +STR_SV_STNAME_CENTRAL :{STRING} Centralis +STR_SV_STNAME_TRANSFER :{STRING} Translatio +STR_SV_STNAME_HALT :{STRING} Mansio +STR_SV_STNAME_VALLEY :{STRING} Valles +STR_SV_STNAME_HEIGHTS :{STRING} Alta +STR_SV_STNAME_WOODS :{STRING} Nemus +STR_SV_STNAME_LAKESIDE :{STRING} Acta +STR_SV_STNAME_EXCHANGE :{STRING} Cambio +STR_SV_STNAME_AIRPORT :{STRING} Aeroportus +STR_SV_STNAME_OILFIELD :{STRING} Oilfield +STR_SV_STNAME_MINES :{STRING} Fodinae +STR_SV_STNAME_DOCKS :{STRING} Navalia +STR_SV_STNAME_BUOY :{STRING} +STR_SV_STNAME_WAYPOINT :{STRING} +##id 0x6020 +STR_SV_STNAME_ANNEXE :{STRING} Annexa +STR_SV_STNAME_SIDINGS :{STRING} Deverticulum +STR_SV_STNAME_BRANCH :{STRING} Ramus +STR_SV_STNAME_UPPER :{STRING} Supera +STR_SV_STNAME_LOWER :{STRING} Infera +STR_SV_STNAME_HELIPORT :{STRING} Heliportus +STR_SV_STNAME_FOREST :{STRING} Silva +STR_SV_STNAME_FALLBACK :{STRING} Statio #{NUM} +############ end of savegame specific region! + +##id 0x8000 +# Vehicle names +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KIRBY_PAUL_TANK_STEAM :Kirby Paul Tank (Vaporaria) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_250_DIESEL :MJS 250 (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_CHOO_CHOO :Ploddyphut Choo-Choo +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_CHOO_CHOO :Powernaut Choo-Choo +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MIGHTYMOVER_CHOO_CHOO :MightyMover Choo-Choo +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_DIESEL :Diseliana Ploddyphut +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_DIESEL :Diseliana Powernaut +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_WILLS_2_8_0_STEAM :Wills 2-8-0 (Vaporaria) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Chaney 'Jubilee' (Vaporaria) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_GINZU_A4_STEAM :Ginzu 'A4' (Vaporaria) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_8P_STEAM :SH '8P' (Vaporaria) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Manley-Morel DMU (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_DASH_DIESEL :'Dash' (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry '25' (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :UU '37' (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Floss '47' (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_4000_DIESEL :CS 4000 (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_2400_DIESEL :CS 2400 (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CENTENNIAL_DIESEL :Centennial (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KELLING_3100_DIESEL :Kelling 3100 (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_TURNER_TURBO_DIESEL :Turner Turbo (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_1000_DIESEL :MJS 1000 (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :SH '125' (Diseliana) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :SH '30' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :SH '40' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :'T.I.M.' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :'AsiaStar' (Electrica) +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PASSENGER_CAR :Currus Vectoralis +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_MAIL_VAN :Currus Cursualis +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COAL_CAR :Plaustrum Carbonarium +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_OIL_TANKER :Cisterna Petrolearia +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_LIVESTOCK_VAN :Currus Pecuarius +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GOODS_VAN :Currus Mercium +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GRAIN_HOPPER :Plaustrum Triticium +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WOOD_TRUCK :Currus Ligni +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_IRON_ORE_HOPPER :Plaustrum Ferrarium +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_STEEL_TRUCK :Currus Chalybeius +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_ARMORED_VAN :Currus Cataphractus +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FOOD_VAN :Currus Cibarius +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PAPER_TRUCK :Currus Chartarius +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COPPER_ORE_HOPPER :Plaustrum Aerarium +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WATER_TANKER :Cisterna Aquaria +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FRUIT_TRUCK :Plaustrum Fructus +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_RUBBER_TRUCK :Plaustrum Gummis +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_SUGAR_TRUCK :Plaustrum Sacchari +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COTTON_CANDY_HOPPER :Plaustrum Sacchari Xylini +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOFFEE_HOPPER :Plaustrum Sacchari Tosti +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BUBBLE_VAN :Currus Bullarum +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COLA_TANKER :Cisterna Colae +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_CANDY_VAN :Currus Bellaricus +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOY_VAN :Currus Ludicralis +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BATTERY_TRUCK :Currus Pilarum Electricarum +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FIZZY_DRINK_TRUCK :Currus Potionum Carbonatarum +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PLASTIC_TRUCK :Currus Plasticarius +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :'X2001' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :'Millennium Z1' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_WIZZOWOW_Z99 :Wizzowow Z99 +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PASSENGER_CAR :Currus Vectoralis +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_MAIL_VAN :Currus Cursualis +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COAL_CAR :Plaustrum Carbonarium +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_OIL_TANKER :Cisterna Petrolearia +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_LIVESTOCK_VAN :Currus Pecuarius +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_GOODS_VAN :Currus Mercium +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_GRAIN_HOPPER :Plaustrum Triticium +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_WOOD_TRUCK :Currus Ligni +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_IRON_ORE_HOPPER :Plaustrum Ferrarium +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_STEEL_TRUCK :Currus Chalybeius +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_ARMORED_VAN :Currus Cataphractus +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FOOD_VAN :Currus Cibarius +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PAPER_TRUCK :Currus Chartarius +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COPPER_ORE_HOPPER :Plaustrum Aerarium +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_WATER_TANKER :Cisterna Aquaria +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FRUIT_TRUCK :Plaustrum Fructus +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_RUBBER_TRUCK :Plaustrum Gummis +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_SUGAR_TRUCK :Plaustrum Sacchari +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COTTON_CANDY_HOPPER :Plaustrum Sacchari Xylini +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOFFEE_HOPPER :Plaustrum Sacchari Tosti +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_BUBBLE_VAN :Currus Bullarum +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COLA_TANKER :Cisterna Colae +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_CANDY_VAN :Currus Bellaricus +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOY_VAN :Currus Ludicralis +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_BATTERY_TRUCK :Currus Pilarum Electricarum +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FIZZY_DRINK_TRUCK :Currus Potionum Carbonatarum +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PLASTIC_TRUCK :Currus Plasticarius +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV1_LEVIATHAN_ELECTRIC :Lev1 'Leviathan' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 'Cyclops' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 'Pegasus' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 'Chimaera' (Electrica) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_WIZZOWOW_ROCKETEER :Wizzowow Rocketeer +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PASSENGER_CAR :Currus Vectoralis +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_MAIL_VAN :Currus Cursualis +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COAL_CAR :Plaustrum Carbonarium +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_OIL_TANKER :Cisterna Petrolearia +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_LIVESTOCK_VAN :Currus Pecuarius +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_GOODS_VAN :Currus Mercium +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_GRAIN_HOPPER :Plaustrum Triticium +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_WOOD_TRUCK :Currus Ligni +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_IRON_ORE_HOPPER :Plaustrum Ferrarium +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_STEEL_TRUCK :Currus Chalybeius +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_ARMORED_VAN :Currus Cataphractus +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_FOOD_VAN :Currus Cibarius +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PAPER_TRUCK :Currus Chartarius +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COPPER_ORE_HOPPER :Plaustrum Aerarium +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_WATER_TANKER :Cisterna Aquaria +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_FRUIT_TRUCK :Plaustrum Fructus +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_RUBBER_TRUCK :Plaustrum Gummis +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_SUGAR_TRUCK :Plaustrum Sacchari +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COTTON_CANDY_HOPPER :Plaustrum Sacchari Xylini +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_TOFFEE_HOPPER :Plaustrum Sacchari Tosti +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_BUBBLE_VAN :Currus Bullarum +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COLA_TANKER :Cisterna Colae +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_CANDY_VAN :Currus Bellaricus +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_TOY_VAN :Currus Ludicralis +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_BATTERY_TRUCK :Currus Pilarum Electricarum +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_FIZZY_DRINK_TRUCK :Currus Potionum Carbonatarum +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PLASTIC_TRUCK :Currus Plasticarius +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_REGAL_BUS :Laophorium MPS Regal +STR_VEHICLE_NAME_ROAD_VEHICLE_HEREFORD_LEOPARD_BUS :Laophorium Hereford Leopard +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_BUS :Laophorium Foster +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_MKII_SUPERBUS :Superlaophorium Foster MkII +STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKI_BUS :Laophorium Ploddyphut MkI +STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKII_BUS :Laophorium Ploddyphut MkII +STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKIII_BUS :Laophorium Ploddyphut MkIII +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_COAL_TRUCK :Autoplaustrum Carbonarium Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_COAL_TRUCK :Autoplaustrum Carbonarium Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_DW_COAL_TRUCK :Autoplaustrum Carbonarium DW +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_MAIL_TRUCK :Autoplaustrum Cursuale MPS +STR_VEHICLE_NAME_ROAD_VEHICLE_REYNARD_MAIL_TRUCK :Autoplaustrum Cursuale Reynard +STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_MAIL_TRUCK :Autoplaustrum Cursuale Perry +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_MAIL_TRUCK :Autoplaustrum Cursuale MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_MAIL_TRUCK :Autoplaustrum Cursuale Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_MAIL_TRUCK :Autoplaustrum Cursuale Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_WITCOMBE_OIL_TANKER :Autoplaustrum Petrolearium Witcombe +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_OIL_TANKER :Autoplaustrum Petrolearium Foster +STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_OIL_TANKER :Autoplaustrum Petrolearium Perry +STR_VEHICLE_NAME_ROAD_VEHICLE_TALBOTT_LIVESTOCK_VAN :Autoplaustrum PecuariumTalbott +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_LIVESTOCK_VAN :Autoplaustrum Pecuarium Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_LIVESTOCK_VAN :Autoplaustrum Pecuarium Foster +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_GOODS_TRUCK :Autoplaustrum Mercium Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_CRAIGHEAD_GOODS_TRUCK :Autoplaustrum Mercium Craighead +STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_GOODS_TRUCK :Autoplaustrum Mercium Goss +STR_VEHICLE_NAME_ROAD_VEHICLE_HEREFORD_GRAIN_TRUCK :Autoplaustrum Triticium Hereford +STR_VEHICLE_NAME_ROAD_VEHICLE_THOMAS_GRAIN_TRUCK :Autoplaustrum Triticium Thomas +STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_GRAIN_TRUCK :Autoplaustrum Triticium Goss +STR_VEHICLE_NAME_ROAD_VEHICLE_WITCOMBE_WOOD_TRUCK :Autoplaustrum Caudicale Witcombe +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_WOOD_TRUCK :Autoplaustrum Caudicale Foster +STR_VEHICLE_NAME_ROAD_VEHICLE_MORELAND_WOOD_TRUCK :Autoplaustrum Caudicale Moreland +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_IRON_ORE_TRUCK :Autoplaustrum Ferrarium MPS +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_IRON_ORE_TRUCK :Autoplaustrum Ferrarium Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_CHIPPY_IRON_ORE_TRUCK :Autoplaustrum Ferrarium Chippy +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_STEEL_TRUCK :Autoplaustrum Chalybeium Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_STEEL_TRUCK :Autoplaustrum Chalybeium Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_KELLING_STEEL_TRUCK :Autoplaustrum Chalybeium Kelling +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_ARMORED_TRUCK :Autoplaustrum Cataphractum Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_ARMORED_TRUCK :Autoplaustrum Cataphractum Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_ARMORED_TRUCK :Autoplaustrum Cataphractum Foster +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_FOOD_VAN :Autoplaustrum Cibarium Foster +STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_FOOD_VAN :Autoplaustrum Cibarium Perry +STR_VEHICLE_NAME_ROAD_VEHICLE_CHIPPY_FOOD_VAN :Autoplaustrum Cibarium Chippy +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_PAPER_TRUCK :Autoplaustrum Chartarium Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_PAPER_TRUCK :Autoplaustrum Chartarium Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_PAPER_TRUCK :Autoplaustrum Chartarium MPS +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_COPPER_ORE_TRUCK :Autoplaustrum Aerarium MPS +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_COPPER_ORE_TRUCK :Autoplaustrum Aerarium Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_COPPER_ORE_TRUCK :Autoplaustrum Aerarium Goss +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_WATER_TANKER :Autoplaustrum Aquarium Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_WATER_TANKER :Autoplaustrum Aquarium Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_WATER_TANKER :Autoplaustrum Aquarium MPS +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_FRUIT_TRUCK :Autoplaustrum Fructus Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_FRUIT_TRUCK :Autoplaustrum Fructus Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_KELLING_FRUIT_TRUCK :Autoplaustrum Fructus Kelling +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_RUBBER_TRUCK :Autoplaustrum Gummis Balogh +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_RUBBER_TRUCK :Autoplaustrum Gummis Uhl +STR_VEHICLE_NAME_ROAD_VEHICLE_RMT_RUBBER_TRUCK :Autoplaustrum Gummis RMT +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_SUGAR_TRUCK :Autoplaustrum Sacchari MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_SUGAR_TRUCK :Autoplaustrum Sacchari Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_SUGAR_TRUCK :Autoplaustrum Sacchari Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COLA_TRUCK :Autoplaustrum Colae MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COLA_TRUCK :Autoplaustrum Colae Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COLA_TRUCK :Autoplaustrum Colae Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COTTON_CANDY :Autoplaustrum Sacchari Xylini MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COTTON_CANDY :Autoplaustrum Sacchari Xylini Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COTTON_CANDY_TRUCK :Autoplaustrum Sacchari Xylini Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_TOFFEE_TRUCK :Autoplaustrum Sacchari Tosti MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_TOFFEE_TRUCK :Autoplaustrum Sacchari Tosti Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_TOFFEE_TRUCK :Autoplaustrum Sacchari Tosti Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_TOY_VAN :Autoplaustrum Ludicrale MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_TOY_VAN :Autoplaustrum Ludicrale Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_TOY_VAN :Autoplaustrum Ludicrale Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_CANDY_TRUCK :Autoplaustrum Bellaricum MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_CANDY_TRUCK :Autoplaustrum Bellaricum Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_CANDY_TRUCK :Autoplaustrum Bellaricum Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_BATTERY_TRUCK :Autoplaustrum Pilarum Electricarum MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_BATTERY_TRUCK :Autoplaustrum Pilarum Electricarum Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_BATTERY_TRUCK :Autoplaustrum Pilarum Electricarum Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_FIZZY_DRINK :Autoplaustrum Potionum Carbonatarum MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_FIZZY_DRINK :Autoplaustrum Potionum Carbonatarum Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_FIZZY_DRINK_TRUCK :Autoplaustrum Potionum Carbonatarum Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_PLASTIC_TRUCK :Autoplaustrum Plasticarium MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_PLASTIC_TRUCK :Autoplaustrum Plasticarium Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_PLASTIC_TRUCK :Autoplaustrum Plasticarium Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_BUBBLE_TRUCK :Autoplaustrum Bullarum MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_BUBBLE_TRUCK :Autoplaustrum Bullarum Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_BUBBLE_TRUCK :Autoplaustrum Bullarum Wizzowow +STR_VEHICLE_NAME_SHIP_MPS_OIL_TANKER :Navis Petrolearia MPS +STR_VEHICLE_NAME_SHIP_CS_INC_OIL_TANKER :Navis Petrolearia CS-Inc. +STR_VEHICLE_NAME_SHIP_MPS_PASSENGER_FERRY :Navis Vectoria MPS +STR_VEHICLE_NAME_SHIP_FFP_PASSENGER_FERRY :Navis Vectoria FFP +STR_VEHICLE_NAME_SHIP_BAKEWELL_300_HOVERCRAFT :Aeroscapha Bakewell 300 +STR_VEHICLE_NAME_SHIP_CHUGGER_CHUG_PASSENGER :Navis Vectoria Chugger-Chug +STR_VEHICLE_NAME_SHIP_SHIVERSHAKE_PASSENGER_FERRY :Navis Vectoria Shivershake +STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Navis Oneraria Yate +STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Navis Oneraria Bakewell +STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Navis Oneraria MightyMover +STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Navis Oneraria Powernaut +STR_VEHICLE_NAME_AIRCRAFT_SAMPSON_U52 :Sampson U52 +STR_VEHICLE_NAME_AIRCRAFT_COLEMAN_COUNT :Coleman Count +STR_VEHICLE_NAME_AIRCRAFT_FFP_DART :FFP Dart +STR_VEHICLE_NAME_AIRCRAFT_YATE_HAUGAN :Yate Haugan +STR_VEHICLE_NAME_AIRCRAFT_BAKEWELL_COTSWALD_LB_3 :Bakewell Cotswald LB-3 +STR_VEHICLE_NAME_AIRCRAFT_BAKEWELL_LUCKETT_LB_8 :Bakewell Luckett LB-8 +STR_VEHICLE_NAME_AIRCRAFT_BAKEWELL_LUCKETT_LB_9 :Bakewell Luckett LB-9 +STR_VEHICLE_NAME_AIRCRAFT_BAKEWELL_LUCKETT_LB80 :Bakewell Luckett LB80 +STR_VEHICLE_NAME_AIRCRAFT_BAKEWELL_LUCKETT_LB_10 :Bakewell Luckett LB-10 +STR_VEHICLE_NAME_AIRCRAFT_BAKEWELL_LUCKETT_LB_11 :Bakewell Luckett LB-11 +STR_VEHICLE_NAME_AIRCRAFT_YATE_AEROSPACE_YAC_1_11 :Yate Aerospace YAC 1-11 +STR_VEHICLE_NAME_AIRCRAFT_DARWIN_100 :Darwin 100 +STR_VEHICLE_NAME_AIRCRAFT_DARWIN_200 :Darwin 200 +STR_VEHICLE_NAME_AIRCRAFT_DARWIN_300 :Darwin 300 +STR_VEHICLE_NAME_AIRCRAFT_DARWIN_400 :Darwin 400 +STR_VEHICLE_NAME_AIRCRAFT_DARWIN_500 :Darwin 500 +STR_VEHICLE_NAME_AIRCRAFT_DARWIN_600 :Darwin 600 +STR_VEHICLE_NAME_AIRCRAFT_GURU_GALAXY :Guru Galaxy +STR_VEHICLE_NAME_AIRCRAFT_AIRTAXI_A21 :Airtaxi A21 +STR_VEHICLE_NAME_AIRCRAFT_AIRTAXI_A31 :Airtaxi A31 +STR_VEHICLE_NAME_AIRCRAFT_AIRTAXI_A32 :Airtaxi A32 +STR_VEHICLE_NAME_AIRCRAFT_AIRTAXI_A33 :Airtaxi A33 +STR_VEHICLE_NAME_AIRCRAFT_YATE_AEROSPACE_YAE46 :Yate Aerospace YAe46 +STR_VEHICLE_NAME_AIRCRAFT_DINGER_100 :Dinger 100 +STR_VEHICLE_NAME_AIRCRAFT_AIRTAXI_A34_1000 :AirTaxi A34-1000 +STR_VEHICLE_NAME_AIRCRAFT_YATE_Z_SHUTTLE :Yate Z-Shuttle +STR_VEHICLE_NAME_AIRCRAFT_KELLING_K1 :Kelling K1 +STR_VEHICLE_NAME_AIRCRAFT_KELLING_K6 :Kelling K6 +STR_VEHICLE_NAME_AIRCRAFT_KELLING_K7 :Kelling K7 +STR_VEHICLE_NAME_AIRCRAFT_DARWIN_700 :Darwin 700 +STR_VEHICLE_NAME_AIRCRAFT_FFP_HYPERDART_2 :FFP Hyperdart 2 +STR_VEHICLE_NAME_AIRCRAFT_DINGER_200 :Dinger 200 +STR_VEHICLE_NAME_AIRCRAFT_DINGER_1000 :Dinger 1000 +STR_VEHICLE_NAME_AIRCRAFT_PLODDYPHUT_100 :Ploddyphut 100 +STR_VEHICLE_NAME_AIRCRAFT_PLODDYPHUT_500 :Ploddyphut 500 +STR_VEHICLE_NAME_AIRCRAFT_FLASHBANG_X1 :Flashbang X1 +STR_VEHICLE_NAME_AIRCRAFT_JUGGERPLANE_M1 :Juggerplane M1 +STR_VEHICLE_NAME_AIRCRAFT_FLASHBANG_WIZZER :Flashbang Wizzer +STR_VEHICLE_NAME_AIRCRAFT_TRICARIO_HELICOPTER :Helicopterum Tricario +STR_VEHICLE_NAME_AIRCRAFT_GURU_X2_HELICOPTER :Helicopterum Guru X2 +STR_VEHICLE_NAME_AIRCRAFT_POWERNAUT_HELICOPTER :Helicopterum Powernaut + +##id 0x8800 +# Formatting of some strings +STR_FORMAT_DATE_TINY :{STRING}-{STRING}-{NUM} +STR_FORMAT_DATE_SHORT :{STRING} {NUM} +STR_FORMAT_DATE_LONG :{STRING} {STRING} {NUM} +STR_FORMAT_DATE_ISO :{2:NUM}-{1:STRING}-{0:STRING} + +STR_FORMAT_BUOY_NAME :{TOWN} Signum Monitorium +STR_FORMAT_BUOY_NAME_SERIAL :{TOWN} Signum Monitorium #{COMMA} +STR_FORMAT_COMPANY_NUM :(Societas {COMMA}) +STR_FORMAT_GROUP_NAME :Grex {COMMA} +STR_FORMAT_INDUSTRY_NAME :{TOWN} {STRING} +STR_FORMAT_INDUSTRY_NAME.acc :{TOWN} {STRING.acc} +STR_FORMAT_INDUSTRY_NAME.abl :{TOWN} {STRING.abl} +STR_FORMAT_WAYPOINT_NAME :{TOWN} Interlocus +STR_FORMAT_WAYPOINT_NAME_SERIAL :{TOWN} Interlocus #{COMMA} + +STR_FORMAT_DEPOT_NAME_TRAIN :{TOWN} Receptaculum Traminum +STR_FORMAT_DEPOT_NAME_TRAIN_SERIAL :{TOWN} Receptaculum Traminum #{COMMA} +STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE :{TOWN} Receptaculum Viarium +STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE_SERIAL :{TOWN} Receptaculum Viarium #{COMMA} +STR_FORMAT_DEPOT_NAME_SHIP :{TOWN} Receptaculum Navium +STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :{TOWN} Receptaculum Navium #{COMMA} +STR_FORMAT_DEPOT_NAME_AIRCRAFT :{STATION} Tugurium + +STR_UNKNOWN_STATION :statio ignota +STR_DEFAULT_SIGN_NAME :Signum +STR_COMPANY_SOMEONE :aliquis + +STR_SAVEGAME_NAME_DEFAULT :{COMPANY}, {STRING} +STR_SAVEGAME_NAME_SPECTATOR :Spectator, {1:STRING} + +# Viewport strings +STR_VIEWPORT_TOWN_POP :{WHITE}{TOWN} ({COMMA}) +STR_VIEWPORT_TOWN :{WHITE}{TOWN} +STR_VIEWPORT_TOWN_TINY_BLACK :{TINY_FONT}{BLACK}{TOWN} +STR_VIEWPORT_TOWN_TINY_WHITE :{TINY_FONT}{WHITE}{TOWN} + +STR_VIEWPORT_SIGN_SMALL_BLACK :{TINY_FONT}{BLACK}{SIGN} +STR_VIEWPORT_SIGN_SMALL_WHITE :{TINY_FONT}{WHITE}{SIGN} + +STR_VIEWPORT_STATION :{STATION} {STATION_FEATURES} +STR_VIEWPORT_STATION_TINY :{TINY_FONT}{STATION} + +STR_VIEWPORT_WAYPOINT :{WAYPOINT} +STR_VIEWPORT_WAYPOINT_TINY :{TINY_FONT}{WAYPOINT} + +# Simple strings to get specific types of data +STR_COMPANY_NAME :{COMPANY} +STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} +STR_DEPOT_NAME :{DEPOT} +STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (celatum) +STR_GROUP_NAME :{GROUP} +STR_INDUSTRY_NAME :{INDUSTRY} +STR_INDUSTRY_NAME.acc :{INDUSTRY.acc} +STR_INDUSTRY_NAME.abl :{INDUSTRY.abl} +STR_PRESIDENT_NAME :{PRESIDENT_NAME} +STR_SIGN_NAME :{SIGN} +STR_STATION_NAME :{STATION} +STR_TOWN_NAME :{TOWN} +STR_VEHICLE_NAME :{VEHICLE} +STR_WAYPOINT_NAME :{WAYPOINT} + +STR_JUST_CARGO :{CARGO_LONG} +STR_JUST_CHECKMARK :{CHECKMARK} +STR_JUST_COMMA :{COMMA} +STR_JUST_CURRENCY_SHORT :{CURRENCY_SHORT} +STR_JUST_CURRENCY_LONG :{CURRENCY_LONG} +STR_JUST_CARGO_LIST :{CARGO_LIST.dat} +STR_JUST_INT :{NUM} +STR_JUST_DATE_TINY :{DATE_TINY} +STR_JUST_DATE_SHORT :{DATE_SHORT} +STR_JUST_DATE_LONG :{DATE_LONG} +STR_JUST_DATE_ISO :{DATE_ISO} +STR_JUST_STRING :{STRING} +STR_JUST_STRING_STRING :{STRING}{STRING} +STR_JUST_RAW_STRING :{STRING} +STR_JUST_BIG_RAW_STRING :{BIG_FONT}{STRING} + +# Slightly 'raw' stringcodes with colour or size +STR_BLACK_COMMA :{BLACK}{COMMA} +STR_TINY_BLACK_COMA :{TINY_FONT}{BLACK}{COMMA} +STR_TINY_COMMA :{TINY_FONT}{COMMA} +STR_BLUE_COMMA :{BLUE}{COMMA} +STR_RED_COMMA :{RED}{COMMA} +STR_WHITE_COMMA :{WHITE}{COMMA} +STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} +STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} +STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} +STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} +STR_SHORT_DATE :{WHITE}{DATE_TINY} +STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} +STR_TINY_GROUP :{TINY_FONT}{GROUP} +STR_BLACK_INT :{BLACK}{NUM} +STR_ORANGE_INT :{ORANGE}{NUM} +STR_WHITE_SIGN :{WHITE}{SIGN} +STR_TINY_BLACK_STATION :{TINY_FONT}{BLACK}{STATION} +STR_BLACK_STRING :{BLACK}{STRING} +STR_BLACK_RAW_STRING :{BLACK}{STRING} +STR_ORANGE_STRING :{ORANGE}{STRING} +STR_LTBLUE_STRING :{LTBLUE}{STRING} +STR_WHITE_STRING :{WHITE}{STRING} +STR_ORANGE_STRING1_WHITE :{ORANGE}{STRING}{WHITE} +STR_ORANGE_STRING1_LTBLUE :{ORANGE}{STRING}{LTBLUE} +STR_TINY_BLACK_HEIGHT :{TINY_FONT}{BLACK}{HEIGHT} +STR_TINY_BLACK_VEHICLE :{TINY_FONT}{BLACK}{VEHICLE} +STR_TINY_RIGHT_ARROW :{TINY_FONT}{RIGHT_ARROW} + +STR_BLACK_1 :{BLACK}1 +STR_BLACK_2 :{BLACK}2 +STR_BLACK_3 :{BLACK}3 +STR_BLACK_4 :{BLACK}4 +STR_BLACK_5 :{BLACK}5 +STR_BLACK_6 :{BLACK}6 +STR_BLACK_7 :{BLACK}7 + +STR_TRAIN :{BLACK}{TRAIN} +STR_BUS :{BLACK}{BUS} +STR_LORRY :{BLACK}{LORRY} +STR_PLANE :{BLACK}{PLANE} +STR_SHIP :{BLACK}{SHIP} + +STR_TOOLBAR_RAILTYPE_VELOCITY :{STRING} ({VELOCITY}) diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index 0bb569f395..0e7b5c6c3f 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -97,30 +97,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Limonāde # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} pasažier{P is i u} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}pasažier{P is i u} STR_QUANTITY_COAL :{WEIGHT_LONG} ogļu -STR_QUANTITY_MAIL :{COMMA} pasta mais{P s i u} +STR_QUANTITY_MAIL :{COMMA}{NBSP}pasta mais{P s i u} STR_QUANTITY_OIL :{VOLUME_LONG} naftas -STR_QUANTITY_LIVESTOCK :{COMMA} mājlop{P s i u} -STR_QUANTITY_GOODS :{COMMA} preču kast{P e es u} +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}mājlop{P s i u} +STR_QUANTITY_GOODS :{COMMA}{NBSP}preču kast{P e es u} STR_QUANTITY_GRAIN :{WEIGHT_LONG} graudu STR_QUANTITY_WOOD :{WEIGHT_LONG} kokmateriālu STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} dzelzsrūdas STR_QUANTITY_STEEL :{WEIGHT_LONG} tērauda -STR_QUANTITY_VALUABLES :{COMMA} mais{P s i u} ar vērtslietām +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}mais{P s i u} ar vērtslietām STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} vara rūdas STR_QUANTITY_MAIZE :{WEIGHT_LONG} kukurūzas STR_QUANTITY_FRUIT :{WEIGHT_LONG} augļu -STR_QUANTITY_DIAMONDS :{COMMA} maisi ar dimantiem +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}mais{P s i u} ar dimantiem STR_QUANTITY_FOOD :{WEIGHT_LONG} pārtikas preču STR_QUANTITY_PAPER :{WEIGHT_LONG} papīra -STR_QUANTITY_GOLD :{COMMA} zelta mais{P s i u} +STR_QUANTITY_GOLD :{COMMA}{NBSP}zelta mais{P s i u} STR_QUANTITY_WATER :{VOLUME_LONG} ūdens STR_QUANTITY_WHEAT :{WEIGHT_LONG} kviešu STR_QUANTITY_RUBBER :{VOLUME_LONG} kaučuka STR_QUANTITY_SUGAR :{WEIGHT_LONG} cukura -STR_QUANTITY_TOYS :{COMMA} rotaļliet{P a as u} -STR_QUANTITY_SWEETS :{COMMA} saldumu mais{P s i u} +STR_QUANTITY_TOYS :{COMMA}{NBSP}rotaļliet{P a as u} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}saldumu mais{P s i u} STR_QUANTITY_COLA :{VOLUME_LONG} kolas STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} cukurvates STR_QUANTITY_BUBBLES :{COMMA} burbu{P lis ļi ļu} @@ -167,12 +167,12 @@ STR_ABBREV_NONE :{TINY_FONT}NAV STR_ABBREV_ALL :{TINY_FONT}VISI # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} pasažier{P is i u} -STR_BAGS :{COMMA} mais{P s i u} -STR_TONS :{COMMA} tonn{P a as u} -STR_LITERS :{COMMA} litr{P s i u} -STR_ITEMS :{COMMA} vienīb{P a as u} -STR_CRATES :{COMMA} kast{P e es u} +STR_PASSENGERS :{COMMA}{NBSP}pasažier{P is i u} +STR_BAGS :{COMMA}{NBSP}mais{P s i u} +STR_TONS :{COMMA}{NBSP}tonn{P a as u} +STR_LITERS :{COMMA}{NBSP}litr{P s i u} +STR_ITEMS :{COMMA}{NBSP}vienīb{P a as u} +STR_CRATES :{COMMA}{NBSP}kast{P e es u} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Tumši zila @@ -193,37 +193,37 @@ STR_COLOUR_GREY :Pelēka STR_COLOUR_WHITE :Balta # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} jūdzes stundā -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}jūdzes stundā +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA} ZS -STR_UNITS_POWER_METRIC :{COMMA} ZS -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ZS +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ZS +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA} t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonn{P a as u} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonn{P a as u} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonn{P a as u} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonn{P a as u} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA} gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} l -STR_UNITS_VOLUME_SHORT_SI :{COMMA} m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon{P s i u} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr{P s i u} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P s i u} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P s i u} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} pēdas -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pēdas +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtra virkne: @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Ritjosla STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Ritjosla - ritina sarakstu pa kreisi/pa labi STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Nojaukt celtnes u.c. objektus no zemes platības. Ctrl iezīmē diagonālu laukumu. Shift pārslēdz nojaukšanu/izmaksu tāmes attēlošanu +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Parādīt paslēptos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Parādīt paslēptos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Parādīt paslēptos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Parādīt paslēptos + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ieslēdzot šo iestatījumu tiks parādīti arī paslēptie vilcieni +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ieslēdzot šo iestatījumu tiks parādīti arī paslēptie autotransporta līdzekļi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ieslēdzot šo iestatījumu tiks parādīti arī paslēptie kuģi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ieslēdzot šo iestatījumu tiks parādīti arī paslēptie lidaparāti + # Query window STR_BUTTON_DEFAULT :{BLACK}Noklusējums STR_BUTTON_CANCEL :{BLACK}Atcelt @@ -322,8 +333,8 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Rādīt STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Rādīt uzņēmuma autotransporta sarakstu. Ctrl+klikšķis pārslēdz grupu/transportlīdzekļu saraksta atvēršanu STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Rādīt uzņēmuma kuģu sarakstu. Ctrl+klikšķis pārslēdz grupu/transportlīdzekļu saraksta atvēršanu STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Rādīt uzņēmuma lidaparātu sarakstu. Ctrl+klikšķis pārslēdz grupu/transportlīdzekļu saraksta atvēršanu -STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Tuvināt skatu -STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Tālināt skatu +STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Pietuvināt skatu +STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Attālināt skatu STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Būvēt sliežu ceļu STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Būvēt ceļus STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Būvēt kuģu piestātnes @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Iziet ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spēles opcijas -STR_SETTINGS_MENU_CONFIG_SETTINGS :Papildu iestatījumi +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Iestatījumi STR_SETTINGS_MENU_SCRIPT_SETTINGS :MI/spēles skriptu iestatījumi STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF iestatījumi STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Caurspīdības opcijas @@ -461,7 +472,7 @@ STR_ABOUT_MENU_SEPARATOR : STR_ABOUT_MENU_TOGGLE_CONSOLE :Atvērt/aizvērt konsoli STR_ABOUT_MENU_AI_DEBUG :MI/spēles skriptu atkļūdošana STR_ABOUT_MENU_SCREENSHOT :Ekrānuzņēmums -STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Pilnībā tuvināts ekrānuzņēmums +STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Pilnībā pietuvināts ekrānuzņēmums STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Noklusējuma mēroga ekrānuzņēmums STR_ABOUT_MENU_GIANT_SCREENSHOT :Visas kartes ekrānuzņēmums STR_ABOUT_MENU_ABOUT_OPENTTD :Par 'OpenTTD' @@ -698,6 +709,7 @@ STR_SMALLMAP_TYPE_OWNERS :īpašnieki STR_SMALLMAP_TOOLTIP_SHOW_LAND_CONTOURS_ON_MAP :{BLACK}Rādīt zemes kontūras uz kartes STR_SMALLMAP_TOOLTIP_SHOW_VEHICLES_ON_MAP :{BLACK}Rādīt transportlīdzekļus uz kartes STR_SMALLMAP_TOOLTIP_SHOW_INDUSTRIES_ON_MAP :{BLACK}Rādīt ražotnes uz kartes +STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Rādīt kravas plūsmu uz kartes STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Rādīt pārvadājumu maršrutus uz kartes STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Rādīt augu valsti uz kartes STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Rādīt zemes īpašniekus uz kartes @@ -747,6 +759,7 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Rādīt STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Pārslēgt augstumu kartes attēlošanu STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Nerādīt neviena uzņēmuma īpašumus uz kartes STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Rādīt visu uzņēmumu īpašumus uz kartes +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Nerādīt kravas uz kartes # Status bar messages STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Rādīt pēdējo ziņojumu vai avīzes rakstu @@ -910,10 +923,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzijas lari ( STR_GAME_OPTIONS_CURRENCY_IRR :Irānas riāli (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Autotransporta līdzekļi STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Ceļa braucamās puses izvēle STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Brauc pa kreiso pusi @@ -951,10 +960,10 @@ STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Izvēlē ############ start of autosave dropdown STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_OFF :Izslēgta -STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_1_MONTH :Katru mēnesi -STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_3_MONTHS :Katrus 3 mēnešus -STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_6_MONTHS :Katrus 6 mēnešus -STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_12_MONTHS :Katrus 12 mēnešus +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_1_MONTH :katru mēnesi +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_3_MONTHS :katrus 3 mēnešus +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_6_MONTHS :katrus 6 mēnešus +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_12_MONTHS :katrus 12 mēnešus ############ end of autosave dropdown STR_GAME_OPTIONS_LANGUAGE :{BLACK}Valoda @@ -967,6 +976,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ekrāna STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Ekrāna izšķirtspējas izvēle STR_GAME_OPTIONS_RESOLUTION_OTHER :Cita +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Lietotāja saskarnes lielums +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Lietotāja saskarnes elementu lieluma izvēle + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Parasts +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Divkāršs +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Četrkāršs + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Pamata grafikas kopa STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Atlasīt lietošanai pamata grafikas kopu STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} iztrūkstošs/bojāts fail{P s i ""} @@ -1047,7 +1063,7 @@ STR_RIVERS_MODERATE :Vidējs daudzum STR_RIVERS_LOT :Daudzas STR_DISASTER_NONE :Nav -STR_DISASTER_REDUCED :Samazināta +STR_DISASTER_REDUCED :samazināta STR_DISASTER_NORMAL :Parasta STR_SUBSIDY_X1_5 :x1.5 @@ -1059,6 +1075,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Ļoti līdzens STR_TERRAIN_TYPE_FLAT :Līdzens STR_TERRAIN_TYPE_HILLY :Paugurains STR_TERRAIN_TYPE_MOUNTAINOUS :Kalnains +STR_TERRAIN_TYPE_ALPINIST :Alpu STR_CITY_APPROVAL_PERMISSIVE :pieļaujoša STR_CITY_APPROVAL_TOLERANT :iecietīga @@ -1066,8 +1083,8 @@ STR_CITY_APPROVAL_HOSTILE :naidīga STR_WARNING_NO_SUITABLE_AI :{WHITE}Nav pieejami derīgi MI...{}Jūs varat lejuplādēt dažādus MI, izmantojot sistēmu 'Tiešsaistes saturs' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Papildu iestatījumi +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Iestatījumi STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtra virkne: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Izvērst visu STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Sakļaut visu @@ -1080,10 +1097,12 @@ STR_CONFIG_SETTING_TYPE_GAME_INGAME :spēles iestat STR_CONFIG_SETTING_TYPE_COMPANY_MENU :uzņēmuma iestatījums (tiek iekļauts saglabājumos, ietekmē tikai jaunās spēles) STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :uzņēmuma iestatījums (tiek iekļauts saglabājumā, ietekmē tikai pašreizējo uzņēmumu) +STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorija: +STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Veids: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Ierobežo turpmāko sarakstu, rādot tikai izmainītos iestatījumus -STR_CONFIG_SETTING_RESTRICT_BASIC :Pamatiestatījumi -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Papildu iestatījumi -STR_CONFIG_SETTING_RESTRICT_ALL :Lietpratēju iestatījumi / visi iestatījumi +STR_CONFIG_SETTING_RESTRICT_BASIC :Pamatiestatījumi (parādīt tikai svarīgākos iestatījumus) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Papildu iestatījumi (parādīt iestatījumu vairākumu) +STR_CONFIG_SETTING_RESTRICT_ALL :Lietpratēju iestatījumi (parādīt visus iestatījumus, tai skaitā arī nestandarta) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Iestatījumi ar atšķirīgu vērtību nekā noklusējuma STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Iestatījumi ar atšķirīgu vērtību nekā jūsu jaunajai spēlei @@ -1094,6 +1113,7 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Spēles iestat STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Spēles iestatījumi (tiek iekļauti saglabājumā, ietekmē tikai pašreizējo spēli) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Uzņēmuma iestatījumi (tiek iekļauti saglabājumos, ietekmē tikai jaunās spēles) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Uzņēmuma iestatījumi (tiek iekļauti saglabājumā, ietekmē tikai pašreizējo uzņēmumu) +STR_CONFIG_SETTINGS_NONE :{WHITE}-Nav- STR_CONFIG_SETTING_OFF :izslēgts STR_CONFIG_SETTING_ON :ieslēgts @@ -1115,6 +1135,7 @@ STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maksimālais s STR_CONFIG_SETTING_INTEREST_RATE :Procentu likme: {STRING} STR_CONFIG_SETTING_RUNNING_COSTS :Kārtējās izmaksas: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Būvēšanas ātrums: {STRING} +STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :MI (mākslīgā intelekta) būvniecības darbību daudzuma ierobežošana STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Transportlīdzekļu bojāšanās: {STRING} STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Subsīdiju reizinātājs: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Būvēšanas izmaksas: {STRING} @@ -1124,6 +1145,9 @@ STR_CONFIG_SETTING_TRAIN_REVERSING :Neatļaut vilci STR_CONFIG_SETTING_DISASTERS :Katastrofas: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL :Pilsētu domju attieksme pret platības pārstrukturēšanu: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimālais kartes augstums: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Uzstādīt maksimālo atļauto kalnu augstumu kartē +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Jūs nevarat izmantot šo maksimālo kartes augstumu. Vismaz viens kalns uz kartes ir augstāks. STR_CONFIG_SETTING_AUTOSLOPE :Atļaut ainavas veidošanu zem ekām, ceļiem, utt. (automāt. nogāzes): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Atļauj ainavas veidošanu zem ekām un ceļiem bez to nojaukšanas STR_CONFIG_SETTING_CATCHMENT :Atļaut realistiskākas, palielinātas apkalpojamās platības: {STRING} @@ -1152,6 +1176,8 @@ STR_CONFIG_SETTING_INFLATION :Inflācija: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Atļaut inflāciju ekonomikā, kur izmaksu celšanās nedaudz apsteidz ienākumus STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maksimālais tiltu garums: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Būvējamo tiltu maksimālais garums +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimālais tiltu augstums: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Būvējamo tiltu maksimālais augstums STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maksimālais tuneļu garums: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Būvējamo tuneļu maksimālais garums STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Izejvielu ražotņu manuālā būvniecības metode: {STRING} @@ -1244,13 +1270,14 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Rāda pilsētu STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Diagrammu līniju platums: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Diagrammu līniju platums. Šauras līnijas ir precīzāk nolasāmas, platākas vieglāk saskatīt un atšķirt to krāsas +STR_CONFIG_SETTING_LANDSCAPE :Ainava: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR :Zemes radītājs: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Sākotnējais STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimālais attālums no kartes malas naftas pārstrādes rūpnīcām: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Naftas pārstrādes rūpnīcas ir būvējamas tikai kartes malu tuvumā, salu kartēm tas ir pie krasta STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Sniega līnijas augstums: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Apvidus nelīdzenums (tikai TerraGenesis): {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Apvidus nelīdzenums: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Ļoti gluda STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Gluda STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Nelīdzena @@ -1259,6 +1286,7 @@ STR_CONFIG_SETTING_TREE_PLACER :Koku izvietoša STR_CONFIG_SETTING_TREE_PLACER_NONE :Nav STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Sākotnējais STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Uzlabotais +STR_CONFIG_SETTING_ROAD_SIDE :Autotransporta līdzekļi: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Augstumu kartes pagriešana: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Pret pulksteņa rādītāja virzienu STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Pulksteņa rādītāja virzienā @@ -1309,6 +1337,7 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Izslēgta STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Kreisā klikšķa ritināšana: {STRING} +STR_CONFIG_SETTING_AUTOSAVE :Automātiskā saglabāšana: {STRING} STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Lietot {STRING} datuma formātu saglabāto spēļu nosaukumos STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Datuma formāts spēļu saglabājuma failu nosaukumos @@ -1388,13 +1417,13 @@ STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :vidējs STR_CONFIG_SETTING_AI_PROFILE_HARD :smags STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Atļaut MI vairākspēlētāju spēlēs: {STRING} -STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Atļaut MI nespēlētāju tēliem (datora vadītiem) piedalīties vairākspēlētāju spēlēs +STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Atļaut MI (mākslīgā intelekta) nespēlētāju tēliem (datora vadītiem) piedalīties vairākspēlētāju spēlēs STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#darbību kodi, pirms skripti tiek apstādināti: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT :Apkopju starplaiki procentos: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS :Vilcienu apkopju noklusējuma starplaiks: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Izvēlēties jaunajiem sliežu transportlīdzekļiem apkopju noklusējuma starplaiku, ja tiem tas nav noteikts -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dien{P 0 a as u}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dien{P 0 a as u}/% STR_CONFIG_SETTING_SERVINT_DISABLED :izslēgts STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Autotransporta līdzekļu apkopju noklusējuma starplaiks: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Izvēlēties jauniem autotransporta līdzekļiem apkopju noklusējuma starplaiku, ja transportlīdzeklim tas nav noteikts @@ -1550,13 +1579,13 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :metriskās (ZS) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI, starptautiskās (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Svara mērvienības: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Vai lietotāja saskarnē rāda svaru, rādīt norādītajās mērvienībās +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Kad lietotāja saskarnē rāda svaru, uzrādīt to norādītajās mērvienībās STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :impērijas, britu (t/tonna) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :metriskās (t/tonna) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI, starptautiskās (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Tilpuma mērvienības: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Vai lietotāja saskarnē rāda tilpumu, rādīt norādītajās mērvienībās +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Kad lietotāja saskarnē rāda tilpumu, uzrādīt to norādītajās mērvienībās STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :impērijas, britu (galons) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :metriskās (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI, starptautiskās (m³) @@ -1564,23 +1593,35 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI.kas :SI, starptautis STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Vilces spēka mērvienības: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE.kas :Vilces spēka mērvienības: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Vai lietotāja saskarnē rāda vilcējspēku, rādīt norādītajās mērvienībās +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Kad lietotāja saskarnē rāda vilcējspēku, uzrādīt to norādītajās mērvienībās STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :impērijas, britu (mārciņa) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :metriskās (spēka kilograms) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI, starptautiskās (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Augstuma mērvienības: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Vai lietotāja saskarnē rāda augstumu, rādīt norādītajās mērvienībās +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Kad lietotāja saskarnē rāda augstumu, uzrādīt to norādītajās mērvienībās STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :impērijas, britu (pēda) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :metriskās (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI, starptautiskās (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Lokalizēšana -STR_CONFIG_SETTING_SOUND :{ORANGE}Skaņas efekti +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafika +STR_CONFIG_SETTING_SOUND :{ORANGE}Skaņa STR_CONFIG_SETTING_INTERFACE :{ORANGE}Saskarne +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Vispārīgi +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Skatvietas STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Būvniecība +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Avīžu raksti / padomnieki +STR_CONFIG_SETTING_COMPANY :{ORANGE}Uzņēmums +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Grāmatvedība STR_CONFIG_SETTING_VEHICLES :{ORANGE}Transportlīdzekļi +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Fizika STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Pārvietošanās +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Ierobežojumi +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastrofas / negadījumi +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Pasaules radīšana +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Apkārtējā vide +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Pašvaldības STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Pilsētas STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Ražotnes STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Kravu sadale @@ -1633,7 +1674,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Vairāks STR_INTRO_GAME_OPTIONS :{BLACK}Spēles opcijas STR_INTRO_HIGHSCORE :{BLACK}Sasniegumu tabula -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Papildu iestatījumi +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Iestatījumi STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF iestatījumi STR_INTRO_ONLINE_CONTENT :{BLACK}Pārbaudīt tiešsaistes saturu STR_INTRO_SCRIPT_SETTINGS :{BLACK}MI/spēles skriptu iestatījumi @@ -1653,7 +1694,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Izvēlē STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Rādīt spēles opcijas STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Rādīt sasniegumu tabulu -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Rādīt papildu iestatījumus +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Displeja iestatījumi STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Rādīt NewGRF iestatījumus STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Pārbaudīt vai lejupielādei nav pieejams jauns un atjaunināts saturs STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Rādīt MI un spēles skriptu iestatījumus @@ -1693,6 +1734,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Spēlē STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Burvju buldozers (nojauc ražotnes, nepārvietojamus objektus): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tuneļi drīkst krustoties: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Reaktīvās lidmašīnas mazajās lidostās neavarēs (bieži): {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Izmainīt maksimālo kartes augstumu: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Izmainīt kalnu maksimālo augstumu kartē STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Mērena klimata ainava STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subarktikas klimata ainava STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Subtropu klimata ainava @@ -1861,13 +1904,13 @@ STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Aizsarg STR_NETWORK_START_SERVER_UNADVERTISED :Nē STR_NETWORK_START_SERVER_ADVERTISED :Jā STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} spēlētāj{P s i u} -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Maks. spēlētāju skaits: +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Maksimālais spēlētāju skaits: STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Izvēlēties maksimālo spēlētāju skaitu. Ne visiem slotiem ir jābūt aizpildītiem STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} uzņēmum{P s i u} -STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Maks. uzņēmumu skaits: +STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Maksimālais uzņēmumu skaits: STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}Ierobežo serveri noteiktam uzņēmumu skaitam STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} novērotāj{P s i u} -STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Maks. novērotāju skaits: +STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Maksimālais novērotāju skaits: STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS_TOOLTIP :{BLACK}Ierobežo serveri noteiktam novērotāju skaitam STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Valoda, kurā runā: STR_NETWORK_START_SERVER_LANGUAGE_TOOLTIP :{BLACK}Citi lietotāji zinās, kurā valodā tiek runāts uz servera @@ -1907,7 +1950,7 @@ STR_NETWORK_LANG_TURKISH :Turku STR_NETWORK_LANG_UKRAINIAN :Ukraiņu STR_NETWORK_LANG_AFRIKAANS :Āfrikāņu STR_NETWORK_LANG_CROATIAN :Horvātu -STR_NETWORK_LANG_CATALAN :Katalāņu +STR_NETWORK_LANG_CATALAN :Kataloņu STR_NETWORK_LANG_ESTONIAN :Igauņu STR_NETWORK_LANG_GALICIAN :Galisiešu STR_NETWORK_LANG_GREEK :Grieķu @@ -2203,7 +2246,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Būvēt STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Būvēt vilcienu depo (vilcienu pirkšanai un apkopei). Shift pārslēdz būvi/rādīt izmaksu tāmi STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Pārveidot sliedes par pieturas punktu. Ctrl iespējo pieturas punktu apvienošanu. Shift pārslēdz būvēšanu/izmaksu tāmes rādīšanu STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Būvēt dzelzceļa staciju. Ctrl iespējo staciju apvienošanu. Shift pārslēdz būve/rādīt izmaksu tāmi -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Būvēt dzelzceļa signālus. Ctrl pārslēdz semaforus/luksoforus{}Vilkšana uzbūvē signālus uz taisna sliežu posma. Ctrl uzbūvē signālus līdz nākamajam sazarojumam{}Ctrl+klikšķis pārslēdz signālu izvēles loga atvēršanu. Shift pārslēdz būve/rādīt izmaksu tāmi +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Būvēt dzelzceļa signālus. Ctrl pārslēdz semaforus/luksoforus{}Vilkšana uzbūvē signālus uz taisna sliežu posma. Ctrl uzbūvē signālus līdz nākamajam sazarojumam vai signālam{}Ctrl+Klikšķis pārslēdz signālu izvēles loga atvēršanu. Shift pārslēdz starp būvet/rādīt izmaksu tāmi STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Būvēt dzelzceļa tiltu. Shift pārslēdz būvēšanu/izmaksu tāmes rādīšanu STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Būvēt dzelzceļa tuneli. Shift pārslēdz būvēšanu/izmaksu tāmes rādīšanu STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Pārslēgties starp sliežu, signālierīču, pieturas punktu būvēšanu/noņemšanu. Aizturēt Ctrl, lai noņemtu arī sliedes no pieturas punktiem un stacijām @@ -2576,7 +2619,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Uzņēmumam pie STR_ABOUT_OPENTTD :{WHITE}Par OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Oriģināla autortiesības {COPYRIGHT} 1995 Kriss Sojers. Visas tiesības paturētas STR_ABOUT_VERSION :{BLACK}OpenTTD versija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD darba grupa +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD darba grupa # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Saglabāt spēli @@ -2595,6 +2638,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Saglabā STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Saglabāt šo spēli izmantojot izvēlēto nosaukumu STR_SAVELOAD_LOAD_BUTTON :{BLACK}Ielādēt STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Ielādēt izvēlēto spēli +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Ielādēt atlasīto augstumu karti STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Spēles īpašības STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Nav pieejamas informācijas STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2609,6 +2653,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Pilsētu daudzums: STR_MAPGEN_DATE :{BLACK}Datums: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Ražotņu daudzums: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimālais kartes augstums +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Palielināt kalnu maksimālo augstumu kartē par vienu vienību +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Samazināt kalnu maksimālu augstumu kartē par vienu vienību STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Sniega līnijas augstums STR_MAPGEN_SNOW_LINE_UP :{BLACK}Paaugstināt sniega līnijas augstumu STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Pazemināt sniega līnijas augstumu @@ -2638,6 +2685,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Augstumu STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Lielums: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Mainīt kartes maksimālo augstumu STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Mainīt sniega līnijas augstumu STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Mainīt sākuma gadu @@ -2717,6 +2765,11 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Atspējots STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Nav savietojams ar šo OpenTTD versiju # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Iepriekšiestatījuma saglabāšana +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Pašlaik izvēlētā iepriekšiestatījuma nosaukums saglabāšanai +STR_SAVE_PRESET_CANCEL :{BLACK}Atcelt +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Nemainīt iepriekšiestatījumu +STR_SAVE_PRESET_SAVE :{BLACK}Saglabāt # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Mainīt NewGRF parametrus @@ -2748,7 +2801,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Iepriek STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Iet pie iepriekšējā parastā gariņa, izlaižot visus pseido/pārkrāsotos/fonta gariņus STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Atlasītā gariņa attēlojums. To attēlojot, izkārtojums netiek ievērots STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Pārvietot gariņu, lai mainītu X un Y vērtības -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X garums: {NUM}, Y garums: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Paņemt gariņu STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Paņemt gariņu no jebkuras vietas ekrānā @@ -2861,8 +2913,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} piegādāts STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (joprojām pieprasīts) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (piegādāts) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Pilsēta aug katr{P 0 u as u} {ORANGE}{COMMA}{BLACK} dien{P u as u} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Pilsēta aug katr{P 0 u as u} {ORANGE}{COMMA}{BLACK} dien{P u as u} (finansēta) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Pilsēta aug katr{P 0 u as u} {ORANGE}{COMMA}{BLACK}{NBSP}dien{P u as u} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Pilsēta aug katr{P 0 u as u} {ORANGE}{COMMA}{BLACK}{NBSP}dien{P u as u} (finansēta) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Pilsēta {RED}neattīstās{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Trokšņu ierobežojums pilsētā: {ORANGE}{COMMA}{BLACK} maks.: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centrēt galveno skatu uz pilsētu. Ctrl+klikšķis atvērs skatu uz pilsētu jaunā skatlaukā @@ -2922,7 +2974,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informācija STR_GOAL_QUESTION_CAPTION_WARNING :Brīdinājums STR_GOAL_QUESTION_CAPTION_ERROR :Kļūda -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Atcelt STR_GOAL_QUESTION_BUTTON_OK :Labi STR_GOAL_QUESTION_BUTTON_NO :Nē @@ -2943,6 +2995,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Pārstartēt STR_GOAL_QUESTION_BUTTON_POSTPONE :Atlikt STR_GOAL_QUESTION_BUTTON_SURRENDER :Padoties STR_GOAL_QUESTION_BUTTON_CLOSE :Aizvērt +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsīdijas @@ -3070,7 +3123,7 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN STR_FINANCES_TOTAL_CAPTION :{WHITE}Kopā: STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Bankas bilance STR_FINANCES_LOAN_TITLE :{WHITE}Aizdevums -STR_FINANCES_MAX_LOAN :{WHITE}Pieejamais aizdevums: {BLACK}{CURRENCY_LONG} +STR_FINANCES_MAX_LOAN :{WHITE}Maksimālais aizdevums: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}Aizņemties {CURRENCY_LONG} STR_FINANCES_BORROW_TOOLTIP :{BLACK}Palielināt aizdevuma apmēru. Ctrl+klikšķis lai aizņemtos cik daudz vien iespējams @@ -3225,6 +3278,7 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Dzēst i STR_GROUP_RENAME_TOOLTIP :{BLACK}Pārdēvēt izvēlēto grupu STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klikšķināt, lai pasargātu šo grupu no vispārējās automātiskās aizstāšanas +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Grupas dzēšana STR_GROUP_ADD_SHARED_VEHICLE :Pievienot kopīgos transportlīdzekļus STR_GROUP_REMOVE_ALL_VEHICLES :Novākt visus transportlīdzekļus @@ -3288,6 +3342,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Pārdēv STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Pārdēvēt kuģa tipu STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Pārdēvēt lidaparāta tipu +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Paslēpt +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Paslēpt +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Paslēpt +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Paslēpt + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Rādīt +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Rādīt +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Rādīt +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Rādīt + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Pārslēgt starp rādīt/nerādīt vilciena tipu +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Pārslēgt starp rādīt/nerādīt autotransporta līdzekļu tipu +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Pārslēgt starp rādīt/nerādīt kuģa tipu +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Pārslēgt starp rādīt/nerādīt lidaparāta tipu + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Pārdēvēt vilciena vagona tipu STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Pārdēvēt autotransporta līdzekļa tipu STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Pārdēvēt kuģa tipu @@ -3341,7 +3410,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Klonēt STR_DEPOT_CLONE_SHIP :{BLACK}Klonēt kuģi STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Klonēt lidaparātu -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Tas nopirks vilciena kopiju ar visiem vagoniem. Spiediet šo pogu un pēc tam uz vilciena, kas atrodas depo vai ārpus tā. Ctrl+klikšķis, lai koplietotu rīkojumus. Shift+klikšķis rāda izmaksu novērtējumu, neveicot pirkumu +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Nopirkt vilciena kopiju ar visiem vagoniem. Spiediet šo pogu, un pēc tam uz vilciena, kas atrodas depo vai ārpus tā. Ctrl+Klikšķis, lai koplietotu rīkojumus. Shift+Klikšķis rāda izmaksu novērtējumu, neveicot pirkumu STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Tas nopirks autotransporta kopiju. Spiediet uz pogas un pēc tam uz autotransporta, kas atrodas depo vai ārpus tā. Ctrl+klikšķis, lai koplietotu rīkojumus. Shift+klikšķis rāda izmaksu novērtējumu, neveicot pirkumu STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Tas nopirks kuģa kopiju. Spiediet šo pogu un pēc tam uz kuģa, kas atrodas depo vai ārpus tā. Ctrl+klikšķis, lai koplietotu rīkojumus. Shift+klikšķis rāda izmaksu novērtējumu, neveicot pirkumu STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Tas pirks lidaparāta kopiju. Spiediet uz pogas un pēc tam uz lidaparāta, kas atrodas angārā vai ārpus tā. Ctrl+klikšķis, lai koplietotu rīkojumus. Shift+klikšķis rāda izmaksu novērtējumu, neveicot pirkumu @@ -3392,6 +3461,9 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Autotransporta STR_REPLACE_VEHICLE_SHIP :Kuģis STR_REPLACE_VEHICLE_AIRCRAFT :Lidaparāts +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Lietošanā esošie transportlīdzekļi +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Pieejamie transportlīdzekļi + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Izvēlēties lokomotīves veidu, kuru vēlaties mainīt STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Izvēlēties jaunu lokomotīves veidu, kuru vēlaties lietot kreisajā pusē atlasītās lokomotīves vietā @@ -3516,7 +3588,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Ietilpī STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Pārvadājumu ieņēmumi: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Apkopes starplaiks: {LTBLUE}{COMMA}dienas{BLACK} Pēdējā apkope: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Apkopes starplaiks: {LTBLUE}{COMMA}{NBSP}dienas{BLACK} Pēdējā apkope: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Apkopes starplaiks: {LTBLUE}{COMMA}%{BLACK} Pēdējā apkope: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Palielināt apkopes starplaiku par 10. Ctrl+klikšķis palielina apkopes starplaiku par 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Samazināt apkopes starplaiku par 10. Ctrl+klikšķis samazina apkopes starplaiku par 5 @@ -3748,8 +3820,8 @@ STR_TIMETABLE_TRAVEL_FOR :Braukt līdz {S STR_TIMETABLE_TRAVEL_FOR_SPEED :Braukt uz {STRING} ar ne vairāk kā {VELOCITY} STR_TIMETABLE_STAY_FOR :un palikt līdz {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :un braukt līdz {STRING} -STR_TIMETABLE_DAYS :{COMMA} dien{P a as u} -STR_TIMETABLE_TICKS :{COMMA} tik{P s i u} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}dien{P a as u} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tik{P s i u} STR_TIMETABLE_TOTAL_TIME :{BLACK}Šis saraksts aizņems {STRING}, lai pabeigtu STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Šis saraksts aizņems vismaz {STRING} lai pabeigtu (nav viss pēc saraksta) @@ -4032,6 +4104,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... mež STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... var būvēt tikai sniegotajos apgabalos STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... var būvēt tikai bezsniega apgabalos + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Šeit nevar būvēt dzelzceļa staciju... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Nevar būvēt autobusu pieturvietu... @@ -4168,6 +4241,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Vispirms STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Nevar sākties un beigties tajā paša vietā STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Tilta gali nav vienā līmenī STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Tilts ir pārāk zems šim zemes apvidum +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Tilts ir pārāk augsts priekš šī vilciena. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Sākumam un beigām jābūt uz vienas līnijas STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... abiem tilta galiem jābūt uz zemes STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... tilts ir pārāk garš @@ -4725,6 +4799,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (paslēpts) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4760,8 +4835,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index 2bd1496bec..53be9e6d5d 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -290,30 +290,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.ko :gaiviųjų gėr # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} keleiv{P is iai ių} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP} keleiv{P is iai ių} STR_QUANTITY_COAL :{WEIGHT_LONG} anglies -STR_QUANTITY_MAIL :{COMMA} pašto maiš{P as ai ų} +STR_QUANTITY_MAIL :{COMMA}{NBSP}pašto maiš{P as ai ų} STR_QUANTITY_OIL :{VOLUME_LONG} naftos -STR_QUANTITY_LIVESTOCK :{COMMA} galvij{P as ai ų} -STR_QUANTITY_GOODS :{COMMA} prekių dėž{P ė ės ių} +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}galvij{P as ai ų} +STR_QUANTITY_GOODS :{COMMA}{NBSP}prekių dėž{P ė ės ių} STR_QUANTITY_GRAIN :{WEIGHT_LONG} grūdų STR_QUANTITY_WOOD :{WEIGHT_LONG} medienos STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} geležies rūdos STR_QUANTITY_STEEL :{WEIGHT_LONG} plieno -STR_QUANTITY_VALUABLES :{COMMA} maiš{P as ai ų} brangenybių +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}maiš{P as ai ų} brangenybių STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} vario rūdos STR_QUANTITY_MAIZE :{WEIGHT_LONG} kukurūzų STR_QUANTITY_FRUIT :{WEIGHT_LONG} vaisių -STR_QUANTITY_DIAMONDS :{COMMA} dėž{P ė ės ių} deimantų +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}dėž{P ė ės ių} deimantų STR_QUANTITY_FOOD :{WEIGHT_LONG} maisto STR_QUANTITY_PAPER :{WEIGHT_LONG} popieriaus -STR_QUANTITY_GOLD :{COMMA} aukso kapš{P as ai ų} +STR_QUANTITY_GOLD :{COMMA}{NBSP}aukso kapš{P as ai ų} STR_QUANTITY_WATER :{VOLUME_LONG} vandens STR_QUANTITY_WHEAT :{WEIGHT_LONG} kviečių STR_QUANTITY_RUBBER :{VOLUME_LONG} kaučiuko STR_QUANTITY_SUGAR :{WEIGHT_LONG} cukraus -STR_QUANTITY_TOYS :{COMMA} žaislų -STR_QUANTITY_SWEETS :{COMMA} saldumynų krepšel{P is iai ių} +STR_QUANTITY_TOYS :{COMMA}{NBSP}žaislų +STR_QUANTITY_SWEETS :{COMMA}{NBSP}saldumynų krepšel{P is iai ių} STR_QUANTITY_COLA :{VOLUME_LONG} kolos STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} cukraus vatos STR_QUANTITY_BUBBLES :{COMMA} burbul{P as ai ų} @@ -360,12 +360,12 @@ STR_ABBREV_NONE :{TINY_FONT}- STR_ABBREV_ALL :{TINY_FONT}VISI # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} keleiv{P is iai ių} -STR_BAGS :{COMMA} maiš{P as ai ų} -STR_TONS :{COMMA} ton{P a os ų} -STR_LITERS :{COMMA} litr{P as ai ų} -STR_ITEMS :{COMMA} vienet{P as ai ų} -STR_CRATES :{COMMA} dėž{P ė ės ių} +STR_PASSENGERS :{COMMA}{NBSP}keleiv{P is iai ių} +STR_BAGS :{COMMA}{NBSP}maiš{P as ai ų} +STR_TONS :{COMMA}{NBSP}ton{P a os ų} +STR_LITERS :{COMMA}{NBSP}litr{P as ai ų} +STR_ITEMS :{COMMA}{NBSP}vienet{P as ai ų} +STR_CRATES :{COMMA}{NBSP}dėž{P ė ės ių} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Tamsiai mėlyna @@ -386,37 +386,37 @@ STR_COLOUR_GREY :Pilka STR_COLOUR_WHITE :Balta # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}AG -STR_UNITS_POWER_METRIC :{COMMA}AG -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}AG +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}AG +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P a os ų} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P a os ų} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P a os ų} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P a os ų} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon{P as ai ų} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr{P as ai ų} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P as ai ų} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P as ai ų} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Raktažodis: @@ -434,7 +434,7 @@ STR_BUTTON_RENAME :{BLACK}Pervadin STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Užverti langą STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Lango antraštė — tempkite ją, jei norite perkelti langą į kitą ekrano vietą STR_TOOLTIP_SHADE :{BLACK}Sumažinti langą — rodyti tik lango antraštę -STR_TOOLTIP_DEBUG :{BLACK}Rodyti papildomą NewGRF derinimo informaciją +STR_TOOLTIP_DEBUG :{BLACK}Rodyti papildomą plėtinio derinimo informaciją STR_TOOLTIP_DEFSIZE :{BLACK}Pakeisti lango dydį į numatytąjį. Spragtelėjus laikant nuspautą Ctrl klavišą, dabartinis lango dydis bus išsaugotas kaip numatytasis STR_TOOLTIP_STICKY :{BLACK}Uždrausti komandai „Užverti visus langus“ užverti šį langą (komanda „Užverti visus langus“ iškviečiama „Delete“ klavišu) STR_TOOLTIP_RESIZE :{BLACK}Tempkite už šios vietos, jei norite pakeisti lango matmenis @@ -443,6 +443,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Stačioj STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Gulščioji slakjuostė — paslenka sąrašą kairėn ar dešinėn STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Nugriauti pastatus, bėgius ar kitus objektus pasirinktame žemės plote. Velkant laikant nuspaudus Ctrl klavišą, plotas bus žymimas įstrižai. Spragtelėjus laikant nuspaustą Shift klavišą, bus parodytos numatomos išlaidos +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Rodyti paslėptus +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Rodyti paslėptus +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Rodyti paslėptus +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Rodyti paslėptus + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Įjungus šį mygtuką, sąraše bus rodomos ir paslėptos transporto priemonės +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Įjungus šį mygtuką, sąraše bus rodomos ir paslėptos transporto priemonės +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Įjungus šį mygtuką, sąraše bus rodomos ir paslėptos transporto priemonės +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Įjungus šį mygtuką, sąraše bus rodomos ir paslėptos transporto priemonės + # Query window STR_BUTTON_DEFAULT :{BLACK}Numatytas STR_BUTTON_CANCEL :{BLACK}Atšaukti @@ -454,9 +465,9 @@ STR_OSK_KEYBOARD_LAYOUT_CAPS :~!@#$%^&*()_+|Q # Measurement tooltip STR_MEASURE_LENGTH :{BLACK}Atstumas: {NUM} -STR_MEASURE_AREA :{BLACK}Sritis: {NUM} x {NUM} +STR_MEASURE_AREA :{BLACK}Plotas: {NUM} x {NUM} STR_MEASURE_LENGTH_HEIGHTDIFF :{BLACK}Atstumas: {NUM}{}Aukščių skirtumas: {HEIGHT} -STR_MEASURE_AREA_HEIGHTDIFF :{BLACK}Sritis: {NUM} x {NUM}{}Aukščių skirtumas: {HEIGHT} +STR_MEASURE_AREA_HEIGHTDIFF :{BLACK}Plotas: {NUM} x {NUM}{}Aukščių skirtumas: {HEIGHT} # These are used in buttons @@ -555,20 +566,20 @@ STR_SCENEDIT_FILE_MENU_QUIT :Išeiti ############ range for SE file menu starts ############ range for settings menu starts -STR_SETTINGS_MENU_GAME_OPTIONS :Žaidimo nustatymai -STR_SETTINGS_MENU_CONFIG_SETTINGS :Sudėtingesni nustatymai -STR_SETTINGS_MENU_SCRIPT_SETTINGS :DI / Žaidimo nustatymai -STR_SETTINGS_MENU_NEWGRF_SETTINGS :Papild. grafikos nustatymai (NewGRF) -STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Permatomumo nustatymai -STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Rodyti miestų pavadinimus -STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Rodyti stotelių pavadinimus -STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :Rodyti tarpines stoteles -STR_SETTINGS_MENU_SIGNS_DISPLAYED :Rodyti ženklus -STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Rodomi konkurentų ženklai ir pavadinimai +STR_SETTINGS_MENU_GAME_OPTIONS :Pagrindinės nuostatos +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Išplėstinės nuostatos +STR_SETTINGS_MENU_SCRIPT_SETTINGS :Dirbtinio intelekto nuostatos +STR_SETTINGS_MENU_NEWGRF_SETTINGS :Plėtinių nuostatos +STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Skaidrumo nuostatos +STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Miestų pavadinimai +STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Stotelių pavadinimai +STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :Tarpinės stotelės +STR_SETTINGS_MENU_SIGNS_DISPLAYED :Ženklai +STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Varžovų ženklai ir pavadinimai STR_SETTINGS_MENU_FULL_ANIMATION :Visa animacija STR_SETTINGS_MENU_FULL_DETAIL :Visos smulkmenos -STR_SETTINGS_MENU_TRANSPARENT_BUILDINGS :Permatomi pastatai -STR_SETTINGS_MENU_TRANSPARENT_SIGNS :Permatomi stočių ženklai +STR_SETTINGS_MENU_TRANSPARENT_BUILDINGS :Skaidrūs pastatai +STR_SETTINGS_MENU_TRANSPARENT_SIGNS :Skaidrūs ženklai ############ range ends here ############ range for file menu starts @@ -660,7 +671,7 @@ STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Ekrano nuotrauk STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Nepriartintas ekrano vaizdas STR_ABOUT_MENU_GIANT_SCREENSHOT :Fotografuoti viso ekrano vaizdą STR_ABOUT_MENU_ABOUT_OPENTTD :Apie „OpenTTD“ -STR_ABOUT_MENU_SPRITE_ALIGNER :Animacinių objektų išdėstytuvas +STR_ABOUT_MENU_SPRITE_ALIGNER :Spruklių lygiuoklė STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Rodyti/slėpti apvadus STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Perjungti paveiktų blokų spalvinimą ############ range ends here @@ -756,7 +767,7 @@ STR_GRAPH_Y_LABEL_NUMBER :{TINY_FONT}{COM STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Įprastinės veiklos pelno diagrama STR_GRAPH_INCOME_CAPTION :{WHITE}Pajamų diagrama STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Prekių vienetų pervežta -STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Kompanijos pajėgumo reitingas (maksimalus=1000) +STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Kompanijos pajėgumo reitingas (didžiausias=1000) STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Kompanijos vertė STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Krovinių pervežimo tarifai @@ -1080,7 +1091,7 @@ STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Įkelti STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Įkelti esamą padėtį į pagrindinį langą # Game options window -STR_GAME_OPTIONS_CAPTION :{WHITE}Žaidimo nustatymai +STR_GAME_OPTIONS_CAPTION :{WHITE}Pagrindinės nuostatos STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Valiuta STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Valiutos pasirinkimas @@ -1121,14 +1132,10 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzijos Laris STR_GAME_OPTIONS_CURRENCY_IRR :Irano Rialas (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - -STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automobiliai +STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automobilių eismas STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Pasirinkite, kuria kelio puse važiuoja automobiliai -STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Eismas kaire puse -STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Eismas dešine puse +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Kaire puse +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Dešine puse STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Miestų pavadinimai STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Pasirink miestų pavadinimų tipą @@ -1172,12 +1179,19 @@ STR_GAME_OPTIONS_LANGUAGE :{BLACK}Kalba STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Pasirinkite aplinkos kalbą STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Per visą ekraną -STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Pažymėkite šį langelį, jeigu norite OpenTTD žaisti visu ekranu +STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Pažymėkite šį langelį, jeigu norite OpenTTD žaisti visame ekrane STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ekrano raiška STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Pasirinkite ekrano raišką STR_GAME_OPTIONS_RESOLUTION_OTHER :Kita +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Sąsajos elementų dydis +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Pasirinkite vartotojo sąsajos elementų santykinį dydį + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normalus +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dvigubas +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Trigubas + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Bazinis grafikos rinkinys STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Pasirinkti naudojimui bazinę grafikos rinkinį STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} trūkstam{P a ų os}/sugadint{P a ų os} byl{P a ų os} @@ -1221,11 +1235,11 @@ STR_CURRENCY_PREVIEW :{LTBLUE}Perži STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}10000 svarų (£) jūsų valiuta STR_CURRENCY_CHANGE_PARAMETER :{BLACK}Keisti pasirinktos valiutos nustatymus -STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Maksimalus priešininkų skaičius: {ORANGE}{COMMA} +STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Didžiausias priešininkų skaičius: {ORANGE}{COMMA} STR_NONE :Nėra STR_FUNDING_ONLY :Tik finansavimas -STR_MINIMAL :Minimalus +STR_MINIMAL :Mažiausias STR_NUM_VERY_LOW :Labai mažas STR_NUM_LOW :Žemas STR_NUM_NORMAL :Vidutinis @@ -1271,6 +1285,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Tik lygumos STR_TERRAIN_TYPE_FLAT :Lygumos STR_TERRAIN_TYPE_HILLY :Kalvos STR_TERRAIN_TYPE_MOUNTAINOUS :Kalnai +STR_TERRAIN_TYPE_ALPINIST :Statūs kalnai STR_CITY_APPROVAL_PERMISSIVE :Atlaidus STR_CITY_APPROVAL_TOLERANT :Tolerantiškas @@ -1278,8 +1293,8 @@ STR_CITY_APPROVAL_HOSTILE :Priešiškas STR_WARNING_NO_SUITABLE_AI :{WHITE}Nerasta tinkamų DI... {}Galite parsisiųsti keletą DI naudonat 'Turinio internete' sistemą -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Sudėtingesni nustatymai +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Išplėstinės nuostatos STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtras: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Išskleisti viską STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Suskleisti viską @@ -1352,6 +1367,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Įgalinti atsit STR_CONFIG_SETTING_CITY_APPROVAL :Miestų gyventojų požiūris į triukšmą ir aplinkos darkymą: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Nustatyti miestų požiūrį į statybas, triukšmą ir kraštovaizdžio keitimą. Nuo to priklauso kompanijos reitingas bei leidimasstatyti įvairius objektus +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Didžiausias žemėlapio aukštis: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Didžiausias galimas kalnų žemėlapyje aukštis +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Negalima nustatyti tokio kalnų aukščio, nes žemėlapyje jau yra bent vienas aukštesnis kalnas STR_CONFIG_SETTING_AUTOSLOPE :Leisti keisti reljefą po pastatais, bėgiais, ir t.t.. (autoslope): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Leisti keisti reljefą po pastatais ir bėgiais, jų nepašalinant STR_CONFIG_SETTING_CATCHMENT :Aptarnaujamos teritorijos dydis priklauso nuo stotelė tipo: {STRING} @@ -1380,6 +1398,8 @@ STR_CONFIG_SETTING_INFLATION :Infliacija: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Įjungti/išjungti infliaciją (išlaidos augs truputį greičiau už atlygius) STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Didžiausias tilto ilgis: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Didžiausias galimas tilto ilgis +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Didžiausias tilto aukštis: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Didžiausias aukštis, kuriame dar galima statyti tiltus STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Didžiausias tunelio ilgis: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Didžiausias galimas tunelio ilgis STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Pirminių pramonės įmonių statybos būdas: {STRING} @@ -1459,14 +1479,14 @@ STR_CONFIG_SETTING_AUTORENEW_MONTHS :Atnaujinti tran STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Atitinkamas gyvenimas, kai transporto priemonės turėtų būti atnaujinamos STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} mėnesi{P 0 u ais ų} mažesnis STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} mėnesi{P 0 u ais ų} didesnis -STR_CONFIG_SETTING_AUTORENEW_MONEY :Minimali suma reikalinga automatiniam atnaujinimui: {STRING} -STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Minimalus būtinas banko sąskaitos likutis automatiniam transporto priemonės atnaujinimui vykdyti +STR_CONFIG_SETTING_AUTORENEW_MONEY :Mažiausia suma, reikalinga automatiniam atnaujinimui: {STRING} +STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Mažiausias būtinas banko sąskaitos likutis automatiniam transporto priemonės atnaujinimui vykdyti STR_CONFIG_SETTING_ERRMSG_DURATION :Klaidos pranešimo rodymo trukmė: {STRING} STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Klaidos pranešimų rodymo trukmė, po kurios pranešimas langas bus automatiškai užvertas. Atkreipkite dėmesį, kai kai kurie kritiniai pranešimai automatiškai nėra užveriami STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekund{P ė ės žių} STR_CONFIG_SETTING_HOVER_DELAY :Rodyti paaiškinimus: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Delsos laikas prieš parodant paaiškinimą, kai pelės žymeklis yra užvedamas virš kurio nors vartotojo sąsajos elemento. Paaiškinimas taip pat gali būti susietas ir su dešiniuoju pelės klavišu -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :atvedus žymeklį po {COMMA} sekund{P ės žių žių} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Delsos laikas prieš parodant paaiškinimą, kai pelės žymeklis yra užvedamas virš kurio nors vartotojo sąsajos elemento. Paaiškinimas taip pat gali būti susietas ir su dešiniuoju pelės klavišu, jei delsos laikas nustatomas į 0 milisekundžių +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :atvedus žymeklį po {COMMA} milisekund{P ės žių žių} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :spragtelėjus dešinįjį pelės klavišą STR_CONFIG_SETTING_POPULATION_IN_LABEL :Rodyti miestų gyventojų skaičių šalia pavadinimo: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Rodyti miestų gyventojų skaičių žemėlapio pažymėtoje vietoje @@ -1617,13 +1637,13 @@ STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Skleisti aplink STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Drausti infrastruktūros plėtimą kai nėra tam tinkamų transporto priemonių: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Kai įjungta, infrastruktūra yra galima, jeigu ten taip pat yra galimų automobilių. Tam kad užkirstų kelią, laiko ir pinigų švaistimo nereikalingai infrastruktūrai STR_CONFIG_SETTING_MAX_TRAINS :Didžiausias traukinių skaičius vienam žaidėjui: {STRING} -STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Maksimalus skaičius traukinių, kuriuos kompanija gali turėti +STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Didžiausias skaičius traukinių, kuriuos kompanija gali turėti STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Didžiausias automobilių skaičius vienam žaidėjui: {STRING} -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Maksimalus skaičius kelių transporto priemonių, kuriuos kompanija gali turėti +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Didžiausias skaičius automobilių, kuriuos kompanija gali turėti STR_CONFIG_SETTING_MAX_AIRCRAFT :Didžiausias lėktuvų skaičius vienam žaidėjui: {STRING} -STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Maksimalus skaičius lėktuvų, kuriuos kompanija gali turėti +STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Didžiausias skaičius lėktuvų, kuriuos kompanija gali turėti STR_CONFIG_SETTING_MAX_SHIPS :Didžiausias laivų skaičius vienam žaidėjui: {STRING} -STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Maksimalus skaičius laivų, kuriuos kompanija gali turėti +STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Didžiausias skaičius laivų, kuriuos kompanija gali turėti STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Uždrausti kompiuteriui traukinius: {STRING} STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Įjungus šį nustatymą, statyti traukinius kompiuterio žaidėjui bus neįmanoma @@ -1643,13 +1663,13 @@ STR_CONFIG_SETTING_AI_PROFILE_HARD :Sunkus STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Leisti DI Interneto režime: {STRING} STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Leisti DI kompiuterio žaidėjus dalyvauti Interneto režime STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opkodai prieš skriptus yra nevykdomi: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Maksimalus skaičius skaičiavimų žingsnių, kuriuos scenarijus vykdo viename ėjime +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Didžiausias skaičius skaičiavimų žingsnių, kuriuos scenarijus vykdo viename ėjime STR_CONFIG_SETTING_SERVINT_ISPERCENT :Techninės apžiūros intervalas procentais: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Įjungus šią nuostatą, techninė apžiūra bus vykdoma vos tik patikimumas nukris iki tam tikros procentinės vertės. Priešingu atveju techninė apžiūra bus vykdoma kas nustatytą dienų skaičių STR_CONFIG_SETTING_SERVINT_TRAINS :Traukinių techninės apžiūros intervalas: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Numatytoji naujo traukinio techninės apžiūros intervalo reikšmė -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dien{P a os ų}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dien{P a os ų}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Išjungta STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Automobilių techninės apžiūros intervalas: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Numatytoji naujo automobilio techninės apžiūros intervalo reikšmė @@ -1660,7 +1680,7 @@ STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Numatytoji nauj STR_CONFIG_SETTING_NOSERVICE :Atjungti techninę apžiūrą, jei gedimai nenaudojami: {STRING} STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Jeigu įjungta, tada automobiliams nebus atliekama techninė apžiūra, jeigu jie negalės sugesti STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Aktyvinti vagonų greičio apribojimą: {STRING} -STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Įjungus šią nuostatą, vagonų maksimalus leistinas greitis įtakos maksimalų viso traukinio greitį +STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Įgalinus šią nuostatą, vagonų didžiausias leistinas greitis įtakos viso traukinio greitį STR_CONFIG_SETTING_DISABLE_ELRAILS :Uždrausti elektrinius bėgius: {STRING} STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Įjungiant šį nustatymą išjungia elektrifikuotų bėgių reikalavimą padaryti elektrinius variklius veikti ant jų @@ -1703,7 +1723,7 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Spalvotos nauji STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Metai, kai laikraščių antraštės tampa spalvotos. Iki tol jos būna monochominės STR_CONFIG_SETTING_STARTING_YEAR :Žaidimo pradžia: {STRING} STR_CONFIG_SETTING_SMOOTH_ECONOMY :Tolygi ekonomika (daug, bet nežymių pokyčių): {STRING} -STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Jeigu įjungta, pramonės gamybos pajėgumas kis dažniau ir mažesniais žingsniais. Šis nustatymas dažniausiai neturi efekto, jeigu pramonės tipai yra numatyti NewGRF +STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Įgalinus nuostatą pramonės įmonių gamybos pajėgumai kis dažniau ir mažesniais žingsniais. Ši nuostata greičiausiai neturės jokios įtakos, jei pramonės įmonė yra aprašyta papildomame plėtinyjeipai yra numatyti NewGRF STR_CONFIG_SETTING_ALLOW_SHARES :Leisti pirkti kitų kompanijų akcijas: {STRING} STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Leisti pirkti bei parduoti kitų kompanijų akcijas. Akcijos yra platinamos tik įmonei sulaukus tam tikro amžiaus STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Grynojo pelno dalis, mokama tiekėjų sistemoms: {STRING} @@ -1761,7 +1781,7 @@ STR_CONFIG_SETTING_SNAP_RADIUS :Langų traukos STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :Atstumas tarp langelių. Prieš tai pajudintas langelis automatiškai sulygiuojamas su šalia esančiu langeliu STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} piksel{P 0 is iai ių} STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Išjungta -STR_CONFIG_SETTING_SOFT_LIMIT :Didž. skaičius langų (nelipnių): {STRING} +STR_CONFIG_SETTING_SOFT_LIMIT :Didžiausias nelipnių langų skaičius: {STRING} STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Skaičius nelipnių atidarytų langelių. Prieš tai seni atidaryti langeliai automatiškai užsidarys, kad paliktų daugiau vietos ekrane naujiems langeliams STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :Išjungta @@ -1789,9 +1809,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nenaudojamas STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Pradinis miestų dydžio daugiklis: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Vidutinis miestų dydis santykiu su normaliais miestais žaidimo pradžioje -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Pasiskirstymo grafą atnaujinti kas {STRING} dien{P 0:2 ą as ų} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Pasiskirstymo grafą atnaujinti kas {STRING}{NBSP}dien{P 0:2 ą as ų} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Laiko trukmė tarp grafo mazgų perskaičiavimo operacijų. Kiekviena operacija perskaičiuoja tik vieną mazgą, o ne visą grafą; tad jei šioje nuostatoje nurodytą, kad, pavyzdžiui, grafas bus atnaujinamas kas 4-ias dienas, tai nereiškia, kad jis visas bus atnaujintas, o atnaujinti bus tik kai kurie mazgai. Kuo trumpesnė trukmė tarp perskaičiavimų, tuo daugiau grafo perskaičiavimas sueikvos procesoriaus išteklių, tačiau pats grafas geriau atspindės realią situaciją. Kita vertus, ilgesnė trukmė mažiau apkraus procesorių, tačiau gali tekti ilgėliau palaukti, kol nauji maršrutai bus įtraukti į grafą. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Pasiskirstymo grafo perskaičiavimas užtruks {STRING} dien{P 0:2 ą as ų} +STR_CONFIG_SETTING_LINKGRAPH_TIME :Pasiskirstymo grafo perskaičiavimas užtruks {STRING}{NBSP}dien{P 0:2 ą as ų} STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Laiko trukmė skirta pilnam krovinių paskirstymo grafui perskaičiuoti. Nustačius per mažą reikšmę, žaidimas gali trumpam pakibti, kol bus baigti skaičiavimai. Kita vertus, kuo ilgesnė ši trukmė, tuo vėliau į grafą bus įtraukti maršrutų pakeitimai. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :originalus STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimetriškas @@ -1815,7 +1835,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :„Simetriškas STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Pasiskirstymo režimas paštui: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :„Simetriškas“ reiškia, jog iš stoties A į stotį B bus išsiųsta apytiksliai tiek pat pašto maišų, kaip ir iš B į A. „Asimetriško“ režimo atveju, pašto srautai pirmyn ir atgal gali skirtis. „Originalus“ reiškia, kad pašto srautai nebus reguliuojami ir veiks kaip ir originaliame TTD žaidime. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Pasiskirstymo režimas „šarvuotoms“ krovinių rūšims: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :„Šarvuotų“ krovinių rūšiai priskiriamos brangenybės (vidutinio klimato juostoje), deimantai (subtropinio klimato juostoje) ir auksas (subarktinio klimato juostoje). Įvairūs NewGRF papildiniai gali šitai pakeisti. „Simetriškas“ reiškia, jog iš stoties A į stotį B bus vežamas apytiksliai toks pat krovinių srautas, kaip ir iš B į A. „Asimetriško“ režimo atveju, srautai pirmyn ir atgal gali skirtis. „Originalus“ reiškia, kad srautai nebus reguliuojami ir veiks kaip ir originaliame TTD žaidime. Žaidžiant subarktinio klimato juostoje, rekomenduojama pasirinkti asimetrišką krovinių paskirstymo algoritmą, nes bankai, priėmę auksą, atgal nieko nesiųs. Kitose klimato juostose galima pasirinkti ir asimetrišką algoritmą, nes kroviniai gali keliauti į abi maršruto puses. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :„Šarvuotų“ krovinių rūšiai priskiriamos brangenybės (vidutinio klimato juostoje), deimantai (subtropinio klimato juostoje) ir auksas (subarktinio klimato juostoje), bet tai dar gali priklausyti ir nuo aktyvių plėtinių. „Simetriškas“ reiškia, jog iš stoties A į stotį B bus vežamas apytiksliai toks pat krovinių srautas, kaip ir iš B į A. „Asimetriško“ režimo atveju, srautai pirmyn ir atgal gali skirtis. „Originalus“ reiškia, kad srautai nebus reguliuojami ir veiks kaip ir originaliame TTD žaidime. Žaidžiant subarktinio klimato juostoje, rekomenduojama pasirinkti asimetrišką krovinių paskirstymo algoritmą, nes bankai, priėmę auksą, atgal nieko nesiųs. Kitose klimato juostose galima pasirinkti ir asimetrišką algoritmą, nes kroviniai gali keliauti į abi maršruto puses. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Pasiskirstymo režimas kitoms krovinių rūšims: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :„Simetriškas“ reiškia, jog iš stoties A į stotį B bus vežamas apytiksliai toks pat krovinių srautas, kaip ir iš B į A. „Asimetriško“ režimo atveju, srautai pirmyn ir atgal gali skirtis. „Originalus“ reiškia, kad srautai nebus reguliuojami ir veiks kaip ir originaliame TTD žaidime. Rekomenduojama pasirinkti arba asimetrinį, arba originalų algoritmą. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Pasiskirstymo tikslumas: {STRING} @@ -1907,11 +1927,11 @@ STR_CONFIG_ERROR :{WHITE}Klaida n STR_CONFIG_ERROR_ARRAY :{WHITE}... klaida masyve '{STRING}' STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... netinkama reikšmė '{STRING}' kintamąjam '{STRING}' STR_CONFIG_ERROR_TRAILING_CHARACTERS :{WHITE}... nustatymo eilutės gale netinkami simboliai '{STRING}' -STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... ignoruojamas NewGRF '{STRING}': GRF ID dublikatas '{STRING}' -STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... ignoruojamas klaidingas NewGRF '{STRING}': {STRING} +STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... plėtinys '{STRING}' ignoruojamas: GRF ID dublikatas '{STRING}' +STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... ignoruojamas klaidingas plėtinys '{STRING}': {STRING} STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :nerastas STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :nesaugus statiniam naudojimui -STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :sisteminis NewGRF +STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :sisteminis plėtinys STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :nesuderinamas su šia OpenTTD versija STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :nežinomas STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... netinkamas suspaudimo lygis '{STRING}' @@ -1934,7 +1954,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Žaisti STR_INTRO_GAME_OPTIONS :{BLACK}Pagrindinės nuostatos STR_INTRO_HIGHSCORE :{BLACK}Nugalėtojų lentelė -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Išplėstinės nuostatos +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Išplėstinės nuostatos STR_INTRO_NEWGRF_SETTINGS :{BLACK}Plėtiniai STR_INTRO_ONLINE_CONTENT :{BLACK}Interneto turinys STR_INTRO_SCRIPT_SETTINGS :{BLACK}Dirbtinio intelekto nuostatos @@ -1954,7 +1974,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Žaislin STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Rodyti pagrindines žaidimo nuostatas STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Rodyti nugalėtojų lentelę -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Rodyti sudėtingesnes žaidimo nuostatas +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Rodyti išplėstines nuostatas STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Rodyti parsisiųstus plėtinius ir jų nuostatas STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Tikrinti, ar nėra naujų plėtinių arba atnaujinimų jau atsisiųstiems plėtiniams STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Rodyti dirbtinio intelekto nuostatas @@ -1994,6 +2014,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Žaidia STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magiškas buldozeris (pašalina gamyklas ir nepajudinamus objektus): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tuneliai gali susikirsti: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Reaktyviniai lėktuvai neduš (dažnai) mažuose oro uostuose: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Didžiausias kalnų aukštis: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Keisti didžiausią leistiną kalnų aukštį STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Normalus klimatas STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Sub-arktinis klimatas STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-tropinis klimatas @@ -2109,7 +2131,7 @@ STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Vardas STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Žaidimo pavadinimas STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} - {COMMA}/{COMMA} STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Žaidejai -STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Žaidžia / maksimaliai žaidėjų +STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Klientų tinkle / Didžiausias leistinas skaičius STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Žemėlapio dydis STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Žaidimo žemėlapio dydis{}Pragtelėjus rušiuojama pagal dydį @@ -2136,7 +2158,7 @@ STR_NETWORK_SERVER_LIST_PASSWORD :{SILVER}Apsaugo STR_NETWORK_SERVER_LIST_SERVER_OFFLINE :{SILVER}SERVERIS IŠJUNGTAS STR_NETWORK_SERVER_LIST_SERVER_FULL :{SILVER}SERVERIS PILNAS STR_NETWORK_SERVER_LIST_VERSION_MISMATCH :{SILVER}VERSIJŲ NESUTAPIMAS -STR_NETWORK_SERVER_LIST_GRF_MISMATCH :{SILVER}PAPILD. GRAFIKOS NEATITIKIMAS +STR_NETWORK_SERVER_LIST_GRF_MISMATCH :{SILVER}NEATITINKA PLĖTINYS STR_NETWORK_SERVER_LIST_JOIN_GAME :{BLACK}Jungtis STR_NETWORK_SERVER_LIST_REFRESH :{BLACK}Atnaujinti serverį @@ -2163,8 +2185,8 @@ STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Apsaugok STR_NETWORK_START_SERVER_UNADVERTISED :Ne STR_NETWORK_START_SERVER_ADVERTISED :Taip STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} klient{P as ai ų} -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Maksimalus klientų skaičius: -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Pasirinkite maksimalų klientų skaičių. Nebūtinai visos jungtys turi buti užpildytos +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Didžiausias klientų skaičius: +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Pasirinkite didžiausią klientų skaičių. Nebūtinai visos jungtys turi būti užpildytos STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} kompanij{P a os ų} STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Daugiausia kompanijų: STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}Riboti serverį iki tam tikro skaičiaus kompanijų @@ -2315,7 +2337,7 @@ STR_NETWORK_CHAT_OSKTITLE :{BLACK}Įveskit STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Nerastas tinklo įrenginys arba sukompiliuota be ENABLE_NETWORK STR_NETWORK_ERROR_NOSERVER :{WHITE}Nerado nei vieno žaidimo tinkle STR_NETWORK_ERROR_NOCONNECTION :{WHITE}Serveris neatsakė į užklausą -STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Nepavyko prisijungti dėl Papild. grafikos neatitikimo +STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Nepavyko prisijungti dėl netinkamo plėtinio STR_NETWORK_ERROR_DESYNC :{WHITE}Žaidimo tinkle sinchronizacija nepavyko STR_NETWORK_ERROR_LOSTCONNECTION :{WHITE}Nutruko ryšys STR_NETWORK_ERROR_SAVEGAMEERROR :{WHITE}Negali atverti išsaugoto žaidimo @@ -2341,7 +2363,7 @@ STR_NETWORK_ERROR_CLIENT_DESYNC :sinchronizacijo STR_NETWORK_ERROR_CLIENT_SAVEGAME :negali užkrauti žemėlapio STR_NETWORK_ERROR_CLIENT_CONNECTION_LOST :prarastas ryšys STR_NETWORK_ERROR_CLIENT_PROTOCOL_ERROR :protokolo klaida -STR_NETWORK_ERROR_CLIENT_NEWGRF_MISMATCH :Papild. grafikos neatitikimas +STR_NETWORK_ERROR_CLIENT_NEWGRF_MISMATCH :Neatitinka plėtinys STR_NETWORK_ERROR_CLIENT_NOT_AUTHORIZED :Neautorizuota STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :gautas neteisingas arba nelauktas paketas STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :bloga versija @@ -2462,17 +2484,17 @@ STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Taip, pa STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ne, išeiti iš OpenTTD # Transparency settings window -STR_TRANSPARENCY_CAPTION :{WHITE}Permatomumo nustatymai -STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Nustatyti stočių ženklų permatomumą. Ctrl+Click to užrakinti. -STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Nustatyti medžių permatomumą . Ctrl+Click to užrakinti. -STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Nustatyti namų permatomumą . Ctrl+Click užrakinti. -STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Nustatyti pramoninių pastatų permatomumą . Ctrl+Click užrakinti -STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Perjungti statomų pastatų, tokių kaip stotys, garažai ir kontrolės punktai, permatomumą. Ctrl+Click užrakinti. -STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Nustatyti tiltų permatomumą. Ctrl+Click užrakinti -STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Perjungti pastatų, tokių kaip švyturiai ir antenos, permatomumą.Ctrl+Click užrakinti -STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Perjungti laidų permatomumą . Ctrl+Click užrakinti. -STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Perjungti krovimo indikatorių permatomumą. Ctrl+Click užrakinti -STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Nustatyti objektus nematomais vietoje permatomų +STR_TRANSPARENCY_CAPTION :{WHITE}Skaidrumo nuostatos +STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Perjungti ženklų skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Perjungti medžių skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Perjungti namų skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Perjungti pramonės įmonių skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Perjungti stotelių, garažų ir panašių pastatų skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Perjungti tiltų skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Perjungti švyturių, siųstuvų ir panašių statinių skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Perjungti laidų skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Perjungti krovos indikatorių skaidrumą. Spragtelėjus laikant nuspaustą Ctrl klavišą, nuostata bus užrakinta +STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Pasirinkti tarp skaidrių ir nematomų objektų # Linkgraph legend window STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Krovinių srautai @@ -2545,7 +2567,7 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Statyti STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Pasirinkti stoties klasę rodymui STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Pasirinkti stoties statymo tipą -STR_STATION_CLASS_DFLT :Numatytoji stotis +STR_STATION_CLASS_DFLT :Numatytoji stotelė STR_STATION_CLASS_WAYP :Keliarodžiai # Signal window @@ -2783,7 +2805,7 @@ STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stotelė STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Oro uosto klasė: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_AIRPORT_NAME :{BLACK}Oro uosto pavadinimas: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Oro uosto žemės plotelio pavadinimas: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}Plėtinys: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Krovinys priimtas: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Geležinkelių greičio limitas: {LTBLUE}{VELOCITY} @@ -2836,7 +2858,7 @@ STR_LAI_TREE_NAME_TREES :Medžiai STR_LAI_TREE_NAME_RAINFOREST :Atogrąžų miškas STR_LAI_TREE_NAME_CACTUS_PLANTS :Kaktusiniai augalai -STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION :Geležinkelio stotis +STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION :Geležinkelio stotelė STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR :Lėktuvo angaras STR_LAI_STATION_DESCRIPTION_AIRPORT :Oro uostas STR_LAI_STATION_DESCRIPTION_TRUCK_LOADING_AREA :Sunkvežimių pakrovimo aikštelė @@ -2884,7 +2906,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Kompanijos žem STR_ABOUT_OPENTTD :{WHITE}Apie OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Pradinės versijos teisės priklauso {COPYRIGHT} 1995 Chris Sawyer, Visos teisės saugomos STR_ABOUT_VERSION :{BLACK}OpenTTD versija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 OpenTTD komanda +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD komanda # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Išsaugoti žaidimą @@ -2919,6 +2941,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Miestų kiekis: STR_MAPGEN_DATE :{BLACK}Pradžios data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Pramonės įmonių kiekis: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Didžiausias leistinas aukštis: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Padidinti didžiausią leistiną aukštį vienetu +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Sumažinti didžiausią leistiną aukštį vienetu STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Sniego linijos aukštis: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Paaukštinti sniego liniją STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Pažeminti sniego liniją @@ -2948,6 +2973,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Žemėla STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Dydis: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Keisti didžiausią leistiną aukštį STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Pakeisti sniego linijos aukštį STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Keisti pradžios metus @@ -2980,48 +3006,48 @@ STR_GENERATION_PREPARING_SCRIPT :{BLACK}Skriptas STR_GENERATION_PREPARING_GAME :{BLACK}Ruošiamas žaidimas # NewGRF settings -STR_NEWGRF_SETTINGS_CAPTION :{WHITE}Papild. grafikos nustatymai (NewGRF) -STR_NEWGRF_SETTINGS_INFO_TITLE :{WHITE}Išsami NewGRF informacija -STR_NEWGRF_SETTINGS_ACTIVE_LIST :{WHITE}Aktyvios NewGRF bylos -STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE}Neaktyvios NewGRF bylos +STR_NEWGRF_SETTINGS_CAPTION :{WHITE}Plėtinių nuostatos +STR_NEWGRF_SETTINGS_INFO_TITLE :{WHITE}Išsami plėtinio informacija +STR_NEWGRF_SETTINGS_ACTIVE_LIST :{WHITE}Aktyvūs plėtiniai +STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE}Neaktyvūs plėtiniai STR_NEWGRF_SETTINGS_SELECT_PRESET :{ORANGE}Rinkinys: -STR_NEWGRF_FILTER_TITLE :{ORANGE}Įrašo filtravimas: -STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Įkrauti pasirinktą nuostatų rinkinį +STR_NEWGRF_FILTER_TITLE :{ORANGE}Filtras: +STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Įkelti pasirinktą plėtinių rinkinį STR_NEWGRF_SETTINGS_PRESET_SAVE :{BLACK}Išsaugoti rinkinį -STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Išsaugoti esamą sąrašą kaip rinkinį -STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Įvesti vardą nuostatai +STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Išsaugoti esamą sąrašą kaip plėtinių rinkinį +STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Įvesti rinkinio pavadinimą STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Ištrinti rinkinį -STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Ištrinti pasirinktą nuostatų rinkinį +STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Ištrinti pasirinktą plėtinių rinkinį STR_NEWGRF_SETTINGS_ADD :{BLACK}Pridėti -STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Įtraukti pažymėtus Papild. grafikos failus į jūsų nustatymus +STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Įtraukti pasirinktą plėtinį į aktyvių plėtinių sąrašą STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK}Nuskaityti dar kartą failus -STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK}Atnaujinti prieinamų Papild. grafikos failų sąrašą +STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK}Atnaujinti galimų plėtinių sąrašą STR_NEWGRF_SETTINGS_REMOVE :{BLACK}Pašalinti -STR_NEWGRF_SETTINGS_REMOVE_TOOLTIP :{BLACK}Pašalinti pažymėtą Papild. grafikos failą iš sąrašo +STR_NEWGRF_SETTINGS_REMOVE_TOOLTIP :{BLACK}Pašalinti pasirinktą plėtinį iš sąrašo STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Aukštyn -STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Perkelti pažymėtus Papild. grafikos failus sąraše aukštyn +STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Paslinkti pasirinktą plėtinį sąrašu aukštyn STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Žemyn -STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Perkelti pažymėtus Papild. grafikos failus sąraše žemyn +STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Paslinkti pasirinktą plėtinį sąrašu žemyn STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Atnaujinti -STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Atnaujinti grafikos failus, jei yra įdiegta naujesnė versija -STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Įdiegtų papild. grafikos failų sąrašas. +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Atnaujinti plėtinius, jei yra įdiegta naujesnė versija +STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Aktyvių plėtinių sąrašas -STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Nustatyti parametrus -STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Rodyti parametrus -STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Kaitalioti paletę -STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Kaitalioja parinkto NewGRF paletę.{}Darykite jei pajungta grafika nuspalvinta rožine spalva -STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Pritaikyti pakeitimus +STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Plėtinio nuostatos +STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Rodyti nuostatas +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Perjungti spalvų paletę +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Perjunkite spalvų paletę, jei pasirinkto plėtinio objektai žaidime yra nuspalvinti rožine spalva +STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Taikyti pokyčius STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Rasti ieškomą turinį tinkle STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Patikrinti ar trūkstamas turinys gali būti rastas internete -STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Failo vardas: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Failo pavadinimas: {SILVER}{STRING} STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}GRF ID: {SILVER}{STRING} STR_NEWGRF_SETTINGS_VERSION :{BLACK}Versija: {SILVER}{NUM} STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Anksčiausia suderinama versija: {SILVER}{NUM} -STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5suma: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5 suma: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Paletė: {SILVER}{STRING} -STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Parametrai: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Nuostatos: {SILVER}{STRING} STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}Informacijos nėra STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}Atitinkamas failas nerastas @@ -3030,57 +3056,60 @@ STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Nesuderina # NewGRF save preset window STR_SAVE_PRESET_CAPTION :{WHITE}Išsaugoti rinkinį -STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Sąrašas visų rinkinių +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Visų rinkinių sąrašas STR_SAVE_PRESET_TITLE :{BLACK}Įveskite rinkinio pavadinimą STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Šiuo metu pasirinktas rinkinio pavadinimas STR_SAVE_PRESET_CANCEL :{BLACK}Atšaukti STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Nieko nedaryti ir grįžti atgal STR_SAVE_PRESET_SAVE :{BLACK}Išsaugoti -STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Iššsaugoti rinkinį pasiriktu pavadinimu +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Išsaugoti rinkinį pasiriktu pavadinimu # NewGRF parameters window -STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Pakeisti NewGRF parametrus -STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Uždaryti +STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Plėtinio nuostatos +STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Užverti STR_NEWGRF_PARAMETERS_RESET :{BLACK}Atstatyti -STR_NEWGRF_PARAMETERS_RESET_TOOLTIP :{BLACK}Nustayti pradines reikšmes visiems parametrams -STR_NEWGRF_PARAMETERS_DEFAULT_NAME :Parametras {NUM} +STR_NEWGRF_PARAMETERS_RESET_TOOLTIP :{BLACK}Atstatyti pradines reikšmes visoms nuostatoms +STR_NEWGRF_PARAMETERS_DEFAULT_NAME :Nuostata {NUM} STR_NEWGRF_PARAMETERS_SETTING :{STRING}: {ORANGE}{STRING} -STR_NEWGRF_PARAMETERS_NUM_PARAM :{LTBLUE}Parametrų skaičius: {ORANGE}{NUM} +STR_NEWGRF_PARAMETERS_NUM_PARAM :{LTBLUE}Nuostatų skaičius: {ORANGE}{NUM} # NewGRF inspect window STR_NEWGRF_INSPECT_CAPTION :{WHITE}Apžiūrėti - {STRING} -STR_NEWGRF_INSPECT_PARENT_BUTTON :{BLACK}Tėvas -STR_NEWGRF_INSPECT_PARENT_TOOLTIP :{BLACK}Apžiūrėti objektą iš tėvo apimties +STR_NEWGRF_INSPECT_PARENT_BUTTON :{BLACK}Viršobjektis +STR_NEWGRF_INSPECT_PARENT_TOOLTIP :{BLACK}Apžiūrėti objektą iš viršobjekčio srities STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT :{STRING} ties {HEX} STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_OBJECT :Objektas -STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_RAIL_TYPE :Geležinkėlio tipas +STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_RAIL_TYPE :Bėgio tipas -STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF kintamojo 60+x parametras (šešioliktainėje sist.) +STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Plėtinio kintamojo 60+x parametras (šešioliktainėje sistemoje) # Sprite aligner window -STR_SPRITE_ALIGNER_CAPTION :{WHITE}Išdėstymo animacinis objektas {COMMA} ({STRING}) -STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Kitas animacinis objektas -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Pereiti prie kito animacinio objekto praleidžiant visus pseudo/spalvinimo/šriftų objektus peršokant į pradžią pabaigoje -STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Pereiti prie animacinio objekto -STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Pereiti prie nurodyto animacinio objekto. Jeigu objektas nėra įprastas animacinis objektas, pereiti prie kito įprasto -STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Buvęs animacinis objektas -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Pereiti prie buvusio animacinio objekto praleidžiant visus pseudo/spalvinimo/šriftų objektus peršokant į pabaigą pradžioje -STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Atvaizdavimas dabartinio pasirinkto sprite. Suderinamumas yra ignoruojamas, rengiant šį sprite -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Perkelti sprite aplink, keičiant X ir Y atsvaras -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X atsvara: {NUM}, Y atsvara: {NUM} -STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Pasirinkti sprite -STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pasirinkite sprite iš bet kurios vietos ekrane +STR_SPRITE_ALIGNER_CAPTION :{WHITE}Lygiuojamas spruklys {COMMA} ({STRING}) +STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Tolesnis spruklys +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Įkelti tolesnį spruklį +STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Nurodyti spruklį +STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Įkelti nurodytą spruklį. Jei nurodytas spruklys nėa normalus, įkelti tolesnį normalų +STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Ankstesnis spruklys +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Įkelti ankstesnį spruklį +STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Pasirinkto spruklio atvaizdas, nekreipiant dėmesio į lygiavimą +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Paslinkti spruklį, keičiant X ir Y poslinkius +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Atkurti +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Atkurti numatytuosius santykinius poslinkius +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X poslinkis: {NUM}, Y poslinkis: {NUM} (Absoliutus) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X poslinkis: {NUM}, Y poslinkis: {NUM} (Santykinis) +STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Pasirinkti spruklį +STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pasirinkti spruklį iš bet kurios vietos ekrane -STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}Eiti į sprite +STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}Įkelti spruklį # NewGRF (self) generated warnings/errors STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING} STR_NEWGRF_ERROR_MSG_WARNING :{RED}Įspėjimas: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Klaida: {SILVER}{STRING} -STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatalinė klaida: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ištiko nepataisoma NewGRF klaida: {}{STRING} -STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} neveiks su TTDPatch versija nurodyta pagal OpenTTD. +STR_NEWGRF_ERROR_MSG_FATAL :{RED}Lemtingoji klaida: {SILVER}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Įvyko lemtingoji plėtinio klaida: {}{STRING} +STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} neveiks su TTDPatch versija nurodyta pagal OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} skirtas {STRING} TTD versijai. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} yra pritaikytas naudojimui su {STRING} STR_NEWGRF_ERROR_INVALID_PARAMETER :Neteisingas parametras {1:STRING}: parametras {STRING} ({NUM}) @@ -3088,9 +3117,9 @@ STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} turi STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} turi būti įkeltas po {STRING} STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} reikalauja OpenTTD versijos {STRING} arba naujesnės STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :GRF failas, kurį turėjo išversti -STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Įkelta per daug NewGRF -STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Įkėlimas {1:STRING} kaip statinio NewGRF su {STRING} gali sukelti desinchronizacijas -STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Netikėtas spruklys (spruklys {3:NUM}) +STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Įkelta per daug plėtinių +STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Plėtinio {1:STRING} įkėlimas su {STRING} gali išderinti žaidimą +STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Netikėtas spruklys ({3:NUM}) STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Nežinoma veiksmo 0 savybė {4:HEX} (spruklys {3:NUM}) STR_NEWGRF_ERROR_INVALID_ID :Bandymas panaudoti neteisingą ID (spruklys {3:NUM}) STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} turi sugadintą spruklį. Visi sugadinti sprukliai bus rodomi kaip raudoni klaustukai (?) @@ -3099,7 +3128,7 @@ STR_NEWGRF_ERROR_READ_BOUNDS :Skaitymas už p STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Šiuo metu naudojamam grafikos rinkiniui trūksta keleto spruklių.{}Atnaujinkite pagrindinį grafikos rinkinį STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Šiuo metu naudojamam pagrindinės grafikos rinkiniui trūsta keleto spruklių. {}Atnaujinkite pagrindinės grafikos rinkinį. {} Kadangi žaidžiate {YELLOW} negalutinę, vis dar kuriamą OpenTTD versiją, {WHITE}, jums, ko gero, reikėtų įdiegti atitinkamą{YELLOW}naujausią, negalutinį pagrindinės grafikos rinkinį.{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :Pageidautas GRF resursas yra neprieinamas (spruklys {3:NUM}) -STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} buvo išjungta: {STRING} +STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} buvo išjungtas {2:STRING} STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Neteisingas/nežinomas spruklio išdėstymo formatas (spruklys {3:NUM}) # NewGRF related 'general' warnings @@ -3108,12 +3137,12 @@ STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Jūs no STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Negalima pridėti failo: pasikartojantis GRF ID STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Atitinkamas failas nerastas (panaudotas suderinamas grafikos failas) -STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Neįmanoma pridėti failo: pasiektas NewGRF failų limitas +STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Neįmanoma pridėti failo: pasiektas plėtinių failų limitas STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Suderinami grafikos failai panaudoti vietoj trūkstamų STR_NEWGRF_DISABLED_WARNING :{WHITE}Trūkstami grafikos failai nenaudojami STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}Trūksta GRF failų -STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Paleidimas gali užlaužti OpenTTD. Neraportuokite šios rūšies gedimų!{}Ar norite paleisti toliau? +STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Paleidimas gali išderinti ar užstrigdinti OpenTTD. Nepildykite klaidų pranešimų dėl šių problemų.{}Ar norite paleisti žaidimą? # NewGRF status STR_NEWGRF_LIST_NONE :Nėra @@ -3122,14 +3151,14 @@ STR_NEWGRF_LIST_COMPATIBLE :{YELLOW}Rasti s STR_NEWGRF_LIST_MISSING :{RED}Trūkstami failai # NewGRF 'it's broken' warnings -STR_NEWGRF_BROKEN :{WHITE}NewGRF elgesys '{0:STRING}' gali desinchronizuoti ir/arba nutraukti žaidimą -STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Tai pakeitė varomo vagono būseną '{1:ENGINE}' kai ji nėra depe. -STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Tai pakeitė transporto priemonės '{1:ENGINE}' ilgį kai ji nėra depe -STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Transporto priemonės '{1:ENGINE}' talpa pasikeitė jai nesant depe -STR_BROKEN_VEHICLE_LENGTH :{WHITE}Traukinys '{VEHICLE}' priklausantis '{COMPANY}' yra netinkamo ilgio. Tai tikriausiai nutiko dėl netinkamo NewGRF. Žaidimas gali būti išsinchronizuotas arba išjungtas +STR_NEWGRF_BROKEN :{WHITE}Plėtinys '{0:STRING}' gali išderinti ar net nutraukti žaidimą. +STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Transporto priemonės '{1:ENGINE}' būsena pasikeitė jai nesant garaže/depe/angare +STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Transporto priemonės '{1:ENGINE}' ilgis pasikeitė jai nesant garaže/depe/angare +STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Transporto priemonės '{1:ENGINE}' talpa pasikeitė jai nesant garaže/depe/angare +STR_BROKEN_VEHICLE_LENGTH :{WHITE}Traukinys '{VEHICLE}' priklausantis '{COMPANY}' yra netinkamo ilgio. Tai tikriausiai nutiko dėl netinkamo plėtinio. Žaidimas gali būti išderintas ar net išjungtas -STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' teikia neteisingą informaciją -STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}'{1:ENGINE}' variklio krovinio/pertvarkymo informacija skiriasi nuo pirkinių sąrašo po pastatymo. Tai gali sukelti neteisingus automatiško atnaujinimo arba pertvarkymo rezultatus +STR_NEWGRF_BUGGY :{WHITE}Plėtinys '{0:STRING}' teikia neteisingą informaciją +STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Transporto priemonės '{1:ENGINE}' talpa skiriasi nuo nurodytos galimų priemonių sąraše. Automatinis atnaujinimas gali tinkamai neveikti STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}'{1:STRING}' sukėle begalinį ciklą produkcijos atgaliniame kvietime STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Kvietimas {1:HEX} grąžino nežinomą/klaidingą atsakymą {2:HEX} @@ -3137,17 +3166,17 @@ STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Kvietima STR_NEWGRF_INVALID_CARGO : STR_NEWGRF_INVALID_CARGO_ABBREV :?? STR_NEWGRF_INVALID_CARGO_QUANTITY :{COMMA} vnt. -STR_NEWGRF_INVALID_ENGINE : -STR_NEWGRF_INVALID_INDUSTRYTYPE : +STR_NEWGRF_INVALID_ENGINE : +STR_NEWGRF_INVALID_INDUSTRYTYPE : # Placeholders for other invalid stuff, e.g. vehicles that have gone (Game Script). STR_INVALID_VEHICLE : # NewGRF scanning window -STR_NEWGRF_SCAN_CAPTION :{WHITE}Tikrinami NewGRF -STR_NEWGRF_SCAN_MESSAGE :{BLACK}Nuskaitomi NewGRF. Tai gali užtrukti, priklausomai nuo kiekio... -STR_NEWGRF_SCAN_STATUS :{BLACK}Nuskaitomi {NUM} NewGRF{P "" "" ""} iš paskaičiuotų {NUM} NewGRF{P "" "" ""} -STR_NEWGRF_SCAN_ARCHIVES :Ieškoma archyvų +STR_NEWGRF_SCAN_CAPTION :{WHITE}Tikrinami plėtiniai +STR_NEWGRF_SCAN_MESSAGE :{BLACK}Nuskaitomi plėtiniai. Tai gali užtrukti, priklausomai nuo kiekio... +STR_NEWGRF_SCAN_STATUS :{BLACK}Nuskaityti {NUM} plėtin{P ys iai ių} iš {NUM} +STR_NEWGRF_SCAN_ARCHIVES :Ieškoma archyvuose # Sign list window STR_SIGN_LIST_CAPTION :{WHITE}Ženklų sąrašas - {COMMA} ženkl{P as ai ų} @@ -3180,8 +3209,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} pristatyta STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (vis dar reikia) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (pristatyta) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Miestas auga kas {ORANGE}{COMMA}{BLACK} dien{P ą as ų} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Miestas auga kas {ORANGE}{COMMA}{BLACK} dien{P ą as ų} (paremtas) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Miestas auga kas {ORANGE}{COMMA}{BLACK}{NBSP}dien{P ą as ų} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Miestas auga kas {ORANGE}{COMMA}{BLACK}{NBSP}dien{P ą as ų} (paremtas) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Miestas {RED}ne{BLACK}didėja STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Triukšmo limitas mieste: {ORANGE}{COMMA}{BLACK} daugiausia: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Rodyti miestą ekrano centre. Ctrl+Paspaudimas atidaro naują langą su miesto vaizdu @@ -3241,7 +3270,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informacija STR_GOAL_QUESTION_CAPTION_WARNING :Perspėjimas STR_GOAL_QUESTION_CAPTION_ERROR :Klaida -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Atšaukti STR_GOAL_QUESTION_BUTTON_OK :Gerai STR_GOAL_QUESTION_BUTTON_NO :Ne @@ -3260,6 +3289,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Pradėti iš na STR_GOAL_QUESTION_BUTTON_POSTPONE :Atidėti STR_GOAL_QUESTION_BUTTON_SURRENDER :Pasiduoti STR_GOAL_QUESTION_BUTTON_CLOSE :Uždaryti +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidijos @@ -3348,10 +3378,10 @@ STR_CARGO_RATING_OUTSTANDING :Nuostabus STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Centruoti stotį pagrindiniame ekrane. Ctrl+Click atidaro naują peržiūros langą su vaizdu į šią stotį STR_STATION_VIEW_RENAME_TOOLTIP :{BLACK}Pakeisti stoties pavadinimą -STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Rodyti visus traukinius, į kurių užduotis yra įtraukta ši stotis -STR_STATION_VIEW_SCHEDULED_ROAD_VEHICLES_TOOLTIP :{BLACK}Rodyti visus automobilius, į kurių užduotis yra įtraukta ši stotis -STR_STATION_VIEW_SCHEDULED_AIRCRAFT_TOOLTIP :{BLACK}Rodyti visus lėktuvus, į kurių užduotis yra įtraukta ši stotis -STR_STATION_VIEW_SCHEDULED_SHIPS_TOOLTIP :{BLACK}Rodyti visus laivus, į kurių užduotis yra įtraukta ši stotis +STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Rodyti visus traukinius, į kurių užduotis yra įtraukta ši stotelė +STR_STATION_VIEW_SCHEDULED_ROAD_VEHICLES_TOOLTIP :{BLACK}Rodyti visus automobilius, į kurių užduotis yra įtraukta ši stotelė +STR_STATION_VIEW_SCHEDULED_AIRCRAFT_TOOLTIP :{BLACK}Rodyti visus lėktuvus, į kurių užduotis yra įtraukta ši stotelė +STR_STATION_VIEW_SCHEDULED_SHIPS_TOOLTIP :{BLACK}Rodyti visus laivus, į kurių užduotis yra įtraukta ši stotelė STR_STATION_VIEW_RENAME_STATION_CAPTION :Pervardinti stotį @@ -3389,7 +3419,7 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN STR_FINANCES_TOTAL_CAPTION :{WHITE}Iš viso: STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Sąskaitos balansas STR_FINANCES_LOAN_TITLE :{WHITE}Paskola -STR_FINANCES_MAX_LOAN :{WHITE}Maksimali paskola: {BLACK}{CURRENCY_LONG} +STR_FINANCES_MAX_LOAN :{WHITE}Didžiausia paskola: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}Skolintis {CURRENCY_LONG} STR_FINANCES_BORROW_TOOLTIP :{BLACK}Skolintis daugiau. Spragtelėjus laikant nuspaustą Ctrl klavišą, bus pasiskolinta didžiausia įmanoma suma @@ -3553,15 +3583,15 @@ STR_GROUP_REMOVE_ALL_VEHICLES :Iškelti visas STR_GROUP_RENAME_CAPTION :{BLACK}Pervadinti grupę # Build vehicle window -STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Nauji Traukiniai -STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Nauji Elektriniai Traukiniai -STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Nauji Vienbegiai Traukiniai -STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Nauji „Maglev“ traukiniai +STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Nauji lokomotyvai +STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Nauji elektriniai lokomotyvai +STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Nauji vienbėgiai lokomotyvai +STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Nauji „Maglev“ lokomotyvai -STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Traukiniai +STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Nauji lokomotyvai STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Nauji automobiliai STR_BUY_VEHICLE_SHIP_CAPTION :Nauji laivai -STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Naujas lėktuvas +STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Nauji lėktuvai STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Kaina: {GOLD}{CURRENCY_LONG}{BLACK} Svoris: {GOLD}{WEIGHT_SHORT} STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Greitis: {GOLD}{VELOCITY}{BLACK} Galia: {GOLD}{POWER} @@ -3584,35 +3614,50 @@ STR_PURCHASE_INFO_ALL_BUT :visiems krovini STR_PURCHASE_INFO_MAX_TE :{BLACK}Didž. traukos jėga: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Nuotolis: {GOLD}{COMMA} langeliai -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Transporto priemoniu pasirinkimo sarasas - paspausk ant priemones, kad gautum daugiau informacijos -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Automobiliu pasirinkimo sarasas - paspausk ant automobilio jei nori detalesnes informacijos -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Laivu sarasas - paspausk ant laivo, jei nori detalesnes informacijos -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lektuvu sarasas - paspausk ant lektuvo, jei nori daugiau informacijos +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lokomotyvų ir vagonų sąrašas. Spragtelėjus bus parodyta platesnė informacija. Spragtelėjus laikant nuspaustą Ctrl klavišą, lokomotyvas ar vagonas bus slepiamas/rodomas sąraše +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Automobilių sąrašas. Spragtelėjus bus parodyta platesnė informacija. Spragtelėjus laikant nuspaustą Ctrl klavišą, automobilis bus slepiamas/rodomas sąraše +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Laivų sąrašas. Spragtelėjus bus parodyta platesnė informacija. Spragtelėjus laikant nuspaustą Ctrl klavišą, laivas bus slepiamas/rodomas sąraše +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lėktuvų sąrašas. Spragtelėjus bus parodyta platesnė informacija. Spragtelėjus laikant nuspaustą Ctrl klavišą, lėktuvas bus slepiamas/rodomas sąraše -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Pirkti transporto priemonę -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Pirkti transporto priemonę -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Pirkti Laivą -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Pirkti lėktuvą +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Pirkti +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Pirkti +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Pirkti +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Pirkti -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Pirkti pažymetą traukinį. Shift+Click parodys kainą neperkant -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Įsigyti pažymetą transporto priemonę -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Pirkti pažymetą laivą. Shift+Click parodys kainą neperkant -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Pirkti pažymėtą lėktuvą. Shift+Click parodys kainą neperkant +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Pirkti pažymėtą lokomotyvą ir/ar vagonus. Spragtelėjus laikant nuspaustą Shift klavišą, bus parodyta pirkinio kaina nieko realiai nenuperkant +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Pirkti pažymėtą automobilį. Spragtelėjus laikant nuspaustą Shift klavišą, bus parodyta pirkinio kaina nieko realiai nenuperkant +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Pirkti pažymėtą laivą. Spragtelėjus laikant nuspaustą Shift klavišą, bus parodyta pirkinio kaina nieko realiai nenuperkant +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Pirkti pažymėtą lėktuvą. Spragtelėjus laikant nuspaustą Shift klavišą, bus parodyta pirkinio kaina nieko realiai nenuperkant STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Pervardinti STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Pervardinti STR_BUY_VEHICLE_SHIP_RENAME_BUTTON :{BLACK}Pervardinti STR_BUY_VEHICLE_AIRCRAFT_RENAME_BUTTON :{BLACK}Pervardinti -STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Pervardinti traukinio tipa -STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Pervardinti automobiliu tipa -STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Pakeisti laivo tipa -STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Pakeisti lėktuvo vardą +STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Pervardinti pažymėtą lokomotyvą ar vagoną +STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Pervardinti pažymėtą automobilį +STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Pervardinti pažymėtą laivą +STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Pervardinti pažymėtą lėktuvą -STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Pervardinti traukinio tipa -STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Pervardinti automobilių tipą -STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Pakeisti laivo vardą -STR_QUERY_RENAME_AIRCRAFT_TYPE_CAPTION :{WHITE}Pakeisti lėktuvo vardą +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Slėpti +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Slėpti +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Slėpti +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Slėpti + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Rodyti +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Rodyti +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Rodyti +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Rodyti + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Slėpti arba rodyti pažymėtą lokomotyvą +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Slėpti arba rodyti pažymėtą automobilį +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Slėpti arba rodyti pažymėtą laivą +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Slėpti arba rodyti pažymėtą lėktuvą + +STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Pervardinti lokomotyvą ar vagoną +STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Pervardinti automobilį +STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Pervardinti laivą +STR_QUERY_RENAME_AIRCRAFT_TYPE_CAPTION :{WHITE}Pervardinti lėktuvą # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -3751,6 +3796,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE.ka :Automobilį STR_REPLACE_VEHICLE_SHIP :Laivas STR_REPLACE_VEHICLE_AIRCRAFT :Lėktuvas +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Naudojamos transporto priemonės +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :BLACK}Stulpelis su informacija apie transporto priemones, kurias šiuo metu naudojate +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Galimos transporto priemonės +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Stulpelis su informacija apie transporto priemones, kuriomis galite pakeisti jau turimas + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Pasirink tr. priemonės tipą, kurią reikės keisti STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Pasirink tr. priemonės tipą, kuria bus keičiamos pasirinktos tr. priemonės @@ -3875,7 +3925,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Talpa: { STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Pervesti už tiekėjų sistemas: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Techninė apžiūra kas: {LTBLUE}{COMMA}dien{P ą as ų}{BLACK} Paskutinė apžiūra:{LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Techninė apžiūra kas: {LTBLUE}{COMMA}{NBSP}dien{P ą as ų}{BLACK} Paskutinė apžiūra:{LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Siųsti techninei apžiūrai patikimumui nukritus iki: {LTBLUE}{COMMA}%{BLACK} Paskutinė apžiūra: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Padidinti techninės apžiūros intervalą 10 dienų (arba procentų). Spragtelėjus laikant nuspaustą Ctrl klavišą, intervalas bus padidintas 5 dienomis (arba procentais) STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Sumažinti techninės apžiūros intervalą 10 dienų (arba procentų). Spragtelėjus laikant nuspaustą Ctrl klavišą, intervalas bus sumažintas 5 dienomis (arba procentais) @@ -3885,9 +3935,9 @@ STR_VEHICLE_DETAILS_DEFAULT :Numatytasis STR_VEHICLE_DETAILS_DAYS :Dienos STR_VEHICLE_DETAILS_PERCENT :Procentai -STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Pervadinti traukinį -STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Pervadinti automobilį -STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Pervadinti laivą +STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Pervardinti traukinį +STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Pervardinti automobilį +STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Pervardinti laivą STR_QUERY_RENAME_AIRCRAFT_CAPTION :{WHITE}Pervardinti lėktuvą # Extra buttons for train details windows @@ -4123,14 +4173,14 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(stovėti {STRI STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(vykti {STRING.ka}, neįtraukiant į tvarkaraštį) STR_TIMETABLE_STAY_FOR :ir pasilikti {STRING.ka} STR_TIMETABLE_AND_TRAVEL_FOR :ir keliauti {STRING.ka} -STR_TIMETABLE_DAYS :{G=mot}{COMMA} dien{P a os ų} +STR_TIMETABLE_DAYS :{G=mot}{COMMA}{NBSP}dien{P a os ų} STR_TIMETABLE_DAYS.kas :{COMMA} dien{P a os ų} STR_TIMETABLE_DAYS.ko :{COMMA} dien{P os as ų} STR_TIMETABLE_DAYS.kam :{COMMA} dien{P ai oms ų} STR_TIMETABLE_DAYS.ka :{COMMA} dien{P ą as ų} STR_TIMETABLE_DAYS.kuo :{COMMA} dien{P a omis ų} STR_TIMETABLE_DAYS.kur :{COMMA} dien{P oje ose ų} -STR_TIMETABLE_TICKS :{COMMA} žym{P a os ų} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}impuls{P as ai ų} STR_TIMETABLE_TOTAL_TIME :{BLACK}Maršruto trukmė yra {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Maršruto trukmė yra mažiausiai {STRING}, nes nustatytos ne visų užduočių trukmės @@ -4151,7 +4201,7 @@ STR_TIMETABLE_CLEAR_TIME :{BLACK}Trukmės STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Atšaukti pažymėtos užduoties trukmės ribojimus STR_TIMETABLE_CHANGE_SPEED :{BLACK}Pakeisti greičio ribą -STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Pakeisti pažymėtos užduoties maksimalaus greičio ribą +STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Pakeisti pažymėtos užduoties didžiausio greičio ribą STR_TIMETABLE_CLEAR_SPEED :{BLACK}Greičio neriboti STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Neriboti pažymėtos užduoties greičio @@ -4187,7 +4237,7 @@ STR_AI_DEBUG_SETTINGS :{BLACK}Nustatym STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Keisti skripto nustatymus STR_AI_DEBUG_RELOAD :{BLACK}Perkrauti AI STR_AI_DEBUG_RELOAD_TOOLTIP :{BLACK}Išbraukti DI, perkrauti skritpą, ir perkrauti DI -STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}Įjungti/išjungti laužymą, kai DI registro žinutė sutinka su lūžio žinute +STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}Įjungti/išjungti stabdymą, jei DI žurnalo žinutė sutampa su stabdos žinute STR_AI_DEBUG_BREAK_ON_LABEL :{BLACK}Lūžis ant: STR_AI_DEBUG_BREAK_STR_OSKTITLE :{BLACK}Lūžis ant STR_AI_DEBUG_BREAK_STR_TOOLTIP :{BLACK}Kai DI registro žinutė sutampa su šia eilute, žaidimas pristabdomas @@ -4318,7 +4368,7 @@ STR_ERROR_BMPMAP_IMAGE_TYPE :{WHITE}... nepa STR_ERROR_HEIGHTMAP_TOO_LARGE :{WHITE}... paveikslėlis yra per didelis STR_WARNING_HEIGHTMAP_SCALE_CAPTION :{WHITE}Mastelio įspėjimas -STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Pradines nuostas keisti pernelyg smarkiai nerekomenduojama. Tęsti generavimą? +STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Per daug keisti pradinio žemėlapio dydį nerekomenduojama. Tęsti generavimą? # Soundset messages STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Rasta tik fiktyvi garsų biblioteka. Jeigu norite garsų žaidime, įdiekite garsų rinkinį naudojant parsisiuntimų sistemą. @@ -4368,6 +4418,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Kasinėj STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Jau siekia jūros lygį STR_ERROR_TOO_HIGH :{WHITE}Per aukštai STR_ERROR_ALREADY_LEVELLED :{WHITE}... jau plokščia +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Tiltas bus per aukštai. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kompanijos vardo pakeisti negalima... @@ -4394,9 +4445,9 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... per STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... per arti kito miesto STR_ERROR_TOO_MANY_TOWNS :{WHITE}... per daug miestų STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... daugiau nera vietos zemelapyje -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Miestas nestatys kelių. Jūs galite įjungti kelių statybą per Sudėtingesni nustatymai>Ekonomika>Miestai. +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Miestas nestatys kelių. Jūs galite įjungti kelių statybą per „Išplėstinės nuostatos>Aplinka>Miestai“. STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Vyksta kelio darbai -STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Negalima panaikinti šio miesto...{}Mieste yra stotis arba depas, arba miestui priklausantis vienas iš laukelių negali būti ištrintas. +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Negalima panaikinti šio miesto...{}Mieste yra stotelė arba depas, arba miestui priklausantis vienas iš laukelių negali būti pašalintas STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... nėra tinkamos vietos statulai šio miesto centre # Industry related errors @@ -4418,6 +4469,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... miš STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... gali būti statoma tik aukščiau sniego linijos STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... gali būti statoma tik žemiau sniego linijos +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nėra tinkamos vietos '{STRING.kam}' pramonės įmonėms +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Pakeisti generavimo parametrus geresniam žemėlapiui sukurti + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Geležinkelio stoties čia statyti negalima... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Čia autobusų stotelės statyti negalima... @@ -4428,7 +4482,7 @@ STR_ERROR_CAN_T_BUILD_DOCK_HERE :{WHITE}Neįmano STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Negalima cia statyti oro uosto... STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Ribojasi su daugiau nei viena stotele/pakrovimo aikštele -STR_ERROR_STATION_TOO_SPREAD_OUT :{WHITE}... stotis per daug išsiplėtusi +STR_ERROR_STATION_TOO_SPREAD_OUT :{WHITE}... stotelė per daug išsiplėtusi STR_ERROR_TOO_MANY_STATIONS_LOADING :{WHITE}Per daug stotelių STR_ERROR_TOO_MANY_STATION_SPECS :{WHITE}Perdaug traukinių stoties dalių STR_ERROR_TOO_MANY_BUS_STOPS :{WHITE}Per daug autobusų stotelių @@ -4554,6 +4608,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Pirmiau STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Negalima pradeti ir baigti tuo paciu metu STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Tilto pirminės atramos turi būti tame pačiame aukštyje STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Tiltas per žemas reljefui +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Tiltas per aukštas šiam kraštovaizdžiui. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Pradžia ir pabaiga turi būti vienoje linijoje STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... abu tilto galai turi būti ant žemės STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... tiltas per ilgas @@ -4637,9 +4692,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Aptarnav STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... automobilis sunaikintas STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL :{WHITE}Nebus įmanoma įsigyti jokių transporto priemonių -STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Pakeiskite NewGRF nuostatas +STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Pakeiskite plėtinių nuostatas STR_ERROR_NO_VEHICLES_AVAILABLE_YET :{WHITE}Kol kas negalima įsigyti jokių transporto priemonių -STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}Pradėkite žaidimą vėliau, nei {DATE_SHORT}, arba įdiekite NewGRF papildinį, kuris leis įsigyti transporto priemonių šiame ankstyvame laikotarpyje +STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}Pradėkite žaidimą vėliau, nei {DATE_SHORT}, arba įdiekite plėtinių, kurie leistų įsigyti transporto priemonių šiame ankstyvame laikotarpyje # Specific vehicle errors STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Neįmanoma priversti traukinio važiuoti nesaugiai... @@ -4659,7 +4714,7 @@ STR_ERROR_CAN_T_MODIFY_THIS_ORDER :{WHITE}Sios uzd STR_ERROR_CAN_T_MOVE_THIS_ORDER :{WHITE}Negalima perkelti šio užsakymo... STR_ERROR_CAN_T_SKIP_ORDER :{WHITE}Negalima praleisti šio užsakymo... STR_ERROR_CAN_T_SKIP_TO_ORDER :{WHITE}Negalima praleisti pažymėto užsakymo... -STR_ERROR_CAN_T_COPY_SHARE_ORDER :{WHITE}... transporto priemonė negali vykti į visas stotis +STR_ERROR_CAN_T_COPY_SHARE_ORDER :{WHITE}... transporto priemonė negali vykti į visas stoteles STR_ERROR_CAN_T_ADD_ORDER :{WHITE}... automobilis negali nukakti iki tos stotelės STR_ERROR_CAN_T_ADD_ORDER_SHARED :{WHITE}... automobilis dalinantis šį grafiką negali nukakti iki tos stotelės @@ -5070,33 +5125,33 @@ STR_SV_STNAME_FALLBACK :{STRING} Stotel ##id 0x8000 # Vehicle names -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KIRBY_PAUL_TANK_STEAM :Kirby Paul Tank (Garai) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_250_DIESEL :MJS 250 (Dyzelis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KIRBY_PAUL_TANK_STEAM :Kirby Paul Tank (garinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_250_DIESEL :MJS 250 (dyzelinis) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_CHOO_CHOO :Ploddyphut Choo-Choo STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_CHOO_CHOO :Powernaut Choo-Choo STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MIGHTYMOVER_CHOO_CHOO :MightyMover Choo-Choo STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_DIESEL :Ploddyphut Dyzelis STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_DIESEL :Powernaut Dyzelis -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_WILLS_2_8_0_STEAM :Wills 2-8-0 (Garai) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Chaney 'Jubilee' (Garai) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_GINZU_A4_STEAM :Ginzu 'A4' (Garai) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_8P_STEAM :SH '8P' (Garai) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Manley-Morel DMU (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_DASH_DIESEL :'Dash' (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry '25' (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :UU '37' (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Floss '47' (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_4000_DIESEL :CS 4000 (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_2400_DIESEL :CS 2400 (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CENTENNIAL_DIESEL :Centennial (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KELLING_3100_DIESEL :Kelling 3100 (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_TURNER_TURBO_DIESEL :Turner Turbo (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_1000_DIESEL :MJS 1000 (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :SH '125' (Dyzelis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :SH '30' (Elektrinis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :SH '40' (Elektrinis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :'T.I.M.' (Elektrinis) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :'AsiaStar' (Elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_WILLS_2_8_0_STEAM :Wills 2-8-0 (garinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Chaney Jubilee (garinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_GINZU_A4_STEAM :Ginzu A4 (garinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_8P_STEAM :SH 8P (garinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Manley-Morel DMU (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_DASH_DIESEL :Dash (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry 25 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :UU 37 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Floss 47 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_4000_DIESEL :CS 4000 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_2400_DIESEL :CS 2400 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CENTENNIAL_DIESEL :Centennial (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KELLING_3100_DIESEL :Kelling 3100 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_TURNER_TURBO_DIESEL :Turner Turbo (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_1000_DIESEL :MJS 1000 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :SH 125 (dyzelinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :SH 30 (elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :SH 40 (elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :T.I.M. (elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :AsiaStar (elektrinis) STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PASSENGER_CAR :Keleivinis vagonas STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_MAIL_VAN :Pašto vagonas STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COAL_CAR :Anglies vagonas @@ -5124,8 +5179,8 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOY_VAN :Žaislų vagona STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BATTERY_TRUCK :Baterijų vagonas STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FIZZY_DRINK_TRUCK :Putojančių gėrimų vagonas STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PLASTIC_TRUCK :Plastmasės vagonas -STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :'X2001' (Elektrinis) -STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :'Millennium Z1' (Elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :X2001 (elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :Millennium Z1 (elektrinis) STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_WIZZOWOW_Z99 :Wizzowow Z99 STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PASSENGER_CAR :Keleivinis vagonas STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_MAIL_VAN :Pašto vagonas @@ -5154,10 +5209,10 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOY_VAN :Žaislų vagona STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_BATTERY_TRUCK :Baterijų vagonas STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FIZZY_DRINK_TRUCK :Putojančių gėrimų vagonas STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PLASTIC_TRUCK :Plastmasės vagonas -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV1_LEVIATHAN_ELECTRIC :Lev1 'Leviathan' (Elektrinis) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 'Cyclops' (Elektrinis) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 'Pegasus' (Elektrinis) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 'Chimaera' (Elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV1_LEVIATHAN_ELECTRIC :Lev1 Leviathan (elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 Cyclops (elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 Pegasus (elektrinis) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 Chimaera (elektrinis) STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_WIZZOWOW_ROCKETEER :Wizzowow Rocketeer STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PASSENGER_CAR :Keleivinis vagonas STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_MAIL_VAN :Pašto vagonas @@ -5356,7 +5411,7 @@ STR_FORMAT_DEPOT_NAME_SHIP :{TOWN} Laivų d STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :{TOWN} Laivų dokas #{COMMA} STR_FORMAT_DEPOT_NAME_AIRCRAFT :{STATION} Angaras -STR_UNKNOWN_STATION :Nežinoma stotis +STR_UNKNOWN_STATION :Nežinoma stotelė STR_DEFAULT_SIGN_NAME :Ženklas STR_COMPANY_SOMEONE :kažkas @@ -5383,6 +5438,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (paslėptas) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -5418,8 +5474,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt index f7f271b9b2..3337f3a5b7 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -33,7 +33,7 @@ STR_CARGO_PLURAL_MAIL :Post STR_CARGO_PLURAL_OIL :Ueleg STR_CARGO_PLURAL_LIVESTOCK :Véi STR_CARGO_PLURAL_GOODS :Wueren -STR_CARGO_PLURAL_GRAIN :Kaar +STR_CARGO_PLURAL_GRAIN :Kar STR_CARGO_PLURAL_WOOD :Holz STR_CARGO_PLURAL_IRON_ORE :Eisenäerz STR_CARGO_PLURAL_STEEL :Stol @@ -67,7 +67,7 @@ STR_CARGO_SINGULAR_MAIL :Post STR_CARGO_SINGULAR_OIL :Ueleg STR_CARGO_SINGULAR_LIVESTOCK :Véi STR_CARGO_SINGULAR_GOODS :Wueren -STR_CARGO_SINGULAR_GRAIN :Kaar +STR_CARGO_SINGULAR_GRAIN :Kar STR_CARGO_SINGULAR_WOOD :Holz STR_CARGO_SINGULAR_IRON_ORE :Eisenäerz STR_CARGO_SINGULAR_STEEL :Stol @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Spruddel-Gedré # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} Passagéier +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}Passagéier STR_QUANTITY_COAL :{WEIGHT_LONG} Kuel -STR_QUANTITY_MAIL :{COMMA} Posts{P aak äck} +STR_QUANTITY_MAIL :{COMMA}{NBSP}Posts{P ak äck} STR_QUANTITY_OIL :{VOLUME_LONG} Ueleg -STR_QUANTITY_LIVESTOCK :{COMMA} Eenheet{P "" en} Véi -STR_QUANTITY_GOODS :{COMMA} Wuerekëscht{P "" en} -STR_QUANTITY_GRAIN :{WEIGHT_LONG} Kaar +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}Eenheet{P "" e} Véi +STR_QUANTITY_GOODS :{COMMA}{NBSP}Wuerekëscht{P "" en} +STR_QUANTITY_GRAIN :{WEIGHT_LONG} Kar STR_QUANTITY_WOOD :{WEIGHT_LONG} Holz STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} Eisenäerz STR_QUANTITY_STEEL :{WEIGHT_LONG} Stol -STR_QUANTITY_VALUABLES :{COMMA} S{P aak äck} mat Wäertsaachen +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}S{P ak äck} mat Wäertsaachen STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} Kofferäerz STR_QUANTITY_MAIZE :{WEIGHT_LONG} Mais STR_QUANTITY_FRUIT :{WEIGHT_LONG} Friichten -STR_QUANTITY_DIAMONDS :{COMMA} S{P aak äck} mat Diamanten +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}S{P ak äck} mat Diamanten STR_QUANTITY_FOOD :{WEIGHT_LONG} Iesswueren STR_QUANTITY_PAPER :{WEIGHT_LONG} Pabeier -STR_QUANTITY_GOLD :{COMMA} S{P aak äck} mat Gold +STR_QUANTITY_GOLD :{COMMA}{NBSP}S{P ak äck} mat Gold STR_QUANTITY_WATER :{VOLUME_LONG} Waasser STR_QUANTITY_WHEAT :{WEIGHT_LONG} Weess STR_QUANTITY_RUBBER :{VOLUME_LONG} Kautschuck STR_QUANTITY_SUGAR :{WEIGHT_LONG} Zocker -STR_QUANTITY_TOYS :{COMMA} Spillsaach{P "" en} -STR_QUANTITY_SWEETS :{COMMA} S{P aak äck} mat Séissegkeeten +STR_QUANTITY_TOYS :{COMMA}{NBSP}Spillsaach{P "" en} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}S{P ak äck} mat Séissegkeeten STR_QUANTITY_COLA :{VOLUME_LONG} Cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} Zockerwatt STR_QUANTITY_BUBBLES :{COMMA} Blos{P "" en} @@ -134,11 +134,11 @@ STR_ABBREV_PASSENGERS :{TINY_FONT}PS STR_ABBREV_COAL :{TINY_FONT}KU STR_ABBREV_MAIL :{TINY_FONT}PO STR_ABBREV_OIL :{TINY_FONT}UL -STR_ABBREV_LIVESTOCK :{TINY_FONT}LI +STR_ABBREV_LIVESTOCK :{TINY_FONT}VE STR_ABBREV_GOODS :{TINY_FONT}WU STR_ABBREV_GRAIN :{TINY_FONT}KA STR_ABBREV_WOOD :{TINY_FONT}HO -STR_ABBREV_IRON_ORE :{TINY_FONT}EE +STR_ABBREV_IRON_ORE :{TINY_FONT}EA STR_ABBREV_STEEL :{TINY_FONT}ST STR_ABBREV_VALUABLES :{TINY_FONT}WS STR_ABBREV_COPPER_ORE :{TINY_FONT}KE @@ -153,24 +153,24 @@ STR_ABBREV_WHEAT :{TINY_FONT}WE STR_ABBREV_RUBBER :{TINY_FONT}KT STR_ABBREV_SUGAR :{TINY_FONT}ZO STR_ABBREV_TOYS :{TINY_FONT}SP -STR_ABBREV_SWEETS :{TINY_FONT}SÉ +STR_ABBREV_SWEETS :{TINY_FONT}SE STR_ABBREV_COLA :{TINY_FONT}CO STR_ABBREV_CANDYFLOSS :{TINY_FONT}ZW STR_ABBREV_BUBBLES :{TINY_FONT}BL -STR_ABBREV_TOFFEE :{TINY_FONT}KR +STR_ABBREV_TOFFEE :{TINY_FONT}KA STR_ABBREV_BATTERIES :{TINY_FONT}BA STR_ABBREV_PLASTIC :{TINY_FONT}PL STR_ABBREV_FIZZY_DRINKS :{TINY_FONT}KG -STR_ABBREV_NONE :{TINY_FONT}NO +STR_ABBREV_NONE :{TINY_FONT}KG STR_ABBREV_ALL :{TINY_FONT}ALL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} Passagéier -STR_BAGS :{COMMA} S{P aak äck} -STR_TONS :{COMMA} Tonn{P "" en} -STR_LITERS :{COMMA} Liter -STR_ITEMS :{COMMA} Objet{P "" en} -STR_CRATES :{COMMA} Këscht{P "" en} +STR_PASSENGERS :{COMMA}{NBSP}Passagéier +STR_BAGS :{COMMA}{NBSP}S{P ak äck} +STR_TONS :{COMMA}{NBSP}Tonn{P "" en} +STR_LITERS :{COMMA}{NBSP}Liter +STR_ITEMS :{COMMA}{NBSP}Eenheet{P "" en} +STR_CRATES :{COMMA}{NBSP}Këscht{P "" en} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Donkelblo @@ -183,52 +183,52 @@ STR_COLOUR_GREEN :Gréng STR_COLOUR_DARK_GREEN :Donkelgréng STR_COLOUR_BLUE :Blo STR_COLOUR_CREAM :Beige -STR_COLOUR_MAUVE :Donkelmoof -STR_COLOUR_PURPLE :Moof +STR_COLOUR_MAUVE :Mof +STR_COLOUR_PURPLE :Purpur STR_COLOUR_ORANGE :Orange STR_COLOUR_BROWN :Brong STR_COLOUR_GREY :Gro STR_COLOUR_WHITE :Wäiss # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}bhp -STR_UNITS_POWER_METRIC :{COMMA}ps -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}bhp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ps +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} Tonn{P "" en} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} Tonn{P "" en} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}Tonn{P "" en} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}Tonn{P "" en} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} Galloun{P "" en} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} Liter{P "" ""} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}Galloun{P "" en} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}Liter{P "" ""} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings -STR_LIST_FILTER_TITLE :{BLACK}Filter Wieder: -STR_LIST_FILTER_OSKTITLE :{BLACK}Filter string -STR_LIST_FILTER_TOOLTIP :{BLACK}Wuert fir d'Lëscht ze filtern +STR_LIST_FILTER_TITLE :{BLACK}Filter String: +STR_LIST_FILTER_OSKTITLE :{BLACK}Filter String +STR_LIST_FILTER_TOOLTIP :{BLACK}Filter d'Lëscht op e Wuert -STR_TOOLTIP_GROUP_ORDER :{BLACK}Wiel Gruppéierreihenfollëg +STR_TOOLTIP_GROUP_ORDER :{BLACK}Wiel Gruppéierreihefollëg STR_TOOLTIP_SORT_ORDER :{BLACK}Richtung fir ze sortéieren (ofsteigend/opsteigend) STR_TOOLTIP_SORT_CRITERIA :{BLACK}Argument fir ze sortéieren STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Filterkritère wielen @@ -241,12 +241,23 @@ STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Fënster STR_TOOLTIP_SHADE :{BLACK}Fenster verklengeren - Weis nëmmen Titelbar STR_TOOLTIP_DEBUG :{BLACK}Weis NewGRF Debug Informatioun STR_TOOLTIP_DEFSIZE :{BLACK}Änner d'Fënster op d'Standardgréisst. Ctrl+Klick fir déi aktuell Gréisst als Standard ze späichern -STR_TOOLTIP_STICKY :{BLACK}Markéier dës Fënster fir net zougemeet ze ginn vun dem "All Fënsteren zoumaachen" Knäppchen. Ctrl+Klick speichert déi Actioun als Standard +STR_TOOLTIP_STICKY :{BLACK}Markéier dës Fënster fir net zougemeet ze ginn vun dem "All Fënsteren zoumaachen" Knäppchen. Ctrl+Klick späichert déi Actioun als Standard STR_TOOLTIP_RESIZE :{BLACK}Klicken an zéihen fir d'Fënstergréisst ze änneren STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Wiesselt grouss/kleng Fënstergréisst STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Scrollbar - scrollt d'Lëscht erop/erof STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Scrollbar - scrollt d'Lëscht no lénks/riets -STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Objekter op engem Stëck Land zerstéieren. Ctrl wielt d'Land diagonal. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Objeten op engem Stëck Land zerstéieren. Ctrl wielt d'Land diagonal. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen + +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Verstoppten uweisen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Verstoppten uweisen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Verstoppten uweisen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Verstoppten uweisen + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Mat dësem Knäppchen ginn verstoppten Zich och ugewisen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Mat dësem Knäppchen ginn verstoppte Gefierer och ugewisen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Mat dësem Knäppchen ginn verstoppte Schëffer och ugewisen +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Mat dësem Knäppchen ginn verstoppte Fliger och ugewisen # Query window STR_BUTTON_DEFAULT :{BLACK}Standard @@ -283,19 +294,19 @@ STR_SORT_BY_MODEL :Model STR_SORT_BY_VALUE :Wäert STR_SORT_BY_LENGTH :Längt STR_SORT_BY_LIFE_TIME :Reschtlaafzäit -STR_SORT_BY_TIMETABLE_DELAY :Zäitplang Verspéidung +STR_SORT_BY_TIMETABLE_DELAY :Zäitplangverspéidung STR_SORT_BY_FACILITY :Statiounstyp STR_SORT_BY_WAITING_TOTAL :Gesamt waardend Gidder STR_SORT_BY_WAITING_AVAILABLE :Verfügbar waardend Gidder -STR_SORT_BY_RATING_MAX :Héchsten Luedungsbewertung -STR_SORT_BY_RATING_MIN :Nidregsten Luedungsbewertung +STR_SORT_BY_RATING_MAX :Héchste Luedungsbewäertung +STR_SORT_BY_RATING_MIN :Niddregst Luedungsbewäertung STR_SORT_BY_ENGINE_ID :ID (klassësch Sortéierung) STR_SORT_BY_COST :Käschten STR_SORT_BY_POWER :Kraaft STR_SORT_BY_TRACTIVE_EFFORT :Zéikraaft STR_SORT_BY_INTRO_DATE :Aféirungsdatum -STR_SORT_BY_RUNNING_COST :Betriebskäschten -STR_SORT_BY_POWER_VS_RUNNING_COST :Kraaft/Betriebskäschten +STR_SORT_BY_RUNNING_COST :Betribskäschten +STR_SORT_BY_POWER_VS_RUNNING_COST :Kraaft/Betribskäschten STR_SORT_BY_CARGO_CAPACITY :Luedungskapazitéit STR_SORT_BY_RANGE :Längt STR_SORT_BY_POPULATION :Bevölkerung @@ -303,30 +314,30 @@ STR_SORT_BY_RATING :Rating # Tooltips for the main toolbar STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Spill pausen -STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Spill schnell laafen loosen +STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Spill schnell lafe loossen STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Optiounen STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Spill späicheren, Spill ophalen, Eraus STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Weis d'Kaart, extra Usiicht oder d'Lëscht vun den Zeeschen STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Weis d'Stiedverzeeschnëss -STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Subventiounen weisen -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Weis d'Lëscht vun den Firmen hieren Statiounen -STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Informatiounen zu den Firmenfinanzen -STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Generel Firmeninformatioun +STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Subventiounen uweisen +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Weis d'Lëscht vun de Firmestatiounen +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Informatiounen zu de Firmefinanzen +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Generell Firmeninformatioun STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Weis d'Storybuch STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Weis d'Zillëscht STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Weis Grafiken STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Weis d'Firmen-Ranglëscht -STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Finanzéiert den Bau vun enger neier Industrie oder lëscht all d'Industrien op -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Lëscht vun den Firmenzich. Ctrl+Klick wiesselt tescht Grupp/Zuch Lëscht -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Lëscht vun den Stroossegefierer vun der Firma. Ctrl+Klick wiesselt tëscht Gruppe/Stroossegefiererlescht -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Lëscht vun den Firmenschëffer. Ctrl+Klick wiesselt tëscht Gruppen/Schëfflëscht. -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Lëscht vun den Firmenfligeren. Ctrl+Klick wiesselt tëscht Gruppen/Fligerlëscht. +STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Finanzéiert de Bau vun enger neier Industrie oder lëscht all d'Industrien op +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Lëscht vun de Firmenzich. Ctrl+Klick wiesselt tëscht Grupp/Zuch Lëscht +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Lëscht vun de Stroossegefierer vun der Firma. Ctrl+Klick wiesselt tëscht Gruppe/Stroossegefiererlescht +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Lëscht vun de Firmeschëffer. Ctrl+Klick wiesselt tëscht Gruppen/Schëfflëscht. +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Lëscht vun de Firmefligeren. Ctrl+Klick wiesselt tëscht Gruppen/Fligerlëscht. STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Vergréisser d'Sicht STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Verklenger d'Sicht -STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Schinnen bauen -STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Stroossen bauen -STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Schëffhafen bauen -STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Fluchhafen bauen +STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Schinne bauen +STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Stroosse bauen +STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Schëffhafe bauen +STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Fluchhafe bauen STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Landschafts-Toolbar opman fir Land ze erhéijen/senken, Beem planzen, etc. STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Sound/Musik Fënster STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Weis déi lescht Meldung/Neiegkeet, oder d'Astellungen @@ -337,23 +348,23 @@ STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Wiessel STR_SCENEDIT_TOOLBAR_TOOLTIP_SAVE_SCENARIO_LOAD_SCENARIO :{BLACK}Szenario späicheren, Szenario lueden, Eraus aus dem Szenarioeditor, Eraus STR_SCENEDIT_TOOLBAR_OPENTTD :{YELLOW}OpenTTD STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Szenarien Editor -STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Änner den Startdatum 1 Joer nohannen -STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Änner den Startdatum 1 Joer no viir -STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Klick fir d'Startjoër festzeleën +STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Änner de Startdatum 1 Joer nohannen +STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Änner de Startdatum 1 Joer no vir +STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Klick fir d'Startjoer festzeleeën STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Weis d'Kaart, Stiedverzeeschnëss STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Landschaftserstellung -STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Staderstellung +STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Stiederstellung STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Industrieerstellung STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Stroossebau STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Beem planzen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Schëld opstellen -STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Objekt plazéiren. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Objet plazéiren. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen ############ range for SE file menu starts STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Szenario späicheren STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Szenario lueden -STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Héichtenkaart späicheren -STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Lued Héichtenkaart +STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Héichtekaart späicheren +STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Lued Héichtekaart STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Eraus aus dem Editor STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Eraus @@ -361,15 +372,15 @@ STR_SCENEDIT_FILE_MENU_QUIT :Eraus ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spilloptiounen -STR_SETTINGS_MENU_CONFIG_SETTINGS :Erweidert Astellungen +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Astellungen STR_SETTINGS_MENU_SCRIPT_SETTINGS :KI / Spill-Script Astellungen STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF Astellungen STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparenz Optiounen -STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Stiednimm ugewisen -STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Statiounennimm ugewisen +STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Stiednimm uweisen +STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Statiounsnimm uweisen STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :Weepunktnimm uweisen -STR_SETTINGS_MENU_SIGNS_DISPLAYED :Schëlder ugewisen -STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Géignerschëlder an ugewisen Nimm +STR_SETTINGS_MENU_SIGNS_DISPLAYED :Schëlder uweisen +STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Géignerschëlder an Nimm uweisen STR_SETTINGS_MENU_FULL_ANIMATION :Ganz Animatiounen STR_SETTINGS_MENU_FULL_DETAIL :Ganz Detailer STR_SETTINGS_MENU_TRANSPARENT_BUILDINGS :Transparent Gebaier @@ -391,7 +402,7 @@ STR_MAP_MENU_LINGRAPH_LEGEND :Cargo Flow Lege STR_MAP_MENU_SIGN_LIST :Schëlderlëscht ############ range for town menu starts -STR_TOWN_MENU_TOWN_DIRECTORY :Stiedverzeeschniss +STR_TOWN_MENU_TOWN_DIRECTORY :Stiedverzeeschnëss STR_TOWN_MENU_FOUND_TOWN :Stad grënnen ############ range ends here @@ -400,18 +411,18 @@ STR_SUBSIDIES_MENU_SUBSIDIES :Subventiounen ############ range ends here ############ range for graph menu starts -STR_GRAPH_MENU_OPERATING_PROFIT_GRAPH :Grafik: Operativen Gewënn +STR_GRAPH_MENU_OPERATING_PROFIT_GRAPH :Grafik: Operative Gewënn STR_GRAPH_MENU_INCOME_GRAPH :Grafik: Akommes STR_GRAPH_MENU_DELIVERED_CARGO_GRAPH :Grafik: Geliwwert Luedungen STR_GRAPH_MENU_PERFORMANCE_HISTORY_GRAPH :Grafik: Performance -STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Grafik: Betriebswert +STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Grafik: Betribswäert STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Luedungs Bezuelraten ############ range ends here ############ range for company league menu starts -STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :Betriebsranglëscht -STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Detailéiert Performancebewertung -STR_GRAPH_MENU_HIGHSCORE :Beschtenlëscht +STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :Betribsranglëscht +STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Detailléiert Leeschtungsbewäertung +STR_GRAPH_MENU_HIGHSCORE :Beschtelëscht ############ range ends here ############ range for industry menu starts @@ -433,11 +444,11 @@ STR_ROAD_MENU_TRAM_CONSTRUCTION :Trambau ############ range ends here ############ range for waterways construction menu starts -STR_WATERWAYS_MENU_WATERWAYS_CONSTRUCTION :Waasserstroossen bauen +STR_WATERWAYS_MENU_WATERWAYS_CONSTRUCTION :Waasserstroosse bauen ############ range ends here ############ range for airport construction menu starts -STR_AIRCRAFT_MENU_AIRPORT_CONSTRUCTION :Fluchhafenbau +STR_AIRCRAFT_MENU_AIRPORT_CONSTRUCTION :Fluchhafebau ############ range ends here ############ range for landscaping menu starts @@ -461,9 +472,9 @@ STR_ABOUT_MENU_SEPARATOR : STR_ABOUT_MENU_TOGGLE_CONSOLE :Konsole un/aus STR_ABOUT_MENU_AI_DEBUG :KI / Spill-Script Debug STR_ABOUT_MENU_SCREENSHOT :Screenshot (Ctrl+S) -STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Voll ragezoomten Screenshot -STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Default Zoom Screenshot -STR_ABOUT_MENU_GIANT_SCREENSHOT :Screenshot vun der ganzer Kaart (Ctrl+G) +STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Voll eragezoomte Screenshot +STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Standard Zoom Screenshot +STR_ABOUT_MENU_GIANT_SCREENSHOT :Screenshot vun der ganzer Kaart STR_ABOUT_MENU_ABOUT_OPENTTD :Iwwert 'OpenTTD' STR_ABOUT_MENU_SPRITE_ALIGNER :Sprite Alignéirer STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Zeechen-Boxen un/aus @@ -537,8 +548,8 @@ STR_MONTH_ABBREV_NOV :Nov STR_MONTH_ABBREV_DEC :Dez STR_MONTH_JAN :Januar -STR_MONTH_FEB :Febuar -STR_MONTH_MAR :März +STR_MONTH_FEB :Februar +STR_MONTH_MAR :Mäerz STR_MONTH_APR :Abrëll STR_MONTH_MAY :Mee STR_MONTH_JUN :Juni @@ -552,54 +563,54 @@ STR_MONTH_DEC :Dezember # Graph window STR_GRAPH_KEY_BUTTON :{BLACK}Legend -STR_GRAPH_KEY_TOOLTIP :{BLACK}Weist Legend vun der Grafik +STR_GRAPH_KEY_TOOLTIP :{BLACK}Weis d'Legend vun der Grafik STR_GRAPH_X_LABEL_MONTH :{TINY_FONT}{STRING}{} {STRING} STR_GRAPH_X_LABEL_MONTH_YEAR :{TINY_FONT}{STRING}{} {STRING}{}{NUM} STR_GRAPH_Y_LABEL :{TINY_FONT}{STRING} STR_GRAPH_Y_LABEL_NUMBER :{TINY_FONT}{COMMA} -STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Grafik: Betriibsgewënn +STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Grafik: Betribsgewënn STR_GRAPH_INCOME_CAPTION :{WHITE}Grafik: Akommes -STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Eenheeten vun Luedung geliwwert -STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Firmen Preformancebewertung (max bewertung=1000) -STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Firmenwäert +STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Eenheete vu Luedung geliwwert +STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Firmen Performancebewäertung (max Bewäertung=1000) +STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Firmewäert STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Luedungs Bezuelraten -STR_GRAPH_CARGO_PAYMENT_RATES_X_LABEL :{TINY_FONT}{BLACK}Deeg am ëmmlaaf +STR_GRAPH_CARGO_PAYMENT_RATES_X_LABEL :{TINY_FONT}{BLACK}Deeg am Emlaf STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Bezuelung fir Liwwerung vun 10 Eenheeten (oder 10.000 liter) Luedungen op Distanz vun 20 Felder STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}All wielen STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}All ofwielen STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}All Wueren op der Wuerenwäertgrafik weisen STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}Keng Wuer op der Wuerenwäertgrafik weisen -STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Wieselt den Grafik fir den Luedungstyp un/aus +STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Schalt d'Grafik fir de Luedungstyp un/aus STR_GRAPH_CARGO_PAYMENT_CARGO :{TINY_FONT}{BLACK}{STRING} STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP :{BLACK}Weis detailléiert performance Astellungen # Graph key window -STR_GRAPH_KEY_CAPTION :{WHITE}Legend vun den Firmengrafiken +STR_GRAPH_KEY_CAPTION :{WHITE}Legend vun de Firmegrafiken STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}Klick hei fir d'Firma an der Grafik an/aus zeschalten # Company league window -STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}Firmenliga Tabell +STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}Firmeliga Tabell STR_COMPANY_LEAGUE_COMPANY_NAME :{ORANGE}{COMPANY} {BLACK}{COMPANY_NUM} '{STRING}' STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ENGINEER :Techniker STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :Verkéiersmanager STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :Transportkoordinator STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :Stroossenopsiicht STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_DIRECTOR :Direkter -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :Firmenchef +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :Firmechef STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :Virsëtzenden STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_PRESIDENT :President STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TYCOON :Tycoon # Performance detail window -STR_PERFORMANCE_DETAIL :{WHITE}Detailéiert Leeschtungsbewertung +STR_PERFORMANCE_DETAIL :{WHITE}Detailléiert Leeschtungsbewäertung STR_PERFORMANCE_DETAIL_KEY :{BLACK}Detail STR_PERFORMANCE_DETAIL_AMOUNT_CURRENCY :{BLACK}({CURRENCY_SHORT}/{CURRENCY_SHORT}) STR_PERFORMANCE_DETAIL_AMOUNT_INT :{BLACK}({COMMA}/{COMMA}) STR_PERFORMANCE_DETAIL_PERCENT :{WHITE}{NUM}% -STR_PERFORMANCE_DETAIL_SELECT_COMPANY_TOOLTIP :{BLACK}Detailler fir dës Firma uweisen +STR_PERFORMANCE_DETAIL_SELECT_COMPANY_TOOLTIP :{BLACK}Detailer fir des Firma uweisen ############ Those following lines need to be in this order!! STR_PERFORMANCE_DETAIL_VEHICLES :{BLACK}Gefierer: STR_PERFORMANCE_DETAIL_STATIONS :{BLACK}Statiounen: @@ -613,26 +624,26 @@ STR_PERFORMANCE_DETAIL_LOAN :{BLACK}Kredit: STR_PERFORMANCE_DETAIL_TOTAL :{BLACK}Total: ############ End of order list STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP :{BLACK}Unzuel Gefierer déi lescht Joer Profit gemeet hunn; dëst betrëfft Stroossegefierer, Zich, Schëffer a Fligeren. -STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Unzuel un kierzlechservéiert Statiounsdeeler. All Deel vun enger Statioun (z.B. Gare, Busarret, Fluchhafen) gëtt gezielt,och wann déi als eng Statioun connectéiert sinn. -STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP :{BLACK}Profit vum Gefier mam mannsten Akommes (vun allen Gefierer déi méi wéi 2 Joer aal sinn) -STR_PERFORMANCE_DETAIL_MIN_INCOME_TOOLTIP :{BLACK}Betrag un Geld den am Mount mam mansten Profit gemeet gouf an den leschten 12 Quartaler -STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}Betrag un Geld den am Mount mam héchsten Profit gemeet gouf an den leschten 12 Quartaler -STR_PERFORMANCE_DETAIL_DELIVERED_TOOLTIP :{BLACK}Unzuel un Typen Wueren déi déi 4 lescht Quartaler geliwwert goufen -STR_PERFORMANCE_DETAIL_CARGO_TOOLTIP :{BLACK}Unzuel un Typen Wueren déi lescht Quartal geliwwert goufen -STR_PERFORMANCE_DETAIL_MONEY_TOOLTIP :{BLACK}Betrag un Suen den dës Firma op der Bank huet -STR_PERFORMANCE_DETAIL_LOAN_TOOLTIP :{BLACK}Betrag un Geld den dës Firma geléint huet -STR_PERFORMANCE_DETAIL_TOTAL_TOOLTIP :{BLACK}Total Punkte vun méiglechen Punkten +STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Unzuel un kierzlech beliwwerte Statiounsdeeler. All Deel vun enger Statioun (z.B. Gare, Busarret, Fluchhafen) gëtt gezielt,och wann déi als eng Statioun verbonne sinn. +STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP :{BLACK}Profit vum Gefier mam mannsten Akommes (vun alle Gefierer déi méi wéi 2 Joer al sinn) +STR_PERFORMANCE_DETAIL_MIN_INCOME_TOOLTIP :{BLACK}Betrag u Geld den am Mount mam mansten Profit gemeet gouf an de leschten 12 Quartaler +STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}Betrag u Geld den am Mount mam héchsten Profit gemeet gouf an de leschten 12 Quartaler +STR_PERFORMANCE_DETAIL_DELIVERED_TOOLTIP :{BLACK}Unzuel un Type Wueren déi déi 4 lescht Quartaler geliwwert goufen +STR_PERFORMANCE_DETAIL_CARGO_TOOLTIP :{BLACK}Unzuel un Type Wueren déi lescht Quartal geliwwert goufen +STR_PERFORMANCE_DETAIL_MONEY_TOOLTIP :{BLACK}Betrag u Suen den des Firma op der Bank huet +STR_PERFORMANCE_DETAIL_LOAN_TOOLTIP :{BLACK}Betrag u Geld den des Firma geléint huet +STR_PERFORMANCE_DETAIL_TOTAL_TOOLTIP :{BLACK}Total Punkte vu méigleche Punkten # Music window STR_MUSIC_JAZZ_JUKEBOX_CAPTION :{WHITE}Jazz Jukebox STR_MUSIC_PLAYLIST_ALL :{TINY_FONT}{BLACK}All -STR_MUSIC_PLAYLIST_OLD_STYLE :{TINY_FONT}{BLACK}Aalen Style -STR_MUSIC_PLAYLIST_NEW_STYLE :{TINY_FONT}{BLACK}Neien Style +STR_MUSIC_PLAYLIST_OLD_STYLE :{TINY_FONT}{BLACK}Ale Stil +STR_MUSIC_PLAYLIST_NEW_STYLE :{TINY_FONT}{BLACK}Neie Stil STR_MUSIC_PLAYLIST_EZY_STREET :{TINY_FONT}{BLACK}Ezy Street STR_MUSIC_PLAYLIST_CUSTOM_1 :{TINY_FONT}{BLACK}Benotzerdéf. 1 STR_MUSIC_PLAYLIST_CUSTOM_2 :{TINY_FONT}{BLACK}Benotzerdéf. 2 -STR_MUSIC_MUSIC_VOLUME :{TINY_FONT}{BLACK}Musik Lautstäerkt -STR_MUSIC_EFFECTS_VOLUME :{TINY_FONT}{BLACK}Lautstäerkt vun den Effekter +STR_MUSIC_MUSIC_VOLUME :{TINY_FONT}{BLACK}Musikvolume +STR_MUSIC_EFFECTS_VOLUME :{TINY_FONT}{BLACK}Volume vun den Effekter STR_MUSIC_RULER_MIN :{TINY_FONT}{BLACK}MIN STR_MUSIC_RULER_MAX :{TINY_FONT}{BLACK}MAX STR_MUSIC_RULER_MARKER :{TINY_FONT}{BLACK}' @@ -648,17 +659,17 @@ STR_MUSIC_TOOLTIP_SKIP_TO_PREVIOUS_TRACK :{BLACK}Sprang o STR_MUSIC_TOOLTIP_SKIP_TO_NEXT_TRACK_IN_SELECTION :{BLACK}Sprang op dat nächst Stéck vun der Selektioun STR_MUSIC_TOOLTIP_STOP_PLAYING_MUSIC :{BLACK}Stop d'Musik STR_MUSIC_TOOLTIP_START_PLAYING_MUSIC :{BLACK}Start d'Musik -STR_MUSIC_TOOLTIP_DRAG_SLIDERS_TO_SET_MUSIC :{BLACK}Zéi den Regler fir d'Lautstäerkt vun der Musik an den Effekter anzestellen -STR_MUSIC_TOOLTIP_SELECT_ALL_TRACKS_PROGRAM :{BLACK}Wielt 'all Lidder' Programm -STR_MUSIC_TOOLTIP_SELECT_OLD_STYLE_MUSIC :{BLACK}Wielt den 'aalen Style' Musiksprogramm -STR_MUSIC_TOOLTIP_SELECT_NEW_STYLE_MUSIC :{BLACK}Wielt den 'neien Style' Musiksprogramm +STR_MUSIC_TOOLTIP_DRAG_SLIDERS_TO_SET_MUSIC :{BLACK}Zéi de Regler fir de Volume vun der Musik an den Effekter anzestellen +STR_MUSIC_TOOLTIP_SELECT_ALL_TRACKS_PROGRAM :{BLACK}Wielt den 'all Lidder' Programm +STR_MUSIC_TOOLTIP_SELECT_OLD_STYLE_MUSIC :{BLACK}Wielt den 'ale Stil' Musiksprogramm +STR_MUSIC_TOOLTIP_SELECT_NEW_STYLE_MUSIC :{BLACK}Wielt den 'neie Stil' Musiksprogramm STR_MUSIC_TOOLTIP_SELECT_EZY_STREET_STYLE :{BLACK}Wielt den 'Ezy Street style music' Programm STR_MUSIC_TOOLTIP_SELECT_CUSTOM_1_USER_DEFINED :{BLACK}Wielt den 'Benotzerdéf. 1' Programm STR_MUSIC_TOOLTIP_SELECT_CUSTOM_2_USER_DEFINED :{BLACK}Wielt den 'Benotzerdéf. 2' Programm STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Schalt den "shuffle" un/aus STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Weis d'Fënster fir Musik ze wielen -STR_ERROR_NO_SONGS :{WHITE}E Music Set ouni Lidder gouf gewielt. Et wärten keng Lidder gespillt gin +STR_ERROR_NO_SONGS :{WHITE}E Music Set ouni Lidder gouf gewielt. Et wäerten keng Lidder gespillt ginn # Playlist window STR_PLAYLIST_MUSIC_PROGRAM_SELECTION :{WHITE}Musiksprogramm Auswiel @@ -666,13 +677,13 @@ STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTB STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Lidder Index STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Programm - '{STRING}' STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Läschen -STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Den gewielten Program reseten (nëmmen Benotzerdéf.1 oder Benotzerdéf.2) -STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Klick op d'Lidd fir et zum aktuellen Program dobäi zesetzen (nëmmen Benotzerdéf.1 oder Benotzerdéf.2) +STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}De gewielte Program reseten (nëmmen Benotzerdéf.1 oder Benotzerdéf.2) +STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Klick op d'Lidd fir et zum aktuellen Program dobäi zesetzen (nëmme Benotzerdéf.1 oder Benotzerdéf.2) STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Klick op d'Lidd fir et vum aktuellen Programm ze läschen (Benotzerdefinéiert 1 an 2 nëmmen) # Highscore window -STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Top Firmen dei {NUM} -STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Firmenligatabell an {NUM} +STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Top Firmen déi {NUM} erreecht hunn +STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Firmeligatabell {NUM} STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}. STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :Kafmann STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :Entrepreneur @@ -683,8 +694,8 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mogul STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Tycoon vum Jorhonnert STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY} STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA}) -STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} ereescht den Status '{STRING}'! -STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} vun {COMPANY} ereescht den Status '{STRING}'! +STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} erreecht de Status '{STRING}'! +STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} vun {COMPANY} erreecht de Status '{STRING}'! # Smallmap window STR_SMALLMAP_CAPTION :{WHITE}Kaart - {STRING} @@ -703,9 +714,9 @@ STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Weis de STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Weis d'Transportrouten op der Kaart STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Weis d'Vegetatioun op der Kaart STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Weis d'Landbesëtzer op der Kaart -STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Klick op en Industrietyp fir en unzeweisen. Ctrl+Klick weist just déi ugewielten Wuer. Ctrl+Klick nach emol fir all Wueren unzeweisen -STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Klick op eng Forma fir den Besëtz unzeweisen. Ctrl+Klick weist just déi ugewielten aus. Ctrl+Klick nach emol fir all Firmen ze weisen -STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Klick op eng Wuer fir tëscht den Eegenschaften ze wiesselen. Ctrl+Klick wielt Alles of ausser déi gewielten Wuer. Ctrl+Klick nach emol fir erëm Alles unzeweisen +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Klick op en Industrietyp fir en unzeweisen. Ctrl+Klick weist just déi ugewielte Wuer. Ctrl+Klick nach emol fir all Wueren unzeweisen +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Klick op eng Firma fir de Besëtz unzeweisen. Ctrl+Klick weist just déi ugewielten aus. Ctrl+Klick nach emol fir all Firmen ze weisen +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Klick op eng Wuer fir tëscht den Eegenschaften ze wiesselen. Ctrl+Klick wielt Alles of ausser déi gewielte Wuer. Ctrl+Klick nach emol fir erëm Alles unzeweisen STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Stroossen STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Schinnen @@ -713,7 +724,7 @@ STR_SMALLMAP_LEGENDA_STATIONS_AIRPORTS_DOCKS :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES :{TINY_FONT}{BLACK}Gebaier/Industrien STR_SMALLMAP_LEGENDA_VEHICLES :{TINY_FONT}{BLACK}Gefierer STR_SMALLMAP_LEGENDA_TRAINS :{TINY_FONT}{BLACK}Zich -STR_SMALLMAP_LEGENDA_ROAD_VEHICLES :{TINY_FONT}{BLACK}Stroosegefierer +STR_SMALLMAP_LEGENDA_ROAD_VEHICLES :{TINY_FONT}{BLACK}Stroossegefierer STR_SMALLMAP_LEGENDA_SHIPS :{TINY_FONT}{BLACK}Schëffer STR_SMALLMAP_LEGENDA_AIRCRAFT :{TINY_FONT}{BLACK}Fligeren STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES :{TINY_FONT}{BLACK}Transport Routen @@ -721,7 +732,7 @@ STR_SMALLMAP_LEGENDA_FOREST :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_RAILROAD_STATION :{TINY_FONT}{BLACK}Gare STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{TINY_FONT}{BLACK}Camionsluedeplaz STR_SMALLMAP_LEGENDA_BUS_STATION :{TINY_FONT}{BLACK}Busarrêt -STR_SMALLMAP_LEGENDA_AIRPORT_HELIPORT :{TINY_FONT}{BLACK}Fluchhafen/Helicopterlandeplaz +STR_SMALLMAP_LEGENDA_AIRPORT_HELIPORT :{TINY_FONT}{BLACK}Fluchhafen/Helikopterlandeplaz STR_SMALLMAP_LEGENDA_DOCK :{TINY_FONT}{BLACK}Hafen STR_SMALLMAP_LEGENDA_ROUGH_LAND :{TINY_FONT}{BLACK}Knubbelegt Land STR_SMALLMAP_LEGENDA_GRASS_LAND :{TINY_FONT}{BLACK}Grasland @@ -730,7 +741,7 @@ STR_SMALLMAP_LEGENDA_FIELDS :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_TREES :{TINY_FONT}{BLACK}Beem STR_SMALLMAP_LEGENDA_ROCKS :{TINY_FONT}{BLACK}Fielsen STR_SMALLMAP_LEGENDA_WATER :{TINY_FONT}{BLACK}Waasser -STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Keen Besëtzer +STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Kee Besëtzer STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Stied STR_SMALLMAP_LEGENDA_INDUSTRIES :{TINY_FONT}{BLACK}Industrien STR_SMALLMAP_LEGENDA_DESERT :{TINY_FONT}{BLACK}Wüst @@ -743,13 +754,13 @@ STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STR STR_SMALLMAP_COMPANY :{TINY_FONT}{COMPANY} STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} STR_SMALLMAP_DISABLE_ALL :{BLACK}All ausschalten -STR_SMALLMAP_ENABLE_ALL :{BLACK}All unschalten +STR_SMALLMAP_ENABLE_ALL :{BLACK}All uschalten STR_SMALLMAP_SHOW_HEIGHT :{BLACK}D'Héicht uweisen STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}Keng Industrien op der Kaart uweisen STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}All Industrien op der Kaart uweisen STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Wiessel d'Usiicht vun der Héichtenkaart -STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Weis keen Besëtz vun der Firma op der Kaart un -STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Weis den ganzen Besëtz vun der Firma op der Kaart un +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Weis kee Besëtz vun der Firma op der Kaart un +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Weis de ganze Besëtz vun der Firma op der Kaart un STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Weis keng Wueren op der Kaart STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Weis all Wueren op der Kaart @@ -757,70 +768,70 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Weis all STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Lescht Meldung oder News STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - STR_STATUSBAR_PAUSED :{YELLOW}* * PAUSEIERT * * -STR_STATUSBAR_AUTOSAVE :{RED}AUTOSPÄICHER +STR_STATUSBAR_AUTOSAVE :{RED}AUTOSPÄICHEREN STR_STATUSBAR_SAVING_GAME :{RED}* * SPÄICHERT D'SPILL * * # News message history STR_MESSAGE_HISTORY :{WHITE}Meldungshistorie -STR_MESSAGE_HISTORY_TOOLTIP :{BLACK}Eng Lëscht vun den leschten Meldungen +STR_MESSAGE_HISTORY_TOOLTIP :{BLACK}Eng Lëscht vun de leschten Meldungen STR_MESSAGE_NEWS_FORMAT :{STRING} - {STRING} STR_NEWS_MESSAGE_CAPTION :{WHITE}Meldung STR_NEWS_CUSTOM_ITEM :{BIG_FONT}{BLACK}{STRING} -STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischten Zuch kënnt bei {STATION} un! -STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischten Bus kënnt bei {STATION} un! -STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Eischten Camion kënnt bei {STATION} un! -STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Eischten Tram kënnt bei {STATION} un! -STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Eischten Wueren-Tram kënnt bei {STATION} un! -STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischt Schëff kënnt bei {STATION} un! -STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischten Fliger kënnt bei {STATION} un! +STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischten Zuch kënnt zu {STATION} un! +STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischte Bus kënnt zu {STATION} un! +STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Eischte Camion kënnt zu {STATION} un! +STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Eischten Tram kënnt zu {STATION} un! +STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Eischte Wueren-Tram kënnt zu {STATION} un! +STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischt Schëff kënnt zu {STATION} un! +STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Bierger feieren . . .{}Éischte Fliger kënnt zu {STATION} un! -STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Zuchaccident!{}{COMMA} Leit stiewen an der Explosioun nom Accident -STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Stroossegefier Accident!{}Fuerer stierft an der Explosioun no Accident mat Zuch -STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Stroossegefieraccident!{}{COMMA} Leit stiewen an der Explosioun no Accident mam Zuch -STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Fligeraccident!{}{COMMA} Leit stiewen an der Explosioun bei {STATION} -STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Fligeraccident!{}Fliger hat keen Bensin méi, {COMMA} Leit stiewen an Explosioun! +STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Zuchakzident!{}{COMMA} Leit stiewen an der Explosioun nom Akzident +STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Stroossenakzident!{}Fuerer stierft an der Explosioun no Akzident mat Zuch +STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Stroossegefierakzident!{}{COMMA} Leit stiewen an der Explosioun no Akzident mam Zuch +STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Fligerakzident!{}{COMMA} Leit stiewen an der Explosioun bei {STATION} +STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Fligerakzident!{}Fliger hat kee Bensin méi, {COMMA} Leit stiewen an Explosioun! -STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}Zeppelinkatastroph bei {STATION}! -STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}Stroossegefier bei 'UFO'-Zesummenstouss zerstéiert! +STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}Zeppelinkatastroph zu {STATION}! +STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}Stroossegefier bei 'UFO'-Zesummestouss zerstéiert! STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}Uelegraffinerie bei {TOWN} explodéiert! STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}Fabrik ass zu {TOWN} ënner verdächtegen Ëmmstänn zerstéiert ginn! STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}'UFO' bei {TOWN} geland! -STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Kuelenstollenzesummenbroch hannerléisst eng Spuer vun Verwüstung bei {TOWN}! -STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Flut!{}Opmanst {COMMA} vermësst, wahrscheinlech doud noo grousser Flut! +STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Kuelestollenzesummebroch hannerléisst eng Spuer vu Verwüstung bei {TOWN}! +STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Flut!{}Opmanst {COMMA} Leit vermësst, wahrscheinlech doud no grousser Flut! -STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Transportfirma huet Probleemer! +STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Transportfirma huet Problemer! STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} gëtt verkaf oder Bankrott erklärt, wann sëch d'Performance net verbessert! -STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Transportfirmen Fusioun! +STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Transportfirme-Fusioun! STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} ass un {STRING} fir {CURRENCY_LONG} verkaf ginn! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Bankrott! -STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} ass zougemaach ginn, an all Reschtposten sinn verkaaf! +STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} ass zougemaach ginn, an all Reschtposte si verkaf! STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nei Transportfirma gegrënnt! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} baut bei {TOWN}! STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} ass vun {STRING} iwwerholl ginn! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Manager) -STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} huet Contructioun vun der Stad {TOWN} gesponsort! +STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} huet Kontruktioun vun der Stad {TOWN} gesponsort! -STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Nei {STRING} gëtt bei {TOWN} gebaut! -STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Nei {STRING} gëtt bei {TOWN} geplantzt! +STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}{STRING} gëtt bei {TOWN} gebaut! +STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}{STRING} gëtt bei {TOWN} geplanzt! STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLACK}{STRING} gëtt glaich zougemaach! STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}Liwwerungsproblemer féieren dozou dass {STRING} gläich zougemach gëtt! -STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK}Mangel un Beem féiert dozou dass {STRING} gläich zougemaach gëtt! +STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK}Mangel u Beem féiert dozou dass {STRING} gläich zougemaach gëtt! -STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}Europäesch Währungsunioun!{}{}Den Euro ass als nei Währung am Land angefouert ginn! +STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}Europäesch Währungsunioun!{}{}Den Euro ass als nei Währung am Land agefouert ginn! STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLACK}Wirtschaftsréckgang!{}{}Finanzexperten rechnen mat schlëmmsten Abrëch! STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}Wirtschaftsflaut eriwwer!{}{}Verbesserung am Handel bréngt Hoffnung fir Industrien an d'Economie gëtt gestäerkt! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} erhéicht d'Produktioun! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}Nei Kuelenflöz bei {INDUSTRY} font!{}Verdueblung vun der Produktioun erwart! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}Nei Uelegreserven bei {INDUSTRY} font!{}Verdueblung vun der Produktioun erwart! -STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}Verbessert Ofbaumethoden bei {INDUSTRY} erfont!{}Verdueblung vun der Produktioun erwart! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}Nei Kuelenvirkommes bei {INDUSTRY} fonnt!{}Verdueblung vun der Produktioun erwaart! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}Nei Uelegreserven bei {INDUSTRY} font!{}Verdueblung vun der Produktioun erwaart! +STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}{INDUSTRY} huet verbessert Ofbaumethoden erfonnt!{}Verdueblung vun der Produktioun erwaard! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_SMOOTH :{BIG_FONT}{BLACK}{STRING} Produktioun vun {INDUSTRY} geet ëm {COMMA}% erop! STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} Produktioun geet ëm 50% erof -STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLACK}Insektenbefall bei {INDUSTRY}!{}Produktioun geet ëm 50% erof +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLACK}Insektebefall mat héijem Schued zu {INDUSTRY}!{}Produktioun geet ëm 50% erof STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLACK}{STRING} Produktioun vun {INDUSTRY} geet ëm {COMMA}% erof! STR_NEWS_TRAIN_IS_WAITING :{WHITE}{VEHICLE} waard am Schapp @@ -829,49 +840,49 @@ STR_NEWS_SHIP_IS_WAITING :{WHITE}{VEHICLE STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}{VEHICLE} waard am Hangar # Order review system / warnings -STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE} huet ze wéinech Opträg am Plang +STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE} huet ze mann Opträg am Plang STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} huet en eidelen Optrag STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} huet duebel Opträg STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} huet eng falsch Statioun an den Opträg STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} huet an séngen Opträg en Fluchhafen dem séng Landebunn ze kuerz ass -STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} gëtt aal -STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} gëtt ganz aal -STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}{VEHICLE} ass ganz aal, an sollt schnellstens ersaat ginn -STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE} kann den Wee fir weider ze fueren net fannen +STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} gëtt al +STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} gëtt ganz al +STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}{VEHICLE} ass ganz al, an sollt schnellstens ersaat ginn +STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE} kann de Wee fir weider ze fueren net fannen STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} ass verluer STR_NEWS_VEHICLE_IS_UNPROFITABLE :{WHITE}Dëm {VEHICLE} säin Profit vum leschten Joer war {CURRENCY_LONG} STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE} kann net op d'nächst Destinatioun kommen, se ass ze wäit ewech STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} huet gestoppt well eng Optragennerung net geklappt huet -STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Fehler beim Autoerneieren vun {VEHICLE}{}{STRING} +STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Fehler beim Autoerneieren vum {VEHICLE}{}{STRING} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nei {STRING} verfügbar! +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Neie {STRING} verfügbar! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nei {STRING} verfügbar! - {ENGINE} +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Neie/Neit {STRING} verfügbar! - {ENGINE} -STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} acceptéiert {STRING} net méi -STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} acceptéiert {STRING} oder {STRING} net méi -STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} acceptéiert elo {STRING} -STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} acceptéiert elo {STRING} an {STRING} +STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} akzeptéiert {STRING} net méi +STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} akzeptéiert {STRING} oder {STRING} net méi +STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} akzeptéiert elo {STRING} +STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} akzeptéiert elo {STRING} an {STRING} STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Subventioun ofgelaaf:{}{}{STRING} vun {STRING} op {STRING} gëtt net méi subventionéiert STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subventioun entzunn:{}{}{STRING} Service vun {STRING} op {STRING} gëtt net méi subventionéiert STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subventioun offréiert:{}{}Eischten {STRING} Service vun {STRING} op {STRING} gëtt mat énger Subventioun vun 1 Joer belount.! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subventioun geet un {STRING}!{}{}{STRING} Service vun {STRING} op {STRING} gëtt nächst Joer mat 50% bezuelt! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subventioun geet un {STRING}!{}{}{STRING} Service vun {STRING} op {STRING} gëtt nächst Joer mat 50% Bonus bezuelt! STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subventioun geet un {STRING}!{}{}{STRING} Service vun {STRING} op {STRING} gëtt nächst Joer duebel bezuelt! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subventioun geet un {STRING}!{}{}{STRING} Service vun {STRING} op {STRING} gëtt nächst Joer draifach bezuelt! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subventioun geet un {STRING}!{}{}{STRING} Service vun {STRING} op {STRING} gëtt nächst Joer dräifach bezuelt! STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Subventioun geet un {STRING}!{}{}{STRING} Service vun {STRING} op {STRING} gëtt nächst Joer mat 400% bezuelt! -STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Trafficchaos an {TOWN}!{}{}Stroosenneibau deen vun {STRING} finanzéiert ginn ass bréngt 6 Méint Misère fir d'Autosfuerer! +STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Trafficchaos an {TOWN}!{}{}Stroossenneibau deen vun {STRING} finanzéiert ginn ass bréngt 6 Méint Misère fir d'Autosfuerer! STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Transportmonopol! -STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}Lokal Authoritéit vun {TOWN} ënnerschreiwt Kontrakt mat {STRING} fir ee Joër laang exklusiv Transportrechter! +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}D'Gemeng {TOWN} ënnerschreiwt Kontrakt mat {STRING} fir ee Joer laang exklusiv Transportrechter! # Extra view window -STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Unsicht {COMMA} +STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Usiicht {COMMA} STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Kopéiert op d'Usiicht -STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Kopéiert d'Plaz vun der globaler Usiicht op dës Usiicht -STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Vun der Unsiicht dransetzen +STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Kopéiert d'Plaz vun der globaler Usiicht op des Usiicht +STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Vun der Usiicht drasetzen STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Setzt d'Plaz vun dëser Usiicht op déi global Usiicht # Game options window @@ -884,72 +895,68 @@ STR_GAME_OPTIONS_CURRENCY_GBP :Pond (£) STR_GAME_OPTIONS_CURRENCY_USD :Dollar ($) STR_GAME_OPTIONS_CURRENCY_EUR :Euro (€) STR_GAME_OPTIONS_CURRENCY_JPY :Yen (¥) -STR_GAME_OPTIONS_CURRENCY_ATS :Eisträichëschen Schilling (ATS) +STR_GAME_OPTIONS_CURRENCY_ATS :Eisträichesche Schilling (ATS) STR_GAME_OPTIONS_CURRENCY_BEF :Belsch Frang (BEF) STR_GAME_OPTIONS_CURRENCY_CHF :Schwäizer Frang (CHF) -STR_GAME_OPTIONS_CURRENCY_CZK :Tschechësch Kroun (CZK) -STR_GAME_OPTIONS_CURRENCY_DEM :Däitsch Mark (DEM) -STR_GAME_OPTIONS_CURRENCY_DKK :Dänësch Kroun (DKK) +STR_GAME_OPTIONS_CURRENCY_CZK :Tschechesch Kroun (CZK) +STR_GAME_OPTIONS_CURRENCY_DEM :Däitsch Mark (DM) +STR_GAME_OPTIONS_CURRENCY_DKK :Dänesch Kroun (DKK) STR_GAME_OPTIONS_CURRENCY_ESP :Peseten (ESP) -STR_GAME_OPTIONS_CURRENCY_FIM :Finnmark (FIM) -STR_GAME_OPTIONS_CURRENCY_FRF :Franséisch Frang (FRF) +STR_GAME_OPTIONS_CURRENCY_FIM :Finnesch Mark (FIM) +STR_GAME_OPTIONS_CURRENCY_FRF :Franséische Frang (FRF) STR_GAME_OPTIONS_CURRENCY_GRD :Griechësch Drachme (GRD) -STR_GAME_OPTIONS_CURRENCY_HUF :Ungarësch Forint (HUF) -STR_GAME_OPTIONS_CURRENCY_ISK :Isländësch Kroun (ISK) -STR_GAME_OPTIONS_CURRENCY_ITL :Italienësch Lire (ITL) -STR_GAME_OPTIONS_CURRENCY_NLG :Holländësch Gulden (NLG) -STR_GAME_OPTIONS_CURRENCY_NOK :Norwegësch Kroun (NOK) -STR_GAME_OPTIONS_CURRENCY_PLN :Polnësch Zloty (PLN) -STR_GAME_OPTIONS_CURRENCY_RON :Rumänësch Leu (RON) -STR_GAME_OPTIONS_CURRENCY_RUR :Russësch Rubl (RUR) -STR_GAME_OPTIONS_CURRENCY_SIT :Slowenëschen Tolar (SIT) -STR_GAME_OPTIONS_CURRENCY_SEK :Schwedësch Kroun (SEK) -STR_GAME_OPTIONS_CURRENCY_TRY :Türkësch Lire (TRY) -STR_GAME_OPTIONS_CURRENCY_SKK :Slovakësch Kroun (SKK) -STR_GAME_OPTIONS_CURRENCY_BRL :Brasilianësch Real (BRL) -STR_GAME_OPTIONS_CURRENCY_EEK :Estnësch Kroun (EEK) -STR_GAME_OPTIONS_CURRENCY_LTL :Lithauësch Litas (LTL) -STR_GAME_OPTIONS_CURRENCY_KRW :Südkoreanëschen Won (KRW) -STR_GAME_OPTIONS_CURRENCY_ZAR :Südafrikanësche Rand (ZAR) +STR_GAME_OPTIONS_CURRENCY_HUF :Ungaresche Forint (HUF) +STR_GAME_OPTIONS_CURRENCY_ISK :Isländesch Kroun (ISK) +STR_GAME_OPTIONS_CURRENCY_ITL :Italienesch Lire (ITL) +STR_GAME_OPTIONS_CURRENCY_NLG :Holländesche Gulden (NLG) +STR_GAME_OPTIONS_CURRENCY_NOK :Norwegesch Kroun (NOK) +STR_GAME_OPTIONS_CURRENCY_PLN :Polnesch Zloty (PLN) +STR_GAME_OPTIONS_CURRENCY_RON :Rumänesch Leu (RON) +STR_GAME_OPTIONS_CURRENCY_RUR :Russesche Rubel (RUR) +STR_GAME_OPTIONS_CURRENCY_SIT :Sloweneschen Tolar (SIT) +STR_GAME_OPTIONS_CURRENCY_SEK :Schwedesch Kroun (SEK) +STR_GAME_OPTIONS_CURRENCY_TRY :Türkesch Lire (TRY) +STR_GAME_OPTIONS_CURRENCY_SKK :Slovakesch Kroun (SKK) +STR_GAME_OPTIONS_CURRENCY_BRL :Brasilianesche Real (BRL) +STR_GAME_OPTIONS_CURRENCY_EEK :Estnesch Kroun (EEK) +STR_GAME_OPTIONS_CURRENCY_LTL :Litauesch Litas (LTL) +STR_GAME_OPTIONS_CURRENCY_KRW :Südkoreanesche Won (KRW) +STR_GAME_OPTIONS_CURRENCY_ZAR :Südafrikanesche Rand (ZAR) STR_GAME_OPTIONS_CURRENCY_CUSTOM :Eegen... -STR_GAME_OPTIONS_CURRENCY_GEL :Georgëschen Lari (GEL) -STR_GAME_OPTIONS_CURRENCY_IRR :Iranëschen Rial (IRR) +STR_GAME_OPTIONS_CURRENCY_GEL :Georgesche Lari (GEL) +STR_GAME_OPTIONS_CURRENCY_IRR :Iranësche Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Stroossegefierer -STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Wéi eng Stroossensäit sollen d'Gefierer fueren -STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Lenks fueren +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Wéi eng Stroossesäit sollen d'Gefierer fueren +STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Lénks fueren STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Riets fueren STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Stiednimm -STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Stil vun den Stiednimm wielen +STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Stil vun de Stiednimm wielen ############ start of townname region -STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Englësch (Original) +STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Englesch (Original) STR_GAME_OPTIONS_TOWN_NAME_FRENCH :Franséisch STR_GAME_OPTIONS_TOWN_NAME_GERMAN :Däitsch -STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Englësch (Erweidert) +STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Englesch (Erweidert) STR_GAME_OPTIONS_TOWN_NAME_LATIN_AMERICAN :Lateinamerikanesch STR_GAME_OPTIONS_TOWN_NAME_SILLY :Blöd -STR_GAME_OPTIONS_TOWN_NAME_SWEDISH :Schwédesch -STR_GAME_OPTIONS_TOWN_NAME_DUTCH :Holländësch -STR_GAME_OPTIONS_TOWN_NAME_FINNISH :Finnësch -STR_GAME_OPTIONS_TOWN_NAME_POLISH :Polnësch -STR_GAME_OPTIONS_TOWN_NAME_SLOVAK :Slovakësch -STR_GAME_OPTIONS_TOWN_NAME_NORWEGIAN :Norwegësch -STR_GAME_OPTIONS_TOWN_NAME_HUNGARIAN :Ungarësch -STR_GAME_OPTIONS_TOWN_NAME_AUSTRIAN :Éisträichësch +STR_GAME_OPTIONS_TOWN_NAME_SWEDISH :Schwedesch +STR_GAME_OPTIONS_TOWN_NAME_DUTCH :Holländesch +STR_GAME_OPTIONS_TOWN_NAME_FINNISH :Finnesch +STR_GAME_OPTIONS_TOWN_NAME_POLISH :Polnesch +STR_GAME_OPTIONS_TOWN_NAME_SLOVAK :Slovakesch +STR_GAME_OPTIONS_TOWN_NAME_NORWEGIAN :Norwegesch +STR_GAME_OPTIONS_TOWN_NAME_HUNGARIAN :Ungaresch +STR_GAME_OPTIONS_TOWN_NAME_AUSTRIAN :Éisträichesch STR_GAME_OPTIONS_TOWN_NAME_ROMANIAN :Rumänesch -STR_GAME_OPTIONS_TOWN_NAME_CZECH :Tschechësch -STR_GAME_OPTIONS_TOWN_NAME_SWISS :Swäitzerësch -STR_GAME_OPTIONS_TOWN_NAME_DANISH :Dänësch -STR_GAME_OPTIONS_TOWN_NAME_TURKISH :Türkësch -STR_GAME_OPTIONS_TOWN_NAME_ITALIAN :Italienësch -STR_GAME_OPTIONS_TOWN_NAME_CATALAN :Katalanësch +STR_GAME_OPTIONS_TOWN_NAME_CZECH :Tschechesch +STR_GAME_OPTIONS_TOWN_NAME_SWISS :Schwäitzer +STR_GAME_OPTIONS_TOWN_NAME_DANISH :Dänesch +STR_GAME_OPTIONS_TOWN_NAME_TURKISH :Türkesch +STR_GAME_OPTIONS_TOWN_NAME_ITALIAN :Italienesch +STR_GAME_OPTIONS_TOWN_NAME_CATALAN :Katalanesch ############ end of townname region STR_GAME_OPTIONS_AUTOSAVE_FRAME :{BLACK}Autospäicheren @@ -964,59 +971,66 @@ STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_12_MONTHS :All 12 Méint ############ end of autosave dropdown STR_GAME_OPTIONS_LANGUAGE :{BLACK}Sprooch -STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Wielt d'Interfacesprooch +STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Wielt d'Interfacesprooch aus STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Vollbild STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Klick dës Optioun un fir OpenTTD am Vollbild ze spillen STR_GAME_OPTIONS_RESOLUTION :{BLACK}Bildopléisung STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Wielt d'Bildopléisung -STR_GAME_OPTIONS_RESOLUTION_OTHER :Aaneres +STR_GAME_OPTIONS_RESOLUTION_OTHER :Aaner + +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interfacegréisst +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wiel d'Gréisst déi fir den Interface soll benotzt ginn + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Duebel +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Véierfach STR_GAME_OPTIONS_BASE_GRF :{BLACK}Basis Grafikset -STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Wielt de Basis Grafikset den soll benotzt ginn +STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Wielt de Basis Grafikset dee soll benotzt ginn STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fehlend/korrupt Datei{P "" en} -STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Méi Infos iwwert den Basis Grafikset +STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Méi Infos iwwert de Basis Grafikset -STR_GAME_OPTIONS_BASE_SFX :{BLACK}Basis sounds set -STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Wiel de Basis Sound Set den soll benotzt ginn -STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Méi Informatiounen iwwer d'Basis Sound Set +STR_GAME_OPTIONS_BASE_SFX :{BLACK}Basis Soundset +STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Wiel de Basis Soundset dee soll benotzt ginn +STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Méi Informatiounen iwwer d'Basis Soundset -STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Basis Music Set -STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Wiel de Basis Sound Set den soll benotzt ginn +STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Basis Musikset +STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Wiel de Basis Musikset dee soll benotzt ginn STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} korrupt Datei{P "" en} -STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Méi Informatiounen iwwer d'Basis Musik Set +STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Méi Informatiounen iwwer de Basis Musikset -STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Konnt keng Lësch vun net supportéiren Opléisungen fannen +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Konnt keng Lëscht vun supportéierten Opléisunge fannen STR_ERROR_FULLSCREEN_FAILED :{WHITE}Fehler beim Vollbild # Custom currency window -STR_CURRENCY_WINDOW :{WHITE}Egen Währung +STR_CURRENCY_WINDOW :{WHITE}Eegen Währung STR_CURRENCY_EXCHANGE_RATE :{LTBLUE}Wiesselkuer: {ORANGE}{CURRENCY_LONG} = £ {COMMA} -STR_CURRENCY_DECREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Setz den Betrag Suen den fir 1 Pond (£) gebraucht gëtt erof -STR_CURRENCY_INCREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Setz den Betrag Suen den fir 1 Pond (£) gebraucht gëtt erop -STR_CURRENCY_SET_EXCHANGE_RATE_TOOLTIP :{BLACK}Setzt den Wiesselcours fir deng Währung fir 1 Pond (£) +STR_CURRENCY_DECREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Setz de Betrag Suen dee fir 1 Pond (£) gebraucht gëtt erof +STR_CURRENCY_INCREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Setz de Betrag Suen dee fir 1 Pond (£) gebraucht gëtt erop +STR_CURRENCY_SET_EXCHANGE_RATE_TOOLTIP :{BLACK}Setzt de Wiesselcours fir deng Währung fir 1 Pond (£) STR_CURRENCY_SEPARATOR :{LTBLUE}Komma-Stil: {ORANGE}{STRING} -STR_CURRENCY_SET_CUSTOM_CURRENCY_SEPARATOR_TOOLTIP :{BLACK}Setzt den Separateur fir deng Währung +STR_CURRENCY_SET_CUSTOM_CURRENCY_SEPARATOR_TOOLTIP :{BLACK}Setzt de Separateur fir deng Währung STR_CURRENCY_PREFIX :{LTBLUE}Prefix: {ORANGE}{STRING} -STR_CURRENCY_SET_CUSTOM_CURRENCY_PREFIX_TOOLTIP :{BLACK}Setzt den Prefix fir deng Währung +STR_CURRENCY_SET_CUSTOM_CURRENCY_PREFIX_TOOLTIP :{BLACK}Setzt de Prefix fir deng Währung STR_CURRENCY_SUFFIX :{LTBLUE}Suffix: {ORANGE}{STRING} -STR_CURRENCY_SET_CUSTOM_CURRENCY_SUFFIX_TOOLTIP :{BLACK}Setzt den Suffix fir deng Währung +STR_CURRENCY_SET_CUSTOM_CURRENCY_SUFFIX_TOOLTIP :{BLACK}Setzt de Suffix fir deng Währung -STR_CURRENCY_SWITCH_TO_EURO :{LTBLUE}Zum Euro wiesselen: {ORANGE}{NUM} +STR_CURRENCY_SWITCH_TO_EURO :{LTBLUE}Op Euro wiesselen ab: {ORANGE}{NUM} STR_CURRENCY_SWITCH_TO_EURO_NEVER :{LTBLUE}Zum Euro wiesselen: {ORANGE}nie STR_CURRENCY_SET_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Wielt d'Joer wou op den Euro gewiesselt gëtt STR_CURRENCY_DECREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Wiessel éischter op den Euro STR_CURRENCY_INCREASE_CUSTOM_CURRENCY_TO_EURO_TOOLTIP :{BLACK}Wiessel méi spéit op den Euro STR_CURRENCY_PREVIEW :{LTBLUE}Prouf: {ORANGE}{CURRENCY_LONG} -STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}10000 Pond (£) an äerer Währung +STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}10000 Pond (£) an denger Währung STR_CURRENCY_CHANGE_PARAMETER :{BLACK}Änner Währungsparameter -STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Maximal Unzuel vun Géigner: {ORANGE}{COMMA} +STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Maximal Unzuel vu Géigner: {ORANGE}{COMMA} STR_NONE :Keng STR_FUNDING_ONLY :Nëmmen finanzéiren @@ -1025,7 +1039,7 @@ STR_NUM_VERY_LOW :Ganz niddreg STR_NUM_LOW :Wéineg STR_NUM_NORMAL :Normal STR_NUM_HIGH :Vill -STR_NUM_CUSTOM :Benotzerdefineiert +STR_NUM_CUSTOM :Benotzerdefinéiert STR_NUM_CUSTOM_NUMBER :Eegen ({NUM}) STR_VARIETY_NONE :Keng @@ -1041,10 +1055,10 @@ STR_AI_SPEED_MEDIUM :Mëttel STR_AI_SPEED_FAST :Séier STR_AI_SPEED_VERY_FAST :Ganz séier -STR_SEA_LEVEL_VERY_LOW :Ganz Wéineg -STR_SEA_LEVEL_LOW :Wéineg +STR_SEA_LEVEL_VERY_LOW :Ganz niddreg +STR_SEA_LEVEL_LOW :Niddreg STR_SEA_LEVEL_MEDIUM :Mëttel -STR_SEA_LEVEL_HIGH :Vill +STR_SEA_LEVEL_HIGH :Héich STR_SEA_LEVEL_CUSTOM :Eegen STR_SEA_LEVEL_CUSTOM_PERCENTAGE :Eegen ({NUM}%) @@ -1066,15 +1080,16 @@ STR_TERRAIN_TYPE_VERY_FLAT :Ganz Flaach STR_TERRAIN_TYPE_FLAT :Flaach STR_TERRAIN_TYPE_HILLY :Hiwwelech STR_TERRAIN_TYPE_MOUNTAINOUS :Bierger +STR_TERRAIN_TYPE_ALPINIST :Alpin -STR_CITY_APPROVAL_PERMISSIVE :Erlaabend +STR_CITY_APPROVAL_PERMISSIVE :Fräizügeg STR_CITY_APPROVAL_TOLERANT :Tolerant STR_CITY_APPROVAL_HOSTILE :Ofleenend -STR_WARNING_NO_SUITABLE_AI :{WHITE}Keng KI fonnt...{}KI kënnen iwwert den 'Online Content' system downgeload gin +STR_WARNING_NO_SUITABLE_AI :{WHITE}Keng KI fonnt...{}KI kënnen iwwert den 'Online Content' system downgeload ginn -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Erweidert Astellungen +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Astellungen STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filter-String: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Alles erweideren STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Alles reduzéiren @@ -1090,10 +1105,10 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Firmenastellung STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorie: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Typ: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Limitéiert d'Lëscht mat virdefinéierten Filter -STR_CONFIG_SETTING_RESTRICT_BASIC :Basic Astellungen -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Erweidert Astellungen -STR_CONFIG_SETTING_RESTRICT_ALL :Expertenastellungen / All Astellungen -STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Astellungen mat engem aneren Wäert wéi den Standardwäert +STR_CONFIG_SETTING_RESTRICT_BASIC :Basis (nëmmen wichteg Astellungen) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Erweidert (weist déi meescht Astellungen) +STR_CONFIG_SETTING_RESTRICT_ALL :Expertenastellungen (all Astellungen, och komescher) +STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Astellungen mat engem aneren Wäert wéi de Standardwäert STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Astellungen mat engem aneren Wäert wéi d'Neit-Spill-Astellungen STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Beschränkt déi folgend Lëscht op bestëmmten Astellungstypen @@ -1113,90 +1128,95 @@ STR_CONFIG_SETTING_ON :Un STR_CONFIG_SETTING_DISABLED :ausgeschalt STR_CONFIG_SETTING_COMPANIES_OFF :Aus -STR_CONFIG_SETTING_COMPANIES_OWN :Eegen Firma +STR_CONFIG_SETTING_COMPANIES_OWN :Eege Firma STR_CONFIG_SETTING_COMPANIES_ALL :All Firmen -STR_CONFIG_SETTING_NONE :Keen +STR_CONFIG_SETTING_NONE :Keng STR_CONFIG_SETTING_ORIGINAL :Original -STR_CONFIG_SETTING_REALISTIC :Realistësch +STR_CONFIG_SETTING_REALISTIC :Realistesch STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT :Lénks STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Zentréiert STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Riets STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maximalen Ufanksloun: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximalwert den eng Firma kann léinen (ouni Inflatioun matzerechnen) +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximalwäert den eng Firma kann léinen (ouni Inflatioun matzerechnen) STR_CONFIG_SETTING_INTEREST_RATE :Zënssaz: {STRING} STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Zënssaz; kontrolléiert och d'Inflatioun wann ugeschalt -STR_CONFIG_SETTING_RUNNING_COSTS :Betriebskäschten: {STRING} -STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Fixéier den Niveau vun den Betriebskäschten vun Gefierer an Infrastruktur +STR_CONFIG_SETTING_RUNNING_COSTS :Betribskäschten: {STRING} +STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Fixéier den Niveau vun de Betribskäschten vu Gefierer an Infrastruktur STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Baugeschwindegkeet: {STRING} -STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limitéier d'Unzuel vun Bauaktiounen fir d'KI +STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limitéier d'Unzuel u Bauaktiounen fir d'KI STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Gefierpannen: {STRING} STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Kontrolléirt wéi oft Gefierer eng Pann hunn déi net ordentlech an der Revisioun waren -STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Subsidemultiplikator: {STRING} -STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Fixéiert wéivill fir subsidéiert Verbindungen bezuelet gëtt +STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Subventiounemultiplikator: {STRING} +STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Fixéiert wéivill fir subsidéiert Verbindunge bezuelt gëtt STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Konstruktiounskäschten: {STRING} -STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Bestëmm den Niveau vun Bau- an Kafkäschten +STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Bestëmm den Niveau vu Bau- a Kafkäschten STR_CONFIG_SETTING_RECESSIONS :Rezessiounen: {STRING} STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Wann ugeschalt kann all puer Joer eng Rezessioun kommen. Während enger Rezessioun ass d'Produktioun däitlech méi niddreg (an klëmmt erëm op den alen Niveau no der Rezessioun) -STR_CONFIG_SETTING_TRAIN_REVERSING :Verbidden dass Zich an enger Statioun emdréinen: {STRING} -STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Wann ugeschalt kënnen Zich net an Net-Endstatiounen emdréinen, wann en méi kuerzen Wee op d'Destinatioun ass wann en emdréint +STR_CONFIG_SETTING_TRAIN_REVERSING :Den Zich verbidden an enger Statioun emzedréinen: {STRING} +STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Wann ugeschalt kënnen Zich net an Net-Terminusen emdréinen, och wann et en méi kuerzen Wee op d'Destinatioun gëtt wann en emdréint STR_CONFIG_SETTING_DISASTERS :Katastrophen: {STRING} -STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Stelle Katastrophen un oder aus déi eventuell Gefierer an Industrien blockéiren oder zerstéiren -STR_CONFIG_SETTING_CITY_APPROVAL :Dem Stadrot seng Astellung zum Embauen vun der Landschaft: {STRING} -STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Wielt aus, wéivill vun der Firma verursachten Kaméidi an Emweltschiedegung sech op d'Stadbewertung auswierkt an op weider Bauaktiounen +STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Stell Katastrophen un oder aus déi eventuell Gefierer an Industrien blockéiren oder zerstéiren +STR_CONFIG_SETTING_CITY_APPROVAL :Dem Stadrot seng Astellung géigeniwwer dem Embau vun der Landschaft: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Wielt aus, wéivill vun der Firma verursachten Kaméidi an Emweltschiedegung sech op d'Stadbewäertung an op weider Bauaktiounen auswierkt -STR_CONFIG_SETTING_AUTOSLOPE :Erlaabt Landforumung ënnert Gebaier, Stroossen, etc.: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximal Kaartenhéicht: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Setzt déi maximal erlabten Héicht fir Bierger op dëser Kaart +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Du kanns d'maximal Kaartenhéischt net op dësen Wäert setzen. Op manst ee Bierg op der Kaart ass méi héich +STR_CONFIG_SETTING_AUTOSLOPE :Erlaabt Landformung ënnert Gebaier, Stroossen, etc.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Erlaabt Terraintransformatioun ënnert Gebaier an Schinnen ouni dës ewechzehuelen -STR_CONFIG_SETTING_CATCHMENT :Erlaabt méi realistësch Staugréisstplazen: {STRING} -STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Statiounen an Fluchhäfen hunn verschidden grouss Opfanggebidder -STR_CONFIG_SETTING_EXTRADYNAMITE :Erlaabt d'Ewechhuelen vun méi Stroosen, Brécken, etc. vun der Stad: {STRING} +STR_CONFIG_SETTING_CATCHMENT :Erlaabt méi realistësch Einzugsberäicher: {STRING} +STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Statiounen a Fluchhäfen hunn verschidde grouss Einzugsberäicher +STR_CONFIG_SETTING_EXTRADYNAMITE :Erlaabt d'Ewechhuelen vu méi Stroossen, Brécken, etc. vun der Stad: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Mach et méi einfach fir Infrastruktur oder Gebaier ewechzehuelen déi enger Stad gehéiren STR_CONFIG_SETTING_TRAIN_LENGTH :Maximal Längt vun Zich: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Maximal Längt vun Zich fixéiren STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} Feld{P 0 "" er} -STR_CONFIG_SETTING_SMOKE_AMOUNT :Unzuel vun Gefiererdamp/partikel: {STRING} -STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Fixéiert wéivill Damp oder Funken vun Gefierer ausgestouss ginn +STR_CONFIG_SETTING_SMOKE_AMOUNT :Unzuel vu Gefierdamp/funken: {STRING} +STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Fixéiert wéivill Damp oder Funken vu Gefierer ausgestouss gëtt STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL :Zuchbeschleunegung: {STRING} -STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Wielt de physësche Modell fir d'Zuchbeschleunegung. Den "Orginalmodell" bestroft Häng fir all Gefierer d'selwëscht. Den "realistëschen" bestroft Häng an Kéiren ofhängeg vun verschiddenen Eegenschaften, wéi Längt an Stäerkt vum Gefier -STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL :Stroossegefier Beschleunigungsmodell: {STRING} -STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT :Wielt de physësche Modell fir d'Stroossegefierbeschleunegung. Den "Orginalmodell" bestroft Häng fir all Gefierer d'selwëscht. Den "realistëschen" bestroft Häng an Kéiren ofhängeg vun verschiddenen Eegenschaften, wéi Längt an Stäerkt vum Gefier +STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT :Wielt de physesche Modell fir d'Zuchbeschleunegung. Den "Orginalmodell" bestroft Häng fir all Gefierer d'selwecht. Den "realistëschen" bestroft Häng a Kéiren ofhängeg vu verschiddenen Eegenschaften, wéi Längt an Stäerkt vum Gefier +STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL :Stroossegefier Beschleunegungsmodell: {STRING} +STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT :Wielt de physesche Modell fir d'Stroossegefierbeschleunegung. Den "Orginalmodell" bestroft Häng fir all Gefierer d'selwecht. Den "realistëschen" bestroft Häng an Kéiren ofhängeg vu verschiddenen Eegenschaften, wéi Längt a Stäerkt vum Gefier STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS :Hangsteigung fir Zich: {STRING} -STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Steigung vun engem Hang fir Zich. Méi grouss Wäerter mëscht et méi schwéier den Hang ropzefueren +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Steigung vun engem Hang fir Zich. Méi grouss Wäerter mécht et méi schwéier den Hang ropzefueren STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Hangsteigung fir Stroossegefierer: {STRING} -STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Steigung vun engem Hang fir Stroossegefierer. Méi grouss Werter mëscht et méi schwéier den Hang ropzefueren -STR_CONFIG_SETTING_FORBID_90_DEG :Verbidd Zich an Schëffer fir 90 Grad Kéieren ze maachen: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90gradkéiren entstinn wann eng horizontal Spur direkt op eng vertikal trëfft, sou dass den Zuch misst ëm 90 Grad dréinen fir op dat nächst Stéck ze kommen, amplaz vun den üblechen 45 Grad. Dëst zielt och fir d'Weeër vun Schëffer +STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Steigung vun engem Hang fir Stroossegefierer. Méi grouss Wäerter mécht et méi schwéier den Hang ropzefueren +STR_CONFIG_SETTING_FORBID_90_DEG :Verbidd Zich an Schëffer fir 90°-Kéieren ze maachen: {STRING} +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90°-Kéieren entsti wann eng horizontal Spur direkt op eng vertikal trëfft, sou dass den Zuch misst ëm 90 Grad dréinen fir op dat nächst Stéck ze kommen, amplaz vun den üblechen 45 Grad. Dëst zielt och fir d'Weeër vu Schëffer STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Erlaabt Statiounen zesummen ze setzen och wann se net direkt uneneen leien: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Erlaabt Statiounsdeeler un eng Statioun unzehenken ouni déi existéiernd Statioun ze beréiren. Ctr+Klick fir déi nei Deeler unzehenken STR_CONFIG_SETTING_INFLATION :Inflatioun: {STRING} STR_CONFIG_SETTING_INFLATION_HELPTEXT :Erlab Inflatioun an der Economie, wou d'Käschten méi séier klammen wéi d'Bezuelungen STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximal Bréckelängt: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximal Längt déi eng Bréck dierf hunn +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximal Bréckenhéicht: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximalhéicht fir Brécken ze bauen STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximal Tunnellängt: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximal Längt déi en Tunnel dierf hunn -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Manuel Primär Industriebau Method: {STRING} -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Method fir eng primär Industrie ze finanzéiren. 'keng' heescht, dass een guer keng kann finanzéiren. 'fördern' bedeit, dass eng nei Industrie gebaut gëtt, op enger zoufällëger Plaz op der Kaart, mee kann och schief goën. 'wéi aner Industrien' bedeit, dass Quellenindustrien kënnen vun Firmen op enger gewënschter Plaz gebaut ginn wéi verschaffend Industrien +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Manuell Primär Industriebau Method: {STRING} +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Method fir eng primär Industrie ze finanzéiren. 'keng' heescht, dass een guer keng kann finanzéiren. 'fördern' bedeit, dass eng nei Industrie gebaut gëtt, op enger zoufällëger Plaz op der Kaart, mee kann och schief goën. 'wéi aner Industrien' bedeit, dass Quellenindustrie kënne vu Firmen op enger gewënschter Plaz gebaut ginn wéi verschaffend Industrien STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Keng STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Wéi aaner Industrien STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Förderung STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Flaacht Land ronderëm Industrien: {STRING} -STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Unzuel vun flaachen Felder ronderëm eng Industrie. Dëst garantéiert, dass eidel Felder ronderëm eng Industrie frai bleiwen fir Schinnen etc. ze bauen +STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Unzuel vu flaache Felder ronderëm eng Industrie. Dëst garantéiert, dass eidel Felder ronderëm eng Industrie fräi bleiwen fir Schinnen etc. ze bauen STR_CONFIG_SETTING_MULTIPINDTOWN :Erlaabt méi der selwecht Industrien pro Stad: {STRING} STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Normalerweis well eng Stad net méi wéi eng Industrie vun all Typ. Mat dëser Astellung erlaabt d'Stad méi Industrien vun dem selwëschten Typ -STR_CONFIG_SETTING_SIGNALSIDE :Weis Signaler: {STRING} +STR_CONFIG_SETTING_SIGNALSIDE :Signaler uweisen: {STRING} STR_CONFIG_SETTING_SIGNALSIDE_HELPTEXT :Wielt opp wéienger Säit vun der Schinn d'Signaler plazéiert ginn STR_CONFIG_SETTING_SIGNALSIDE_LEFT :Lénks STR_CONFIG_SETTING_SIGNALSIDE_DRIVING_SIDE :Op der Fuerersäit STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :Riets -STR_CONFIG_SETTING_SHOWFINANCES :Weis d'Finanzen um Ënn vum Joër: {STRING} +STR_CONFIG_SETTING_SHOWFINANCES :Weis de Bilan um Enn vum Joer: {STRING} STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Wann ugeschalt, gëtt eng Fënster um Enn vum Joer gewisen, déi eng einfach Iwwersicht iwwert d'Finanzen vun der Firma erlaabt -STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Nei Opträg sinn 'non-stop' par defaut: {STRING} -STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normalerweis stoppt en Gefier op all Statioun op sengem Wee. Wann dës Astellung ageschalt ass, bleift et op kenger Statioun stoen bis op seng final Statioun -STR_CONFIG_SETTING_STOP_LOCATION :Nei Zichuerder stoppen par defaut um {STRING} vun der Plate-Form -STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Plaz wou en Zuch par Defaut op enger Gare stoen bleift. 'No um Ufank' bedeit no beim Agangspunkt, 'an der Mëtt' bedeit an der Mëtt vun der Plattform, 'wäit Enn' bedeit wäit ewech vum Agangspunkt. Dëst gëllt fir Standardopträg, individuell Opträg kënnen explizit gesat ginn +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Nei Opträg sinn standardméisseg 'non-stop': {STRING} +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normalerweis stoppt en Gefier op all Statioun op sengem Wee. Wann des Astellung ageschalt ass, bleift et op kenger Statioun stoen bis op seng final Statioun +STR_CONFIG_SETTING_STOP_LOCATION :Nei Zichuerder stoppen um {STRING} vun der Plattform +STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Plaz wou en Zuch standardméisseg op enger Gare stoe bleift. 'No um Ufank' bedeit no beim Agangspunkt, 'an der Mëtt' bedeit an der Mëtt vun der Plattform, 'wäit Enn' bedeit wäit ewech vum Agangspunkt. Dëst gëllt fir Standardopträg, individuell Opträg kënnen explizit gesat ginn STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :no um Enn STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :an der Mëtt STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :um Enn @@ -1206,30 +1226,30 @@ STR_CONFIG_SETTING_AUTOSCROLL_DISABLED :Ausgeschalt STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Haptusiicht, nëmmen Vollbild STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Haptusiicht STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :All Usiicht -STR_CONFIG_SETTING_BRIBE :Erlaabt Bestiechung vun den Gemengen: {STRING} +STR_CONFIG_SETTING_BRIBE :Erlaabt d'Gemengen ze bestiechen: {STRING} STR_CONFIG_SETTING_BRIBE_HELPTEXT :Erlaabt Firmen d'Stad ze bestiechen. Wann et opflitt, kann d'Firma während 6 Méint net mat der Stad agéiren STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Erlaabt exklusiv Transportrechter ze kafen: {STRING} STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Wann eng Firma exklusiv Transportrechter fir eng Stad keeft, kréien géignerësch Statiounen (Passagéier an Wueren) keng Wueren fir e ganzt Joer STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Gebaier finanzéiren erlaben: {STRING} -STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Erlaabt Firmen den Stied Geld ze ginn fir nei Haiser ze bauen +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Erlaabt Firmen de Stied Geld ze ginn fir nei Haiser ze bauen STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Erlab Stroossenrenovatiounen ze finanzéiren: {STRING} -STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Erlaabt Firmen den Stied Geld ze ginn fir d'Stroossen ze renovéieren an sou den Stroosseverkéier ze sabotéieren -STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Erlaabt d'Schécken vun Suen un aner Firmen: {STRING} -STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Erlaabt den Transfert vun Geld tëschent Firmen am Multiplayermodus -STR_CONFIG_SETTING_FREIGHT_TRAINS :Gewiichtsmultiplizéirer fir Luedungen fir schwéier Zich: {STRING} -STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Leet den Impakt fest den schwéier Fracht op Zich huet. En méi héijen Wäert bréngt d'Zich éischter un d'Schaffen, speziell bei Bierger +STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Erlaabt Firmen de Stied Geld ze ginn fir d'Stroossen ze renovéieren an sou de Stroosseverkéier ze sabotéieren +STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Erlaabt d'Schécken vu Suen un aner Firmen: {STRING} +STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Erlaabt den Transfert vu Geld tëschent Firmen am Multiplayermodus +STR_CONFIG_SETTING_FREIGHT_TRAINS :Gewiichtsmultiplikator fir Luedunge fir schwéier Zich: {STRING} +STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Leet den Impakt fest dee schwéier Fracht op Zich huet. En méi héije Wäert bréngt d'Zich éischter un d'Schaffen, speziell bei Bierger STR_CONFIG_SETTING_PLANE_SPEED :Fligergeschwindegkeetsfaktor: {STRING} -STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Leet d'relativ Geschwindegkeet vun Fligeren am Verglach mat aneren Gefierer fest, fir d'Akommen vum Transport vun Fligeren ze reduzéiren +STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Leet d'relativ Geschwindegkeet vu Fligeren am Verglach mat anere Gefierer fest, fir d'Akomme vum Transport vu Fligeren ze reduzéiren STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} -STR_CONFIG_SETTING_PLANE_CRASHES :Unzuel Fligeraccidenter: {STRING} -STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Leet d'Chance fir en Fligeraccident fest +STR_CONFIG_SETTING_PLANE_CRASHES :Unzuel Fligerakzidenter: {STRING} +STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Leet d'Chance fir en Fligerakzident fest STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Keng STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reduzéiert STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Erlaabt d'Iwwerfueren vun Stopschëlder op Stroossen vun der Stad: {STRING} -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Erlaabt d'Bauen vun säitlechen Busarrêten op Stroossen déi der Stad gehéieren -STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Erlaabt d'Iwwerfueren vun Stopschëlder op Stroossen vun der Konkurrenz: {STRING} -STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Erlaabt d'Bauen vun säitlechen Busarrêten op Stroossen déi enger anerer Firma gehéieren +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Erlaabt d'Iwwerfueren vu Stopschëlder op Stroossen vun der Stad: {STRING} +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Erlaabt d'Bauen vu säitlechen Busarrêten op Stroossen déi der Stad gehéieren +STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Erlaabt d'Iwwerfueren vu Stopschëlder op Stroossen vun der Konkurrenz: {STRING} +STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Erlaabt d'Bauen vu säitlechen Busarrêten op Stroossen déi enger anerer Firma gehéieren STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Déi Astellung kann net geännert ginn wann et Gefierer gëtt STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Infrastrukturënnerhalt {STRING} STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Wann ugeschalt, kaschten Infrastrukturen Ennerhaltskäschten. D'Käschten wuessen iwwerproportional zu der Netzwierkgréisst, an treffen sou grouss Firmen méi wéi klenger @@ -1239,16 +1259,16 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Wann ugeschalt, STR_CONFIG_SETTING_WARN_LOST_VEHICLE :Warnen wann en Gefier verluer ass: {STRING} STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Messagen uweisen wann Gefierer keen Wee op hiert Ziel fannen -STR_CONFIG_SETTING_ORDER_REVIEW :Opträg vun den Gefierer nopréifen: {STRING} -STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Wann ugeschalt, ginn d'Opträg vun Gefierer periodesch kontrolléiert, an e puer evident Fehler ginn mat enger Noriichtenmessage gemellt wann se fonnt ginn +STR_CONFIG_SETTING_ORDER_REVIEW :Opträg vun de Gefierer nopréifen: {STRING} +STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Wann ugeschalt, ginn d'Opträg vu Gefierer periodesch kontrolléiert, an e puer evident Fehler ginn mat enger Noriichtenmessage gemellt wann se fonnt ginn STR_CONFIG_SETTING_ORDER_REVIEW_OFF :Nee STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Jo, mee net déi gestoppten Gefierer STR_CONFIG_SETTING_ORDER_REVIEW_ON :Vun allen Gefierer -STR_CONFIG_SETTING_WARN_INCOME_LESS :Warnen wann en Gefier en negativen Akommes huet: {STRING} +STR_CONFIG_SETTING_WARN_INCOME_LESS :Warnen wann en Gefier en negativt Akommes huet: {STRING} STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Wann ugeschalt, gëtt eng Noorichtenmessage gesent , wann en Gefier een Joer laang keen Profit gemeet huet STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Gefierer lafen nie of: {STRING} -STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Wann ugeschalt, bleiwen all Modeller vun Gefierer éiweg verfügbar -STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Gefier automatesch ernéieren wann ët aal gët: {STRING} +STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Wann ugeschalt, bleiwen all Modeller vu Gefierer éiweg verfügbar +STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Gefier automatesch ernéieren wann et al gëtt: {STRING} STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Wann ugeschalt, gëtt e Gefier wat un säin Lafzäitenn kënnt, automatesch ausgetosch STR_CONFIG_SETTING_AUTORENEW_MONTHS :Automatesch erneieren wann d'Gefier maximal {STRING} Joer al ass STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Relativen Alter wann en Gefier an Fro kennt fir auto-erneiert ze ginn @@ -1260,18 +1280,18 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Dauer vun der F STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Zäit déi eng Feelermeldung an enger rouder Fënster ugewisen gëtt. E puer kritesch Meldungen ginn net zougemeet STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} Sekonn{P 0 "" en} STR_CONFIG_SETTING_HOVER_DELAY :Weis Tooltips: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Verzögerung bis d'Tooltips ugewisen ginn, wann een mat der Maus iwwert en Element geet. Alternativ kënnen d'Tooltips och op d'riets Maustast geluet ginn -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Fir {COMMA} Sekonn{P 0 "" en} dropbleiwen +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Verzögerung bis d'Tooltips ugewisen ginn, wann een mat der Maus iwwert en Element geet. Alternativ kënnen d'Tooltips och op d'riets Maustast geluet ginn wann dësen Wäert op 0 gesat gouf. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Fir {COMMA} Millisekonn{P 0 "" en} dropbleiwen STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Rietsklick -STR_CONFIG_SETTING_POPULATION_IN_LABEL :Weist Awunner am Numm vun der Stad: {STRING} -STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Weis d'Awunnerzuel vun Stied an deenen hirem Label un op der Kaart -STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Déckt vunn de Linnen vun den Graphen: {STRING} -STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Breed vun den Linnen an den Grafiken. Eng dënn Linn kann méi präzis gelies ginn, eng méi déck kann besser gesinn ginn an d'Faarwen sinn besser ze ënnerscheeden +STR_CONFIG_SETTING_POPULATION_IN_LABEL :Weis d'Awunnerzuel am Numm vun der Stad: {STRING} +STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Weis d'Awunnerzuel vu Stied an deenen hirem Label un op der Kaart +STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Déckt vun de Linnen vun de Grafiken: {STRING} +STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Breed vun de Linnen an de Grafiken. Eng dënn Linn kann méi präzis gelies ginn, eng méi déck kann besser gesinn ginn an d'Faarwen sinn besser ze ënnerscheeden STR_CONFIG_SETTING_LANDSCAPE :Landschaft: {STRING} STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Landschaften definéiren basis Spillszenarien mat verschiddenen Wueren an Stiedwuesstumviraussetzungen. NewGRF an Gamescripter erlaben méi fein Astellungen. STR_CONFIG_SETTING_LAND_GENERATOR :Landgenerator: {STRING} -STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Den original Generator henkt vum basis grafikset of, an erstellt fixéiert Landschaftstypen. TerraGenesis ass en op Perlin noise baséierten Generator mat méi feinen Astellungen. +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Den original Generator henkt vum basis Grafikset of, an erstellt fixéiert Landschaftstypen. TerraGenesis ass en op Perlin noise baséierten Generator mat méi feinen Astellungen. STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Terraintyp: {STRING} @@ -1281,7 +1301,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Definéiert wé STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximal Distanz vum Kaartenenn bis zu enger Uelegraffinerie: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Uelëgraffinerien ginn nëmmen um Rand gebaut, dat ass un der Küst fir Inselkaarten STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Schnéigrenz Héicht: {STRING} -STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Kontrolléiert ab welcher Héigt den Schnéi ufenkt an der subarktëscher Landschaft. Schnéi affektéiert och Industriegeneratioun an de Wuesstum vun Stied. +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Kontrolléiert ab welcher Héicht de Schnéi ufenkt an der subarktëscher Landschaft. Schnéi affektéiert och Industriegeneratioun an de Wuesstum vu Stied. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Knubbelegkeet vum Terrain (nëmmen TerraGenesis) : {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Nëmmen TerraGenesis) Wiel d'Heefegkeet vun Hiwwelen: Mëll Landschafter hunn manner, breed verdeelten Hiwwelen. Rau Landschaften hunn méi Bierger déi repetitiv ausgesinn kënnen. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Ganz Flaach @@ -1289,11 +1309,11 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Flaach STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Fielseg STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Ganz Fielseg STR_CONFIG_SETTING_VARIETY :Vielfaltverdeelung: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Nëmmen TerraGenesis) Kontrolléiert op d'Kaart flaach Stécker an och Bierger huet. Wëll dëst d'Kaart méi flaach mescht, sollen aner Astellungen op Bierger gesat ginn +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Nëmmen TerraGenesis) Kontrolléiert op d'Kaart flaach Stécker an och Bierger huet. Wëll dëst d'Kaart méi flaach mécht, sollen aner Astellungen op Bierger gesat ginn STR_CONFIG_SETTING_RIVER_AMOUNT :Unzuel Flëss: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Wiel wéivill Flëss generéiert ginn STR_CONFIG_SETTING_TREE_PLACER :Baamplanzalgorithmus: {STRING} -STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Wiel d'Verdeelung vun den Beem op der Kaart: 'Orginal' setzt d'Beem uniform verspreet, 'Verbessert' setzt se an Gruppen +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Wiel d'Verdeelung vun de Beem op der Kaart: 'Orginal' setzt d'Beem uniform verspreet, 'Verbessert' setzt se an Gruppen STR_CONFIG_SETTING_TREE_PLACER_NONE :Keen STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Original STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Verbessert @@ -1306,9 +1326,9 @@ STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Héichteninterv STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Een oder méi Felder um nördlechsten Rand sinn net eidel STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Een oder méi Felder op engem Eck sinn keen Waasser -STR_CONFIG_SETTING_STATION_SPREAD :Maximal Ausdehnung vun Statiounen: {STRING} +STR_CONFIG_SETTING_STATION_SPREAD :Maximal Ausdehnung vu Statiounen: {STRING} STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Maximal Distanz déi eenzel Statiounsdeeler dierfen auseneenleien. Méi héich Wäerter maachen d'Spill méi lues -STR_CONFIG_SETTING_SERVICEATHELIPAD :Automatesch Maintenance vun Helicopteren: {STRING} +STR_CONFIG_SETTING_SERVICEATHELIPAD :Automatesch Maintenance vun Helikopteren: {STRING} STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Schéck Helikopter no all Landung an d'Revisioun, och wann keen Schapp um Fluchhafen ass STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Landschaft-Toolbar op Zuch/Strooss/Schëff/Fluchhafen-Toolbar linken: {STRING} STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Wann eng Toolbar fir Konstruktiounen opgemeet gëtt, gëtt och d'Toolbar fir d'Terrainverännerung opgemeet @@ -1316,17 +1336,17 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Landfaarf déi STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Faarf vum Terrain vun der klenger Kaart STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :Gréng STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Donkelgréng -STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Moof -STR_CONFIG_SETTING_REVERSE_SCROLLING :Deen aneren Wee scrollen: {STRING} +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Mof +STR_CONFIG_SETTING_REVERSE_SCROLLING :Deen anere Wee scrollen: {STRING} STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Verhalen beim Scrollen vun der Kaart mat der rietser Maustast. Wann ausgeschalt, beweegt d'Maus d'Kamera. Wann ugeschalt, beweegt d'Maus d'Kaart -STR_CONFIG_SETTING_SMOOTH_SCROLLING :Feinen Scrolling: {STRING} +STR_CONFIG_SETTING_SMOOTH_SCROLLING :Feine Scrolling: {STRING} STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Kontrolléiert wéi d'Haptusiicht op eng bestëmmten Positioun scrollt, wann een op déi kléng Kaart klickt oder en Befehl fir ob en spezifescht Objet ze scrollen gëtt. Wann ugeschalt, gëtt bis dohin gescrollt, wann ausgeschalt, spréngt d'Vue op den Zielobjet -STR_CONFIG_SETTING_MEASURE_TOOLTIP :Weis en Mooss-Tooltip wann verschidden Bau-Tools benotzt ginn: {STRING} +STR_CONFIG_SETTING_MEASURE_TOOLTIP :Weis en Mooss-Tooltip wann verschidde Bau-Tools benotzt ginn: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Weis Felderdistanzen an Héichtenënnerscheed beim Zéien während dem Bauen un -STR_CONFIG_SETTING_LIVERIES :Weis Farwen je no Gefiertyp: {STRING} -STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Definéiert de Gebrauch vun gefierspezifesch Lackéiren fir Gefierer (am Géigensaz zu firmenspezifëschen Lackéiren) +STR_CONFIG_SETTING_LIVERIES :Weis Faarwen je no Gefiertyp: {STRING} +STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Definéiert de Gebrauch vu gefierspezifesch Lackéirungen fir Gefierer (am Géigensaz zu firmenspezifëschen Lackéirungen) STR_CONFIG_SETTING_LIVERIES_NONE :Keng -STR_CONFIG_SETTING_LIVERIES_OWN :Eegen Firma +STR_CONFIG_SETTING_LIVERIES_OWN :Eege Firma STR_CONFIG_SETTING_LIVERIES_ALL :All Firmen STR_CONFIG_SETTING_PREFER_TEAMCHAT :Preferéier Teamchat mat : {STRING} STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Wiessel d'Firmen-intern Chat-Tast an Effentlechen-Chat op resp. @@ -1335,14 +1355,14 @@ STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Schalt d'Scroll STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM :Kaart Zoomen STR_CONFIG_SETTING_SCROLLWHEEL_SCROLL :Kaart Scrollen STR_CONFIG_SETTING_SCROLLWHEEL_OFF :Aus -STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Map Scrollrad Geschw. : {STRING} -STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Kontrolléier d'Sensitivitéit vum Mausrad-scrollen +STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Geschw. vum Scrollrad op der Kaart : {STRING} +STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Kontrolléier d'Sensibilitéit vum scrollen mam Mausrad STR_CONFIG_SETTING_OSK_ACTIVATION :Onscreen-Tastatur: {STRING} STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Wiel d'Method fir d'Onscreentastatur unzeman fir Text an eng Textbox ze schreiwen andems just eng Maus benotzt gëtt. Dëst as geduet fir kleng Geräter ouni richteg Tastatur STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Ausgeschalt STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Duebelklick -STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Een Klick (wann fokusséiert) -STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Een Klick (direkt) +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Ee Klick (wann fokusséiert) +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Ee Klick (direkt) STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Rietsklickemulatioun: {STRING} STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT :Wiel d'Method aus fir déi riets Maustast ze emuléiren @@ -1353,36 +1373,36 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Aus STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Lénksklickscroll: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Schalt d'Scrollen vun der Kaart un, wann se mat der lénker Maustast gezunn gëtt -STR_CONFIG_SETTING_AUTOSAVE :Autospäichern: {STRING} +STR_CONFIG_SETTING_AUTOSAVE :Autospäicheren: {STRING} STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Setz den Interval tëschend automateschen Späicherstänn STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Benotz {STRING} Datumsformat fir Späichernimm STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Format vum Datum am Numm vum Späicherstand -STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :laang (31ten Dez 2008) -STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :kuerz (31-12-2008) +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :laangen (31ten Dez 2008) +STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :kuerzen (31-12-2008) STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31) -STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Automatesch Pausen beim Start vun enger neier Partie: {STRING} +STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Paus d'Spill beim Start vun enger neier Partie: {STRING} STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Wann ugeschalt, pauséiert d'Spill automatesch wann en neit Spill gestart gëtt, wat erlaabt d'Kaart besser ze studéieren -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Wann Paus ass, erlab: {STRING} -STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Wielt aus, wat kann gemeet wann d'Spill pauséiert gouf +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Wa Paus ass, erlab: {STRING} +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Wielt aus, wat kann gemeet ginn wann d'Spill pauséiert gouf STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Keng Aktiounen STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :All Net-Bauaktiounen STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :All ausser Landëmformungen STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :All Aktiounen STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Benotz Gruppen an der Gefierlëscht: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Schalt d'erweidert Gefiererlëscht un fir Gefierer ze gruppéieren -STR_CONFIG_SETTING_LOADING_INDICATORS :Weist den Luedstatus un: {STRING} -STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Wielt aus, ob Luedindikatoren iwwert engem Gefier ugewisen ginn oder net, wann et belueden gëtt -STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Weis de Zäitplang an Intervallen amplaz vun Deeg: {STRING} +STR_CONFIG_SETTING_LOADING_INDICATORS :Weist de Luedstatus un: {STRING} +STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Wielt aus, ob Luedindikatoren iwwert engem Gefier ugewise ginn oder net, wann et beluede gëtt +STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Weis den Zäitplang an Ticken amplaz vun Deeg: {STRING} STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Weist d'Transportdauer an der Zäittafel als Gameticks un, amplaz an Deeg -STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Weis Arrivée an Départ am Zaitplang un: {STRING} +STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Weis Arrivée an Départ am Zäitplang un: {STRING} STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Weis d'geplangten Departen an Arrivéeën an der Zäittafel un -STR_CONFIG_SETTING_QUICKGOTO :Schnellkreatiounvun Gefieropträg: {STRING} +STR_CONFIG_SETTING_QUICKGOTO :Schnellkreatioun vu Gefieropträg: {STRING} STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Wiel den 'géi op Zeiger' un, wann d'Optragsfënster opgemeet gëtt STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Standard Schinnentyp (no neiem Spill/geluedenem Spill): {STRING} -STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Schinnentyp den gewielt gëtt nom starten oder lueden vun engem Spill. 'éischt verfügbar' wielt den eelsten Typ Schinnen, 'lescht verfügbar' wielt den neisten Typ Schinnen, an 'meescht gebraucht' wielt den Typ den grad am meeschten gebraucht gëtt -STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :Ëischt verfügbar +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Schinnentyp de gewielt gëtt nom starten oder luede vun engem Spill. 'éischt verfügbar' wielt den eelsten Typ Schinnen, 'lescht verfügbar' wielt den neisten Typ Schinnen, an 'meescht gebraucht' wielt den Typ de grad am meeschten gebraucht gëtt +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :Eischt verfügbar STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :Läscht verfügbar STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :Meescht benotzten STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Weis de reservéierte Wee op de Schinnen: {STRING} @@ -1390,104 +1410,104 @@ STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Fierf reservéi STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Bau-Tools nom Gebrauch aktiv loossen: {STRING} STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Looss d'Bauoptiounen fir Brécken, Tunnelen etc. nom Gebrauch op STR_CONFIG_SETTING_EXPENSES_LAYOUT :Ausgaben vun der Firma an der Finanzfënster gruppéiren: {STRING} -STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Definéiert den Layout fir d'Firmenausgabenfënster +STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Definéiert de Layout fir d'Firmenausgabefënster STR_CONFIG_SETTING_SOUND_TICKER :Newsticker: {STRING} STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Spill Sound of fir resuméiert Neiegkeeten STR_CONFIG_SETTING_SOUND_NEWS :Zeitung: {STRING} STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Spill Soundeffekt of wann eng Zeitung rauskënnt STR_CONFIG_SETTING_SOUND_NEW_YEAR :Enn vum Joer: {STRING} -STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Spill Soundeffekt of um Enn vum Joer, wann d'Performance vund er Firma resuméiert am Verglach mam Viirjoer +STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Spill Soundeffekt of um Enn vum Joer, wann d'Performance vun der Firma resuméiert gëtt am Verglach mam Viirjoer STR_CONFIG_SETTING_SOUND_CONFIRM :Konstruktioun: {STRING} -STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Spill Soundeffekter of wann Konstruktiounen an aner Aktiounen ausgefouert goufen +STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Spill Soundeffekter of wa Konstruktiounen an aner Aktiounen ausgefouert goufen STR_CONFIG_SETTING_SOUND_CLICK :Kneppercherklicks: {STRING} -STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Beep beim Klicken vun Kneppercher -STR_CONFIG_SETTING_SOUND_DISASTER :Katastrophen/Accidenter: {STRING} -STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Spill Soundeffekter vun Accidenter an Katastrophen of +STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Beep beim Klicken vu Kneppercher +STR_CONFIG_SETTING_SOUND_DISASTER :Katastrophen/Akzidenter: {STRING} +STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Spill Soundeffekter vun Akzidenter a Katastrophen of STR_CONFIG_SETTING_SOUND_VEHICLE :Gefierer: {STRING} -STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Spill Soundeffekter vun Gefierer of +STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Spill Soundeffekter vu Gefierer of STR_CONFIG_SETTING_SOUND_AMBIENT :Ambiance: {STRING} STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Spillt Ambience Soundeffekter vun der Landschaft, Industrien an Stied of STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Gebai ausschalten wann keng passend Gefierer verfügbar sinn: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Wann ugeschalt, ass d'Infrastruktur just verfügbar, wann och Gefierer verfügbar sinn, fir dass keen Geld an keng Zäit verschwend gëtt, sënnlos Infrastrukturen ze bauen -STR_CONFIG_SETTING_MAX_TRAINS :Maximum Zich pro Firma: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS :Maximum un Zich pro Firma: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Maximal Unzuel un Zich déi eng Firma kann hunn -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maximum Stroossegefierer pro Firma: {STRING} -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Maximal Unzuel un Gefierer déi eng Firma kann hunn -STR_CONFIG_SETTING_MAX_AIRCRAFT :Maximum Fligeren pro Firma: {STRING} -STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Maximal Unzuel un Fligeren déi eng Firma kann hunn -STR_CONFIG_SETTING_MAX_SHIPS :Maximum Schëffer pro Firma: {STRING} -STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Maximal Unzuel un Schëffer déi eng Firma kann hunn +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maximum un Stroossegefierer pro Firma: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Maximal Unzuel u Gefierer déi eng Firma kann hunn +STR_CONFIG_SETTING_MAX_AIRCRAFT :Maximum un Fligeren pro Firma: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Maximal Unzuel u Fligeren déi eng Firma kann hunn +STR_CONFIG_SETTING_MAX_SHIPS :Maximum u Schëffer pro Firma: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Maximal Unzuel u Schëffer déi eng Firma kann hunn -STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Zich fir den Computer ausschalten: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Wann dës Astellung ugeschalt ass, kann en Computergéigner keng Zich bauen -STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :Stroossegefierer fir den Computer ausschalten: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT :Wann dës Astellung ugeschalt ass, kann en Computergéigner keng Gefierer bauen -STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT :Fligeren fir den Computer ausschalten: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT :Wann dës Astellung ugeschalt ass, kann en Computergéigner keng Fligeren bauen -STR_CONFIG_SETTING_AI_BUILDS_SHIPS :Schëffer fir den Computer ausschalten: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Wann dës Astellung ugeschalt ass, kann en Computergéigner keng Schëffer bauen +STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Zich fir de Computer ausschalten: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Wann des Astellung ugeschalt ass, kann e Computergéigner keng Zich bauen +STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :Stroossegefierer fir de Computer ausschalten: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT :Wann des Astellung ugeschalt ass, kann e Computergéigner keng Gefierer bauen +STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT :Fligeren fir de Computer ausschalten: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT :Wann des Astellung ugeschalt ass, kann e Computergéigner keng Fligeren bauen +STR_CONFIG_SETTING_AI_BUILDS_SHIPS :Schëffer fir de Computer ausschalten: {STRING} +STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Wann des Astellung ugeschalt ass, kann e Computergéigner keng Schëffer bauen STR_CONFIG_SETTING_AI_PROFILE :Standard Astellungsprofil: {STRING} -STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Wielt aus wellechen Astellungsprofil benotzt gëtt fir d'zoufälleg KI oder fir Ufankswerter wann eng nei KI oder Spillscript ugeschalt gëtt +STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Wielt aus wellechen Astellungsprofil benotzt gëtt fir d'zoufälleg KI oder fir Ufankswäerter wann eng nei KI oder Spillscript ugeschalt ginn STR_CONFIG_SETTING_AI_PROFILE_EASY :Einfach STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Normal STR_CONFIG_SETTING_AI_PROFILE_HARD :Schwéier STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Erlaabt KI am Multiplayer: {STRING} -STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Erlaabt Computergéigner an Multiplayer Spiller matzeman -STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes befier den Script suspendéiert gëtt: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Maximal Unzuel un Rechenschrëtt déi en Script kann an engem Tuer man +STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Erlaabt Computergéigner a Multiplayer Spiller matzeman +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes befier de Script suspendéiert gëtt: {STRING} +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Maximal Unzuel u Rechenschrëtt déi e Script kann an engem Tuer man -STR_CONFIG_SETTING_SERVINT_ISPERCENT :Revisiounsintervallen an Prozenter: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Wiel op eng Revisioun ausgeléist durch Zäit déi säit der leschter Revisioun vergangen ass oder well Zouverlessëgkeet en gewëssen Prozentsaz vun der maximaler Zouverlässëgkeet erofgaang ass +STR_CONFIG_SETTING_SERVINT_ISPERCENT :Revisiounsintervallen a Prozenter: {STRING} +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Wiel op eng Revisioun ausgeléist gëtt durch Zäit déi säit der leschter Revisioun vergangen ass oder well Zouverlessëgkeet en gewëssen Prozentsaz vun der maximaler Zouverlässëgkeet erofgaang ass STR_CONFIG_SETTING_SERVINT_TRAINS :Standard Revisiounsintervall fir Zich: {STRING} -STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Definéiert den Standardrevisiounsintervall fir nei Zich, wann keen expliziten Revisiounsintervall uginn ass -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} D{P 0 ag eeg}/% +STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Definéiert de Standardrevisiounsintervall fir nei Zich, wann keen expliziten Revisiounsintervall uginn ass +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}D{P 0 ag eeg}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Ausgeschalt STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Standard Revisiounsintervall fir Gefierer: {STRING} -STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Definéiert den Standardrevisiounsintervall fir nei Gefierer, wann keen spezifëschen Revisiounsintervall uginn ass +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Definéiert de Standardrevisiounsintervall fir nei Gefierer, wann keen spezifëschen Revisiounsintervall uginn ass STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Standard Revisiounsintervall fir Fligeren: {STRING} -STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Definéiert den Standardrevisiounsintervall fir nei Fligeren, wann keen expliziten Revisiounsintervall uginn ass +STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Definéiert de Standardrevisiounsintervall fir nei Fligeren, wann keen expliziten Revisiounsintervall uginn ass STR_CONFIG_SETTING_SERVINT_SHIPS :Standard Revisiounsintervall fir Schëffer: {STRING} -STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Definéiert den Standardrevisiounsintervall fir nei Schëffer, wann keen expliziten Revisiounsintervall uginn ass +STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Definéiert de Standardrevisiounsintervall fir nei Schëffer, wann keen expliziten Revisiounsintervall uginn ass STR_CONFIG_SETTING_NOSERVICE :Revisiounen ausschalten wann Pannen op "Keng" gestallt sinn: {STRING} -STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Wann ugeschalt, ginn Gefierer net an d'Revisioun geschéckt, wann se keng Pann kënnen kréien +STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Wann ugeschalt, ginn Gefierer net an d'Revisioun geschéckt, wann se keng Pann kënne kréien STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Geschwindegkeetsbegrenzungen fir Waggonen: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Wann ugeschalt, benotz och Geschwindegkeetslimitatiounen fir Waggonen fir d'maximal Geschwindegkeet vun engem Zuch ze definéiren -STR_CONFIG_SETTING_DISABLE_ELRAILS :Elecktreschschinnen ausschalten: {STRING} -STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Wann dës Astellung ugeschalt ass, ginn keng elektresch Schinnen gebrauch fir mat elektreschen Zich ze fueren +STR_CONFIG_SETTING_DISABLE_ELRAILS :Elektreschschinnen ausschalten: {STRING} +STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Wann dës Astellung ugeschalt ass, ginn keng elektresch Schinnen gebraucht fir mat elektreschen Zich ze fueren -STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :Ukonft vum éischten Gefier op enger Spillerstatioun: {STRING} +STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :Ukonft vum éischte Gefier op enger Statioun vum Spiller: {STRING} STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Weis d'Zeitung wann dat éischt Gefier op enger eegener Statioun ukënnt STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Ukonft vum éischten Gefier op enger Géigenspillerstatioun: {STRING} STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Weis d'Zeitung wann dat éischt Gefier op enger géignerescher Statioun ukënnt -STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Accidenter / Katastrophen: {STRING} -STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Weis d'Zeitung wann Accidenter oder Katastrophen passéiren +STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Akzidenter / Katastrophen: {STRING} +STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Weis d'Zeitung wann Akzidenter oder Katastrophen passéiren STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Firmeninformatiounen: {STRING} -STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Weis d'Zeitung wann eng nei Firma opgeht, oder wann eng riskéiert Bankrott ze goen -STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Industrieeröffnung: {STRING} +STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Weis d'Zeitung wann eng nei Firma opgeet, oder wann ee riskéiert Bankrott ze goen +STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Grënnung vun enger Industrie: {STRING} STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT :Weis d'Zeitung wann eng nei Industrie opmécht STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE :Industrie gëtt zougemaach: {STRING} -STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :Weis d'Zeitung wann eng Industrie zou mécht -STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :Wirtschaftsännerungen: {STRING} -STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :Weis d'Zeitung iwwert d'global Economie -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :Produktiounswiessel vun der Industrie dei vun der Firma betreit gëtt: {STRING} -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Weis d'Zeitung wann d'Produktioun vun enger Industrie ännert, déi vun der Firma servéiert gëtt -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :Produktiounswiessel vun der Industrie dei vun der Konkurenz betreit gëtt: {STRING} -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :Weis d'Zeitung wann d'Produktioun vun enger Industrie ännert, déi vun engem Spiller servéiert gëtt -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Aanern Industriellen Produktiounswiessel: {STRING} -STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Weis d'Zeitung wann d'Produktioun vun enger Industrie ännert, déi vun kengem Spiller servéiert gëtt -STR_CONFIG_SETTING_NEWS_ADVICE :Hinweis / Informatioun iwwert Firmengefierer: {STRING} -STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Weis Messagen wann Gefierer Opmierksamkeet brauchen +STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :Weis d'Zeitung wann eng Industrie zoumécht +STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :Wiertschaftsännerungen: {STRING} +STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :Weis d'Zeitung iwwert d'global Wiertschaft +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :Produktiounswiessel vun der Industrie dei vun der Firma beliwwert gëtt: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Weis d'Zeitung wann d'Produktioun vun enger Industrie ännert, déi vun der Firma beliwwert gëtt +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :Produktiounswiessel vun der Industrie dei vun der Konkurrenz beliwwert gëtt: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :Weis d'Zeitung wann d'Produktioun vun enger Industrie ännert, déi vun engem Spiller beliwwert gëtt +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Aaneren industrielle Produktiounswiessel: {STRING} +STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Weis d'Zeitung wann d'Produktioun vun enger Industrie ännert, déi vu kengem Spiller beliwwert gëtt +STR_CONFIG_SETTING_NEWS_ADVICE :Hinweis / Informatioun iwwert Firmegefierer: {STRING} +STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Weis Messagen wa Gefierer Opmierksamkeet brauchen STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Nei Gefierer: {STRING} STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Weis d'Zeitung wann en neit Gefier rauskënnt -STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Ännerungen vun acceptéiert Luedungen: {STRING} -STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Weis Messagen wann Statiounen Gidder akzeptéiren / net méi akzeptéiren +STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Ännerung vun akzeptéierte Luedungen: {STRING} +STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Weis Messagen wa Statiounen Gidder akzeptéiren / net méi akzeptéiren STR_CONFIG_SETTING_NEWS_SUBSIDIES :Subventiounen: {STRING} -STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Weis d'Zeitung an Relatioun mat Subsiden -STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Generel Informatiounen: {STRING} +STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Weis d'Zeitung a Relatioun mat Subventiounen +STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Generell Informatiounen: {STRING} STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION_HELPTEXT :Weis Zeitung iwwert generell Evenementer, wéi z.b de Kaf vun exklusiven Transportrechter oder Stroosserenovéierungen STR_CONFIG_SETTING_NEWS_MESSAGES_OFF :Aus @@ -1495,47 +1515,47 @@ STR_CONFIG_SETTING_NEWS_MESSAGES_SUMMARY :Resumé STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :Ganz STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Faarweg News ab: {STRING} -STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Joer vun dem uns d'Zeitung farweg rauskënnt. Firun dësem Joer ass se schwarz/wäiss +STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Joer vun dem uns d'Zeitung farweg erauskënnt. Firun dësem Joer ass se schwarz/wäiss STR_CONFIG_SETTING_STARTING_YEAR :Startjoer: {STRING} -STR_CONFIG_SETTING_SMOOTH_ECONOMY :Gläichméisseg Economie aschalten (méi oft an kleg Wiessel): {STRING} +STR_CONFIG_SETTING_SMOOTH_ECONOMY :Gläichméisseg Wiertschaft aschalten (méi oft an kleng Wiessel): {STRING} STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Wann ugeschalt, ännert d'Industrieproduktioun méi oft, an méi kléngen Schrëtter. Dës Astellung huet keng Auswierkung op NewGRF-Industrien STR_CONFIG_SETTING_ALLOW_SHARES :Undeeler vun aaneren Firmen kafen: {STRING} -STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Wann ugeschalt, dierfen Aktien vun Firmen kaf an verkaf ginn. Aktien sinn just fir Firmen verfügbar, déi en gewëssen Alter erregt hunn -STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Prozentsaz vum Etappenrofit den am Feeder-System bezuelt gëtt: {STRING} -STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Prozentsaz vum Akomms déi un d'Zwëschenetappen an engem Feeder-System ginn ginn, wat méi Kontroll iwwert d'Akommes erméiglegt -STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Wann gezunn gëtt, setz en Signal all: {STRING} -STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Definéiert d'Distanz an däer Signaler gesat ginn, bis zum nächsten Obstakel (Signal, Kräizung), wann Signaler gezunn ginn +STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Wann ugeschalt, dierfen Aktien vu Firmen kaf an verkaf ginn. Aktien si just fir Firme verfügbar, déi en gewëssen Alter erreecht hunn +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Prozentsaz vum Etappenprofit den am Feeder-System bezuelt gëtt: {STRING} +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Prozentsaz vum Akommes déi un d'Zwëschenetappen an engem Feeder-System gi ginn, wat méi Kontroll iwwert d'Akommes erméiglegt +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Wa gezunn gëtt, setz en Signal all: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Definéiert d'Distanz an däer Signaler gesat ginn, bis zum nächsten Obstakel (Signal, Kräizung), wa Signaler gezu ginn STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} Feld{P 0 "" er} STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Beim Zéien, behal eng fix Distanz tëscht Signaler: {STRING} -STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Wielt d'Verhalen vum Signalsetzen, wann mat Ctrl gezunn gëtt. Wann ausgeschalt, ginn Signaler firun laangen Streckenabschnitter wéi Brécken an Tunnelen gesat. Wann ugeschalt, ginn Signaler all N Felder gesat, fir en parallelt Setzen vun Signaler ze erméiglechen +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Wielt d'Verhale vum Signalsetzen, wa mat Ctrl gezu gëtt. Wann ausgeschalt, gi Signaler firu laange Streckenabschnitter wéi Brécken an Tunnelen gesat. Wann ugeschalt, gi Signaler all N Felder gesat, fir e parallelt Setzen vu Signaler ze erméiglechen STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Automatesch Diksen bauen firun: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Definéiert d'Joer wou elektresch Signaler benotzt ginn. Firun dësem Joer ginn nët-elektresch Signaler benotzt (déi déi selwescht Funktioun hunn, an just anescht ausgesinn) -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Signal GUI erlaaben: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Weist eng Fënster an däer den Typ vun Signaler déi gebaut ginn gewielt kënnen ginn, amplaz ouni Fënster an durch Ctrl-klicken op d'Signaler +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Signaler GUI uschalten: {STRING} +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Weist eng Fënster an däer den Typ vu Signaler déi gebaut kënne ginn, amplaz ouni Fënster an durch Ctrl-klicken op d'Signaler STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Standard Signal-Typ: {STRING} -STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Standard Signaltyp den soll benotzt ginn +STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Standard Signaltyp dee soll benotzt ginn STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Blocksignaler STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBS :Wee-Signaler STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBSOWAY :Einbahn-Wee-Signaler STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Wiessel duerch Signal-Typen: {STRING} -STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Wielt Signaltypen déi durchgewielt ginn, wann een mat Ctrl op d'Signalbauen dréckt +STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Wielt Signaltypen déi durchgewielt ginn, wann ee mat Ctrl op e gebaute Signal dréckt STR_CONFIG_SETTING_CYCLE_SIGNAL_NORMAL :Nëmmen Blocksignaler STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :Nëmmen Wee-Signaler STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Alleguerten -STR_CONFIG_SETTING_TOWN_LAYOUT :Stroossenlayout an neien Stied: {STRING} +STR_CONFIG_SETTING_TOWN_LAYOUT :Stroosselayout an neie Stied: {STRING} STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Layout fir d'Stroossennetz vun enger Stad STR_CONFIG_SETTING_TOWN_LAYOUT_DEFAULT :Original STR_CONFIG_SETTING_TOWN_LAYOUT_BETTER_ROADS :Besser Stroossen STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :2x2 Gitter STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :3x3 Gitter STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :Zoufälleg -STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Stied därfen Stroossen bauen: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Stied däerfen Stroossen bauen: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Erlaabt Stied Stroossen ze bauen fir ze wuessen. Ausschalten fir d'Stiedréid dorun ze hënneren fir Stroossen selwer ze bauen -STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Stied dierfen héich Kräizungen bauen: {STRING} -STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Wann dës Astellung ugeschalt ass, kënnen Stied Stroossen iwwert Schinnen bauen -STR_CONFIG_SETTING_NOISE_LEVEL :Erlaab stadkontrolléiert Kaméidisniveau fir Fluchhäfen: {STRING} -STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Wann dës Astellung ausgeschalt ass, kënnen zwee Fluchhäfen an all Stad gebaut ginn. Wann dës Astellung ugeschalt ass, henkt et vun der Fluchhafengréisst, Distanz, Kaméidisniveau of wéivill Fluchhäfen kënnen gebaut ginn +STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Stied dierfen Barrièren bauen: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Wann dës Astellung ugeschalt ass, kënnen Stied Stroossen iwwert Schinne bauen +STR_CONFIG_SETTING_NOISE_LEVEL :Erlab e stadkontrolléierte Kaméidisniveau fir Fluchhäfen: {STRING} +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Wann dës Astellung ausgeschalt ass, kënnen zwee Fluchhäfen an all Stad gebaut ginn. Wann dës Astellung ugeschalt ass, henkt et vun der Fluchhafengréisst, Distanz, Kaméidisniveau of wéivill Fluchhäfen kënne gebaut ginn STR_CONFIG_SETTING_TOWN_FOUNDING :Stiedgrënnung am Spill: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Wann dës Astellung ugeschalt ass, kënnen Spiller nei Stied am Spill grënnen STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Verbueden @@ -1543,20 +1563,20 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Erlaabt STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Erlaabt, custom Stad-Layout STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Bamplazéirung: {STRING} -STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontrolléiert zoufälleg Optauchen vun Beem während dem Spill. Dëst kann Industrien beaflossen, déi op d'Wuessen vun Beem ugewisen sinn +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontrolléiert zoufälleg Optauche vu Beem während dem Spill. Dëst kann Industrie beaflossen, déi op d'Wuessen vu Beem ugewisen sinn STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NONE :Keng{RED}(zerstéiert Bauholzfabrik) STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_RAINFOREST :Nëmmen am Reebësch STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :Iwwerall STR_CONFIG_SETTING_TOOLBAR_POS :Positioun vun der Haapt-Toolbar: {STRING} -STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Horizontal Positioun vun der Hapt-Toolbar uewen um Schierm +STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Horizontal Positioun vun der Haapt-Toolbar uewen um Schierm STR_CONFIG_SETTING_STATUSBAR_POS :Positioun vun der Statusbar: {STRING} STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT :Horizontal Positioun vun der Statusbar ënnen um Schierm STR_CONFIG_SETTING_SNAP_RADIUS :Radius wou d'Fënsteren uschnapen: {STRING} STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :Distanz tëscht Fënsteren befier d'Fënsteren automatesch alignéiert ginn STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} Pixel STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Ausgeschalt -STR_CONFIG_SETTING_SOFT_LIMIT :Maximal Unzuel vun net-gepinnten Fënster: {STRING} +STR_CONFIG_SETTING_SOFT_LIMIT :Maximal Unzuel vun net-gepinnte Fënster: {STRING} STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Unzuel un net-gepinnten openen Fënster befier al Fënsteren automatesch zougemaach ginn fir nei Plaz ze man fir nei Fënsteren STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :ausgeschalt @@ -1570,82 +1590,82 @@ STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normal STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x -STR_CONFIG_SETTING_TOWN_GROWTH :Stad-Wuesstem: {STRING} +STR_CONFIG_SETTING_TOWN_GROWTH :Geschw. vum Stad-Wuesstem: {STRING} STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Geschwindegkeet mat däer Stied wuessen STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Keen STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :Lues STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Normal STR_CONFIG_SETTING_TOWN_GROWTH_FAST :Schnell STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :Ganz schnell -STR_CONFIG_SETTING_LARGER_TOWNS :Proportioun vun Dierfer déi kënnen Stied ginn: {STRING} -STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Unzuel un Dierfer déi eng Stad kënnen ginn, folglesch start en Duerf méi grouss an wiisst méi séier +STR_CONFIG_SETTING_LARGER_TOWNS :Proportioun vun Dierfer déi kënne Stied ginn: {STRING} +STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Unzuel un Dierfer déi eng Stad kënne ginn, folglesch start en Duerf méi grouss an wiisst méi séier STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 zu {COMMA} STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Keng -STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Ufangs-Gréisst vun Stied mulitiplizéiren mat: {STRING} -STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Duerchschnëttsgréisst vun Stied an Proportioun zu normalen Dierfer um Spillstart +STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Ufangs-Gréisst vu Stied multiplizéiren mat: {STRING} +STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Duerchschnëttsgréisst vu Stied an Proportioun zu normalen Dierfer um Spillstart -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aktualiséier d'Distributiounsgrafik all {STRING} D{P 0:2 ag eeg} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aktualiséier d'Distributiounsgrafik all {STRING}{NBSP}D{P 0:2 ag eeg} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Zäit tëscht nofolgenden Neiberechnungen vun der Linkgrafik. All Neiberechnung rechent d'Pläng fir eng Komponent vun der Grafik. Dat heescht dass en Wert X fir dës Astellung net all X Deeg aktualiséiert gëtt. Nëmmen een Komponent gëtt aktualiséiert. Wat méi kuerz gesat, wat méi CPU Rechenzäit gebraucht gëtt. Wat se méi laang gesat gëtt, wat méi Zäit vergeet bis Wuerendistributioun op enger neier Route gestart gëtt. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Benotz {STRING} D{P 0:2 ag eeg} fir d'Neiberechnung vum Distributiounsgraf -STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Zäit déi gebraucht gëtt fir all Neiberechnung vun enger Linkgrafikkomponent. Wann eng Neiberechnung ufenkt, gëtt en Thread erstallt den fir dës Unzuel un Deeg leeft. Wann den Wert ze kleng ass, kann den Thread net an der gewënschter Zäit faerdeg ginn an et kënnt zu engem Lag. Wann den Wert méi héig gesat gëtt, brauch d'Distributioun méi lang fir erneiert ze ginn wann eng Streck ännert +STR_CONFIG_SETTING_LINKGRAPH_TIME :Benotz {STRING}{NBSP}D{P 0:2 ag eeg} fir d'Neiberechnung vum Distributiounsgraf +STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Zäit déi gebraucht gëtt fir all Neiberechnung vun enger Linkgrafikkomponent. Wann eng Neiberechnung ufenkt, gëtt en Thread erstallt dee fir dës Unzuel un Deeg leeft. Wann de Wäert ze kleng ass, kann den Thread net an der gewënschter Zäit faerdeg ginn an et kënnt zu engem Lag. Wann de Wäert méi héich gesat gëtt, brauch d'Distributioun méi lang fir erneiert ze ginn wann eng Streck ännert STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuell -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetrësch -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :symmetrësch +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetresch +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :symmetresch STR_CONFIG_SETTING_DISTRIBUTION_PAX :Distributiounsmodus fir Passagéier: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"symmetrësch" heescht, dass ongeféier d'selwecht vill Passagéier vun A op B wéi vun B op A geschéckt ginn. "asymmetrësch" heescht, dass eng arbiträr Unzuel un Wueren an d'jeweileg Richtung geschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt fir Passagéier +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"symmetresch" heescht, dass ongeféier d'selwecht vill Passagéier vun A op B wéi vu B op A geschéckt ginn. "asymmetresch" heescht, dass eng arbiträr Unzuel u Wueren an d'jeweileg Richtung geschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt fir Passagéier STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Distributiounsmodus fir Post: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"symmetrësch" heescht, dass ongeféier d'selwecht vill vun A op B wéi vun B op A geschéckt ginn. "asymmetrësch" heescht, dass eng arbiträr Unzuel un Wueren an d'jeweileg Richtung geschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt fir Post +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"symmetresch" heescht, dass ongeféier d'selwecht vill vun A op B wéi vu B op A geschéckt ginn. "asymmetresch" heescht, dass eng arbiträr Unzuel u Wueren an d'jeweileg Richtung geschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt fir Post STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Distributiounsmodus fir d'GEPANZERT Wuereklass: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :D'GEPANZERT Wuereklass huet Wäertsaachen am geméissegte Klima, Diamanten am Sub-Tropenklima an Gold am sub-arktësche Klima. NewGRFen kënnen dat änneren. "symmetrësch" heescht, dass ongeféier d'selwecht vill vun A op B wéi vun B op A geschéckt ginn. "asymmetrësch" heescht, dass eng arbiträr Unzuel un Wueren an d'jeweileg Richtung geschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt. Et gëtt emfuelen dëst op asymmetrësch oder manuell ze loossen wann een sub-arktësch spillt, well Banken keen Gold zréck an d’Minen liwweren. Fir geméissegt Klima an sub-tropësch Klima kann eng Bank mat der anerer Wertsachen zréckschécken. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :D'GEPANZERT Wuereklass huet Wäertsaachen am geméissegte Klima, Diamanten am Sub-Tropenklima an Gold am sub-arktësche Klima. NewGRFen kënnen dat änneren. "Symmetrësch" heescht, dass ongeféier d'selwecht vill vun A op B wéi vu B op A geschéckt ginn. "asymmetrësch" heescht, dass eng arbiträr Unzuel u Wueren an d'jeweileg Richtung geschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt. Et gëtt emfuelen dëst op asymmetrësch oder manuell ze loossen wann ee sub-arktësch spillt, well Banken kee Gold zréck an d’Minen liwweren. Fir geméissegt Klima an sub-tropësch Klima kann eng Bank mat der anerer Wäertsachen zeréckschécken. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Distributiounsmodus fir aner Wuerenklassen: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"asymmetrësch" heescht dass eng beléiweg Unzuel un Wueren an béid Richtungen verschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt. Meeschtens gëtt "asymmetrësch" oder manuell gewielt. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"asymmetresch" heescht dass eng beléiweg Unzuel un Wueren an béid Richtungen verschéckt ginn. "manuell" heescht dass keng automatësch Distributioun stattfënnt. Meeschtens gëtt "asymmetresch" oder manuell gewielt. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Distributiounsgenauegkeet: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Wat den Wert méi héig ass, wat méi CPU benotzt gëtt fir d'Linkgraphik ze zeechnen. Wann ze héig gesat, kann et zu Lags kommen. Ze niddreg gesat kann d'Distributioun ongenau ginn an d'Wueren net sou verdeelt ginn wéi geduet +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Wat de Wäert méi héich ass, wat méi CPU benotzt gëtt fir d'Linkgrafik ze zeechnen. Wann ze héich gesat, kann et zu Lags kommen. Ze niddreg gesat kann d'Distributioun ongenau ginn an d'Wueren net sou verdeelt ginn wéi geduet STR_CONFIG_SETTING_DEMAND_DISTANCE :Afloss vun der Distanz op d'Nofro: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Wann'sde en méi héigen Wert wéi 0 wiels, huet d'Differenz tëscht 2 Statiounen A an B en Afloss op wéivill Wueren geschéckt ginn. Wat B méi wait ewech vun A ass, wat manner Wueren geschéckt ginn. Wat den Wert méi héig gesat gëtt, wat manner Wueren op eng Statioun wait ewech an méi Wueren op eng Statioun méi no gescheckt ginn. -STR_CONFIG_SETTING_DEMAND_SIZE :Unzuel vun zréckgeschéckten Wueren fir den symmetrëschen Modus: {STRING} -STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Wann een dëst op manner wéi 100% setzt, gëtt déi symmetrësch Distributioun méi wéi eng asymmetrësch behandelt. Manner Wueren ginn zréckgeschéckt wann en bestëmmten Wert op eng Statioun geschéckt gouf. Bei 0% verhält sech d'symmetrësch Distributioun wéi eng asymmetrësch -STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Sättegung vun kuerzen Weeër befier grouss Weeër benotzt ginn: {STRING} -STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Oft gëtt et e puer Weeër tëscht zwou Statiounen. Cargodist siedegt fir d'éischt den kierzten, dann den zweetkierzten a.s.w. Siedegung gëtt bestemmt durch Kapazitéit an geplangten Notzung. Wann all Wee gesiedegt ass, an nach emmer eng Nofro do ass, ginn all d'Weeër iwwersiedegt, mat Präferenz déi mat grousser Kapazitéit. Gréissten Deel vun der Zäit rechent den Algorithmus d'Kapazitéit allerdéngs net richteg. Des Astellung erlabt engem en Prozentsaz ze bestëmmen fir den éischten Wee befier en zweeten Wee benotzt gëtt. Setz en enner 100% fir iwwerfëllten Statiounen ze vermeiden wann d'Kapazitéit iwwerschad gouf. +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Wann's de en méi héije Wäert wéi 0 wiels, huet d'Differenz tëscht 2 Statiounen A an B en Afloss dorop wéivill Wueren geschéckt ginn. Wat B méi wäit ewech vun A ass, wat manner Wueren geschéckt ginn. Wat de Wäert méi héich gesat gëtt, wat manner Wueren op eng Statioun wait ewech an méi Wueren op eng Statioun méi no geschéckt ginn. +STR_CONFIG_SETTING_DEMAND_SIZE :Unzuel vun zeréckgeschéckte Wueren fir de symmetreschen Modus: {STRING} +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Wann een dëst op manner wéi 100% setzt, gëtt déi symmetresch Distributioun méi wéi eng asymmetrësch behandelt. Manner Wueren ginn zeréckgeschéckt wann en bestëmmten Wäert op eng Statioun geschéckt gouf. Bei 0% verhält sech d'symmetresch Distributioun wéi eng asymmetresch +STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Sättegung vu kuerzen Weeër befier grouss Weeër benotzt ginn: {STRING} +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Oft gëtt et e puer Weeër tëscht zwou Statiounen. Cargodist siedegt fir d'éischt de kierzten, dann den zweetkierzten a.s.w. Siedegung gëtt bestemmt durch Kapazitéit an geplangten Notzung. Wann all Wee gesiedegt ass, an nach emmer eng Nofro do ass, ginn all d'Weeër iwwersiedegt, mat Präferenz déi mat grousser Kapazitéit. Gréissten Deel vun der Zäit rechent den Algorithmus d'Kapazitéit allerdéngs net richteg. Des Astellung erlabt engem en Prozentsaz ze bestëmmen fir den éischten Wee befier en zweeten Wee benotzt gëtt. Setz en enner 100% fir iwwerfëllten Statiounen ze vermeide wann d'Kapazitéit iwwerschat gouf. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Geschwindegkeetseenheeten: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Emmer wann eng Geschwindegkeet am Userinterface ugewisen gëtt, weis se an den ausgewielten Eenheeten un -STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Britësch (mph) -STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Metrësch (km/h) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Britesch (mph) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Metresch (km/h) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Kraafteenheeten: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Emmer wann d'Kraaft vun engem Gefier am Userinterface ugewisen gëtt, weis se an den ausgewielten Eenheeten un -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Britësch (PS) -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrësch (PS) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Britesch (PS) +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metresch (PS) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Gewichtseenheeten: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Emmer wann Gewiichter am Userinterface ugewisen ginn, weis se an den ausgewielten Eenheeten un -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Britësch (kuerz t/Tonn) -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrësch (t/Tonn) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Britesch (kuerz t/Tonn) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metresch (t/Tonn) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Volumeneenheeten: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Emmer wann Volumen am Userinterface ugewisen ginn, weis se an den ausgewielten Eenheeten un -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Britësch (gal) -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrësch (l) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Britesch (gal) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metresch (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Zuchkraaft Eenheeten: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Emmer wann eng Zuchkraaft am Userinterface ugewisen gëtt weis se an den ugewielten Eenheeten un -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Britësch (lbf) -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrësch (kgf) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Emmer wann eng Zuchkraaft am Userinterface ugewisen gëtt, weis se an den ugewielten Eenheeten un +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Britesch (lbf) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metresch (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Héigteneenheeten: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Emmer wann Héigten am Userinterface ugewisen ginn, weis se an den ausgewielten Eenheeten un -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Britësch (ft) -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrësch (m) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Héichteneenheeten: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Emmer wann Héichten am Userinterface ugewisen ginn, weis se an den ausgewielten Eenheeten un +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Britesch (ft) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metresch (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Lokaliséirung -STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Graphik +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafik STR_CONFIG_SETTING_SOUND :{ORANGE}Soundeffekter STR_CONFIG_SETTING_INTERFACE :{ORANGE}Interface STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Generell @@ -1656,15 +1676,15 @@ STR_CONFIG_SETTING_COMPANY :{ORANGE}Firma STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Compta STR_CONFIG_SETTING_VEHICLES :{ORANGE}Gefierer STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Physik -STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Routenplangung +STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Routeplangung STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Limitatiounen -STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastrophen / Accidenter +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastrophen / Akzidenter STR_CONFIG_SETTING_GENWORLD :{ORANGE}Welt Generatioun STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Emwelt STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Autoritéiten STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Stied STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industrien -STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Wuerenverdeelung +STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Wuereverdeelung STR_CONFIG_SETTING_AI :{ORANGE}Géigner STR_CONFIG_SETTING_AI_NPC :{ORANGE}Computerspiller @@ -1673,12 +1693,12 @@ STR_CONFIG_SETTING_PATHFINDER_NPF :NPF STR_CONFIG_SETTING_PATHFINDER_YAPF_RECOMMENDED :YAPF {BLUE}(recommandéiert) STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS :Pfadfinder fir Zich: {STRING} -STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT :Pfadfinder den fir Zich benotzt gëtt +STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT :Pfadfinder dee fir Zich benotzt gëtt STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES :Pfadfinder fir Stroossegefierer: {STRING} -STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES_HELPTEXT :Pfadfinder den fir Gefierer benotzt gëtt +STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES_HELPTEXT :Pfadfinder dee fir Gefierer benotzt gëtt STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Pfadfinder fir Schëffer: {STRING} -STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :Pfadfinder den fir Schëffer benotzt gëtt -STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Automatëscht Emdréinen bei Signaler: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :Pfadfinder dee fir Schëffer benotzt gëtt +STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Automatescht Emdréinen bei Signaler: {STRING} STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Erlab Zich bei engem Signal emzedréinen, wann se eng laang Zäit geward hunn STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Astellung änneren @@ -1686,12 +1706,12 @@ STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Astellun # Config errors STR_CONFIG_ERROR :{WHITE}Fehler mat der Konfiguratiounsdatei... STR_CONFIG_ERROR_ARRAY :{WHITE}... Fehler am Array '{STRING}' -STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... falschen Wäert '{STRING}' fir '{STRING}' +STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... falsche Wäert '{STRING}' fir '{STRING}' STR_CONFIG_ERROR_TRAILING_CHARACTERS :{WHITE}... Trailing-characters um Enn vun der Astellung '{STRING}' STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... ignoréiren NewGRF '{STRING}': Duplikat-GRF ID wéi '{STRING}' STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... ignoréiren ongültëgen NewGRF '{STRING}': {STRING} STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :net fonnt -STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :onsécher fir statëschen Gebrauch +STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :onsécher fir statesche Gebrauch STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :System NewGRF STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :net mat dëser Versioun vun OpenTTD kompatibel STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :onbekannt @@ -1699,9 +1719,9 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... Komp STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... Spillstand format '{STRING}' gëtt et net. Revertéiren zu '{STRING}' STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoréiren Basis Grafik Set '{STRING}': net fonnt STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignoréiren Basis Sound Set '{STRING}': net fonnt -STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoréiren Basis Music Set '{STRING}': net fonnt -STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Out of memory -STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Reservéirung vun {BYTES} Spritecache feel versot. De Spritecache gouf reduzéiert op {BYTES}. Dëst reduzéiert d'Performance vun OpenTTD. Fir Späicher ze spueren kann een probéiren 32bpp Grafiken auszeschalten an/oder Zoom-Eran Stufen +STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoréiren Basis Musik Set '{STRING}': net fonnt +STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Net genuch Mémoire +STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Reservéirung vun {BYTES} Spritecache versot. De Spritecache gouf reduzéiert op {BYTES}. Dëst reduzéiert d'Performance vun OpenTTD. Fir Späicher ze spueren kann een probéiren 32bpp Grafiken auszeschalten an/oder Zoom-Eran Stufen # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -1709,33 +1729,33 @@ STR_INTRO_CAPTION :{WHITE}OpenTTD STR_INTRO_NEW_GAME :{BLACK}Neit Spill STR_INTRO_LOAD_GAME :{BLACK}Spill lueden STR_INTRO_PLAY_SCENARIO :{BLACK}Szenario spillen -STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Héichtenkaart spillen +STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Héichtekaart spillen STR_INTRO_SCENARIO_EDITOR :{BLACK}Szenarien Editor STR_INTRO_MULTIPLAYER :{BLACK}Multiplayer STR_INTRO_GAME_OPTIONS :{BLACK}Spilloptiounen -STR_INTRO_HIGHSCORE :{BLACK}Beschtenlëscht -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Erweidert Astellungen +STR_INTRO_HIGHSCORE :{BLACK}Beschtelëscht +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Astellungen STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Astellungen STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Inhalt STR_INTRO_SCRIPT_SETTINGS :{BLACK}KI / Spill-Script Astellungen STR_INTRO_QUIT :{BLACK}Eraus -STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start en neit Spill. Ctrl+Klick iwwersprengt Kaartenkonfiguratioun +STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start en neit Spill. Ctrl+Klick iwwerspréngt Kaartenkonfiguratioun STR_INTRO_TOOLTIP_LOAD_GAME :{BLACK}Spill lueden -STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Nei Partie starten, mat enger Héichtenkaart als Landschaft +STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Nei Partie starten, mat enger Héichtekaart als Landschaft STR_INTRO_TOOLTIP_PLAY_SCENARIO :{BLACK}Start eng nei Partie, mat engem eegenen Szenario STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Erstell eng eegen Spillwelt/Szenario STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Start en Multiplayer-Spill STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Wielt de Landschaftsstil 'temperéiert' -STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Wielt de Landschaftsstil 'sub-arktësch' -STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Wielt de Landschaftsstil 'sub-tropësch' -STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Wielt de Landschaftsstil 'Spillsaachenland' +STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Wielt de Landschaftsstil 'sub-arktesch' +STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Wielt de Landschaftsstil 'sub-tropesch' +STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Wielt de Landschaftsstil 'Spillsaacheland' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Spilloptiounen -STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Beschtenlëscht uweisen -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Weist erweidert Astellungen +STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Beschtelëscht uweisen +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Displayastellungen STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF Astellungen uweisen STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check op neien Inhalt kann downgeload gin STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Weis KI an Spill-Script-Astellungen @@ -1745,7 +1765,7 @@ STR_INTRO_TRANSLATION :{BLACK}Dës Iww # Quit window STR_QUIT_CAPTION :{WHITE}Eraus -STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}Bass du sécher, dass du aus OpenTTD eraus wëlls , an an den {STRING} zréck? +STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}Bass du sécher, dass du aus OpenTTD eraus wëlls, an an den {STRING} zeréck? STR_QUIT_YES :{BLACK}Jo STR_QUIT_NO :{BLACK}Nee @@ -1762,40 +1782,42 @@ STR_OSNAME_OS2 :OS/2 STR_OSNAME_SUNOS :SunOS # Abandon game -STR_ABANDON_GAME_CAPTION :{WHITE}Spill ophalen -STR_ABANDON_GAME_QUERY :{YELLOW}Bass du dir sécher dass du dës Partie ophalen wëlls? +STR_ABANDON_GAME_CAPTION :{WHITE}Spill ofbriechen +STR_ABANDON_GAME_QUERY :{YELLOW}Bass du sécher dass du des Partie ofbrieche wëlls? STR_ABANDON_SCENARIO_QUERY :{YELLOW}Sécher dass du aus dësem Szenario eraus wëlls ? # Cheat window -STR_CHEATS :{WHITE}Cheats +STR_CHEATS :{WHITE}Cheater STR_CHEATS_TOOLTIP :{BLACK}Checkboxen weisen un dass du den Cheat schon eng Kéier benotzt hues -STR_CHEATS_WARNING :{BLACK}Warnung! DU bass um Wee de Géigner ze verroden. Sou eng Ongnod gëtt bis an all Éiwegkeet behalen +STR_CHEATS_WARNING :{BLACK}Warnung! Du bass um Wee de Géigner ze verroden. Sou eng Ongnod gëtt bis an all Éiwegkeet behalen STR_CHEAT_MONEY :{LTBLUE}Suen ëm {CURRENCY_LONG} erhéijen -STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Als Firma spillen: {ORANGE}{COMMA} -STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magëschen Bulldozer (Industrien ofrappen, onzerstéierbar Objekter): {ORANGE}{STRING} -STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnellen kënnen sech kräizen: {ORANGE}{STRING} -STR_CHEAT_NO_JETCRASH :{LTBLUE}Jet'en maachen net regelméisseg en Accident op klengen Fluchhäfen: {ORANGE} {STRING} +STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Als Firma {ORANGE}{COMMA} spillen +STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magësche Bulldozer (Industrien ofrappen, onzerstéierbar Objeten): {ORANGE}{STRING} +STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnelle kënne sech kräizen: {ORANGE}{STRING} +STR_CHEAT_NO_JETCRASH :{LTBLUE}Jet'en maachen net regelméisseg en Akzident op klenge Fluchhäfen: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Änner d'Maximalhéicht vu Bierger op der Kaart: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Änner d'Maximalhéicht vu Bierger op der Kaart STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Gemässegt Klima Landschaft -STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Sub-Arktësch Landschaft -STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-Tropësch Landschaft -STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :Spillland Landschaft +STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Sub-Arktesch Landschaft +STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-Tropesch Landschaft +STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :Spillsaacheland Landschaft STR_CHEAT_CHANGE_DATE :{LTBLUE}Datum wiesselen: {ORANGE} {DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Wiessel d'aktuellt Joer -STR_CHEAT_SETUP_PROD :{LTBLUE}Erlaabt änneren vun den Produktiounswerter: {ORANGE}{STRING} +STR_CHEAT_SETUP_PROD :{LTBLUE}Erlaabt d'ännere vun de Produktiounswäerter: {ORANGE}{STRING} # Livery window -STR_LIVERY_CAPTION :{WHITE}Neien Faarfschema +STR_LIVERY_CAPTION :{WHITE}Neie Faarfschema STR_LIVERY_GENERAL_TOOLTIP :{BLACK}Weis generell Faarfschemen STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Weis Zuch Faarfschemen STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Weis Stroossegefierer Faarfschemen STR_LIVERY_SHIP_TOOLTIP :{BLACK}Weis d'Schëff Faarfschemen STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Weis Fliger Faarfschemen -STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Wiel d'Primärfaarf fir den ausgewieltenen Schema. Ctrl+Klick wielt dës Faarf fir all Schema +STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Wiel d'Primärfaarf fir den ausgewieltene Schema. Ctrl+Klick wielt dës Faarf fir all Schema STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Wiel d'Sekundärfaarf fir den ausgewieltenen Schema. Ctrl+Klick wielt dës Faarf fir all Schema -STR_LIVERY_PANEL_TOOLTIP :{BLACK}Wiel en Faarfschema fir ze änneren, oder e puer Schemen mat CTRL+Klick. Klick op d'Këscht fir d'Schemanotzung ze wiesselen +STR_LIVERY_PANEL_TOOLTIP :{BLACK}Wiel en Faarfschema fir ze änneren, oder e puer Schemen mat Ctrl+Klick. Klick op d'Këscht fir d'Schemanotzung ze wiesselen -STR_LIVERY_DEFAULT :Standard Tracht +STR_LIVERY_DEFAULT :Standard Firmefaarwen STR_LIVERY_STEAM :Damplok STR_LIVERY_DIESEL :Diesellok STR_LIVERY_ELECTRIC :Elektrolok @@ -1805,24 +1827,24 @@ STR_LIVERY_DMU :DMU STR_LIVERY_EMU :EMU STR_LIVERY_PASSENGER_WAGON_STEAM :Passagéierwaggon (Damp) STR_LIVERY_PASSENGER_WAGON_DIESEL :Passagéierwaggon (Diesel) -STR_LIVERY_PASSENGER_WAGON_ELECTRIC :Passagéierwaggon (Elektrësch) +STR_LIVERY_PASSENGER_WAGON_ELECTRIC :Passagéierwaggon (Elektresch) STR_LIVERY_PASSENGER_WAGON_MONORAIL :Passagéierwaggon (Monorail) -STR_LIVERY_PASSENGER_WAGON_MAGLEV :Passagéierwaggon (Magnéitbahn) +STR_LIVERY_PASSENGER_WAGON_MAGLEV :Passagéierwaggon (Magnéitbunn) STR_LIVERY_FREIGHT_WAGON :Gidderwaggon STR_LIVERY_BUS :Bus STR_LIVERY_TRUCK :Camion STR_LIVERY_PASSENGER_SHIP :Passagéierfähr -STR_LIVERY_FREIGHT_SHIP :Wuerenschëff -STR_LIVERY_HELICOPTER :Helicopter -STR_LIVERY_SMALL_PLANE :Klengen Fliger -STR_LIVERY_LARGE_PLANE :Groussen Fliger +STR_LIVERY_FREIGHT_SHIP :Frachtschëff +STR_LIVERY_HELICOPTER :Helikopter +STR_LIVERY_SMALL_PLANE :Klenge Fliger +STR_LIVERY_LARGE_PLANE :Grousse Fliger STR_LIVERY_PASSENGER_TRAM :Passagéiertram STR_LIVERY_FREIGHT_TRAM :Wuerentram # Face selection window STR_FACE_CAPTION :{WHITE}Gesiichtsauswiel STR_FACE_CANCEL_TOOLTIP :{BLACK}Briech d'Auswiel vum Gesiicht of -STR_FACE_OK_TOOLTIP :{BLACK}Accépteier néit Gesiicht +STR_FACE_OK_TOOLTIP :{BLACK}Neit Gesiicht akzeptéieren STR_FACE_RANDOM :{BLACK}Duercherneen wierfelen STR_FACE_MALE_BUTTON :{BLACK}Männlech @@ -1837,40 +1859,40 @@ STR_FACE_SIMPLE :{BLACK}Einfach STR_FACE_SIMPLE_TOOLTIP :{BLACK}Einfach Gesiichtsauswiel STR_FACE_LOAD :{BLACK}Lueden STR_FACE_LOAD_TOOLTIP :{BLACK}Favoriséiert Gesiicht lueden -STR_FACE_LOAD_DONE :{WHITE}Äert favoriséiert Gesiicht ass aus der OpenTTD configuratiouns Datei gelueden ginn. -STR_FACE_FACECODE :{BLACK}Gesiicht no. -STR_FACE_FACECODE_TOOLTIP :{BLACK}Kuckt an wielt d'Gesiichtsnummer vum Firmenpresident +STR_FACE_LOAD_DONE :{WHITE}Äert favoriséiert Gesiicht ass aus der OpenTTD Konfiguratiounsdatei geluede ginn. +STR_FACE_FACECODE :{BLACK}Gesiicht N°. +STR_FACE_FACECODE_TOOLTIP :{BLACK}Kuckt an wielt d'Gesiichtsnummer vum Firmepresident STR_FACE_FACECODE_CAPTION :{WHITE}Kuckt an wielt d'Gesiichtsnummer STR_FACE_FACECODE_SET :{WHITE}Nei Gesiichtsnummer ass agestallt ginn STR_FACE_FACECODE_ERR :{WHITE}Konnt d'Gesiichtsnummer net setzen - muss en numereschen Wäert tëscht 0 an 4,294,967,295 sinn! STR_FACE_SAVE :{BLACK}Späicheren STR_FACE_SAVE_TOOLTIP :{BLACK}Späichert favoriséiert Gesiicht -STR_FACE_SAVE_DONE :{WHITE}Dëst Gesiicht gëtt als Favoriséiert an der OpenTTD Configuratiounsdatei gespäichert. +STR_FACE_SAVE_DONE :{WHITE}Dëst Gesiicht gëtt als favoriséiert an der OpenTTD Konfiguratiounsdatei gespäichert. STR_FACE_EUROPEAN :{BLACK}Europäesch STR_FACE_SELECT_EUROPEAN :{BLACK}Wielt europäesch Gesiichter -STR_FACE_AFRICAN :{BLACK}Afrikanësch -STR_FACE_SELECT_AFRICAN :{BLACK}Wielt afrikanësch Gesiichter +STR_FACE_AFRICAN :{BLACK}Afrikanesch +STR_FACE_SELECT_AFRICAN :{BLACK}Wielt afrikanesch Gesiichter STR_FACE_YES :Jo STR_FACE_NO :Nee -STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Schalt Schnautz oder Ouerréng an -STR_FACE_HAIR :Hoër: -STR_FACE_HAIR_TOOLTIP :{BLACK}Hoër änneren -STR_FACE_EYEBROWS :Aaenbraaen: -STR_FACE_EYEBROWS_TOOLTIP :{BLACK}Aaenbraaen Ouerréng -STR_FACE_EYECOLOUR :Aanfaarf: -STR_FACE_EYECOLOUR_TOOLTIP :{BLACK}Aanfaarf änneren +STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Schalt Schnauz oder Ouerréng un +STR_FACE_HAIR :Hoer: +STR_FACE_HAIR_TOOLTIP :{BLACK}Hoer änneren +STR_FACE_EYEBROWS :Aperhoer: +STR_FACE_EYEBROWS_TOOLTIP :{BLACK}Apenhoer änneren +STR_FACE_EYECOLOUR :Aafaarf: +STR_FACE_EYECOLOUR_TOOLTIP :{BLACK}Aafaarf änneren STR_FACE_GLASSES :Brëll: -STR_FACE_GLASSES_TOOLTIP :{BLACK}Brëll anschalten +STR_FACE_GLASSES_TOOLTIP :{BLACK}Brëll aschalten STR_FACE_GLASSES_TOOLTIP_2 :{BLACK}Brëll änneren STR_FACE_NOSE :Nues: STR_FACE_NOSE_TOOLTIP :{BLACK}Nues änneren STR_FACE_LIPS :Lëpsen: -STR_FACE_MOUSTACHE :Schnautz: -STR_FACE_LIPS_MOUSTACHE_TOOLTIP :{BLACK}Lëpsen oder Schnautz änneren +STR_FACE_MOUSTACHE :Schnauz: +STR_FACE_LIPS_MOUSTACHE_TOOLTIP :{BLACK}Lëpsen oder Schnauz änneren STR_FACE_CHIN :Kënn: STR_FACE_CHIN_TOOLTIP :{BLACK}Kënn änneren -STR_FACE_JACKET :Mantel: -STR_FACE_JACKET_TOOLTIP :{BLACK}Mantel änneren +STR_FACE_JACKET :Paltong: +STR_FACE_JACKET_TOOLTIP :{BLACK}Paltong änneren STR_FACE_COLLAR :Halsband: STR_FACE_COLLAR_TOOLTIP :{BLACK}Halsband änneren STR_FACE_TIE :Krawatt: @@ -1884,7 +1906,7 @@ STR_NETWORK_SERVER_LIST_ADVERTISED_TOOLTIP :{BLACK}Wiel të STR_NETWORK_SERVER_LIST_ADVERTISED_NO :Nee STR_NETWORK_SERVER_LIST_ADVERTISED_YES :Jo STR_NETWORK_SERVER_LIST_PLAYER_NAME :{BLACK}Spillernumm: -STR_NETWORK_SERVER_LIST_ENTER_NAME_TOOLTIP :{BLACK}Daat ass den Numm mat deem iersch dei aaner Spiller Identifizéieren kënnen +STR_NETWORK_SERVER_LIST_ENTER_NAME_TOOLTIP :{BLACK}Daat ass den Numm mat deem iech déi aner Spiller Identifizéieren kënnen STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Numm STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Numm vum Spill @@ -1893,16 +1915,16 @@ STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Spiller STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Spiller online / max Spiller{}Firmen online / max Firmen STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Kaartegréisst -STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Kaartegréisst vum Spill{}Klicken fir dono ze sortéieren +STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Kaartegréisst vum Spill{}Klicken fir dorop ze sortéieren STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Datum STR_NETWORK_SERVER_LIST_DATE_CAPTION_TOOLTIP :{BLACK}Momentanen Datum STR_NETWORK_SERVER_LIST_YEARS_CAPTION :{BLACK}Joer -STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Unzuel vun Joer wou{}daat Spill leeft +STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Unzuel u Joer wou{}daat Spill leeft STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Sprooch, Serverversioun, etc. STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Klick op en Spill aus der Lëscht fir et auszewielen -STR_NETWORK_SERVER_LIST_LAST_JOINED_SERVER :{BLACK}Server deems du d'leschte Kéier bäigetrueden bass: -STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Klick fir den Server ze wielen deens du d'leschte Kéier haas +STR_NETWORK_SERVER_LIST_LAST_JOINED_SERVER :{BLACK}Server deems du d'leschte Kéier bäigetruede bass: +STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Klick fir de Server ze wielen deens du d'leschte Kéier haas STR_NETWORK_SERVER_LIST_GAME_INFO :{SILVER}SPILL INFO STR_NETWORK_SERVER_LIST_CLIENTS :{SILVER}Spiller: {WHITE}{COMMA} / {COMMA} - {COMMA} / {COMMA} @@ -1931,13 +1953,13 @@ STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Server s STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP :{BLACK}Eegenen Server starten STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE :{BLACK}Gëff däin Numm an -STR_NETWORK_SERVER_LIST_ENTER_IP :{BLACK}d'Address vum Host unginn +STR_NETWORK_SERVER_LIST_ENTER_IP :{BLACK}D'Address vum Host uginn # Start new multiplayer server STR_NETWORK_START_SERVER_CAPTION :{WHITE}Nei Multiplayerpartie starten STR_NETWORK_START_SERVER_NEW_GAME_NAME :{BLACK}Spillnumm: -STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}Den Numm deen an der Lëscht vun den Spiller ugewissen gëtt +STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}Den Numm deen an der Lëscht vun de Spiller ugewisen gëtt STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Passwuert setzen STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}En Passwuert fir d'Spill setzen, dass et net Public accessibel ass @@ -1945,70 +1967,70 @@ STR_NETWORK_START_SERVER_UNADVERTISED :Nee STR_NETWORK_START_SERVER_ADVERTISED :Jo STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} Spiller STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Maximal Spiller: -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Maximal Unzuel vun den Clients. Et muss net all Slot gefëllt sinn. +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Maximal Unzuel vun de Clients. Et muss net all Slot gefëllt sinn. STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} Firm{P a en} STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Maximal Firmen: -STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}D'Unzuel vun den Firmen limitéieren +STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}D'Unzuel vun de Firme limitéieren STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} Zuschauer STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Maximal Zuschauer: STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS_TOOLTIP :{BLACK}D'Unzuel vun den Zuschauer limitéiren -STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Geschwaaten Sprooch: -STR_NETWORK_START_SERVER_LANGUAGE_TOOLTIP :{BLACK}Aaner Leit gesinn wéi eng Sprooch um Server geschwaat gëtt +STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Geschwate Sprooch: +STR_NETWORK_START_SERVER_LANGUAGE_TOOLTIP :{BLACK}Aner Leit gesinn wéieng Sprooch um Server geschwat gëtt STR_NETWORK_START_SERVER_NEW_GAME_NAME_OSKTITLE :{BLACK}Gëff en Numm fir d'Spill un # Network game languages ############ Leave those lines in this order!! STR_NETWORK_LANG_ANY :Egal -STR_NETWORK_LANG_ENGLISH :Englësch +STR_NETWORK_LANG_ENGLISH :Englesch STR_NETWORK_LANG_GERMAN :Däitsch STR_NETWORK_LANG_FRENCH :Franséisch -STR_NETWORK_LANG_BRAZILIAN :Brasilianësch -STR_NETWORK_LANG_BULGARIAN :Bulgarësch -STR_NETWORK_LANG_CHINESE :Chinesësch -STR_NETWORK_LANG_CZECH :Tscheschësch -STR_NETWORK_LANG_DANISH :Dänësch -STR_NETWORK_LANG_DUTCH :Holländësch +STR_NETWORK_LANG_BRAZILIAN :Brasilianesch +STR_NETWORK_LANG_BULGARIAN :Bulgaresch +STR_NETWORK_LANG_CHINESE :Chinesesch +STR_NETWORK_LANG_CZECH :Tschechesch +STR_NETWORK_LANG_DANISH :Dänesch +STR_NETWORK_LANG_DUTCH :Holländesch STR_NETWORK_LANG_ESPERANTO :Esperanto -STR_NETWORK_LANG_FINNISH :Finnësch -STR_NETWORK_LANG_HUNGARIAN :Ungarësch +STR_NETWORK_LANG_FINNISH :Finnesch +STR_NETWORK_LANG_HUNGARIAN :Ungaresch STR_NETWORK_LANG_ICELANDIC :Isländesch -STR_NETWORK_LANG_ITALIAN :Italienësch -STR_NETWORK_LANG_JAPANESE :Japanësch -STR_NETWORK_LANG_KOREAN :Koreanësch -STR_NETWORK_LANG_LITHUANIAN :Lithauësch -STR_NETWORK_LANG_NORWEGIAN :Norwegësch -STR_NETWORK_LANG_POLISH :Polnësch -STR_NETWORK_LANG_PORTUGUESE :Portugiesësch -STR_NETWORK_LANG_ROMANIAN :Rumänësch -STR_NETWORK_LANG_RUSSIAN :Russësch -STR_NETWORK_LANG_SLOVAK :Slovakësch -STR_NETWORK_LANG_SLOVENIAN :Slovenësch -STR_NETWORK_LANG_SPANISH :Spuenësch -STR_NETWORK_LANG_SWEDISH :Schwedësch -STR_NETWORK_LANG_TURKISH :Türkësch -STR_NETWORK_LANG_UKRAINIAN :Ukrainësch -STR_NETWORK_LANG_AFRIKAANS :Afrikanësch -STR_NETWORK_LANG_CROATIAN :Kroatësch -STR_NETWORK_LANG_CATALAN :Katalanësch -STR_NETWORK_LANG_ESTONIAN :Estnësch -STR_NETWORK_LANG_GALICIAN :Galicianësch -STR_NETWORK_LANG_GREEK :Grieschësch -STR_NETWORK_LANG_LATVIAN :Lettësch +STR_NETWORK_LANG_ITALIAN :Italienesch +STR_NETWORK_LANG_JAPANESE :Japanesch +STR_NETWORK_LANG_KOREAN :Koreanesch +STR_NETWORK_LANG_LITHUANIAN :Litauesch +STR_NETWORK_LANG_NORWEGIAN :Norwegesch +STR_NETWORK_LANG_POLISH :Polnesch +STR_NETWORK_LANG_PORTUGUESE :Portugiesesch +STR_NETWORK_LANG_ROMANIAN :Rumänesch +STR_NETWORK_LANG_RUSSIAN :Russesch +STR_NETWORK_LANG_SLOVAK :Slovakesch +STR_NETWORK_LANG_SLOVENIAN :Slovenesch +STR_NETWORK_LANG_SPANISH :Spuenesch +STR_NETWORK_LANG_SWEDISH :Schwedesch +STR_NETWORK_LANG_TURKISH :Türkesch +STR_NETWORK_LANG_UKRAINIAN :Ukrainesch +STR_NETWORK_LANG_AFRIKAANS :Afrikaans +STR_NETWORK_LANG_CROATIAN :Kroatesch +STR_NETWORK_LANG_CATALAN :Katalanesch +STR_NETWORK_LANG_ESTONIAN :Estnesch +STR_NETWORK_LANG_GALICIAN :Gälesch +STR_NETWORK_LANG_GREEK :Griechesch +STR_NETWORK_LANG_LATVIAN :Lettesch ############ End of leave-in-this-order # Network game lobby -STR_NETWORK_GAME_LOBBY_CAPTION :{WHITE}Multiplayer-Spill Empfang +STR_NETWORK_GAME_LOBBY_CAPTION :{WHITE}Multiplayer-Spill Lobby STR_NETWORK_GAME_LOBBY_PREPARE_TO_JOIN :{BLACK}Preparéiert fir bäizetrieden: {ORANGE}{STRING} -STR_NETWORK_GAME_LOBBY_COMPANY_LIST_TOOLTIP :{BLACK}Eng Lëscht vun den Firmen an dësem Spill. Du kanns enger bäitrieden oder eng nei opmaachen. +STR_NETWORK_GAME_LOBBY_COMPANY_LIST_TOOLTIP :{BLACK}Eng Lëscht vun de Firmen an dësem Spill. Du kanns enger bäitrieden oder eng nei opmaachen. STR_NETWORK_GAME_LOBBY_COMPANY_INFO :{SILVER}FIRMENINFO STR_NETWORK_GAME_LOBBY_COMPANY_NAME :{SILVER}Firmennumm: {WHITE}{STRING} STR_NETWORK_GAME_LOBBY_INAUGURATION_YEAR :{SILVER}Grënnung: {WHITE}{NUM} -STR_NETWORK_GAME_LOBBY_VALUE :{SILVER}Firmenwäert: {WHITE}{CURRENCY_LONG} +STR_NETWORK_GAME_LOBBY_VALUE :{SILVER}Firmewäert: {WHITE}{CURRENCY_LONG} STR_NETWORK_GAME_LOBBY_CURRENT_BALANCE :{SILVER}Kontostand: {WHITE}{CURRENCY_LONG} -STR_NETWORK_GAME_LOBBY_LAST_YEARS_INCOME :{SILVER}Akommes vum leschten Joer: {WHITE}{CURRENCY_LONG} +STR_NETWORK_GAME_LOBBY_LAST_YEARS_INCOME :{SILVER}Akommes vum leschte Joer: {WHITE}{CURRENCY_LONG} STR_NETWORK_GAME_LOBBY_PERFORMANCE :{SILVER}Performance: {WHITE}{NUM} STR_NETWORK_GAME_LOBBY_VEHICLES :{SILVER}Gefierer: {WHITE}{NUM} {TRAIN}, {NUM} {LORRY}, {NUM} {BUS}, {NUM} {SHIP}, {NUM} {PLANE} @@ -2018,9 +2040,9 @@ STR_NETWORK_GAME_LOBBY_PLAYERS :{SILVER}Spiller STR_NETWORK_GAME_LOBBY_NEW_COMPANY :{BLACK}Nei Firma STR_NETWORK_GAME_LOBBY_NEW_COMPANY_TOOLTIP :{BLACK}Nei Firma erstellen STR_NETWORK_GAME_LOBBY_SPECTATE_GAME :{BLACK}Dem Spill nokucken -STR_NETWORK_GAME_LOBBY_SPECTATE_GAME_TOOLTIP :{BLACK}D'Spill als Zuschauer verfolgen +STR_NETWORK_GAME_LOBBY_SPECTATE_GAME_TOOLTIP :{BLACK}Dem Spill als Zuschauer nokucken STR_NETWORK_GAME_LOBBY_JOIN_COMPANY :{BLACK}Firma bäitrieden -STR_NETWORK_GAME_LOBBY_JOIN_COMPANY_TOOLTIP :{BLACK}Déi Firma mat verwalten +STR_NETWORK_GAME_LOBBY_JOIN_COMPANY_TOOLTIP :{BLACK}Des Firma matverwalten # Network connecting window STR_NETWORK_CONNECTING_CAPTION :{WHITE}Connectioun... @@ -2031,19 +2053,19 @@ STR_NETWORK_CONNECTING_2 :{BLACK}(2/6) Au STR_NETWORK_CONNECTING_3 :{BLACK}(3/6) Waarden... STR_NETWORK_CONNECTING_4 :{BLACK}(4/6) Kaart eroflueden... STR_NETWORK_CONNECTING_5 :{BLACK}(5/6) Daten verarbëschten... -STR_NETWORK_CONNECTING_6 :{BLACK}(6/6) Registréiert... +STR_NETWORK_CONNECTING_6 :{BLACK}(6/6) Registréierung... STR_NETWORK_CONNECTING_SPECIAL_1 :{BLACK}Ruffen d'Spillinfo of.. STR_NETWORK_CONNECTING_SPECIAL_2 :{BLACK}Ruffen d'Firmeninfos of... ############ End of leave-in-this-order -STR_NETWORK_CONNECTING_WAITING :{BLACK}{NUM} Spiller firun ierch -STR_NETWORK_CONNECTING_DOWNLOADING_1 :{BLACK}{BYTES} souwait gedownload -STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} / {BYTES} erofgeluden +STR_NETWORK_CONNECTING_WAITING :{BLACK}{NUM} Spiller firun dir +STR_NETWORK_CONNECTING_DOWNLOADING_1 :{BLACK}{BYTES} souwäit erofgelueden +STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} / {BYTES} erofgelueden STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}Verbindung trennen -STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Server ass geschützt. Passwuert anginn -STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Firma ass geschützt. Passwuert anginn +STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Server ass geschützt. Passwuert aginn +STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Firma ass geschützt. Passwuert aginn # Network company list added strings STR_NETWORK_COMPANY_LIST_CLIENT_LIST :{WHITE}Spillerlëscht @@ -2051,68 +2073,68 @@ STR_NETWORK_COMPANY_LIST_SPECTATE :{WHITE}Nokucken STR_NETWORK_COMPANY_LIST_NEW_COMPANY :{WHITE}Nei Firma # Network client list -STR_NETWORK_CLIENTLIST_KICK :Kick -STR_NETWORK_CLIENTLIST_BAN :Ban -STR_NETWORK_CLIENTLIST_GIVE_MONEY :Suen ginn -STR_NETWORK_CLIENTLIST_SPEAK_TO_ALL :Jidderengem soen -STR_NETWORK_CLIENTLIST_SPEAK_TO_COMPANY :Der Firma soen -STR_NETWORK_CLIENTLIST_SPEAK_TO_CLIENT :Privat Meldung +STR_NETWORK_CLIENTLIST_KICK :Kicken +STR_NETWORK_CLIENTLIST_BAN :Bannen +STR_NETWORK_CLIENTLIST_GIVE_MONEY :Sue ginn +STR_NETWORK_CLIENTLIST_SPEAK_TO_ALL :Mat alle schwetzen +STR_NETWORK_CLIENTLIST_SPEAK_TO_COMPANY :Mat der Firma schwetzen +STR_NETWORK_CLIENTLIST_SPEAK_TO_CLIENT :Privatmessage STR_NETWORK_SERVER :Server STR_NETWORK_CLIENT :Spiller STR_NETWORK_SPECTATORS :Zuschauer -STR_NETWORK_GIVE_MONEY_CAPTION :{WHITE}Gëff den Betrag un deenst du wëlls ginn +STR_NETWORK_GIVE_MONEY_CAPTION :{WHITE}Gëff de Betrag un deens du wëlls ginn STR_NETWORK_TOOLBAR_LIST_SPECTATOR :{BLACK}Zuschauer # Network set password STR_COMPANY_PASSWORD_CANCEL :{BLACK}Späicher d'Passwuert net STR_COMPANY_PASSWORD_OK :{BLACK}Benotz daat neit Passwuert fir d'Firma -STR_COMPANY_PASSWORD_CAPTION :{WHITE}Firmen-Passwuert -STR_COMPANY_PASSWORD_MAKE_DEFAULT :{BLACK}Standard Firmen-Passwuert -STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}Benotzt dëst Passwuert als Standard fir néi Firmen +STR_COMPANY_PASSWORD_CAPTION :{WHITE}Firme-Passwuert +STR_COMPANY_PASSWORD_MAKE_DEFAULT :{BLACK}Standard Firme-Passwuert +STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}Benotzt dëst Passwuert als Standard fir nei Firmen # Network company info join/password STR_COMPANY_VIEW_JOIN :{BLACK}Bäitrieden -STR_COMPANY_VIEW_JOIN_TOOLTIP :{BLACK}Bäitrieden an mat där Firma spillen +STR_COMPANY_VIEW_JOIN_TOOLTIP :{BLACK}Bäitrieden an mat deser Firma spillen STR_COMPANY_VIEW_PASSWORD :{BLACK}Passwuert STR_COMPANY_VIEW_PASSWORD_TOOLTIP :{BLACK}Setzt en Passwuert fir nëmmen authoriséiert Benotzer spillen ze loossen STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}Setzt d'Firmen-Passwuert # Network chat -STR_NETWORK_CHAT_SEND :{BLACK}Schécken +STR_NETWORK_CHAT_SEND :{BLACK}Ofschécken STR_NETWORK_CHAT_COMPANY_CAPTION :[Team] : STR_NETWORK_CHAT_CLIENT_CAPTION :[Privat] {STRING}: STR_NETWORK_CHAT_ALL_CAPTION :[All] : STR_NETWORK_CHAT_COMPANY :[Team] {STRING}: {WHITE}{STRING} -STR_NETWORK_CHAT_TO_COMPANY :[Team] Zu {STRING}: {WHITE}{STRING} -STR_NETWORK_CHAT_CLIENT :[Private] {STRING}: {WHITE}{STRING} -STR_NETWORK_CHAT_TO_CLIENT :[Privat] Zu {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_TO_COMPANY :[Team] Un: {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_CLIENT :[Privat] {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_TO_CLIENT :[Privat] Un: {STRING}: {WHITE}{STRING} STR_NETWORK_CHAT_ALL :[All] {STRING}: {WHITE}{STRING} STR_NETWORK_CHAT_OSKTITLE :{BLACK}Text fir Chat aginn # Network messages -STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Keng Netzwierkgeräter font oder compiléiert ouni ENABLE_NETWORK -STR_NETWORK_ERROR_NOSERVER :{WHITE}Konnt kéng Netzwierkspiller fannen -STR_NETWORK_ERROR_NOCONNECTION :{WHITE}Den Server huet net op d'Ufro geäntwert -STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Konnt sech wéinst NewGRF ënnerscheed net connectéieren +STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Keng Netzwierkgeräter fonnt oder compiléiert ouni ENABLE_NETWORK +STR_NETWORK_ERROR_NOSERVER :{WHITE}Konnt keng Netzwierkspiller fannen +STR_NETWORK_ERROR_NOCONNECTION :{WHITE}De Server huet net op d'Ufro geäntwert +STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Konnt sech wéinst ënnerscheedlechen NewGRF net connectéieren STR_NETWORK_ERROR_DESYNC :{WHITE}Netzwierksyncronisatiouns-Fehler STR_NETWORK_ERROR_LOSTCONNECTION :{WHITE}Netzwierkverbindung verluer -STR_NETWORK_ERROR_SAVEGAMEERROR :{WHITE}Konnt den Spillstand net lueden -STR_NETWORK_ERROR_SERVER_START :{WHITE}Konnt den Server net starten -STR_NETWORK_ERROR_CLIENT_START :{WHITE}Konnt sëch net connectéieren +STR_NETWORK_ERROR_SAVEGAMEERROR :{WHITE}Konnt de Spillstand net lueden +STR_NETWORK_ERROR_SERVER_START :{WHITE}Konnt de Server net starten +STR_NETWORK_ERROR_CLIENT_START :{WHITE}Konnt sech net connectéieren STR_NETWORK_ERROR_TIMEOUT :{WHITE}Connectioun #{NUM} ofgelaaf STR_NETWORK_ERROR_SERVER_ERROR :{WHITE}En Protokolfehler ass entstaanen an d'Connectioun ass getrennt ginn -STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}D'Versioun vum Client stëmmt net mat där vum Server iwwereneen +STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}D'Versioun vum Client stëmmt net mat däer vum Server iwwereneen STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Falscht Passwuert -STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Den Server ass voll +STR_NETWORK_ERROR_SERVER_FULL :{WHITE}De Server ass voll STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Du bass vun dësem Server gebannt STR_NETWORK_ERROR_KICKED :{WHITE}Du goufs aus dem Spill geheit STR_NETWORK_ERROR_CHEATER :{WHITE}Cheaten ass op dësem Server net erlaabt -STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Du hues zevill Befehler un den Server geschéckt -STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Du hues ze laang gebraucht fir en Passwuert anzeginn -STR_NETWORK_ERROR_TIMEOUT_COMPUTER :{WHITE}Dain Computer brauch ze laang fir bäizetrieden +STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Du hues zevill Befehler un de Server geschéckt +STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Du hues ze laang gebraucht fir e Passwuert anzeginn +STR_NETWORK_ERROR_TIMEOUT_COMPUTER :{WHITE}Däin Computer brauch ze laang fir bäizetrieden STR_NETWORK_ERROR_TIMEOUT_MAP :{WHITE}Du hues ze laang gebraucht fir d'Kaart rofzelueden STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Du hues ze laang gebraucht fir dem Server bäizetrieden @@ -2152,40 +2174,40 @@ STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Spill nach ëmm STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :Spill nach pauséiert ({STRING}, {STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_UNPAUSED :Spill geet weider ({STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :Unzuel Spiller -STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :Klienten verbannen +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :Spiller verbannen STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :manuell STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :Spill-Script ############ End of leave-in-this-order STR_NETWORK_MESSAGE_CLIENT_LEAVING :verloossen -STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} ass dem Spill baigetrueden +STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} ass dem Spill bäigetrueden STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} ass an d'Spill komm (Client #{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {STRING} ass bei d'Firma #{2:NUM} gaangen STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ass als Zuschauer do STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} huet eng nei Firma gegrënnt (#{2:NUM}) -STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} huet d'Spill verloos ({2:STRING}) +STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} huet d'Spill verlooss ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} huet säin Numm op {STRING} gewiesselt STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} huet ärer Firma {2:CURRENCY_LONG} ginn STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Du hues dem {1:STRING} {2:CURRENCY_LONG} ginn -STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Den Server huet d'Sessioun zougemaach -STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Den Server gëtt nei gestart...{}Weg. waarden... +STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}De Server huet d'Sessioun zougemaach +STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}De Server gëtt nei gestart...{}W.e.g. waarden... # Content downloading window -STR_CONTENT_TITLE :{WHITE}Inhalt Download +STR_CONTENT_TITLE :{WHITE}Lueden Inhalt erof STR_CONTENT_TYPE_CAPTION :{BLACK}Typ STR_CONTENT_TYPE_CAPTION_TOOLTIP :{BLACK}Typ vum Inhalt STR_CONTENT_NAME_CAPTION :{BLACK}Numm STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}Numm vum Inhalt STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Klick op eng Linn fir Detailer{}Klick Checkbox fir et downzeloaden -STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Wiel alles -STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Wiell all Inhalt fir den Download -STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Wiel Upgrades -STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Markéier all Inhalt,den en Upgrade fir existéirenden Inhalt ass, als Download +STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Alles uwielen +STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Wiel all Inhalt fir den Download +STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Upgrades uwielen +STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Markéier all Inhalt,den en Upgrade fir existéirenden Inhalt ass als Download STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Alles ofwielen STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Alles markéiren fir net downzeloaden STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Extern Websäiten durchsichen STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Sich Inhalter déi net op der OpenTTD Downloadwebsäit stin op aneren Websäiten STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Du verléiss OpenTTD! -STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Terms and conditions fir Inhalter vun externen Websäiten ze downloaden goufen geännert.{}Du muss op där Säit nokucken wéi een den Inhalt installéiert.{}Wellsde weiderman? +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Terms and conditions fir Inhalter vun externe Websäiten ze downloade goufe geännert.{}Du muss op där Säit nokucken wéi een den Inhalt installéiert.{}Wellsde weiderman? STR_CONTENT_FILTER_TITLE :{BLACK}Tag-/Nummfilter: STR_CONTENT_OPEN_URL :{BLACK}Websäit besichen STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Besicht d'Websäit vun dësem Inhalt @@ -2193,23 +2215,23 @@ STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Download STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK}Start den Download vum ausgewielten Inhalt STR_CONTENT_TOTAL_DOWNLOAD_SIZE :{SILVER}Total Downloadgréisst: {WHITE}{BYTES} STR_CONTENT_DETAIL_TITLE :{SILVER}INFO -STR_CONTENT_DETAIL_SUBTITLE_UNSELECTED :{SILVER}Dëst gouf net fir den Download gewielt -STR_CONTENT_DETAIL_SUBTITLE_SELECTED :{SILVER}Du hues dëst fir den Download gewielt -STR_CONTENT_DETAIL_SUBTITLE_AUTOSELECTED :{SILVER}Dës Ofhängegkeet gouf ausgewielt fir den download -STR_CONTENT_DETAIL_SUBTITLE_ALREADY_HERE :{SILVER}Du hues dëst schon -STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Dësen Inhalt ass net bekannt an kann net an OpenTTD downgeload gin -STR_CONTENT_DETAIL_UPDATE :{SILVER}Dëst ass en Austausch fir existent {STRING} +STR_CONTENT_DETAIL_SUBTITLE_UNSELECTED :{SILVER}Dest gouf net fir den Download gewielt +STR_CONTENT_DETAIL_SUBTITLE_SELECTED :{SILVER}Du hues dest fir den Download gewielt +STR_CONTENT_DETAIL_SUBTITLE_AUTOSELECTED :{SILVER}Des Ofhängegkeet gouf ausgewielt fir den Download +STR_CONTENT_DETAIL_SUBTITLE_ALREADY_HERE :{SILVER}Du hues dest schon +STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Dësen Inhalt ass net bekannt an kann net an OpenTTD downgeload ginn +STR_CONTENT_DETAIL_UPDATE :{SILVER}Dest ass en Austausch fir en existent/en {STRING} STR_CONTENT_DETAIL_NAME :{SILVER}Numm: {WHITE}{STRING} STR_CONTENT_DETAIL_VERSION :{SILVER}Versioun: {WHITE}{STRING} STR_CONTENT_DETAIL_DESCRIPTION :{SILVER}Beschreiwung: {WHITE}{STRING} STR_CONTENT_DETAIL_URL :{SILVER}URL: {WHITE}{STRING} STR_CONTENT_DETAIL_TYPE :{SILVER}Typ: {WHITE}{STRING} -STR_CONTENT_DETAIL_FILESIZE :{SILVER}Download Gréisst: {WHITE}{BYTES} +STR_CONTENT_DETAIL_FILESIZE :{SILVER}Downloadgréisst: {WHITE}{BYTES} STR_CONTENT_DETAIL_SELECTED_BECAUSE_OF :{SILVER}Ausgewielt wéinst: {WHITE}{STRING} STR_CONTENT_DETAIL_DEPENDENCIES :{SILVER}Ofhängegkeeten: {WHITE}{STRING} STR_CONTENT_DETAIL_TAGS :{SILVER}Tags: {WHITE}{STRING} -STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD ass ouni "zlib" support compiléiert... -STR_CONTENT_NO_ZLIB_SUB :{WHITE}... Inhaltdownload ass net méiglech! +STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD ass ouni "zlib" Support compiléiert... +STR_CONTENT_NO_ZLIB_SUB :{WHITE}... Inhalt eroflueden ass net méiglech! # Order of these is important! STR_CONTENT_TYPE_BASE_GRAPHICS :Standard Grafiken @@ -2217,28 +2239,28 @@ STR_CONTENT_TYPE_NEWGRF :NewGRF STR_CONTENT_TYPE_AI :KI STR_CONTENT_TYPE_AI_LIBRARY :KI Librairie STR_CONTENT_TYPE_SCENARIO :Szenario -STR_CONTENT_TYPE_HEIGHTMAP :Héischtenkaart +STR_CONTENT_TYPE_HEIGHTMAP :Héischtekaart STR_CONTENT_TYPE_BASE_SOUNDS :Basis Sounds STR_CONTENT_TYPE_BASE_MUSIC :Basis Musik STR_CONTENT_TYPE_GAME_SCRIPT :Spill-Script STR_CONTENT_TYPE_GS_LIBRARY :GS Librairie # Content downloading progress window -STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Downloaden Inhalt... +STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Lueden Inhalt erof... STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Froen Daten un... -STR_CONTENT_DOWNLOAD_FILE :{WHITE}Grad um downloaden {STRING} ({NUM} vun {NUM}) +STR_CONTENT_DOWNLOAD_FILE :{WHITE}Lueden grad {STRING} erof. ({NUM} vun {NUM}) STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Download fäerdeg STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} vun {BYTES} downgeload ({NUM} %) # Content downloading error messages -STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}Konnt net op den content server konnektéiren... -STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}Downloading mësslong... -STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... Konnektioun verluer +STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}Konnt net op de Contentserver konnektéiren... +STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}Download mësslong... +STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... Connectioun verluer STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... Datei net beschreiwbar -STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Konnt den downgeload net dekompriméiren +STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Konnt d'erofgelueden Datei net dekompriméiren STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Fehlend Grafiken -STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD brauch Grafiken fir ze funktionéiren, mee et konnten keng fond ginn. Wëllsde OpenTTD se downloaden an installéiren loossen ? +STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD brauch Grafiken fir ze funktionéiren, mee et konnten keng fonnt ginn. Wëllsde OpenTTD se downloaden an installéiren loossen ? STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Jo, download d'Grafiken STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nee, verlooss OpenTTD @@ -2248,9 +2270,9 @@ STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Wiesselt STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Beem. Ctrl+Klick fir festzesetzen STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Haiser. Ctrl+Klick fir festzesetzen STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Industrien. Ctrl+Klick fir festzesetzen -STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Firmengebaier. Ctrl+Klick fir festzesetzen +STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Firmegebaier. Ctrl+Klick fir festzesetzen STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Brécken. Ctrl+Klick fir festzesetzen -STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Gebaier wei d'Liichttiirm oder Transmitter. Ctrl+Klick fir festzesetzen +STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Gebaier wéi d'Liichttierm oder Antennen. Ctrl+Klick fir festzesetzen STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Catenaire. Ctrl+Klick fir festzesetzen STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Wiesselt d'Transparenz fir d'Luedungsindikatoren. Ctrl+Klick fir festzesetzen STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Setzt d'Objeten op onsichtbar amplaz transparent @@ -2259,7 +2281,7 @@ STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Setzt d' STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Cargo Flow Legend STR_LINKGRAPH_LEGEND_ALL :{BLACK}All STR_LINKGRAPH_LEGEND_NONE :{BLACK}Keng -STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Wiel d'Firmen aus déi ugewisen ginn +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Wiel d'Firmen aus déi ugewise ginn # Linkgraph legend window and linkgraph legend in smallmap STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}onbenotzt @@ -2267,28 +2289,28 @@ STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLA STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}iwwerlaascht # Base for station construction window(s) -STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Reechwäit +STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Reechwäit markéieren STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Aus STR_STATION_BUILD_COVERAGE_ON :{BLACK}Un STR_STATION_BUILD_COVERAGE_AREA_OFF_TOOLTIP :{BLACK}Weis d'Reechwäit vun dem Gebäi net un STR_STATION_BUILD_COVERAGE_AREA_ON_TOOLTIP :{BLACK}Weis d'Reechwäit vun dem Gebäi un -STR_STATION_BUILD_ACCEPTS_CARGO :{BLACK}Acceptéiert: {GOLD}{CARGO_LIST} -STR_STATION_BUILD_SUPPLIES_CARGO :{BLACK}Liwwerung: {GOLD}{CARGO_LIST} +STR_STATION_BUILD_ACCEPTS_CARGO :{BLACK}Akzeptéiert: {GOLD}{CARGO_LIST} +STR_STATION_BUILD_SUPPLIES_CARGO :{BLACK}Liwwert: {GOLD}{CARGO_LIST} # Join station window -STR_JOIN_STATION_CAPTION :{WHITE}D'Gare verbannen -STR_JOIN_STATION_CREATE_SPLITTED_STATION :{YELLOW}Eng separéiert Gare bauen +STR_JOIN_STATION_CAPTION :{WHITE}Statioun verbannen +STR_JOIN_STATION_CREATE_SPLITTED_STATION :{YELLOW}Eng separat Statioun bauen STR_JOIN_WAYPOINT_CAPTION :{WHITE}Weepunkt verbannen -STR_JOIN_WAYPOINT_CREATE_SPLITTED_WAYPOINT :{YELLOW}Separaten Weepunkt bauen +STR_JOIN_WAYPOINT_CREATE_SPLITTED_WAYPOINT :{YELLOW}Separate Weepunkt bauen # Rail construction toolbar STR_RAIL_TOOLBAR_RAILROAD_CONSTRUCTION_CAPTION :Schinnebau -STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Elektrësche Schinnebau +STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Elektresche Schinnebau STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Monorailbau -STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Magnéitbahnbau +STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Magnéitbunnbau -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Schinnen bauen. Ctrl wiesselt tëscht bauen/ofrappen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Schinne bauen. Ctrl wiesselt tëscht bauen/ofrappen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Schinnen am automatesche Modus bauen. Ctrl wiesselt tëscht bauen/ofrappen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Zuchschapp bauen (fir Zich ze kafen an ze flécken). Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Konvertéiert d'Schinnen zum Weepunkt. Ctrl aktivéiert Weepunkter ze verbannen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen @@ -2296,11 +2318,11 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Gare bau STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Zuchsignaler bauen. Ctrl wiesselt tëscht Diks/Luuten{}Zéien baut Signaler laanscht eng Zuchstreck. Ctrl baut Signaler bis déi nächst Weich{}Ctrl+Klick mécht Auswielfënster op.Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Zuchbréck bauen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Zuchtunnel bauen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Wiesselt tëscht bauen/ofrappen vun Schinnen, Signaler an Statiounen. Ctrl unhalen rappt och Schinnen vun Weepunkter an Statiounen of -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Konvertéiert den Typ vun Schinnen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Wiesselt tëscht bauen/ofrappe vu Schinnen, Signaler a Statiounen. Ctrl unhale rappt och Schinne vu Weepunkter a Statiounen of +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Konvertéiert/upgrade den Typ vu Schinnen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_RAIL_NAME_RAILROAD :Schinnen -STR_RAIL_NAME_ELRAIL :Elektrësch Schinnen +STR_RAIL_NAME_ELRAIL :Elektresch Schinnen STR_RAIL_NAME_MONORAIL :Monorail STR_RAIL_NAME_MAGLEV :Magnéitbunn @@ -2310,47 +2332,47 @@ STR_BUILD_DEPOT_TRAIN_ORIENTATION_TOOLTIP :{BLACK}Wielt d' # Rail waypoint construction window STR_WAYPOINT_CAPTION :{WHITE}Weepunkt -STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}Wielt den Weepunktyp +STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}Wielt de Weepunktyp # Rail station construction window STR_STATION_BUILD_RAIL_CAPTION :{WHITE}Gare Auswiel STR_STATION_BUILD_ORIENTATION :{BLACK}Richtung -STR_STATION_BUILD_RAILROAD_ORIENTATION_TOOLTIP :{BLACK}Wielt Gare Richtung -STR_STATION_BUILD_NUMBER_OF_TRACKS :{BLACK}Unzuel vun Schinnen -STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Wielt d'Unzuel vun den Gleisen fir d'Gare -STR_STATION_BUILD_PLATFORM_LENGTH :{BLACK}Platformlängt +STR_STATION_BUILD_RAILROAD_ORIENTATION_TOOLTIP :{BLACK}Wielt d'Richtung vun der Gare +STR_STATION_BUILD_NUMBER_OF_TRACKS :{BLACK}Unzuel vu Schinnen +STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Wielt d'Unzuel vun de Gleisen fir d'Gare +STR_STATION_BUILD_PLATFORM_LENGTH :{BLACK}Plattformlängt STR_STATION_BUILD_PLATFORM_LENGTH_TOOLTIP :{BLACK}Wielt d'Längt vun der Gare STR_STATION_BUILD_DRAG_DROP :{BLACK}Drag & Drop STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}D'Statioun per drag & drop bauen -STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Wielt eng Statiounsklass fir ze weisen -STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Wielt den Statiounstyp fir ze bauen +STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Wielt eng Statiounsklass déi ugewise gëtt +STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Wielt den Typ vu Statioun dee gebaut gëtt STR_STATION_CLASS_DFLT :Standard Statioun STR_STATION_CLASS_WAYP :Weepunkten # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Signalauswiel -STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Block Signal (Diks){} Dëst ass em Basis-Signal, wat nëmmen engem Zuch zur selwechter Zait erlaabt an engem Block ze sinn -STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Agangs-Signal (Diks){}Gréng soulaang een oder méi gréng Ausgangs-Signaler op nächsten Streckenabschnitt sinn. Anescht ass et roud. +STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Block Signal (Diks){} Dest ass e Basis-Signal, wat nëmmen engem Zuch zur selwechter Zait erlaabt an engem Block ze sinn +STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Agangs-Signal (Diks){}Gréng soulaang een oder méi gréng Ausgangs-Signaler op dem nächsten Streckenabschnitt sinn. Anescht ass et rout. STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Ausgangs-Signal (Diks){}Verhält sech wéi en Block-Signal mee gëtt gebraucht fir déi korrekt Faarf ob Agangs- an Combo-Pre-Signaler ze setzen -STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Combo-Signal (Diks){}En Combo-Signal agéiert wéi en Agangs- an wéi en Ausgangs-Signal. Dëst erlaabt engem vill "Beem" vun Pre-Signaler ze bauen -STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Wee-Signal (Diks){}E Wee-Signal erlaabt méi wéi engem Zuch an en Block ze fueren zur selweschter Zäit, wann den Zuch en Wee op en sécheren Stop-Punkt kann reservéiren. Standard Wee-Signaler kënne vun béiden Säiten duerchfuer ginn -STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Einbahn-Wee-Signal (Diks){}E Wee-Signal erlaabt méi wéi engem Zuch an en Block ze fueren zur selweschter Zäit, wann den Zuch en Wee op en sécheren Stop-Punkt kann reservéiren. Einbahn-Wee-Signaler kënnen net den falschen Wee duerchfuer ginn -STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Block Signal (electric){}Dëst ass en Basis-Signal, mat dem een een Zuch an engem selwechten Block zur selwechter Zäit erlaabt -STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Agangs-Signal (electric){}Gréng soulaang een oder méi gréng Ausgangssignaler vum nächsten Streckenabschnitt kommen. Anescht ass et roud -STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Ausgangs-Signal (electric){}Verhält sech wéi en Block-Signal mee gëtt gebraucht fir déi korrekt Faarf vun den Agangs- an Combo Pre-Signaler ze setzen -STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Combo-Signal (electric){}D'Combo-Signal ass einfach en An- an Ausgangssignal. Dëst erlaabt grouss "Beem" Presignaler ze bauen -STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Wee-Signal (electric){}E Wee-Signal erlaabt méi wéi engem Zuch an en Block eranzefueren, wann den Zuch en Wee op en Stop-Punkt reservéiren kann. Standard Wee-Signaler kënnen vun béiden Säiten duerchfuer ginn -STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Einbahn-Wee-Signal (electric){}En Einbahn-Signal erlaabt méi wéi een Zuch zur selwechter Zäit an engem Block ze sin, wann den Zuch en Wee op en sécheren Stop-Punkt reservéiren kann. Einbahn-Signaler kënnen net vun der falscher Säit duerchfuer ginn -STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Signal konvertéiren{}Wann gewielt, gëtt en geklickten Signal an dat gewielten Signal konvertéiert, Ctrl+Klick wiesselt tëscht den Varianten. Shift weist ongeféier Konvertéirungskäschten -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Signaldensitéit -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Setzt Signaldensitéit rof -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Setzt Signaldensitéit rop +STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Combo-Signal (Diks){}E Combo-Signal agéiert wéi en Agangs- a wéi en Ausgangs-Signal. Dest erlaabt engem vill "Beem" vu Pre-Signaler ze bauen +STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Wee-Signal (Diks){}E Wee-Signal erlaabt méi wéi engem Zuch an en Block ze fueren zur selweschter Zäit, wann den Zuch en Wee op en sécheren Stop-Punkt kann reservéiren. Standard Wee-Signaler kënne vu béide Säiten duerchfuer ginn +STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Einbahn-Wee-Signal (Diks){}E Wee-Signal erlaabt méi wéi engem Zuch an en Block ze fueren zur selweschter Zäit, wann den Zuch en Wee op en sécheren Stop-Punkt kann reservéiren. Einbahn-Wee-Signaler kënnen net de falsche Wee duerchfuer ginn +STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Block Signal (Elektresch){}Dest ass e Basis-Signal, mat dem een en Zuch an engem selwechten Block zur selwechter Zäit erlaabt +STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Agangs-Signal (Elektresch){}Gréng soulaang een oder méi gréng Ausgangssignaler vum nächsten Streckenabschnitt kommen. Anescht ass et rout +STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Ausgangs-Signal (Elektresch){}Verhält sech wéi e Block-Signal mee gëtt gebraucht fir déi korrekt Faarf vun den Agangs- an Combo Pre-Signaler ze setzen +STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Combo-Signal (Elektresch){}D'Combo-Signal ass einfach en An- an Ausgangssignal. Dëst erlaabt grouss "Beem" Presignaler ze bauen +STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Wee-Signal (Elektresch){}E Wee-Signal erlaabt méi wéi engem Zuch an e Block eranzefueren, wann den Zuch e Wee op en Stop-Punkt reservéiren kann. Standard Wee-Signaler kënne vu béide Säiten duerchfuer ginn +STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Einbahn-Wee-Signal (Elektresch){}En Einbahn-Signal erlaabt méi wéi een Zuch zur selwechter Zäit an engem Block ze sin, wann den Zuch en Wee op en sécheren Stop-Punkt reservéiren kann. Einbahn-Signaler kënnen net vun der falscher Säit duerchfuer ginn +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Signal konvertéiren{}Wann gewielt, gëtt en geklickten Signal an dat gewielten Signal konvertéiert, Ctrl+Klick wiesselt tëscht de Varianten. Shift weist ongeféier Konvertéirungskäschten +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Dicht vu Signaler beim Zéien +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Setzt Signaldicht erof +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Setzt Signaldicht erop # Bridge selection window -STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Wiel d'Schinnebréck -STR_SELECT_ROAD_BRIDGE_CAPTION :{WHITE}Wielt d'Stroossebréck +STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Zuchbréck auswielen +STR_SELECT_ROAD_BRIDGE_CAPTION :{WHITE}Stroossebréck auswielen STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Bréckenauswiel - Wiel deng Bréck aus STR_SELECT_BRIDGE_INFO :{GOLD}{STRING},{} {VELOCITY} {WHITE}{CURRENCY_LONG} STR_SELECT_BRIDGE_SCENEDIT_INFO :{GOLD}{STRING},{} {VELOCITY} @@ -2358,7 +2380,7 @@ STR_BRIDGE_NAME_SUSPENSION_STEEL :Stolen Hängebr STR_BRIDGE_NAME_GIRDER_STEEL :Stoldréier Bréck STR_BRIDGE_NAME_CANTILEVER_STEEL :Fräidroend Stolbréck STR_BRIDGE_NAME_SUSPENSION_CONCRETE :Betons Hängebréck -STR_BRIDGE_NAME_WOODEN :Holzen Bréck +STR_BRIDGE_NAME_WOODEN :Holze Bréck STR_BRIDGE_NAME_CONCRETE :Betons Bréck STR_BRIDGE_NAME_TUBULAR_STEEL :Rouerstol Bréck STR_BRIDGE_TUBULAR_SILICON :Rouer, Silikon @@ -2367,73 +2389,73 @@ STR_BRIDGE_TUBULAR_SILICON :Rouer, Silikon # Road construction toolbar STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Stroossebau STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Tramkonstruktioun -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Baut Stroossen.Ctrl+Klick wiësselt tëscht Stroossen bauen/ofrappen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Baut Stroossen.Ctrl+Klick wiësselt tëscht Stroosse bauen/ofrappen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Tramschinne bauen. Ctrl+Klick wiësselt tëscht Tramschinne bauen/ofrappen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}D'Strooss mat der Bau-Automatik bauen. Ctrl wiësselt tëscht Stroossen bauen/ofrappen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Tramschinne mam "Autotram" Modus bauen. Ctrl wiesselt tëscht Tramschinne bauen/ofrappen. Shift wiesselt tëschtbauen/ongeféier Käschten uweisen STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Baut Stroossendepot (fir Gefierer ze kafen an ze flécken). Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Tramschapp bauen (fir Gefierer ze kafen an d'Revisioun). Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Baut Busarrêt. Ctrl aktivéiert ubauen vun Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Passagéier-Tramstatioun bauen. Ctrl aktivéirt ubauen vun Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Baut Camionsgare. Ctrl aktivéiert ubauen vun Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Wueren-Tramstatioun bauen. Ctrl aktivéiert ubauen vun Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Strooss an eng Richtung aktivéieren/déaktivéieren +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Baut Busarrêt. Ctrl aktivéiert ubaue vu Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Tramarrêt bauen. Ctrl aktivéiert ubaue vu Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Baut Camionsgare. Ctrl aktivéiert ubaue vu Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Wueren-Tramstatioun bauen. Ctrl aktivéiert ubaue vu Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Einbahnstroossen aktivéieren/déaktivéieren STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Baut Stroossebréck. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Tramsbréck bauen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Baut Stroosentunnel. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Baut Stroossentunnel. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Tramtunnel bauen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Wieselt bauen/ofrappen vun Stroossenkonstruktiounen -STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Wiesselt bauen/ofrappen vum Trambau +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Wiesselt bauen/ofrappen vu Stroossekonstruktiounen +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Wiesselt tëscht bauen/ofrappen beim Trambau # Road depot construction window -STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Stroossendepot Richtung -STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP :{BLACK}Wielt Stroossendepot Richtung -STR_BUILD_DEPOT_TRAM_ORIENTATION_CAPTION :{WHITE}Richtung vum Tramschapp +STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Ausriichtung vum Stroossendepot +STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP :{BLACK}Wielt d'Stroossendepot Ausriichtung +STR_BUILD_DEPOT_TRAM_ORIENTATION_CAPTION :{WHITE}Ausriichtung vum Tramschapp STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Tramschapp Ausriichtung wielen # Road vehicle station construction window -STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Busarrêt Richtung -STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Wielt Busarrêtsrichtung -STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Camionsgare Richtung -STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Wielt Camionsgare Richtung -STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Passagéier-Tramstatioun Richtung -STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Passagéier-Tramstatioun Richtung wielen -STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Wueren-Tramstatioun Richtung -STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Wueren-Tramstatioun Richtung wielen +STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Ausriichtung vum Busarrêt +STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Wielt Busarrêtsausriichtung +STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Ausriichtung vun der Camionsgare +STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Wielt d'Camionsgareausriichtung +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Ausriichtung vun dem Passagéier-Tramsarrêt +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Passagéier-Tramsarrêt Ausriichtung wielen +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Ausriichtung vun der Wueren-Tramstatioun +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Wueren-Tramstatioun Ausriichtung wielen # Waterways toolbar (last two for SE only) -STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Waasserstroosen bauen -STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Waasserstroosen +STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Waasserstroosse bauen +STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Waasserstroossen STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Kanäl bauen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Schlass setzen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Schëffsschapp bauen (fir Schëffer ze bauen an ze warten). Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Schëffdock bauen. Ctrl aktivéiert ubauen vun Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Schleise bauen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Schëffsschapp bauen (fir Schëffer ze bauen an ze reparéiren). Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Schëffsquai bauen. Ctrl aktivéiert ubaue vu Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Plazéiert eng Boje, déi als Weepunkt kann benotzt ginn. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Aquadukt bauen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Waasser definéieren.{}Mécht en Kanal. Mat CTRL gedréckt halen um Mieresspigel klicken, iwwerflut d'Géigent +STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Waasserareal definéieren.{}Mécht en Kanal. Mat Ctrl gedréckt halen um Mieresspigel klicken, iwwerflut d'Géigent STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Plazéier Flëss # Ship depot construction window -STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Schëffsschapp Richtung -STR_DEPOT_BUILD_SHIP_ORIENTATION_TOOLTIP :{BLACK}Wielt Richtung vum Schëffsschapp +STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Schëffsschapp Ausriichtung +STR_DEPOT_BUILD_SHIP_ORIENTATION_TOOLTIP :{BLACK}Wielt d'Ausriichtung vum Schëffsschapp # Dock construction window STR_STATION_BUILD_DOCK_CAPTION :{WHITE}Hafen # Airport toolbar STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Fluchhäfen -STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Fluchhafen bauen. Ctrl aktivéiert ubauen vun Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Fluchhafe bauen. Ctrl aktivéiert ubaue vu Statiounen. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen # Airport construction window STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Fluchhafen Auswiel STR_STATION_BUILD_AIRPORT_TOOLTIP :{BLACK}Wielt Gréisst/Typ vum Fluchhafen -STR_STATION_BUILD_AIRPORT_CLASS_LABEL :{BLACK}Fluchhafenklass +STR_STATION_BUILD_AIRPORT_CLASS_LABEL :{BLACK}Fluchhafeklass STR_STATION_BUILD_AIRPORT_LAYOUT_NAME :{BLACK}Layout {NUM} STR_AIRPORT_SMALL :Kleng STR_AIRPORT_CITY :City -STR_AIRPORT_METRO :Metropolitär Fluchhafen -STR_AIRPORT_INTERNATIONAL :Internationalen Fluchhafen +STR_AIRPORT_METRO :Metropole Fluchhafen +STR_AIRPORT_INTERNATIONAL :Internationale Fluchhafen STR_AIRPORT_COMMUTER :Pendler STR_AIRPORT_INTERCONTINENTAL :Interkontinental STR_AIRPORT_HELIPORT :Heliport @@ -2442,8 +2464,8 @@ STR_AIRPORT_HELISTATION :Helistatioun STR_AIRPORT_CLASS_SMALL :Kleng Fluchhäfen STR_AIRPORT_CLASS_LARGE :Grouss Fluchhäfen -STR_AIRPORT_CLASS_HUB :Fluchhafen Verdeeler -STR_AIRPORT_CLASS_HELIPORTS :Helicopter Fluchhafen +STR_AIRPORT_CLASS_HUB :Fluchhafeverdeeler +STR_AIRPORT_CLASS_HELIPORTS :Helikopter Fluchhafen STR_STATION_BUILD_NOISE :{BLACK}Kaméidi: {GOLD}{COMMA} @@ -2452,21 +2474,21 @@ STR_LANDSCAPING_TOOLBAR :{WHITE}Landscha STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}En Eck vum Land erofsetzen. Zéien setzt den éischten ugewielten Eck erof an planéiert d'ugewielten Land op déi nei Eckhéicht. Ctrl wielt d'Land diagonal. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}En Eck vum Land unhiewen. Zéien wielt den éischten Eck an planéiert d'ugewielten Land ob déi nei Eckhéicht. Ctrl wielt d'Land diagonal. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Land planéiren. Ctrl wielt d'Land diagonal aus. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen -STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Kaaf Land fir zukünftëg Benotzung. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen +STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Kaf Land fir zukünftëg Benotzung. Shift wiesselt tëscht bauen/ongeféier Käschten uweisen # Object construction window -STR_OBJECT_BUILD_CAPTION :{WHITE}Selektioun vum Objekt -STR_OBJECT_BUILD_TOOLTIP :{BLACK}Wiel d'Objekt dat gebaut gëtt. Shift wiesselt tescht bauen / ongeféier Käschten uweisen -STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Wiel d'Klass vun dem Objet den sollt gebaut ginn -STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Preview vum Objekt +STR_OBJECT_BUILD_CAPTION :{WHITE}Objetsauswiel +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Wiel den Objet dee gebaut gëtt. Shift wiesselt tescht bauen / ongeféier Käschten uweisen +STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Wiel d'Klass vun dem Objet dee sollt gebaut ginn +STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Preview vum Objet STR_OBJECT_BUILD_SIZE :{BLACK}Gréisst: {GOLD}{NUM} x {NUM} Felder STR_OBJECT_CLASS_LTHS :Liichttierm -STR_OBJECT_CLASS_TRNS :Transmitter +STR_OBJECT_CLASS_TRNS :Antennen # Tree planting window (last two for SE only) STR_PLANT_TREE_CAPTION :{WHITE}Beem -STR_PLANT_TREE_TOOLTIP :{BLACK}Wielt den Baamtyp. Wann d'Feld schons en Baam huet, ginn méi Beem vun verschiddenen Arten gesat +STR_PLANT_TREE_TOOLTIP :{BLACK}Wielt de Baamtyp. Wann d'Feld schons e Baam huet, ginn méi Beem vu verschiddenen Arten gesat STR_TREES_RANDOM_TYPE :{BLACK}Zoufälleg Beem STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Zoufälleg Beem planzen. Shift wiesselt tëscht bauen an ongeféier Käschten uweisen STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Zoufälleg Beem @@ -2479,11 +2501,11 @@ STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Zone fir STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Vergréisser d'Zone fir d'Land unzehiewen/erofzesetzen STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Verklenger d'Zone fir d'Land unzehiewen/erofzesetzen STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Generéier en Zoufallsland -STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Neien Szenario man -STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Setz d'Landschaft zréck +STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Neie Szenario erstellen +STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Setz d'Landschaft zeréck STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Huel all Grondstécker vun der Firma ewech -STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Setz d'Landschaft zréck +STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Setz d'Landschaft zeréck STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Bass du sécher dass du all Grondstécker vun der Firma ewechhuelen wëlls? # Town generation window (SE) @@ -2510,8 +2532,8 @@ STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Wiel d'S STR_FOUND_TOWN_CITY :{BLACK}Stad STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Stied wuessen méi schnell wéi Dierfer{}Ofhängeg vun den Astellungen, sinn se méi grouss am Ufank -STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Stad Stroossenlayout -STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Stroosenlayout fir dës Stad wielen +STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Stroosselayout vun der Stad: +STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Stroosselayout fir des Stad wielen STR_FOUND_TOWN_SELECT_LAYOUT_ORIGINAL :{BLACK}Original STR_FOUND_TOWN_SELECT_LAYOUT_BETTER_ROADS :{BLACK}Besser Stroossen STR_FOUND_TOWN_SELECT_LAYOUT_2X2_GRID :{BLACK}2x2 Gitter @@ -2519,12 +2541,12 @@ STR_FOUND_TOWN_SELECT_LAYOUT_3X3_GRID :{BLACK}3x3 Gitt STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Zoufall # Fund new industry window -STR_FUND_INDUSTRY_CAPTION :{WHITE}Nei Industrie finanzéiert +STR_FUND_INDUSTRY_CAPTION :{WHITE}Nei Industrie finanzéieren STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Wielt déi gewënschten Industrie op der Lëscht aus STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Vill zoufälleg Industrien STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}D'Kaart mat villen zoufällegen Industrien fëllen STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Käschten: {YELLOW}{CURRENCY_LONG} -STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Förder +STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Förderen STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Bauen STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Grënnen @@ -2533,47 +2555,47 @@ STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Industri STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}Industrieketten fir {STRING} Wueren STR_INDUSTRY_CARGOES_PRODUCERS :{WHITE}Produzéirent Industrien STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}Akzeptéirend Industrien -STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Heiser +STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Haiser STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}Klick op d'Industrie fir d'Liwweranten an Verbraucher ze gesinn STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING}{}Klick op d'Wueren fir d'Liwweranten an Verbraucher ze gesinn -STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Weis "Ketten" +STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Wuereketten uweisen STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Weis Industrien un déi Wueren liwweren an akzeptéiren STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Link op déi kleng Kaart -STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Selektéiert déi ugewisen Industrien och op der klenger Kaart +STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Wiel déi ugewisen Industrien och op der klenger Kaart aus STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Gidder wielen STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Wiel d'Gidder déis du wëlls uweisen -STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Industrie wielen -STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Wiel d'Industrie déis du wëlls uweisen +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Industrie auswielen +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Wiel d'Industrie aus déis du wëlls uweisen # Land area window STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}Land Informatiounen -STR_LAND_AREA_INFORMATION_COST_TO_CLEAR_N_A :{BLACK}Käschten fir ze raumen: {LTBLUE}N/A -STR_LAND_AREA_INFORMATION_COST_TO_CLEAR :{BLACK}Käschten fir ze raumen: {RED}{CURRENCY_LONG} +STR_LAND_AREA_INFORMATION_COST_TO_CLEAR_N_A :{BLACK}Käschte fir ze raumen: {LTBLUE}Keng +STR_LAND_AREA_INFORMATION_COST_TO_CLEAR :{BLACK}Käschte fir ze raumen: {RED}{CURRENCY_LONG} STR_LAND_AREA_INFORMATION_REVENUE_WHEN_CLEARED :{BLACK}Akommes wann ofgerappt: {LTBLUE}{CURRENCY_LONG} -STR_LAND_AREA_INFORMATION_OWNER_N_A :N/A +STR_LAND_AREA_INFORMATION_OWNER_N_A :Keen STR_LAND_AREA_INFORMATION_OWNER :{BLACK}Besëtzer: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_ROAD_OWNER :{BLACK}Stroossebesëtzer: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Trambunnbesëtzer: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tramschinnebesëtzer: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Schinnebesëtzer: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Lokal Autoritéit: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Gemeng: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Keng STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Koordinaten: {LTBLUE}{NUM} x {NUM} x {NUM} ({STRING}) STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Gebaut: {LTBLUE}{DATE_LONG} STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Statiounsklass: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Statiounstyp: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Fluchhafenklass: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Fluchhafeklass: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_AIRPORT_NAME :{BLACK}Fluchhafennumm: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Fluchhafenfeldnumm: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Fluchhafefeldnumm: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Akzeptéiert Luedung: {LTBLUE} +STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Akzeptéiert Wuer: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) -STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Schinnen Geschw.-Limit: {LTBLUE}{VELOCITY} -STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Stroossen Geschw. Limitatioun: {LTBLUE}{VELOCITY} +STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Schinne-Geschw.-Limit: {LTBLUE}{VELOCITY} +STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Stroosse-Geschw.-Limit: {LTBLUE}{VELOCITY} # Description of land area of different tiles STR_LAI_CLEAR_DESCRIPTION_ROCKS :Fielsen STR_LAI_CLEAR_DESCRIPTION_ROUGH_LAND :Knubbelegt Land -STR_LAI_CLEAR_DESCRIPTION_BARE_LAND :Blankt Land +STR_LAI_CLEAR_DESCRIPTION_BARE_LAND :Eidelt Land STR_LAI_CLEAR_DESCRIPTION_GRASS :Gras STR_LAI_CLEAR_DESCRIPTION_FIELDS :Felder STR_LAI_CLEAR_DESCRIPTION_SNOW_COVERED_LAND :Schnéibedeckt Land @@ -2582,22 +2604,22 @@ STR_LAI_CLEAR_DESCRIPTION_DESERT :Wüst STR_LAI_RAIL_DESCRIPTION_TRACK :{STRING} Schinn STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :{STRING} Schinn mat Blocksignaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :{STRING} Schinn mat Presignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :{STRING} Schinn mat End-Signaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :{STRING} Schinn mat Ausgangs-Signaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :{STRING} Schinn mat Kombo-Signaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :{STRING} Schinn mat Weesignaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :{STRING} Schinn mat Einbahnsignaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :{STRING} Schinn mat Block- an Presignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :{STRING} Schinn mat Block- an Endsignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :{STRING} Schinn mat Block- an Kombosignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :{STRING} Schinn mat Block- an Weesignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :{STRING} Schinn mat Block- an Einbahnsignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :{STRING} Schinn mat Pre- an Endsignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :{STRING} Schinn mat Pre- an Kombosignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :{STRING} Schinn mat Pre- an Weesignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :{STRING} Schinn mat Block- an Ausgangssignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :{STRING} Schinn mat Block- a Kombosignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :{STRING} Schinn mat Block- a Weesignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :{STRING} Schinn mat Block- a Einbahnsignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :{STRING} Schinn mat Pre- an Ausgangssignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :{STRING} Schinn mat Pre- a Kombosignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :{STRING} Schinn mat Pre- a Weesignaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_NOENTRYSIGNALS :{STRING} Schinn mat Pre- an Einbahnweesignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :{STRING} Schinn mat End- an Kombosignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :{STRING} Schinn mat End- an Weesignaler -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :{STRING} Schinn mat End an Einbahnweesignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :{STRING} Schinn mat Ausgangs- a Kombosignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :{STRING} Schinn mat Ausgangs- a Weesignaler +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :{STRING} Schinn mat Ausgang- an Einbahnweesignaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :{STRING} Schinn mat Kombo- an Weesignaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :{STRING} Schinn mat Kombo- an Einbahnweesignaler STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :{STRING} Schinn mat Wee- and Einbahnweesignaler @@ -2607,14 +2629,14 @@ STR_LAI_ROAD_DESCRIPTION_ROAD :Strooss STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :Strooss mat Luuchten STR_LAI_ROAD_DESCRIPTION_TREE_LINED_ROAD :Strooss mat Beem STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT :Stroossendepot -STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING :Zuch/Strooss Barrière +STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING :Zuche/Stroosse-Barrière STR_LAI_ROAD_DESCRIPTION_TRAMWAY :Tram # Houses come directly from their building names STR_LAI_TOWN_INDUSTRY_DESCRIPTION_UNDER_CONSTRUCTION :{STRING} (gëtt gebaut) STR_LAI_TREE_NAME_TREES :Beem -STR_LAI_TREE_NAME_RAINFOREST :Regenwald +STR_LAI_TREE_NAME_RAINFOREST :Reebësch STR_LAI_TREE_NAME_CACTUS_PLANTS :Kaktus STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION :Gare @@ -2628,7 +2650,7 @@ STR_LAI_STATION_DESCRIPTION_WAYPOINT :Weepunkt STR_LAI_WATER_DESCRIPTION_WATER :Waasser STR_LAI_WATER_DESCRIPTION_CANAL :Kanal -STR_LAI_WATER_DESCRIPTION_LOCK :Schlass +STR_LAI_WATER_DESCRIPTION_LOCK :Schleis STR_LAI_WATER_DESCRIPTION_RIVER :Floss STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK :Küst oder Flossufer STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Schëffsschapp @@ -2640,7 +2662,7 @@ STR_LAI_TUNNEL_DESCRIPTION_ROAD :Stroossentunnel STR_LAI_BRIDGE_DESCRIPTION_RAIL_SUSPENSION_STEEL :Stolen Zuchhängebréck STR_LAI_BRIDGE_DESCRIPTION_RAIL_GIRDER_STEEL :Stoldréier Zuchbréck -STR_LAI_BRIDGE_DESCRIPTION_RAIL_CANTILEVER_STEEL :Stolen fräidroend Zuchbréck +STR_LAI_BRIDGE_DESCRIPTION_RAIL_CANTILEVER_STEEL :Stole fräidroend Zuchbréck STR_LAI_BRIDGE_DESCRIPTION_RAIL_SUSPENSION_CONCRETE :Stolbeton Zuchhängebréck STR_LAI_BRIDGE_DESCRIPTION_RAIL_WOODEN :Holzen Zuchbréck STR_LAI_BRIDGE_DESCRIPTION_RAIL_CONCRETE :Betons Zuchbréck @@ -2650,13 +2672,13 @@ STR_LAI_BRIDGE_DESCRIPTION_ROAD_SUSPENSION_STEEL :Stolen Hängebr STR_LAI_BRIDGE_DESCRIPTION_ROAD_GIRDER_STEEL :Stoldréier Bréck STR_LAI_BRIDGE_DESCRIPTION_ROAD_CANTILEVER_STEEL :Fräidroend Stolbréck STR_LAI_BRIDGE_DESCRIPTION_ROAD_SUSPENSION_CONCRETE :Stolbetons Hängebréck -STR_LAI_BRIDGE_DESCRIPTION_ROAD_WOODEN :Holzen Bréck +STR_LAI_BRIDGE_DESCRIPTION_ROAD_WOODEN :Holze Bréck STR_LAI_BRIDGE_DESCRIPTION_ROAD_CONCRETE :Betons Bréck STR_LAI_BRIDGE_DESCRIPTION_ROAD_TUBULAR_STEEL :Rouerstol Brèck STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT :Aquadukt -STR_LAI_OBJECT_DESCRIPTION_TRANSMITTER :Sender +STR_LAI_OBJECT_DESCRIPTION_TRANSMITTER :Antenne STR_LAI_OBJECT_DESCRIPTION_LIGHTHOUSE :Liichttuerm STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS :Firmen Haaptgebai STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Land am Firmenbesëtz @@ -2665,44 +2687,47 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Land am Firmenb STR_ABOUT_OPENTTD :{WHITE}Iwwert OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original Copyright {COPYRIGHT} 1995 Chris Sawyer, All Rechter virbehalen STR_ABOUT_VERSION :{BLACK}OpenTTD Versioun {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 D'OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 D'OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spill späicheren STR_SAVELOAD_LOAD_CAPTION :{WHITE}Spill lueden STR_SAVELOAD_SAVE_SCENARIO :{WHITE}Szenario späicheren STR_SAVELOAD_LOAD_SCENARIO :{WHITE}Szenario lueden -STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Lued Héichtenkaart +STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Héichtekaart lueden STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Héichtenkaart späichern STR_SAVELOAD_HOME_BUTTON :{BLACK}Klick hei fir op d'Standard Späicher-/Luedverzeeschnis ze goen STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} fräi -STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Lëscht vun den Laafwierker, Dossieren an Späicherstänn -STR_SAVELOAD_EDITBOX_TOOLTIP :{BLACK}Momentan gewielten Numm fir den Spillstand +STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Lëscht vun de Lafwierker, Dossieren a Späicherstänn +STR_SAVELOAD_EDITBOX_TOOLTIP :{BLACK}Momentan gewielten Numm fir de Spillstand STR_SAVELOAD_DELETE_BUTTON :{BLACK}Läschen -STR_SAVELOAD_DELETE_TOOLTIP :{BLACK}Lescht den momentan gewielten Spillstand +STR_SAVELOAD_DELETE_TOOLTIP :{BLACK}Läscht de momentan gewielte Spillstand STR_SAVELOAD_SAVE_BUTTON :{BLACK}Späicheren STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Späichert dei aktuell Partie ënnert dem gewielten Numm STR_SAVELOAD_LOAD_BUTTON :{BLACK}Lueden STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Lued d'ugewielten Spill STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Ugewielten Héichtekaart lueden -STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Spill Detailer +STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Detailer vum Spill STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Keng Informatioun do STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING} -STR_SAVELOAD_OSKTITLE :{BLACK}Gëff en Numm an fir den Spillstand +STR_SAVELOAD_OSKTITLE :{BLACK}Gëff dem Spillstand en Numm # World generation STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Welt Generatioun -STR_MAPGEN_MAPSIZE :{BLACK}Kaartgréisst: -STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Wiel d'Gréisst vun der Kaart an Felder. D'Unzuel vun benotzbaren Felder wäert e bëssen méi kleng sinn +STR_MAPGEN_MAPSIZE :{BLACK}Kaartegréisst: +STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Wiel d'Gréisst vun der Kaart a Felder. D'Unzuel vu benotzbare Felder wäert e bësse méi kleng sinn STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Unz. Dierfer: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Unz. Industrien: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximal Kaartenhéicht: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Setzt d'Maximalhéicht vu Bierger op der Kaart em 1 erop +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Setzt d'Maximalhéicht vu Bierger op der Kaart em 1 erof STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Weis d'Schnéilinnhéicht -STR_MAPGEN_SNOW_LINE_UP :{BLACK}Beweg Schnéilinnhéicht rop -STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Beweg Schnéilinnhéicht rof +STR_MAPGEN_SNOW_LINE_UP :{BLACK}Beweg Schnéilinnhéicht erop +STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Beweg Schnéilinnhéicht erof STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator: STR_MAPGEN_TREE_PLACER :{BLACK}Baam Algorithmus: STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain Typ: @@ -2724,77 +2749,78 @@ STR_MAPGEN_BORDER_RANDOM :{BLACK}Zoufäll STR_MAPGEN_BORDER_RANDOMIZE :{BLACK}Zoufall STR_MAPGEN_BORDER_MANUAL :{BLACK}Manuell -STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Héichtekaart rotatioun: -STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Héichtekaart Numm: +STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Héichtekaart-Rotatioun: +STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Héichtekaart-Numm: STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Gréisst: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Maximal Kaartenhéicht änneren STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Ännert d'Schnéilinnhéicht STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Änner d'Startjoer # SE Map generation STR_SE_MAPGEN_CAPTION :{WHITE}Szenarientyp STR_SE_MAPGEN_FLAT_WORLD :{WHITE}Flaachland -STR_SE_MAPGEN_FLAT_WORLD_TOOLTIP :{BLACK}Generéier en flaacht Land +STR_SE_MAPGEN_FLAT_WORLD_TOOLTIP :{BLACK}Generéier e flaacht Land STR_SE_MAPGEN_RANDOM_LAND :{WHITE}Zoufallsland -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Héicht vum flaachen Land: -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Héicht vum flaachen land 1 rofsetzen -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Héicht vum flaachen land 1 ropsetzen +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Héicht vum flaache Land: +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Héicht vum flaache Land 1 erofsetzen +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Héicht vum flaache Land 1 eropsetzen -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Héicht vum flaachen Land änneren +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Héicht vum flaache Land änneren # Map generation progress STR_GENERATION_WORLD :{WHITE}Generéiren d'Welt... STR_GENERATION_ABORT :{BLACK}Ofbriechen -STR_GENERATION_ABORT_CAPTION :{WHITE}Welt Generatioun ofbriechen +STR_GENERATION_ABORT_CAPTION :{WHITE}Welt-Generatioun ofbriechen STR_GENERATION_ABORT_MESSAGE :{YELLOW}Wëlls du wierklech d'Generatioun ofbriechen? STR_GENERATION_PROGRESS :{WHITE}{NUM}% komplett STR_GENERATION_PROGRESS_NUM :{BLACK}{NUM} / {NUM} -STR_GENERATION_WORLD_GENERATION :{BLACK}Welt Generatioun -STR_GENERATION_RIVER_GENERATION :{BLACK}Generéiren vun Flëss +STR_GENERATION_WORLD_GENERATION :{BLACK}Welt-Generatioun +STR_GENERATION_RIVER_GENERATION :{BLACK}Generéiren vu Flëss STR_GENERATION_TREE_GENERATION :{BLACK}Baam Generatioun -STR_GENERATION_OBJECT_GENERATION :{BLACK}Unbewegbar Generatioun -STR_GENERATION_CLEARING_TILES :{BLACK}Generatioun vun knubblegen an stengegen Land +STR_GENERATION_OBJECT_GENERATION :{BLACK}Objets-Generatioun +STR_GENERATION_CLEARING_TILES :{BLACK}Generatioun vu knubbelegem a stengege Land STR_GENERATION_SETTINGUP_GAME :{BLACK}Spill gëtt opgestallt -STR_GENERATION_PREPARING_TILELOOP :{BLACK}Running tile-loop +STR_GENERATION_PREPARING_TILELOOP :{BLACK}Felder-Verdeelung STR_GENERATION_PREPARING_SCRIPT :{BLACK}Lafende Script -STR_GENERATION_PREPARING_GAME :{BLACK}Preparéiren Spill +STR_GENERATION_PREPARING_GAME :{BLACK}Preparéiren d'Spill # NewGRF settings STR_NEWGRF_SETTINGS_CAPTION :{WHITE}NewGRF Astellungen STR_NEWGRF_SETTINGS_INFO_TITLE :{WHITE}Detailléiert NewGRF Informatioun STR_NEWGRF_SETTINGS_ACTIVE_LIST :{WHITE}Aktiv NewGRF Dateien STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE}Inaktiv NewGRF Dateien -STR_NEWGRF_SETTINGS_SELECT_PRESET :{ORANGE}Wiel Preset: -STR_NEWGRF_FILTER_TITLE :{ORANGE}Filter string: -STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Gewielten Preset lueden +STR_NEWGRF_SETTINGS_SELECT_PRESET :{ORANGE}Preset auswielen: +STR_NEWGRF_FILTER_TITLE :{ORANGE}String filteren: +STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Gewielte Preset lueden STR_NEWGRF_SETTINGS_PRESET_SAVE :{BLACK}Preset späichern STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Aktuell Lëscht als Preset späichern -STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Presetnumm ugin +STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Presetnumm uginn STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Preset läschen -STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Gewielten Preset läschen +STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Gewielte Preset läschen STR_NEWGRF_SETTINGS_ADD :{BLACK}Baifügen -STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Ausgewielten NewGRF an d'Config bäisetzen +STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Ausgewielte NewGRF an d'Config bäisetzen STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK}Dateien nei scannen -STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK}Update d'Lëscht vun verfügbaren NewGRF Dateien. +STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK}Update d'Lëscht vu verfügbare NewGRF Dateien. STR_NEWGRF_SETTINGS_REMOVE :{BLACK}Wechhhuelen STR_NEWGRF_SETTINGS_REMOVE_TOOLTIP :{BLACK}Ausgewielten NewGRF aus der Lëscht huelen STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Rop -STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Setzt d'NewGRF an der Lëscht erop +STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Setzt den NewGRF an der Lëscht erop STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Rof STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Setzt d'NewGRF an der Lëscht erof STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Upgrade STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Upgrade NewGRF Dateien fir déis du eng méi nei Versioun installéiert hues STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Eng Lëscht vun NewGRF Dateien déi installéiert sinn. -STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Set parameters -STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Weis d'Parameter +STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Parameter setzen +STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Parameter uweisen STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Palette wiesselen -STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Wiessel Palette vun den ausgewielten NewGRF.{} Maach dat wann d'Grafiken vun dëser NewGRF rosa am Spill ausgesin +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Wiessel d'Palette vun den ausgewielten NewGRF.{} Maach dat wann d'Grafiken vun deser NewGRF rosa am Spill ausgesinn STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Ännerungen unhuelen -STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Feelenden Inhalt online downloaden -STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Check op den Inahlt den feelt online kann fonnt gin +STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Fehlenden Inhalt online downloaden +STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Check op den Inhalt de fehlt online ka fonnt ginn STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Dateinumm: {SILVER}{STRING} STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}GRF ID: {SILVER}{STRING} @@ -2807,34 +2833,34 @@ STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Paramete STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}Keng Info verfügbar STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}Datei net fonnt. STR_NEWGRF_SETTINGS_DISABLED :{RED}Ausgeschalt -STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Onkompatibel mat dëser Versioun vun OpenTTD +STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Onkompatibel mat deser Versioun vun OpenTTD # NewGRF save preset window STR_SAVE_PRESET_CAPTION :{WHITE}Preset späichern -STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Lëscht vun Presets, wiel een den op den Numm ënnendrënner kopéiert gëtt -STR_SAVE_PRESET_TITLE :{BLACK}Wiel en Numm fir den Preset -STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Grad ausgewielten Numm fir den Preset den gespäichert soll ginn +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Lëscht vu Presets, wiel een den op den Numm ënnendrënner kopéiert gëtt +STR_SAVE_PRESET_TITLE :{BLACK}Wiel en Numm fir de Preset +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Grad ausgewielten Numm fir de Preset dee gespäichert soll ginn STR_SAVE_PRESET_CANCEL :{BLACK}Ofbriechen STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Den Preset net änneren STR_SAVE_PRESET_SAVE :{BLACK}Späichern -STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Späicher den Preset op den grad ausgewielten Numm +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Späicher de Preset op dee grad ausgewielten Numm # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}NewGRF Parameter änneren -STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Zouman +STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Zoumaachen STR_NEWGRF_PARAMETERS_RESET :{BLACK}Reset -STR_NEWGRF_PARAMETERS_RESET_TOOLTIP :{BLACK}Setzt all Paramater op den Standard zréck +STR_NEWGRF_PARAMETERS_RESET_TOOLTIP :{BLACK}Setzt all Paramater op de Standard zréck STR_NEWGRF_PARAMETERS_DEFAULT_NAME :Parameter {NUM} STR_NEWGRF_PARAMETERS_SETTING :{STRING}: {ORANGE}{STRING} STR_NEWGRF_PARAMETERS_NUM_PARAM :{LTBLUE}Unzuel Parameter: {ORANGE}{NUM} # NewGRF inspect window -STR_NEWGRF_INSPECT_CAPTION :{WHITE}Inspzéier - {STRING} +STR_NEWGRF_INSPECT_CAPTION :{WHITE}Inspizéier - {STRING} STR_NEWGRF_INSPECT_PARENT_BUTTON :{BLACK}Parent STR_NEWGRF_INSPECT_PARENT_TOOLTIP :{BLACK}Inspizéier den Objet vun der "parent scope" STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT :{STRING} op {HEX} -STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_OBJECT :Objekt +STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_OBJECT :Objet STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_RAIL_TYPE :Schinnentyp STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF Variabel 60+x Parameter (hexadezimal) @@ -2842,14 +2868,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF V # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Alignéiren d'Sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Nächst Sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Géi weider op déi nächst normal Sprite, iwwersprang all pseudo/recolour/font Sprite an emsprangen um Ufank +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Géi weider op déi nächst normal Sprite, iwwersprang all pseudo/recolour/font Sprite an sprang un den Ufank no der leschter. STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Géi op Sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Géi op d'Sprite. Wann d'Sprite keng normal Sprite ass, géi op déi nächst normal Sprite -STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Fiirescht Sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Géi weider op déi nächst normal Sprite, iwwersprang all pseudo/recolour/font Sprite an emsprangen um Ufank +STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Viregt Sprite +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Géi weider op déi nächst normal Sprite, iwwersprang all pseudo/recolour/font Sprite an sprang zréck op den Ufank no der leschter. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representatioun vun der grad gewielter Sprite. Den Alignement gëtt ignoréiert wann d'Sprite gezun gëtt STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Beweg Sprite, X an Y offsets enneren sech -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Relativ zerécksetzen +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Momentan relativ Offsets zerécksetzen +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X-Offset: {NUM}, Y-Offset: {NUM} (Absolut) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X-Offset: {NUM}, Y-Offset: {NUM} (Relativ) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Wiel Sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Wiel en Sprite egalwou um Schierm aus @@ -2861,17 +2890,17 @@ STR_NEWGRF_ERROR_MSG_WARNING :{RED}Warnung: { STR_NEWGRF_ERROR_MSG_ERROR :{RED}Fehler: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}E fatalen NewGRF Fehler ass geschitt: {}{STRING} -STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} wärt net mat der TTDPatch vun OpenTTD versioun funktionéiren +STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} wärt net mat der TTDPatch Versioun déi vun OpenTTD erkannt gouf funktionéiren STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} ass fir {STRING} Versioun vun TTD -STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ass designed fir mat {STRING} benotzt ze gin -STR_NEWGRF_ERROR_INVALID_PARAMETER :Invaliden Parameter fir {1:STRING}: Parameter {STRING} ({NUM}) -STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} muss firun {STRING} gelueden ginn -STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} muss no {STRING} gelueden gin +STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ass designed fir mat {STRING} benotzt ze ginn +STR_NEWGRF_ERROR_INVALID_PARAMETER :Invalide Parameter fir {1:STRING}: Parameter {STRING} ({NUM}) +STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} muss firun {STRING} geluede ginn +STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} muss no {STRING} geluede ginn STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} brauch OpenTTD Versioun {STRING} oder méi nei STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :GRF Datei déi designed gouf fir ze iwwersetzen STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Zevill NewGRFen gelueden. -STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :{1:STRING} als statësch NewGRF lueden mat {STRING} kann Desyncs efirrufen -STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Onerwarten Sprite (Sprite {3:NUM}) +STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :{1:STRING} als statesch NewGRF lueden mat {STRING} kann Desyncs verursaachen +STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Onerwaarte Sprite (Sprite {3:NUM}) STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Onbekannten Aktioun 0 property {4:HEX} (Sprite {3:NUM}) STR_NEWGRF_ERROR_INVALID_ID :Versicht invalid ID ze benotzen (Sprite {3:NUM}) STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} huet eng korrupt Sprite. All korrupt Sprites ginn als Fragezeichen (?) duergestallt @@ -2885,13 +2914,13 @@ STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Invalid/onbekan # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Opgepasst! -STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Du mëss Ännerungen an engem lafenden Spill. Dëst kann OpenTTD crashen.W.e.g dëst net als Bug melden.{}Bass du sécher? +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Du mëss Ännerungen an engem lafende Spill. Dest kann OpenTTD crashen.W.e.g dest net als Bug melden.{}Bass du sécher? STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Kann Datei net bäisetzen: Duplikat GRF ID STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Passend Datei net fonnt (kompatibel GRF gelued) -STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Kann Fichier net dobäisetzen : NewGRF Limite errecht +STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Kann Fichier net dobäisetzen : NewGRF Limite erreecht -STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Kompatibel GRF(s) gelueden fir fehlend Dateien +STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Kompatibel GRF(s) geluede fir fehlend Dateien STR_NEWGRF_DISABLED_WARNING :{WHITE}Fehlend GRF Datei(en) sinn ausgeschalt STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}Fehlend GRF Datei(en) STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Entpausen kann OpenTTD crashen.{} Wellsde wierklech entpausen ? @@ -2905,34 +2934,34 @@ STR_NEWGRF_LIST_MISSING :{RED}Dateien fe # NewGRF 'it's broken' warnings STR_NEWGRF_BROKEN :{WHITE}Verhalen vun der NewGRF '{0:STRING}' kann Desyncs oder Crashen verursachen STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Ännert den Zoustand fir '{1:ENGINE}' wann net an engem Schapp -STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Ännnert d'Gefierlängt fir '{1:ENGINE}' wann net an engem Schapp +STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Ännert d'Gefierlängt fir '{1:ENGINE}' wann net an engem Schapp STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Geännerte Gefierkapazitéit vun '{1:ENGINE}' wann net an engem Schapp oder amgaang emgebaut ze ginn STR_BROKEN_VEHICLE_LENGTH :{WHITE}Zuch'{VEHICLE}' vun der Firma '{COMPANY}' huet eng falsch Längt. Et kënnt wahrscheinlech wéinst den NewGRFs. Spill kann desyncroniséiren oder ofstierzen STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' huet Fehlinformatiounen STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Cargo/refit Informatioun fir '{1:ENGINE}' ass anescht wéi an der Kaflëscht no der Constructioun. Dëst kann en Autoerneirung/-ersetzen Fehler oprufen STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}'{1:STRING}' huet eng Endlosschläif am Production callback verursaacht -STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Callback {1:HEX} returned unknown/invalid result {2:HEX} +STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Callback {1:HEX} huet en onbekannten/invalid Resultat {2:HEX} # 'User removed essential NewGRFs'-placeholders for stuff without specs STR_NEWGRF_INVALID_CARGO : STR_NEWGRF_INVALID_CARGO_ABBREV :?? STR_NEWGRF_INVALID_CARGO_QUANTITY :{COMMA} vun -STR_NEWGRF_INVALID_ENGINE : +STR_NEWGRF_INVALID_ENGINE : STR_NEWGRF_INVALID_INDUSTRYTYPE : # Placeholders for other invalid stuff, e.g. vehicles that have gone (Game Script). -STR_INVALID_VEHICLE : +STR_INVALID_VEHICLE : # NewGRF scanning window STR_NEWGRF_SCAN_CAPTION :{WHITE}Scannen NewGRFen -STR_NEWGRF_SCAN_MESSAGE :{BLACK}Scannen NewGRFen. Dëst kann eng Weil dauern, je no Emfang ... +STR_NEWGRF_SCAN_MESSAGE :{BLACK}Scannen NewGRFen. Dest kann eng Weil dauern... STR_NEWGRF_SCAN_STATUS :{BLACK}{NUM} NewGRF{P "" en} gescanned vun ongeféier {NUM} NewGRF{P "" en} STR_NEWGRF_SCAN_ARCHIVES :Archiver scannen # Sign list window STR_SIGN_LIST_CAPTION :{WHITE}Schëlderlëscht - {COMMA} Schëld{P "" er} -STR_SIGN_LIST_MATCH_CASE :{BLACK}Zoutreffenden Fall +STR_SIGN_LIST_MATCH_CASE :{BLACK}Passende Fall STR_SIGN_LIST_MATCH_CASE_TOOLTIP :{BLACK}Zoutreffend Fäll wiesselen wann Schëldernimm mam String-Filter verglach ginn # Sign window @@ -2953,38 +2982,38 @@ STR_TOWN_POPULATION :{BLACK}Weltbev STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN} STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (Stad) STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Awunner: {ORANGE}{COMMA}{BLACK} Haiser: {ORANGE}{COMMA} -STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}Passagéier leschten Mount: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} -STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}Post leschten Mount: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} +STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}Passagéier leschte Mount: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} +STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}Post leschte Mount: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Gidder gebraucht fir Stadwuesstem: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} gebraucht STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} gebraucht am Wanter STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} geliwwert STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (nach gebraucht) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (geliwwert) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Stad wiisst all {ORANGE}{COMMA}{BLACK} D{P aag eeg} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Stad wiisst all {ORANGE}{COMMA}{BLACK} D{P aag eeg} (finanzéiert) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Stad wiisst all {ORANGE}{COMMA}{BLACK}{NBSP}D{P ag eeg} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Stad wiisst all {ORANGE}{COMMA}{BLACK}{NBSP}D{P ag eeg} (finanzéiert) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Stad wiisst{RED} net{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Kaméidislimit an der Stad: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Zentréiert d'Usiicht op d'Stad. Ctrl+Klick erstellt eng nei Usiicht op d'Stad STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Gemeng STR_TOWN_VIEW_LOCAL_AUTHORITY_TOOLTIP :{BLACK}Weist d'Informatiounen zu der Gemeng -STR_TOWN_VIEW_RENAME_TOOLTIP :{BLACK}Wiesselt den Stadnumm +STR_TOWN_VIEW_RENAME_TOOLTIP :{BLACK}Wiesselt de Stadnumm STR_TOWN_VIEW_EXPAND_BUTTON :{BLACK}Erweideren STR_TOWN_VIEW_EXPAND_TOOLTIP :{BLACK}Stad méi grouss maachen STR_TOWN_VIEW_DELETE_BUTTON :{BLACK}Läschen -STR_TOWN_VIEW_DELETE_TOOLTIP :{BLACK}Dës Stad ganz läschen +STR_TOWN_VIEW_DELETE_TOOLTIP :{BLACK}Des Stad ganz läschen STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Stad ëmbenennen # Town local authority window -STR_LOCAL_AUTHORITY_CAPTION :{WHITE}{TOWN} Gemeng -STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Transportfirmen Bewertung: +STR_LOCAL_AUTHORITY_CAPTION :{WHITE}Gemeng {TOWN} +STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Transportfirme-Bewäertung: STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} -STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Verfügbar Optiounen: -STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lëscht vun Saachen déi an der Stad gemaach kënnen ginn - klick op eng Optioun fir méi Informatiounen -STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Maach ët -STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Féiert déi ungewielten Optioun aus +STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Verfügbar Aktiounen: +STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lëscht vu Saachen déi an der Stad gemaach kënne ginn - klick op eng Optioun fir méi Informatiounen +STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Maach et +STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Féiert déi gewielten Aktioun aus STR_LOCAL_AUTHORITY_ACTION_SMALL_ADVERTISING_CAMPAIGN :Kleng Marketingaktioun STR_LOCAL_AUTHORITY_ACTION_MEDIUM_ADVERTISING_CAMPAIGN :Mëttel Marketingsaktioun @@ -2995,25 +3024,25 @@ STR_LOCAL_AUTHORITY_ACTION_NEW_BUILDINGS :Nei Gebaier fin STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Exklusiv Transportrechter kafen STR_LOCAL_AUTHORITY_ACTION_BRIBE :D'Gemeng bestiechen -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Eng kleng Marketingaktioun starten, fir méi Passagéier an Wueren ze gewannen.{} Käschten: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Eng mëttel Marketingaktioun starten, fir méi Passagéier an Wueren ze gewannen.{} Käschten: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Eng grouss Marketingaktioun starten, fir méi Passagéier an Wueren ze gewannen.{} Käschten: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Stroossenneibau an der Stad finanzéieren. Stéiert den Traffic op den Stroossen fir dei nächst 6 Méint.{} Käschten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Eng kleng Marketingaktioun starten, fir méi Passagéier a Wueren ze gewannen.{} Käschten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Eng mëttel Marketingaktioun starten, fir méi Passagéier a Wueren ze gewannen.{} Käschten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Eng grouss Marketingaktioun starten, fir méi Passagéier a Wueren ze gewannen.{} Käschten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Stroossenneibau an der Stad finanzéieren. Stéiert den Traffic op de Stroossen fir déi nächst 6 Méint.{} Käschten: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}Eng Statu zur Éier vun der Firma bauen.{} Käschten: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Den Bau vun neie Kommerzgebaier finanzéieren.{} Käschten: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Kaft fir 1 Joer exklusiv Transportrechter an dëser Stad. D'Gemeng erlaabt den Transport vun Passagéier an Wueren nëmmen ärer Firma.{} Käschten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}De Bau vun neie Kommerzgebaier finanzéieren.{} Käschten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Kaaft fir 1 Joer exklusiv Transportrechter an deser Stad. D'Gemeng erlaabt den Transport vu Passagéier a Wueren nëmmen äerer Firma.{} Käschten: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}D'Gemeng bestiechen fir d'Bewäertung ze erhéijen, mam Risiko fir eng grouss Bestrofung, falls der erwëscht gitt.{} Käschten: {CURRENCY_LONG} # Goal window STR_GOALS_CAPTION :{WHITE}{COMPANY} Ziler STR_GOALS_SPECTATOR_CAPTION :{WHITE}Global Ziler -STR_GOALS_GLOBAL_TITLE :{BLACK}Global Zieler: +STR_GOALS_GLOBAL_TITLE :{BLACK}Global Ziler: STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_NONE :{ORANGE}- Keng - STR_GOALS_SPECTATOR_NONE :{ORANGE}- Net uwendbar - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} -STR_GOALS_COMPANY_TITLE :{BLACK}Firmenzieler: +STR_GOALS_COMPANY_TITLE :{BLACK}Firmenziler: STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klick op Ziel fir d'Haptfënster op d'Industrie/Stad/Feld ze zentréiren. Ctrl+Klick mëcht eng nei Fënster op der Industrie/Stad/Feld-Positioun op # Goal question window @@ -3022,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informatioun STR_GOAL_QUESTION_CAPTION_WARNING :Warnung STR_GOAL_QUESTION_CAPTION_ERROR :Fehler -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Ofbriechen STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nee @@ -3031,7 +3060,7 @@ STR_GOAL_QUESTION_BUTTON_DECLINE :Ofleenen STR_GOAL_QUESTION_BUTTON_ACCEPT :Unhuelen STR_GOAL_QUESTION_BUTTON_IGNORE :Ignoréiren STR_GOAL_QUESTION_BUTTON_RETRY :Nach emol.. -STR_GOAL_QUESTION_BUTTON_PREVIOUS :Zréck +STR_GOAL_QUESTION_BUTTON_PREVIOUS :Zeréck STR_GOAL_QUESTION_BUTTON_NEXT :Nächst STR_GOAL_QUESTION_BUTTON_STOP :Stop STR_GOAL_QUESTION_BUTTON_START :Start @@ -3041,15 +3070,16 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Nei man STR_GOAL_QUESTION_BUTTON_POSTPONE :Ofwaarden STR_GOAL_QUESTION_BUTTON_SURRENDER :Opginn STR_GOAL_QUESTION_BUTTON_CLOSE :Zouman +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subventiounen -STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Subventiounen fir den Service: -STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} vun {STRING} op {STRING}{YELLOW} (by {DATE_SHORT}) +STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Subventiounen fir de Service: +STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} vun {STRING} op {STRING}{YELLOW} (bis {DATE_SHORT}) STR_SUBSIDIES_NONE :{ORANGE}- Keng - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Servicer mat Subventiounen: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} vun {STRING} op {STRING}{YELLOW} ({COMPANY}{YELLOW}, bis {DATE_SHORT}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klick op den Service fir d'Usiicht op d'Industrie/Stad ze zentréieren. Ctrl+Klick erstellt eng nei Usiicht op d'Industrie/Stad +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klick op de Service fir d'Usiicht op d'Industrie/Stad ze zentréieren. Ctrl+Klick erstellt eng nei Usiicht op d'Industrie/Stad # Story book window STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY} Storybuch @@ -3057,22 +3087,22 @@ STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Globalt STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Säit {NUM} STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Géi op eng spezifësch Säit andems se aus der Dropdownlëscht ausgewielt gëtt -STR_STORY_BOOK_PREV_PAGE :{BLACK}Zréck +STR_STORY_BOOK_PREV_PAGE :{BLACK}Zeréck STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Géi op d'Säit firdrun STR_STORY_BOOK_NEXT_PAGE :{BLACK}Nächst STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Géi op déi nächst Säit STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Ongültëg Zil Referenz # Station list window -STR_STATION_LIST_TOOLTIP :{BLACK}Statiounennimm - klick op den Numm fir d'Siicht drop ze zentréieren. Ctrl+Klick erstellt eng nei Usiicht op d'Statioun -STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Haalt Ctrl un fir méi wéi 1 Objekt auszewielen +STR_STATION_LIST_TOOLTIP :{BLACK}Statiounennimm - klick op den Numm fir d'Usiicht dorop ze zentréieren. Ctrl+Klick erstellt eng nei Usiicht op d'Statioun +STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Hal Ctrl un fir méi wéi 1 Objet auszewielen STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} Statioun{P "" en} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} STR_STATION_LIST_NONE :{YELLOW}- Näischt - STR_STATION_LIST_SELECT_ALL_FACILITIES :{BLACK}Wiel all d'Fabriken STR_STATION_LIST_SELECT_ALL_TYPES :{BLACK}Wielt all Luedungstyp (ouni Luedung déi waard) -STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Kéng Luedung +STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Keng Luedung # Station view window STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} @@ -3080,32 +3110,32 @@ STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_L STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} ënnerwee vun {STATION}) STR_STATION_VIEW_RESERVED :{YELLOW}({CARGO_SHORT} reservéiert fir gelueden ze ginn) -STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Acceptéiert -STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Weis d'Lëscht vun den acceptéierten Wueren -STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Acceptéiert: {WHITE}{CARGO_LIST} +STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Akzeptéiert +STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Weis d'Lëscht vun den akzptéierten Wueren +STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Akzeptéiert: {WHITE}{CARGO_LIST} -STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Dës Statioun huet exklusiv Transportrechter an dëser Stad -STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} huet exklusiv Transportrechter an dëser Stad kaf. +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Des Statioun huet exklusiv Transportrechter an deser Stad +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} huet exklusiv Transportrechter an deser Stad kaf. -STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Bewertungen -STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Weis d'Statiounsbewertungen -STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Lokal Bewertung an Liwwerung pro Mount +STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Bewäertungen +STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Weis d'Statiounsbewäertungen +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Lokal Bewäertung an Liwwerung pro Mount STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) STR_STATION_VIEW_GROUP :{BLACK}Gruppéier no -STR_STATION_VIEW_WAITING_STATION :Statioun: waardend +STR_STATION_VIEW_WAITING_STATION :Statioun: Waardend STR_STATION_VIEW_WAITING_AMOUNT :Unzuel: Waardend -STR_STATION_VIEW_PLANNED_STATION :Statioun: geplangt -STR_STATION_VIEW_PLANNED_AMOUNT :Unzuel: geplangt +STR_STATION_VIEW_PLANNED_STATION :Statioun: Geplangt +STR_STATION_VIEW_PLANNED_AMOUNT :Unzuel: Geplangt STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} vun {STATION} STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT} via {STATION} STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} op {STATION} STR_STATION_VIEW_FROM_ANY :{RED}{CARGO_SHORT} vun iergendenger Statioun STR_STATION_VIEW_TO_ANY :{RED}{CARGO_SHORT} op iergendeng Statioun STR_STATION_VIEW_VIA_ANY :{RED}{CARGO_SHORT} via iergendeng Statioun -STR_STATION_VIEW_FROM_HERE :{GREEN}{CARGO_SHORT} vun dëser Statioun -STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_SHORT} stoppt op dëser Statioun -STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} op dës Statioun +STR_STATION_VIEW_FROM_HERE :{GREEN}{CARGO_SHORT} vun deser Statioun +STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_SHORT} stoppt op deser Statioun +STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} op des Statioun STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} non-stop STR_STATION_VIEW_GROUP_S_V_D :Quell-Via-Destinatioun @@ -3129,19 +3159,19 @@ STR_CARGO_RATING_OUTSTANDING :Perfekt STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Zentréiert d'Usiicht op d'Statioun. Ctrl+Klick erstellt eng nei Usiicht op d'Statioun STR_STATION_VIEW_RENAME_TOOLTIP :{BLACK}Den Numm vun der Statioun änneren -STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Weis all Zich déi dës Statioun an hierem Zaitplang hunn -STR_STATION_VIEW_SCHEDULED_ROAD_VEHICLES_TOOLTIP :{BLACK}Weis all Stroossegefierer déi dës Statioun an hierem Zäitplang hunn -STR_STATION_VIEW_SCHEDULED_AIRCRAFT_TOOLTIP :{BLACK}Weis all Fliger den dës Statioun an sengem Zaitplang huet -STR_STATION_VIEW_SCHEDULED_SHIPS_TOOLTIP :{BLACK}Weis all Schëffer déi dës Statioun an hierem Zaitplang hunn +STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Weis all Zich déi des Statioun an hierem Zäitplang hunn +STR_STATION_VIEW_SCHEDULED_ROAD_VEHICLES_TOOLTIP :{BLACK}Weis all Stroossegefierer déi des Statioun an hierem Zäitplang hunn +STR_STATION_VIEW_SCHEDULED_AIRCRAFT_TOOLTIP :{BLACK}Weis all Fliger déi des Statioun an hierem Zäitplang hunn +STR_STATION_VIEW_SCHEDULED_SHIPS_TOOLTIP :{BLACK}Weis all Schëffer déi des Statioun an hierem Zäitplang hunn STR_STATION_VIEW_RENAME_STATION_CAPTION :D'Gare ëmbenennen -STR_STATION_VIEW_CLOSE_AIRPORT :{BLACK}Fluchhafen zouman +STR_STATION_VIEW_CLOSE_AIRPORT :{BLACK}Fluchhafen zoumaachen STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Hal de Fliger dovun of op dësem Fluchhafen ze landen # Waypoint/buoy view window STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} -STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Zentréiert d'Usiicht op den Weepunkt. Ctrl+Klick erstellt eng nei Usiicht um Weepunkt +STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Zentréiert d'Usiicht op de Weepunkt. Ctrl+Klick erstellt eng nei Usiicht um Weepunkt STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Weepunkt Numm änneren STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Zentréiert d'Usiicht op d'Boje. Ctrl+Klick erstellt eng nei Usiicht op der Boje STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Boje ëmbenennen @@ -3154,11 +3184,11 @@ STR_FINANCES_EXPENDITURE_INCOME_TITLE :{WHITE}Ausgaben STR_FINANCES_YEAR :{WHITE}{NUM} STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Konstruktioun STR_FINANCES_SECTION_NEW_VEHICLES :{GOLD}Nei Gefierer -STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Zuch Betriebskäschten -STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Stroossegefierer Betriebskäschten -STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Fliger Betriebskäschten -STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Schëff Betriebskäschten -STR_FINANCES_SECTION_PROPERTY_MAINTENANCE :{GOLD}Besëtz Ennerhalt +STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Zuch Betribskäschten +STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Stroossegefierer Betribskäschten +STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Fliger Betribskäschten +STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Schëff Betribskäschten +STR_FINANCES_SECTION_PROPERTY_MAINTENANCE :{GOLD}Ennerhaltskäschte vum Besëtz STR_FINANCES_SECTION_TRAIN_INCOME :{GOLD}Zuch Akommes STR_FINANCES_SECTION_ROAD_VEHICLE_INCOME :{GOLD}Stroossegefierer Akommes STR_FINANCES_SECTION_AIRCRAFT_INCOME :{GOLD}Fliger Akommes @@ -3173,16 +3203,16 @@ STR_FINANCES_LOAN_TITLE :{WHITE}Kredit STR_FINANCES_MAX_LOAN :{WHITE}Maximale Kredit: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}{CURRENCY_LONG} léinen -STR_FINANCES_BORROW_TOOLTIP :{BLACK}Erhéicht den Kredit. Ctrl+Klick léint den Maximum +STR_FINANCES_BORROW_TOOLTIP :{BLACK}Erhéicht de Kredit. Ctrl+Klick léint de Maximum STR_FINANCES_REPAY_BUTTON :{BLACK}{CURRENCY_LONG} zeréckbezuelen -STR_FINANCES_REPAY_TOOLTIP :{BLACK}Bezuelt en Deel vum Kredit zeréck. Ctrl+Klick bezillt sou vill wéi méglech zréck +STR_FINANCES_REPAY_TOOLTIP :{BLACK}Bezuelt en Deel vum Kredit zeréck. Ctrl+Klick bezillt sou vill wéi méiglech zeréck STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Infrastruktur # Company view STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM} STR_COMPANY_VIEW_PRESIDENT_MANAGER_TITLE :{WHITE}{PRESIDENT_NAME}{}{GOLD}(Manager) -STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Agefouert: {WHITE}{NUM} +STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Gegrënnt: {WHITE}{NUM} STR_COMPANY_VIEW_COLOUR_SCHEME_TITLE :{GOLD}Faarfschema: STR_COMPANY_VIEW_VEHICLES_TITLE :{GOLD}Gefierer: STR_COMPANY_VIEW_TRAINS :{WHITE}{COMMA} Z{P uch ich} @@ -3190,7 +3220,7 @@ STR_COMPANY_VIEW_ROAD_VEHICLES :{WHITE}{COMMA} STR_COMPANY_VIEW_AIRCRAFT :{WHITE}{COMMA} Fliger STR_COMPANY_VIEW_SHIPS :{WHITE}{COMMA} Schëff{P "" er} STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}Keng -STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Firmenwäert: {WHITE}{CURRENCY_LONG} +STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Firmewäert: {WHITE}{CURRENCY_LONG} STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}({COMMA}% am Besëtz vun {COMPANY}) STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}Infrastruktur: STR_COMPANY_VIEW_INFRASTRUCTURE_RAIL :{WHITE}{COMMA} Schinnendeel{P "" er} @@ -3202,26 +3232,26 @@ STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Keng STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Haaptgebai bauen STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Haaptgebai bauen -STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Weist Haaptgebai -STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Haaptgebai weisen +STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Weis d'Haaptgebai +STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Haaptgebai uweisen STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Firmenhaaptgebai réckelen -STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Bau d'Firmenhaaptgebai op eng aaner Plaz.Käschten: 1% vun dem Firmenwäert. Shift+Klick weist ongeféier Käschten ouni ze réckelen +STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Bau d'Firmenhaaptgebai op eng aaner Plaz.Käschten: 1% vun dem Firmewäert. Shift+Klick weist ongeféier Käschten ouni ze réckelen STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detailer STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Detailléiert Infrastrukturen uweisen STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Neit Gesiicht -STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Wielt en neit Gesiicht fir den Manager +STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Wielt en neit Gesiicht fir de Manager STR_COMPANY_VIEW_COLOUR_SCHEME_BUTTON :{BLACK}Faarfschema STR_COMPANY_VIEW_COLOUR_SCHEME_TOOLTIP :{BLACK}Ännert d'Firmengefiererfaarf STR_COMPANY_VIEW_COMPANY_NAME_BUTTON :{BLACK}Firmennumm -STR_COMPANY_VIEW_COMPANY_NAME_TOOLTIP :{BLACK}Ännert den Firmennumm +STR_COMPANY_VIEW_COMPANY_NAME_TOOLTIP :{BLACK}Ännert de Firmennumm STR_COMPANY_VIEW_PRESIDENT_NAME_BUTTON :{BLACK}Managernumm STR_COMPANY_VIEW_PRESIDENT_NAME_TOOLTIP :{BLACK}Ännert den Numm vum Manager -STR_COMPANY_VIEW_BUY_SHARE_BUTTON :{BLACK}Kaaft 25%Undeel vun der Firma +STR_COMPANY_VIEW_BUY_SHARE_BUTTON :{BLACK}Kaaft 25% Undeel vun der Firma STR_COMPANY_VIEW_SELL_SHARE_BUTTON :{BLACK}Verkaaft 25% Undeel vun der Firma -STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}Kaaft 25%Undeel vun dëser Firma. Shift+Klick weist ongeféier Käschten ouni Kaf vun Aktien -STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Verkaaft 25% Undeel vun dëser Firma. Shift+Klick weist ongeféier Käschten ouni Verkaf vun Aktien +STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}Kaaft 25% Undeel vun deser Firma. Shift+Klick weist ongeféier Käschten ouni Kaf vun Aktien +STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Verkaaft 25% Undeel vun deser Firma. Shift+Klick weist ongeféier Käschten ouni Verkaf vun Aktien STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Firmennumm STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Numm vum Manager @@ -3252,11 +3282,11 @@ STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Industri # Industry view STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY} -STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Produktioun läschten Mount: +STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Produktioun läschte Mount: STR_INDUSTRY_VIEW_TRANSPORTED :{YELLOW}{CARGO_LONG}{STRING}{BLACK} ({COMMA}% transportéiert) STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Siicht op d'Industrie. Ctrl+Klick erstellt eng nei Usiicht op d'Industrie STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Produktiounslevel: {YELLOW}{COMMA}% -STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}D'Industrie annoncéiert dass se zougemet gëtt +STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}D'Industrie annoncéiert dass se zougemaach gëtt ############ range for requires starts STR_INDUSTRY_VIEW_REQUIRES_CARGO :{BLACK}Brauch: {YELLOW}{STRING}{STRING} @@ -3265,25 +3295,25 @@ STR_INDUSTRY_VIEW_REQUIRES_CARGO_CARGO_CARGO :{BLACK}Brauch: ############ range for requires ends ############ range for produces starts -STR_INDUSTRY_VIEW_WAITING_FOR_PROCESSING :{BLACK}Luedungen dei nach verschafft mussen gin: +STR_INDUSTRY_VIEW_WAITING_FOR_PROCESSING :{BLACK}Luedunge déi nach verschafft musse ginn: STR_INDUSTRY_VIEW_WAITING_STOCKPILE_CARGO :{YELLOW}{CARGO_LONG}{STRING}{BLACK} STR_INDUSTRY_VIEW_PRODUCES_CARGO :{BLACK}Produzéiert: {YELLOW}{STRING}{STRING} STR_INDUSTRY_VIEW_PRODUCES_CARGO_CARGO :{BLACK}Produzéiert: {YELLOW}{STRING}{STRING}, {STRING}{STRING} ############ range for produces ends STR_CONFIG_GAME_PRODUCTION :{WHITE}D'Produktioun änneren (Multipel vun 8, bis op 2040) -STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Änner den Produktiounslevel (Prozenter, bis zu 800%) +STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Änner de Produktiounslevel (Prozenter, bis zu 800%) # Vehicle lists STR_VEHICLE_LIST_TRAIN_CAPTION :{WHITE}{STRING} - {COMMA} Z{P uch ich} -STR_VEHICLE_LIST_ROAD_VEHICLE_CAPTION :{WHITE}{STRING} - {COMMA} Gefier{P t er} +STR_VEHICLE_LIST_ROAD_VEHICLE_CAPTION :{WHITE}{STRING} - {COMMA} Gefier{P "" er} STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} - {COMMA} Schëff{P "" er} STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} - {COMMA} Fliger STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Zich - klick op den Zuch fir Informatiounen -STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Stroossegefierer - klick op en Gefier fir Informatiounen -STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Schëffer - Klick op d'Schëff fir Informatiounen -STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Fliger - Klick op den Fliger fir Informatiounen +STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Stroossegefierer - klick op e Gefier fir Informatiounen +STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Schëffer - klick op d'Schëff fir Informatiounen +STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Fliger - klick op de Fliger fir Informatiounen STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Profit dëst Joer: {CURRENCY_LONG} (lescht Joer: {CURRENCY_LONG}) @@ -3291,22 +3321,22 @@ STR_VEHICLE_LIST_AVAILABLE_TRAINS :Verfügbar Zich STR_VEHICLE_LIST_AVAILABLE_ROAD_VEHICLES :Verfügbar Gefierer STR_VEHICLE_LIST_AVAILABLE_SHIPS :Verfügbar Schëffer STR_VEHICLE_LIST_AVAILABLE_AIRCRAFT :Verfügbar Fligern -STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP :{BLACK}Lëscht vun allen Maschinen fir dësen Typ weisen +STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP :{BLACK}Lëscht vun alle Maschinen fir dësen Typ weisen STR_VEHICLE_LIST_MANAGE_LIST :{BLACK}Verwaltungslëscht -STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Scheckt d'Instructiounen un all Gefierer an der Lëscht +STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Schéckt d'Instructiounen un all Gefierer an der Lëscht STR_VEHICLE_LIST_REPLACE_VEHICLES :Gefierer ersetzen STR_VEHICLE_LIST_SEND_FOR_SERVICING :An d'Revisioun schécken -STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :An den Schapp schécken +STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :An de Schapp schécken STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :An den Depot schécken -STR_VEHICLE_LIST_SEND_SHIP_TO_DEPOT :An den Schapp schécken +STR_VEHICLE_LIST_SEND_SHIP_TO_DEPOT :An de Schapp schécken STR_VEHICLE_LIST_SEND_AIRCRAFT_TO_HANGAR :An den Hangar schécken STR_VEHICLE_LIST_MASS_STOP_LIST_TOOLTIP :{BLACK}Klick fir all Gefierer an der Lëscht ze stoppen STR_VEHICLE_LIST_MASS_START_LIST_TOOLTIP :{BLACK}Klick fir all Gefirer an der Lëscht ze starten -STR_VEHICLE_LIST_SHARED_ORDERS_LIST_CAPTION :{WHITE}Gedeelten Opträg vun {COMMA} Gefier{P t er} +STR_VEHICLE_LIST_SHARED_ORDERS_LIST_CAPTION :{WHITE}Gedeelten Opträg vun {COMMA} Gefier{P "" er} # Group window STR_GROUP_ALL_TRAINS :All Zich @@ -3321,15 +3351,15 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Ongruppéiert F STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Gruppen - klick op eng Grupp fir d'Gefierer aus der Grupp ze gesinn. Per Drag and Drop d'Hierarchie änneren. STR_GROUP_CREATE_TOOLTIP :{BLACK}Klick fir eng Grupp ze maachen -STR_GROUP_DELETE_TOOLTIP :{BLACK}Déi ungewielten Grupp läschen -STR_GROUP_RENAME_TOOLTIP :{BLACK}Déi ungewielten Grupp ëmbenennen +STR_GROUP_DELETE_TOOLTIP :{BLACK}Déi ungewielte Grupp läschen +STR_GROUP_RENAME_TOOLTIP :{BLACK}Déi ungewielte Grupp ëmbenennen STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klick fir déi Grupp vum globalen "Autoersetzen" auszeschléissen STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Grupp läschen -STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Bassde sécher, dass du dës Grupp an all Ennergruppen läschen wëlls? +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Bassde sécher, dass du des Grupp an all Ennergruppen läsche wëlls? -STR_GROUP_ADD_SHARED_VEHICLE :Gedeelten Gefierer bäisetzen -STR_GROUP_REMOVE_ALL_VEHICLES :All Gefierer wechhuelen +STR_GROUP_ADD_SHARED_VEHICLE :Gedeelte Gefierer bäisetzen +STR_GROUP_REMOVE_ALL_VEHICLES :All Gefierer ewechhuelen STR_GROUP_RENAME_CAPTION :{BLACK}Eng Grupp ëmbenennen @@ -3339,17 +3369,17 @@ STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Nei Elektrozich STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Nei Monorailgefierer STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Nei Magnéitbunngefierer -STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Zich +STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Nei Zich STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Nei Stroossegefierer STR_BUY_VEHICLE_SHIP_CAPTION :Nei Schëffer -STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Neien Fliger +STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Neie Fliger STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Käschten: {GOLD}{CURRENCY_LONG}{BLACK} Gewiicht: {GOLD}{WEIGHT_SHORT} STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Geschw.: {GOLD}{VELOCITY}{BLACK} Kraaft: {GOLD}{POWER} STR_PURCHASE_INFO_SPEED :{BLACK}Geschw.: {GOLD}{VELOCITY} STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}Geschwindegkeet um Ozean: {GOLD}{VELOCITY} STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}Geschwindegkeet um Kanal/Floss: {GOLD}{VELOCITY} -STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Betriibskäschtent: {GOLD}{CURRENCY_LONG}/Jr +STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Betribskäschten: {GOLD}{CURRENCY_LONG}/Jr STR_PURCHASE_INFO_CAPACITY :{BLACK}Kapazitéit: {GOLD}{CARGO_LONG} {STRING} STR_PURCHASE_INFO_REFITTABLE :(ëmbaubar) STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Designt: {GOLD}{NUM}{BLACK} Liewenszäit: {GOLD}{COMMA} Joer @@ -3359,16 +3389,16 @@ STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}Gewiicht STR_PURCHASE_INFO_COST_SPEED :{BLACK}Käschten: {GOLD}{CURRENCY_LONG}{BLACK} Geschw.: {GOLD}{VELOCITY} STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}Kapazitéit: {GOLD}{CARGO_LONG}, {CARGO_LONG} STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}Ugedriwwen Waggonen: {GOLD}+{POWER}{BLACK} Gewiicht: {GOLD}+{WEIGHT_SHORT} -STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Embaubaur zu: {GOLD}{STRING} -STR_PURCHASE_INFO_ALL_TYPES :All Typ Wueren +STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Embaubar zu: {GOLD}{STRING} +STR_PURCHASE_INFO_ALL_TYPES :All Wuerentyp STR_PURCHASE_INFO_ALL_BUT :Alles ausser {CARGO_LIST} STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Zéikraaft: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Distanz: {GOLD}{COMMA} Felder -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Zuchlëscht - klick op en Zuch fir Informatiounen -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Stroossegefierlëscht - klick op en Gefier fir Informatiounen -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Schëffslëscht - Klick op d'Schëff fir Informatiounen -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Fligerlëscht - Klick op den Fliger fir Informatiounen +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Zuchlëscht - klick op en Zuch fir Informatiounen. Ctrl+Klick fir tëscht dem Verstoppen hin an hier ze sprangen +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Stroossegefierlëscht - klick op en Gefier fir Informatiounen. Ctrl+Klick fir tëscht dem Verstoppen hin an hier ze sprangen +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Schëffslëscht - Klick op d'Schëff fir Informatiounen. Ctrl+Klick fir tëscht dem Verstoppen hin an hier ze sprangen +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Fligerlëscht - Klick op de Fliger fir Informatiounen. Ctrl+Klick fir tëscht dem Verstoppen hin an hier ze sprangen STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Gefier kafen STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Gefier kafen @@ -3377,21 +3407,36 @@ STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Fliger k STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Keeft den ungewielten Zuch. Shift+Klick weist ongeféier Käschten ouni Kaf STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Keeft dat ugewielte Stroossegefier. Shift+Klick weist ongeféier Käschten ouni Kaf -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Keeft dat ugewielten Schëff. Shift+Klick weist ongeféier Käschten ouni Kaf -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Keeft den ungewielten Fliger. Shift+Klick weist ongeféier Käschten ouni Kaf +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Keeft dat ugewielte Schëff. Shift+Klick weist ongeféier Käschten ouni Kaf +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Keeft den ungewielte Fliger. Shift+Klick weist ongeféier Käschten ouni Kaf STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Ëmbenennen STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Ëmbenennen STR_BUY_VEHICLE_SHIP_RENAME_BUTTON :{BLACK}Ëmbenennen STR_BUY_VEHICLE_AIRCRAFT_RENAME_BUTTON :{BLACK}Ëmbenennen -STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Gefiertyp ëmbenennen +STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Zuch ëmbenennen STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Gefiertyp ëmbenennen STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Schëffstyp ëmbenennen STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Fligertyp ëmbenennen +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Verstoppen +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Verstoppen +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Verstoppen +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Verstoppen + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Uweisen +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Uweisen +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Uweisen +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Uweisen + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Emschalten tëscht uweise/verstoppe vun Zuchtypen +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Emschalten tëscht uweise/verstoppe vu Gefiertypen +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Emschalten tëscht uweise/verstoppe vu Schëfftypen +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Emschalten tëscht uweise/verstoppe vu Fligertypen + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Zuchgefiertyp ëmbenennen -STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Gefierertyp ëmbenennen +STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Gefiertyp ëmbenennen STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Schëffstyp ëmbenennen STR_QUERY_RENAME_AIRCRAFT_TYPE_CAPTION :{WHITE}Fligertyp ëmbenennen @@ -3403,18 +3448,18 @@ STR_DEPOT_RENAME_DEPOT_CAPTION :Schapp ëmbenen STR_DEPOT_NO_ENGINE :{BLACK}- STR_DEPOT_VEHICLE_TOOLTIP :{BLACK}{ENGINE}{STRING} -STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} Gefier{P t er}{STRING} +STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} Gefier{P "" er}{STRING} STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Zich - zidd d'Gefier fir en unzehänken/wechzehuelen, Rietsklick fir Informatiounen. Ctrl unhalen dass béid Fonktiounen fir déi nächst Ketten gëllen STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Gefierer - Rietsklick op en Gefier fir Informatiounen STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Schëffer - Rietsklick op d'Schëff fir Informatiounen -STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Fliger - Rietsklick op den Fliger fir Informatiounen +STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Fliger - Rietsklick op de Fliger fir Informatiounen -STR_DEPOT_TRAIN_SELL_TOOLTIP :{BLACK}Zitt den Zuch heihin fir en ze verkafen +STR_DEPOT_TRAIN_SELL_TOOLTIP :{BLACK}Zéi den Zuch heihin fir en ze verkafen STR_DEPOT_ROAD_VEHICLE_SELL_TOOLTIP :{BLACK}Zéi d'Stroossegefier heihin fir et ze verkafen -STR_DEPOT_SHIP_SELL_TOOLTIP :{BLACK}Zitt Schëff heihin fir et ze verkafen -STR_DEPOT_AIRCRAFT_SELL_TOOLTIP :{BLACK}Zitt den Fliger heihin fir en ze verkafen +STR_DEPOT_SHIP_SELL_TOOLTIP :{BLACK}Zéi d'Schëff heihin fir et ze verkafen +STR_DEPOT_AIRCRAFT_SELL_TOOLTIP :{BLACK}Zéi de Fliger heihin fir en ze verkafen STR_DEPOT_DRAG_WHOLE_TRAIN_TO_SELL_TOOLTIP :{BLACK}Lokomotiv heihinner zéien fir de ganzen Zuch ze läschen @@ -3428,29 +3473,29 @@ STR_DEPOT_AUTOREPLACE_ROAD_VEHICLE_TOOLTIP :{BLACK}All Gefi STR_DEPOT_AUTOREPLACE_SHIP_TOOLTIP :{BLACK}All Schëffer am Schapp automatesch ersetzen STR_DEPOT_AUTOREPLACE_AIRCRAFT_TOOLTIP :{BLACK}All Fliger am Hangar automatesch ersetzen -STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Nei Gefierer +STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Nei Zich STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_BUTTON :{BLACK}Nei Gefierer STR_DEPOT_SHIP_NEW_VEHICLES_BUTTON :{BLACK}Nei Schëffer -STR_DEPOT_AIRCRAFT_NEW_VEHICLES_BUTTON :{BLACK}Neien Fliger +STR_DEPOT_AIRCRAFT_NEW_VEHICLES_BUTTON :{BLACK}Nei Fligeren -STR_DEPOT_TRAIN_NEW_VEHICLES_TOOLTIP :{BLACK}Keeft neien Zuch +STR_DEPOT_TRAIN_NEW_VEHICLES_TOOLTIP :{BLACK}Kaf en neien Zuch STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_TOOLTIP :{BLACK}Neit Stroossegefier kafen STR_DEPOT_SHIP_NEW_VEHICLES_TOOLTIP :{BLACK}Neit Schëff kafen -STR_DEPOT_AIRCRAFT_NEW_VEHICLES_TOOLTIP :{BLACK}Neien Fliger kafen +STR_DEPOT_AIRCRAFT_NEW_VEHICLES_TOOLTIP :{BLACK}Neie Fliger kafen STR_DEPOT_CLONE_TRAIN :{BLACK}Zuch klonen STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Gefier klonen STR_DEPOT_CLONE_SHIP :{BLACK}Schëff klonen STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Fliger klonen -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Dëst baut eng Kopie vun engem Zuch mat all den Waggonen. Klick op dësen Knäppchen an dann op en Zuch am Schapp oder baussen. Ctrl+Klick fir Opträg ze deelen. Shift+Klick weist ongeféier Käschten ouni Kaf -STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Keeft eng Kopie vum Stroossegefier. Klick dësen Kneppchen an dann op e Stroossegefier am oder baussent dem Depot. Ctrl+Klick deelt och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf -STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Dëst baut eng Kopie vum Schëff. Klick op dësen Knäppchen an dann op en Schëff am Schapp oder baussen.Ctrl+Klick kopéiert och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf -STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Dëst baut eng Kopie vun engem Fliger. Klick op dësen Knäppchen, an dann op en Fliger am Hangar oder baussen. Ctrl+Klick fir Uerder ze deelen. Shift+Klick weist ongeféier Käschten ouni Kaf +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Dest baut eng Kopie vun engem Zuch mat all de Waggonen. Klick op dese Knäppchen an dann op en Zuch am Schapp oder baussen. Ctrl+Klick fir Opträg ze deelen. Shift+Klick weist ongeféier Käschten ouni Kaf +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Keeft eng Kopie vum Stroossegefier. Klick dese Kneppchen an dann op e Stroossegefier am oder baussent dem Depot. Ctrl+Klick deelt och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf +STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Dest baut eng Kopie vum Schëff. Klick op dese Knäppchen an dann op en Schëff am Schapp oder baussen.Ctrl+Klick kopéiert och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf +STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Dest baut eng Kopie vun engem Fliger. Klick op dese Knäppchen, an dann op en Fliger am Hangar oder baussen. Ctrl+Klick fir Uerder ze deelen. Shift+Klick weist ongeféier Käschten ouni Kaf -STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op den Schapp. Ctrl+Klick erstellt eng nei Usiicht op den Schapp +STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op de Schapp. Ctrl+Klick erstellt eng nei Usiicht op de Schapp STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op den Depot. Ctrl+Klick erstellt eng nei Usiicht op den Depot -STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op den Schapp. Ctrl+Klick erstellt eng nei Usiicht op den Schapp +STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op de Schapp. Ctrl+Klick erstellt eng nei Usiicht op de Schapp STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op den Hangar. Ctrl+Klick erstellt eng nei Usiicht op den Hangar STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Lëscht mat all Zich an dësem Schapp @@ -3471,7 +3516,7 @@ STR_DEPOT_MASS_START_HANGAR_TOOLTIP :{BLACK}Klick fi STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Du verkeefs grad all Gefierer am Schapp. Bass du sécher ? # Engine preview window -STR_ENGINE_PREVIEW_CAPTION :{WHITE}Meldung vum Gefiererkonstrukteur +STR_ENGINE_PREVIEW_CAPTION :{WHITE}Meldung vum Gefierkonstrukteur STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Mir hunn elo en neien {STRING} gebaut - bass du dorun interesséiert dëst Gefier 1 Joer exklusiv ze notzen, fir ze testen op et komplett maarträif ass? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :Lokomotiv STR_ENGINE_PREVIEW_ROAD_VEHICLE :Stroossegefier @@ -3480,10 +3525,10 @@ STR_ENGINE_PREVIEW_SHIP :Schëff STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :Monorail Lokomotiv STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :Magnéitbunnlokomotiv -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Käschten: {CURRENCY_LONG} Gewiicht: {WEIGHT_SHORT}{}Geschwindegkeet: {VELOCITY} Kraaft: {POWER}{}Betriibskäschten {CURRENCY_LONG}/joër{}Kapazitéit: {CARGO_LONG} -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Käschten: {CURRENCY_LONG} Gewicht: {WEIGHT_SHORT}{}Geschw.: {VELOCITY} Kraaft: {POWER} Max. T.E.: {6:FORCE}{}Betriebskäschten: {4:CURRENCY_LONG}/Jr{}Kapazitéit: {5:CARGO_LONG} -STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_CAPACITY_RUNCOST :{BLACK}Käschten: {CURRENCY_LONG} Max. Geschwindegkeet: {VELOCITY}{}Kapazitéit: {CARGO_LONG}, {CARGO_LONG}{}Betriibskäschten {CURRENCY_LONG}/Joer -STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK}Käschten: {CURRENCY_LONG} Max. Geschwindegkeet: {VELOCITY}{}Kapazitéit: {CARGO_LONG}{}Betriibskäschten: {CURRENCY_LONG}/Joer +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Käschten: {CURRENCY_LONG} Gewiicht: {WEIGHT_SHORT}{}Geschwindegkeet: {VELOCITY} Kraaft: {POWER}{}Betribskäschten {CURRENCY_LONG}/Joer{}Kapazitéit: {CARGO_LONG} +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Käschten: {CURRENCY_LONG} Gewicht: {WEIGHT_SHORT}{}Geschw.: {VELOCITY} Kraaft: {POWER} Max. T.E.: {6:FORCE}{}Betribskäschten: {4:CURRENCY_LONG}/Jr{}Kapazitéit: {5:CARGO_LONG} +STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_CAPACITY_RUNCOST :{BLACK}Käschten: {CURRENCY_LONG} Max. Geschwindegkeet: {VELOCITY}{}Kapazitéit: {CARGO_LONG}, {CARGO_LONG}{}Betribskäschten {CURRENCY_LONG}/Joer +STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK}Käschten: {CURRENCY_LONG} Max. Geschwindegkeet: {VELOCITY}{}Kapazitéit: {CARGO_LONG}{}Betribskäschten: {CURRENCY_LONG}/Joer STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_CAPACITY_RUNCOST:{BLACK}Käschten: {CURRENCY_LONG} Max. Geschw.: {VELOCITY} Distanz: {COMMA} Felder{}Kapazitéit: {CARGO_LONG}, {CARGO_LONG}{}Betribskäschten: {CURRENCY_LONG}/Jr STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_RUNCOST :{BLACK}Käschten: {CURRENCY_LONG} Max. Geschw.: {VELOCITY} Distanz: {COMMA} Felder{}Kapazitéit: {CARGO_LONG}{}Betribskäschten: {CURRENCY_LONG}/Jr @@ -3494,8 +3539,13 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Stroossegefier STR_REPLACE_VEHICLE_SHIP :Schëff STR_REPLACE_VEHICLE_AIRCRAFT :Fliger -STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Wielt den Maschinentyp fir auszetauschen -STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Wielt den neien Typ den benotzt soll ginn amplaz vun der lénks gewielter Maschin +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Gefierer am Gebrauch +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolonn mat Gefierer déis du hues +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Verfügbar Gefierer +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolonn mat Gefierer déi prett fir ze ersetze sinn + +STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Wielt de Maschinentyp fir auszetauschen +STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Wielt den neien Typ de benotzt soll ginn amplaz vun der lénks gewielter Maschin STR_REPLACE_VEHICLES_START :{BLACK}Start Gefieraustosch STR_REPLACE_VEHICLES_NOW :All Gefier elo ersetzen @@ -3503,24 +3553,24 @@ STR_REPLACE_VEHICLES_WHEN_OLD :Nëmmen al Gefi STR_REPLACE_HELP_START_BUTTON :{BLACK}Drécken fir den Austosch vun der lénker mat der rietser Maschin unzefenken STR_REPLACE_NOT_REPLACING :{BLACK}Net ausgetosch: STR_REPLACE_NOT_REPLACING_VEHICLE_SELECTED :{BLACK}Keen gefier gewielt -STR_REPLACE_REPLACING_WHEN_OLD :{ENGINE} wann aal +STR_REPLACE_REPLACING_WHEN_OLD :{ENGINE} wann al STR_REPLACE_VEHICLES_STOP :{BLACK}Stop Gefieraustosch STR_REPLACE_HELP_STOP_BUTTON :{BLACK}Drécken fir den Austosch ze stoppen STR_REPLACE_ENGINE_WAGON_SELECT :{BLACK}Tauschen aus: {ORANGE}{STRING} STR_REPLACE_ENGINE_WAGON_SELECT_HELP :{BLACK}Wiessel tëscht Maschin- an Waggonaustosch-Fënster -STR_REPLACE_ENGINES :Motoren +STR_REPLACE_ENGINES :Lokomotiven STR_REPLACE_WAGONS :Waggonen -STR_REPLACE_HELP_RAILTYPE :{BLACK}Wielt den Schinnentyp fir den Maschinen ausgetosch ginn -STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Weist un wellech Maschin vun der lénks ugewielter Maschin ausgetosch soll ginn, wann et zoutrëfft +STR_REPLACE_HELP_RAILTYPE :{BLACK}Wielt de Schinnentyp fir déi Lokomotiven ausgetosch ginn +STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Weist un wellech Lokomotiv vun der lénks ugewielter Lokomotiv ausgetosch soll ginn, wann et zoutrëfft STR_REPLACE_RAIL_VEHICLES :Zich STR_REPLACE_ELRAIL_VEHICLES :Elektresch Zich STR_REPLACE_MONORAIL_VEHICLES :Monorail Gefierer STR_REPLACE_MAGLEV_VEHICLES :Magnéitbunn Gefierer STR_REPLACE_REMOVE_WAGON :{BLACK}Waggon raushuelen: {ORANGE}{STRING} -STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Mëscht dass d'automatescht Austauschen d'Längt vum Zuch behält, an dem en Waggonen (vun lénks un) wechhëllt, wann d'Lok den Zuch ze laang mëscht +STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Mécht dass d'automatescht Austauschen d'Längt vum Zuch behält, an dem e Waggonen (vu lénks un) wechhëllt, wann d'Lok den Zuch ze laang mécht # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} @@ -3528,27 +3578,27 @@ STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE STR_VEHICLE_VIEW_TRAIN_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op den Zuch. Ctrl+Klick follegt dem Zuch an der Haaptusiicht STR_VEHICLE_VIEW_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op d'Gefier. Ctrl+Klick follegt dem Gefier an der Haaptusiicht STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op d'Schëff. Ctrl+Klick follegt dem Schëff an der Haaptusiicht -STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op den Fliger. Ctrl+Klick follegt dem Fliger an der Haaptusiicht +STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Zentréiert d'Usiicht op de Fliger. Ctrl+Klick follegt dem Fliger an der Haaptusiicht -STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéckt den Zuch an den Schapp. Ctrl+Klick fir nëmmen Revisoun -STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéckt d'Gefier an den Depot. Ctrl+Klick fir nëmmen Revisoun -STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéck d'Schëff an den Schapp. Ctrl+Klick fir nëmmen Revisoun -STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéckt den Fliger an den Hangar. CTRL+Klick mëscht nëmmen Revisioun +STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéckt den Zuch an de Schapp. Ctrl+Klick fir nëmmen Revisioun +STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéckt d'Gefier an den Depot. Ctrl+Klick fir nëmmen Revisioun +STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéckt d'Schëff an de Schapp. Ctrl+Klick fir nëmmen Revisioun +STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Schéckt de Fliger an den Hangar. Ctrl+Klick mécht nëmmen eng Revisioun -STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Dëst baut eng Kopie vun engem Zuch mat all den Waggonen. Ctrl+Klick kopéiert och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf +STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Dëst baut eng Kopie vun engem Zuch mat all de Waggonen. Ctrl+Klick kopéiert och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Baut eng Kopie vum Stroossegefier. Ctrl+Klick kopéiert och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Dëst baut eng Kopie vum Schëff. Ctrl+Klick kopéiert och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Dëst baut eng Kopie vum Fliger. Ctrl+Klick kopéiert och d'Opträg. Shift+Klick weist ongeféier Käschten ouni Kaf -STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Forcéiert den Zuch durch d'Signal ze fueren +STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Zwéngt den Zuch durch d'Signal ze fueren STR_VEHICLE_VIEW_TRAIN_REFIT_TOOLTIP :{BLACK}Den Zuch upassen fir aaner Luedungen ze transportéieren STR_VEHICLE_VIEW_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Stroossegefier ëmbauen fir eng aner Wuer ze transportéiren -STR_VEHICLE_VIEW_SHIP_REFIT_TOOLTIP :{BLACK}Schëffslager ëmbauen fir aaner Luedungen ze transportéieren +STR_VEHICLE_VIEW_SHIP_REFIT_TOOLTIP :{BLACK}Schëff ëmbauen fir aaner Luedungen ze transportéieren STR_VEHICLE_VIEW_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Fliger ëmbauen fir aaner Wueren ze transportéieren STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Richtung vum Zuch wiesselen -STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Forcéiert d'Gefier fir ze dréien +STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Zwéngt d'Gefier ze dréinen STR_VEHICLE_VIEW_TRAIN_ORDERS_TOOLTIP :{BLACK}Weist d'Opträg vum Zuch. Ctrl+Klick weist den Zäitplang STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Weist d'Opträg vum Gefier. Ctrl+Klick weist den Zäitplang @@ -3556,30 +3606,30 @@ STR_VEHICLE_VIEW_SHIP_ORDERS_TOOLTIP :{BLACK}Weist d' STR_VEHICLE_VIEW_AIRCRAFT_ORDERS_TOOLTIP :{BLACK}Weist d'Opträg vum Fliger. Ctrl+Klick weist den Zäitplang STR_VEHICLE_VIEW_TRAIN_SHOW_DETAILS_TOOLTIP :{BLACK}Weist d'Detailer vum Zuch -STR_VEHICLE_VIEW_ROAD_VEHICLE_SHOW_DETAILS_TOOLTIP :{BLACK}Weist Stroosengefier Detailer -STR_VEHICLE_VIEW_SHIP_SHOW_DETAILS_TOOLTIP :{BLACK}Weist Schëffdetailer +STR_VEHICLE_VIEW_ROAD_VEHICLE_SHOW_DETAILS_TOOLTIP :{BLACK}Weist Stroossegefier Detailer +STR_VEHICLE_VIEW_SHIP_SHOW_DETAILS_TOOLTIP :{BLACK}Weis Schëffsdetailer STR_VEHICLE_VIEW_AIRCRAFT_SHOW_DETAILS_TOOLTIP :{BLACK}Weist d'Fligerdetailer STR_VEHICLE_VIEW_TRAIN_STATE_START_STOP_TOOLTIP :{BLACK}Momentan Aktioun - klick hei fir den Zuch ze stoppen/starten. Ctrl+Klick fir op Destinatioun ze scrollen STR_VEHICLE_VIEW_ROAD_VEHICLE_STATE_START_STOP_TOOLTIP :{BLACK}Momentan Aktioun - klick hei fir d'Gefier ze stoppen/starten. Ctrl+Klick fir op Destinatioun ze scrollen STR_VEHICLE_VIEW_SHIP_STATE_START_STOP_TOOLTIP :{BLACK}Momentan Aktioun - Klick hei fir d'Schëff ze stoppen/starten. Ctrl+Klick fir op Destinatioun ze scrollen -STR_VEHICLE_VIEW_AIRCRAFT_STATE_START_STOP_TOOLTIP :{BLACK}Momentan Aktioun - Klick hei fir den Fliger ze stoppen/starten. Ctrl+Klick fir op Destinatioun ze scrollen +STR_VEHICLE_VIEW_AIRCRAFT_STATE_START_STOP_TOOLTIP :{BLACK}Momentan Aktioun - Klick hei fir de Fliger ze stoppen/starten. Ctrl+Klick fir op Destinatioun ze scrollen # Messages in the start stop button in the vehicle view STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Lueden / Entlueden STR_VEHICLE_STATUS_LEAVING :{LTBLUE}Verloossen -STR_VEHICLE_STATUS_CRASHED :{RED}Accident! +STR_VEHICLE_STATUS_CRASHED :{RED}Akzident! STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Pann STR_VEHICLE_STATUS_STOPPED :{RED}Gestoppt -STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Stopt, {VELOCITY} +STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Stoppt, {VELOCITY} STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Keng Energie -STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Ward op en fraien Wee +STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Waard op en fräie Wee STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Ze wäit op nächst Destinatioun -STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Um Wee op {STATION}, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Ennerwee op {STATION}, {VELOCITY} STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}Keng Opträg, {VELOCITY} -STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}Um Wee fir {WAYPOINT}, {VELOCITY} -STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}Um Wee an den {DEPOT}, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}Ennerwee op {WAYPOINT}, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}Ennerwee an den {DEPOT}, {VELOCITY} STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}Revisioun am {DEPOT}, {VELOCITY} # Vehicle stopped/started animations @@ -3589,7 +3639,7 @@ STR_VEHICLE_COMMAND_STARTED_SMALL :{TINY_FONT}{GRE STR_VEHICLE_COMMAND_STARTED :{GREEN}Gestart # Vehicle details -STR_VEHICLE_DETAILS_CAPTION :{WHITE}{VEHICLE} (Details) +STR_VEHICLE_DETAILS_CAPTION :{WHITE}{VEHICLE} (Detailer) STR_VEHICLE_NAME_BUTTON :{BLACK}Numm STR_VEHICLE_DETAILS_TRAIN_RENAME :{BLACK}Zuch benennen @@ -3597,7 +3647,7 @@ STR_VEHICLE_DETAILS_ROAD_VEHICLE_RENAME :{BLACK}Stroosse STR_VEHICLE_DETAILS_SHIP_RENAME :{BLACK}Schëff benennen STR_VEHICLE_DETAILS_AIRCRAFT_RENAME :{BLACK}Fliger benennen -STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Alter: {LTBLUE}{STRING}{BLACK} Betriibskäschten: {LTBLUE}{CURRENCY_LONG}/Joer +STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Alter: {LTBLUE}{STRING}{BLACK} Betribskäschten: {LTBLUE}{CURRENCY_LONG}/Joer # The next two need to stay in this order STR_VEHICLE_INFO_AGE :{COMMA} Joer ({COMMA}) STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} Joer ({COMMA}) @@ -3610,20 +3660,20 @@ STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Gewiicht STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR :{BLACK}Profit dëst Joer: {LTBLUE}{CURRENCY_LONG} (lescht Joer: {CURRENCY_LONG}) STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Zouverlässegkeet: {LTBLUE}{COMMA}% {BLACK}Pannen säit leschter Revisioun: {LTBLUE}{COMMA} -STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Gebaut: {LTBLUE}{NUM}{BLACK} Wert: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Gebaut: {LTBLUE}{NUM}{BLACK} Wäert: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_INFO_NO_CAPACITY :{BLACK}Kapazitéit: {LTBLUE}Keng{STRING} STR_VEHICLE_INFO_CAPACITY :{BLACK}Kapazitéit: {LTBLUE}{CARGO_LONG}{3:STRING} STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Kapazitéit: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM}) STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapazitéit: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} -STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer Suen: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transferts-Suen: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Revisiounsintervall: {LTBLUE}{COMMA}Deeg{BLACK} Lescht Revisioun: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Revisiounsintervall: {LTBLUE}{COMMA}{NBSP}Deeg{BLACK} Lescht Revisioun: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Revisiounsintervall: {LTBLUE}{COMMA}%{BLACK} Lescht Revisioun: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Revisiounsintervall em 10 erhéijen. Ctrl+Klick erhéicht Intervall em 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Revisiounsintervall em 10 erofsetzen. Ctrl+Klick setzt den Intervall em 5 rof -STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Wiesselt den Revisiounsintervall +STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Wiesselt de Revisiounsintervall STR_VEHICLE_DETAILS_DEFAULT :Standard STR_VEHICLE_DETAILS_DAYS :Deeg STR_VEHICLE_DETAILS_PERCENT :Prozent @@ -3634,10 +3684,10 @@ STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Schëff STR_QUERY_RENAME_AIRCRAFT_CAPTION :{WHITE}Fliger benennen # Extra buttons for train details windows -STR_VEHICLE_DETAILS_TRAIN_ENGINE_BUILT_AND_VALUE :{LTBLUE}{ENGINE}{BLACK} Gebaut: {LTBLUE}{NUM}{BLACK} Wert: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_TRAIN_WAGON_VALUE :{LTBLUE}{ENGINE}{BLACK} Wert: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_DETAILS_TRAIN_ENGINE_BUILT_AND_VALUE :{LTBLUE}{ENGINE}{BLACK} Gebaut: {LTBLUE}{NUM}{BLACK} Wäert: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_DETAILS_TRAIN_WAGON_VALUE :{LTBLUE}{ENGINE}{BLACK} Wäert: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT :{BLACK}Total Luedplaz fir dësen Zuch: +STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT :{BLACK}Total Kapazitéit fir dësen Zuch: STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_MULT :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) (x{NUM}) @@ -3646,11 +3696,11 @@ STR_VEHICLE_DETAILS_CARGO_FROM :{LTBLUE}{CARGO_ STR_VEHICLE_DETAILS_CARGO_FROM_MULT :{LTBLUE}{CARGO_LONG} vun {STATION} (x{NUM}) STR_VEHICLE_DETAIL_TAB_CARGO :{BLACK}Luedung -STR_VEHICLE_DETAILS_TRAIN_CARGO_TOOLTIP :{BLACK}Weist d'Detailer vun der Luedung +STR_VEHICLE_DETAILS_TRAIN_CARGO_TOOLTIP :{BLACK}Weis d'Detailer vun der Luedung STR_VEHICLE_DETAIL_TAB_INFORMATION :{BLACK}Informatioun -STR_VEHICLE_DETAILS_TRAIN_INFORMATION_TOOLTIP :{BLACK}Weist d'Detailer vun den Waggonen +STR_VEHICLE_DETAILS_TRAIN_INFORMATION_TOOLTIP :{BLACK}Weist d'Detailer vun de Waggonen STR_VEHICLE_DETAIL_TAB_CAPACITIES :{BLACK}Kapazitéiten -STR_VEHICLE_DETAILS_TRAIN_CAPACITIES_TOOLTIP :{BLACK}Weist d'Kapazitéiten vun den Waggonen +STR_VEHICLE_DETAILS_TRAIN_CAPACITIES_TOOLTIP :{BLACK}Weist d'Kapazitéite vun de Waggonen STR_VEHICLE_DETAIL_TAB_TOTAL_CARGO :{BLACK}Total Luedung STR_VEHICLE_DETAILS_TRAIN_TOTAL_CARGO_TOOLTIP :{BLACK}Weist d'Total Kapazitéit vum Zuch, opgedeelt op d'Wuerentypen @@ -3658,27 +3708,27 @@ STR_VEHICLE_DETAILS_TRAIN_ARTICULATED_RV_CAPACITY :{BLACK}Kapazit # Vehicle refit STR_REFIT_CAPTION :{WHITE}{VEHICLE} (Refit) -STR_REFIT_TITLE :{GOLD}Wielt den Luedungstyp: +STR_REFIT_TITLE :{GOLD}Wielt de Luedungstyp: STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Nei Kapazitéit: {GOLD}{CARGO_LONG}{}{BLACK}Käschten fir ëmzebauen: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Nei Kapazitéit: {GOLD}{CARGO_LONG}{}{BLACK}Akommes vum Embau: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Nei Kapazitéit: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Käschten fir den Embau: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Nei Kapazitéit: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Akommes vum Embau: {GREEN}{CURRENCY_LONG} -STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Wiel d'Gefierer fir den Embau. Mat der Maus zéien erlaabt den Embau vun méi Gefierer. Op eng eidel Plaz klicken wielt d'ganzt Gefier. Ctrl+Klick wielt e Gefier an de Rescht vun der Ketten +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Wiel d'Gefierer fir den Embau. Mat der Maus zéien erlaabt den Embau vu méi Gefierer. Op eng eidel Plaz klicken wielt d'ganzt Gefier. Ctrl+Klick wielt e Gefier an de Rescht vun der Ketten -STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Wielt d'Luedung déi transportéiert soll ginn -STR_REFIT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Wielt den Typ vun Wueren fir Stroossegefier -STR_REFIT_SHIP_LIST_TOOLTIP :{BLACK}Wielt den Luedungstyp fir d'Schëff -STR_REFIT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Wielt den Luedungstyp aus +STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Wielt d'Wuer déi transportéiert soll ginn +STR_REFIT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Wielt den Typ vu Wueren fir d'Stroossegefier +STR_REFIT_SHIP_LIST_TOOLTIP :{BLACK}Wielt de Wuerentyp fir d'Schëff +STR_REFIT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Wielt de Wuerentyp aus -STR_REFIT_TRAIN_REFIT_BUTTON :{BLACK}Zuch upassen +STR_REFIT_TRAIN_REFIT_BUTTON :{BLACK}Zuch ëmbauen STR_REFIT_ROAD_VEHICLE_REFIT_BUTTON :{BLACK}Stroossegefier ëmbauen STR_REFIT_SHIP_REFIT_BUTTON :{BLACK}Schëff ëmbauen STR_REFIT_AIRCRAFT_REFIT_BUTTON :{BLACK}Fliger ëmbauen -STR_REFIT_TRAIN_REFIT_TOOLTIP :{BLACK}Passt den Zuch un fir den ugewielten Luedungstyp -STR_REFIT_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Stroosengefier embauen fir gewielten Wuer ze transportéiren -STR_REFIT_SHIP_REFIT_TOOLTIP :{BLACK}Schëff op dei ugewielten Luedung ëmbauen -STR_REFIT_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Baut den Fliger fir den ugewieltenen Luedungstyp ëm +STR_REFIT_TRAIN_REFIT_TOOLTIP :{BLACK}Passt den Zuch un den ugewielten Luedungstyp un +STR_REFIT_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Stroossegefier ëmbauen fir déi gewielte Wuer ze transportéiren +STR_REFIT_SHIP_REFIT_TOOLTIP :{BLACK}Schëff fir déi ugewielte Wuer ëmbauen +STR_REFIT_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Baut de Fliger fir den ugewieltenen Luedungstyp ëm # Order view STR_ORDERS_CAPTION :{WHITE}{VEHICLE} (Opträg) @@ -3700,19 +3750,19 @@ STR_ORDER_GO_VIA :Géi via STR_ORDER_GO_NON_STOP_VIA :Géi non-stop iwwert STR_ORDER_TOOLTIP_NON_STOP :{BLACK}Wiesselt d'Stoppen vun dem ungewielten Optrag -STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}Voll lueden mat der Wuer -STR_ORDER_DROP_LOAD_IF_POSSIBLE :Lueden wann méiglech -STR_ORDER_DROP_FULL_LOAD_ALL :Alles voll lueden -STR_ORDER_DROP_FULL_LOAD_ANY :Voll lueden mat der Wuer +STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}Voll luede mat all Wuer +STR_ORDER_DROP_LOAD_IF_POSSIBLE :Luede wa méiglech +STR_ORDER_DROP_FULL_LOAD_ALL :Mat Allem voll lueden +STR_ORDER_DROP_FULL_LOAD_ANY :Voll lueden mat all Wuer STR_ORDER_DROP_NO_LOADING :Net belueden -STR_ORDER_TOOLTIP_FULL_LOAD :{BLACK}Wiesselt Lueden vun dem ungewielten Optrag +STR_ORDER_TOOLTIP_FULL_LOAD :{BLACK}Wiesselt d'Luedverhale vun dem ungewielten Optrag STR_ORDER_TOGGLE_UNLOAD :{BLACK}Alles entlueden -STR_ORDER_DROP_UNLOAD_IF_ACCEPTED :Entlueden wann acceptéiert +STR_ORDER_DROP_UNLOAD_IF_ACCEPTED :Entluede wann akzeptéiert STR_ORDER_DROP_UNLOAD :Alles entlueden STR_ORDER_DROP_TRANSFER :Transferéieren STR_ORDER_DROP_NO_UNLOADING :Net entlueden -STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Wiesselt Entlueden vun dem ungewielten Optrag +STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Wiesselt d'Entluedverhale vun dem ungewielten Optrag STR_ORDER_REFIT :{BLACK}Ëmbauen STR_ORDER_REFIT_TOOLTIP :{BLACK}Wielt an wéi een Luedungstyp sollt emgebaut ginn. Ctrl+Klick fir den Ëmbau ze läschen @@ -3738,31 +3788,31 @@ STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Brauch eng Revi STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Ëmmer STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :Reschtlaafzäit (Joer) -STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Wéi Gefierdaten verglach sollen ginn +STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Wéi Gefierdaten verglach solle ginn STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :ass gläich STR_ORDER_CONDITIONAL_COMPARATOR_NOT_EQUALS :ass net gläich STR_ORDER_CONDITIONAL_COMPARATOR_LESS_THAN :ass manner wéi STR_ORDER_CONDITIONAL_COMPARATOR_LESS_EQUALS :ass manner oder gläich wéi STR_ORDER_CONDITIONAL_COMPARATOR_MORE_THAN :ass méi wéi STR_ORDER_CONDITIONAL_COMPARATOR_MORE_EQUALS :ass méi oder gläich wéi -STR_ORDER_CONDITIONAL_COMPARATOR_IS_TRUE :ass wouer(true) -STR_ORDER_CONDITIONAL_COMPARATOR_IS_FALSE :ass falsch(false) +STR_ORDER_CONDITIONAL_COMPARATOR_IS_TRUE :ass richteg (true) +STR_ORDER_CONDITIONAL_COMPARATOR_IS_FALSE :ass falsch (false) -STR_ORDER_CONDITIONAL_VALUE_TOOLTIP :{BLACK}Den Wäert deen mat den Gefierdaten verglach gëtt -STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Wäert anginn fir ze vergläichen +STR_ORDER_CONDITIONAL_VALUE_TOOLTIP :{BLACK}De Wäert dee mat de Gefierdaten verglach gëtt +STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Wäert aginn fir ze vergläichen STR_ORDERS_SKIP_BUTTON :{BLACK}Iwwersprangen -STR_ORDERS_SKIP_TOOLTIP :{BLACK}Iwwersprang den momentanen Optrag. CTRL+Klick iwwerspréngt op den ungewieltenen Optrag +STR_ORDERS_SKIP_TOOLTIP :{BLACK}Iwwersprang de momentanen Optrag. CTRL+Klick iwwerspréngt op den ungewieltenen Optrag STR_ORDERS_DELETE_BUTTON :{BLACK}Läschen -STR_ORDERS_DELETE_TOOLTIP :{BLACK}Lescht den ungewieltenen Optrag +STR_ORDERS_DELETE_TOOLTIP :{BLACK}Läscht den ungewielten Optrag STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}All Opträg läschen -STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Deelen stoppen -STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Stop d'Deelen vun der Optragslëscht. Ctrl+Klick lescht ausserdem all Opträg vun dësem Gefier +STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}D'Deele stoppen +STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Stop d'Deele vun der Optragslëscht. Ctrl+Klick lescht ausserdem all Opträg vun dësem Gefier STR_ORDERS_GO_TO_BUTTON :{BLACK}Géi op -STR_ORDER_GO_TO_NEAREST_DEPOT :Géi an den noosten Schapp -STR_ORDER_GO_TO_NEAREST_HANGAR :Géi bei den noosten Hangar +STR_ORDER_GO_TO_NEAREST_DEPOT :Géi an den nooste Schapp +STR_ORDER_GO_TO_NEAREST_HANGAR :Géi an den noosten Hangar STR_ORDER_CONDITIONAL :Bedéngten Optragssprong STR_ORDER_SHARE :Opträg deelen STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Setzt en neien Optrag firun den ungewielten Optrag, oder un d'Enn vun der Lëscht. Ctrl setzt Statioun Opträg op voll lueden, Weepunkter op 'non-stop', an Schapp Opträg 'Revisioun'. Op en Gefier klicken, kopéiert d'Opträg vun dem Gefier @@ -3771,21 +3821,21 @@ STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Weis all # String parts to build the order string STR_ORDER_GO_TO_WAYPOINT :Iwwert {WAYPOINT} -STR_ORDER_GO_NON_STOP_TO_WAYPOINT :Géi non-stop via{WAYPOINT} +STR_ORDER_GO_NON_STOP_TO_WAYPOINT :Géi non-stop via {WAYPOINT} -STR_ORDER_SERVICE_AT :Revisioun bei -STR_ORDER_SERVICE_NON_STOP_AT :Revisioun non-stop bei +STR_ORDER_SERVICE_AT :Revisioun am/an +STR_ORDER_SERVICE_NON_STOP_AT :Revisioun non-stop am/an STR_ORDER_NEAREST_DEPOT :den noosten STR_ORDER_NEAREST_HANGAR :den noosten Hangar STR_ORDER_TRAIN_DEPOT :Zuchschapp -STR_ORDER_ROAD_VEHICLE_DEPOT :Stroossegefierer-Depot +STR_ORDER_ROAD_VEHICLE_DEPOT :Stroossegefier-Depot STR_ORDER_SHIP_DEPOT :Schëffsschapp STR_ORDER_GO_TO_NEAREST_DEPOT_FORMAT :{STRING} {STRING} {STRING} STR_ORDER_GO_TO_DEPOT_FORMAT :{STRING} {DEPOT} STR_ORDER_REFIT_ORDER :(Ëmbau op {STRING}) -STR_ORDER_REFIT_STOP_ORDER :(Ëmbau op {STRING} an stopen) +STR_ORDER_REFIT_STOP_ORDER :(Ëmbau op {STRING} an stoppen) STR_ORDER_STOP_ORDER :(Stop) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} @@ -3808,30 +3858,30 @@ STR_ORDER_NO_UNLOAD_FULL_LOAD :(Net entlueden STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Net entlueden an op iergendeng voll Beluedung waarden) STR_ORDER_NO_UNLOAD_NO_LOAD :(Keen Ent- an Belueden) -STR_ORDER_AUTO_REFIT :(Embauen zu {STRING}) -STR_ORDER_FULL_LOAD_REFIT :(Vollueden mat Embauen zu {STRING}) -STR_ORDER_FULL_LOAD_ANY_REFIT :(Vollueden mat all Wueren mat Embauen zu {STRING}) -STR_ORDER_UNLOAD_REFIT :(Entlueden an Wueren lueden mat Embauen zu {STRING}) -STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Entlueden an op voll Luedung waarden mat Embauen zu {STRING}) -STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Entlueden an ward op iergendeng Volluedung mat Embauen zu {STRING}) +STR_ORDER_AUTO_REFIT :(Embauen op {STRING}) +STR_ORDER_FULL_LOAD_REFIT :(Voll lueden mat Embauen op {STRING}) +STR_ORDER_FULL_LOAD_ANY_REFIT :(Voll lueden mat all Wueren mat Embauen op {STRING}) +STR_ORDER_UNLOAD_REFIT :(Entlueden an Wueren lueden mat Embauen op {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Entlueden an op voll Luedung waarden mat Embauen op {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Entlueden an waard op iergendeng Volluedung mat Embauen op {STRING}) STR_ORDER_TRANSFER_REFIT :(Transfer an lued Wueren mat Auto-Embauen zu {STRING}) -STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Transfer an ward op Vollueden mat Auto-Embauen zu {STRING}) -STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Transfer an ward op iergendeng Volluedung mat Auto-Embauen zu {STRING}) -STR_ORDER_NO_UNLOAD_REFIT :(Keen Entlueden an huel Wueren mat Auto-Embauen zu {STRING}) -STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Keen Entlueden an ward op Vollueden mat Auto-Embauen zu {STRING}) -STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Keen Entlueden an ward op iergendend Volluedung mat Auto-Embauen zu {STRING}) +STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Transfer an waard op Vollueden mat Auto-Embauen op {STRING}) +STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Transfer an waard op iergendeng Volluedung mat Auto-Embauen op {STRING}) +STR_ORDER_NO_UNLOAD_REFIT :(Keen Entlueden an huel Wueren mat Auto-Embauen op {STRING}) +STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Keen Entlueden an waard op Vollueden mat Auto-Embauen op {STRING}) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Keen Entlueden an waard op iergendend Volluedung mat Auto-Embauen op {STRING}) STR_ORDER_AUTO_REFIT_ANY :verfügbar Wueren -STR_ORDER_STOP_LOCATION_NEAR_END :[noot Enn] +STR_ORDER_STOP_LOCATION_NEAR_END :[noosten Enn] STR_ORDER_STOP_LOCATION_MIDDLE :[Mëtt] STR_ORDER_STOP_LOCATION_FAR_END :[wäit Enn] STR_ORDER_OUT_OF_RANGE :{RED} (Nächst Destinatioun ass ze wäit fort) -STR_ORDER_CONDITIONAL_UNCONDITIONAL :Sprang op Optrag {COMMA} -STR_ORDER_CONDITIONAL_NUM :Sprang op Optrag {COMMA} wann {STRING} {STRING} {COMMA} -STR_ORDER_CONDITIONAL_TRUE_FALSE :Sprang op Optrag {COMMA} wann {STRING} {STRING} +STR_ORDER_CONDITIONAL_UNCONDITIONAL :Sprang zum Optrag {COMMA} +STR_ORDER_CONDITIONAL_NUM :Sprang zum Optrag {COMMA} wann {STRING} {STRING} {COMMA} +STR_ORDER_CONDITIONAL_TRUE_FALSE :Sprang zum Optrag {COMMA} wann {STRING} {STRING} STR_INVALID_ORDER :{RED} (ongültegen Optrag) @@ -3843,21 +3893,21 @@ STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Wiesselt STR_TIMETABLE_TOOLTIP :{BLACK}Zäitplang - klick op en Optrag fir en ze wielen STR_TIMETABLE_NO_TRAVEL :Net ënnerwee -STR_TIMETABLE_NOT_TIMETABLEABLE :Rees(automatesch; Zaitplang durch manuell Opträg) +STR_TIMETABLE_NOT_TIMETABLEABLE :Rees (automatesch; Zäitplang durch manuell Opträg) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Ënnerwee (ouni Zäitplang) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Fuer maximal {2:VELOCITY} (ouni Zäitplang) -STR_TIMETABLE_TRAVEL_FOR :Ënnerwee fir {STRING} -STR_TIMETABLE_TRAVEL_FOR_SPEED :Fiert fir {STRING} mat maximal {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR :Ënnerwee während {STRING} +STR_TIMETABLE_TRAVEL_FOR_SPEED :Fiert während {STRING} mat maximal {VELOCITY} STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Fuer (während {STRING}, ouni Zäitplang) STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Fuer (während {STRING}, ouni Zäitplang) mat maximal {VELOCITY} STR_TIMETABLE_STAY_FOR_ESTIMATED :(bleif während {STRING}, ouni Zäitplang) STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(fuer während {STRING}, ouni Zäitplang) STR_TIMETABLE_STAY_FOR :an bleif fir {STRING} -STR_TIMETABLE_AND_TRAVEL_FOR :an ënnerwee op {STRING} -STR_TIMETABLE_DAYS :{COMMA} D{P ag eeg} -STR_TIMETABLE_TICKS :{COMMA} Intervall{P "" en} +STR_TIMETABLE_AND_TRAVEL_FOR :an ënnerwee während {STRING} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}D{P ag eeg} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}Tick{P "" en} -STR_TIMETABLE_TOTAL_TIME :{BLACK}Dësen Zäitplang brauch {STRING} fir faërdeg ze gin +STR_TIMETABLE_TOTAL_TIME :{BLACK}Dësen Zäitplang brauch {STRING} fir faërdeg ze ginn STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Dësen Zäitplang brauch op manst {STRING} (net all geplangt) STR_TIMETABLE_STATUS_ON_TIME :{BLACK}D'Gefier ass mat Zäit @@ -3867,25 +3917,25 @@ STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}Dësen Z STR_TIMETABLE_STATUS_START_AT :{BLACK}Dësen Zäitplang start um {STRING} STR_TIMETABLE_STARTING_DATE :{BLACK}Start Datum -STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}Wiel en Datum als Startpunkt fir dësen Zäitplang. Ctrl+Klick setzt den Startpunkt vun dësem Zäitplang an verdeelt et en gläichméisseg op all Gefierer déi dësen Optrag hunn, wann den Optrag komplett mat engem Zäitplang versinn ass +STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}Wiel en Datum als Startpunkt fir dësen Zäitplang. Ctrl+Klick setzt de Startpunkt vun dësem Zäitplang an verdeelt et en gläichméisseg op all Gefierer déi dësen Optrag hunn, wann den Optrag komplett mat engem Zäitplang versinn ass STR_TIMETABLE_CHANGE_TIME :{BLACK}Zäit wiesselen -STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Änner Zäit déi den ugewielten Optrag brauchen soll +STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Änner Zäit déi den ugewielten Optrag brauche soll STR_TIMETABLE_CLEAR_TIME :{BLACK}Zäit läschen -STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Lesch Zäit fir den gewielten Optrag +STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Läsch Zäit fir de gewielten Optrag STR_TIMETABLE_CHANGE_SPEED :{BLACK}Änner de Geschwindegkeetslimit -STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Änner d'maximal Reesgeschwindëgkeet fir den gewielten Optrag +STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Änner d'maximal Reesgeschwindëgkeet fir de gewielten Optrag STR_TIMETABLE_CLEAR_SPEED :{BLACK}Geschwindegkeetslimit läschen STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Maximal Reesgeschwindegkeet vum gewielten Optrag läschen STR_TIMETABLE_RESET_LATENESS :{BLACK}Verspeidungszieler zerécksetzen -STR_TIMETABLE_RESET_LATENESS_TOOLTIP :{BLACK}Setzt den Verspéidungszieler zréck, sou dass d'Gefier mat Zäit ukënnt +STR_TIMETABLE_RESET_LATENESS_TOOLTIP :{BLACK}Setzt de Verspéidungszieler zréck, sou dass d'Gefier mat Zäit ukënnt STR_TIMETABLE_AUTOFILL :{BLACK}Autofëllen -STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Fëll den Zäitplang automatesch mat den Wäerter vum nächsten Trajet (Ctrl+Klick fir Wardzäiten probéiren bäizehalen) +STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Fëll den Zäitplang automatesch mat de Wäerter vum nächsten Trajet (Ctrl+Klick fir Wardzäiten probéiren bäizehalen) STR_TIMETABLE_EXPECTED :{BLACK}Erwaard STR_TIMETABLE_SCHEDULED :{BLACK}Geplangt @@ -3898,7 +3948,7 @@ STR_TIMETABLE_DEPARTURE_ABBREVIATION :D: # Date window (for timetable) STR_DATE_CAPTION :{WHITE}Datum setzen STR_DATE_SET_DATE :{BLACK}Datum setzen -STR_DATE_SET_DATE_TOOLTIP :{BLACK}Den gewielten Datum als Startdatum fir den Zäitplang benotzen +STR_DATE_SET_DATE_TOOLTIP :{BLACK}De gewielten Datum als Startdatum fir den Zäitplang benotzen STR_DATE_DAY_TOOLTIP :{BLACK}Dag wielen STR_DATE_MONTH_TOOLTIP :{BLACK}Mount wielen STR_DATE_YEAR_TOOLTIP :{BLACK}Joer wielen @@ -3916,13 +3966,13 @@ STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}Erlab/Ve STR_AI_DEBUG_BREAK_ON_LABEL :{BLACK}Break un/op: STR_AI_DEBUG_BREAK_STR_OSKTITLE :{BLACK}Break un STR_AI_DEBUG_BREAK_STR_TOOLTIP :{BLACK}Wann en KI Log message zum String passt, pauséiert d'Spill -STR_AI_DEBUG_MATCH_CASE :{BLACK}Passenden Fall -STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Wiessel tëscht passenden Fäll beim vergläichen vun KI Log Messagen mam Break-String +STR_AI_DEBUG_MATCH_CASE :{BLACK}Passende Fall +STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Wiessel tëscht passende Fäll beim vergläichen vu KI Log Messagen mam Break-String STR_AI_DEBUG_CONTINUE :{BLACK}Weider STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Entpaus an fuer weider mat der KI STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Debug-output fir dës KI uweisen STR_AI_GAME_SCRIPT :{BLACK}Spill-Script -STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Check den Spill-Scipt-Log +STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Check de Spill-Scipt-Log STR_ERROR_AI_NO_AI_FOUND :Keng passend KI fonnt fir ze lueden.{}Dës KI ass en Dummy an wäert näischt maachen.{}KI'en kënnen iwwert den 'Online Content' System downgeload ginn. STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}En Script ass ofgestierzt. W.e.g mellt dës dem Autor mat engem Screenshot vun der KI/Spill-Script Debugfënster @@ -3930,16 +3980,16 @@ STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}KI / Sp # AI configuration window STR_AI_CONFIG_CAPTION :{WHITE}KI /Spill-Script Konfiguratioun -STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}D'Spill-Script dat am nächsten Spill gelueden gëtt -STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}D'KIën déi am nächsten Spill gelueden ginn -STR_AI_CONFIG_HUMAN_PLAYER :Mënschlechen Spiller +STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}D'Spill-Script dat am nächsten Spill geluede gëtt +STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}D'KIën déi am nächsten Spill geluede ginn +STR_AI_CONFIG_HUMAN_PLAYER :Mënschleche Spiller STR_AI_CONFIG_RANDOM_AI :Zoufälleg KI STR_AI_CONFIG_NONE :(keng) STR_AI_CONFIG_MOVE_UP :{BLACK}No uewen setzen -STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Gewielten KI an der Lëscht no uewen setzen +STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Gewielte KI an der Lëscht no uewen setzen STR_AI_CONFIG_MOVE_DOWN :{BLACK}Erof setzen -STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Gewielten KI an der Lëscht no ënnen setzen +STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Gewielte KI an der Lëscht no ënne setzen STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spill-Script STR_AI_CONFIG_AI :{SILVER}KIën @@ -3962,8 +4012,8 @@ STR_AI_LIST_AUTHOR :{LTBLUE}Autor: STR_AI_LIST_VERSION :{LTBLUE}Versioun: {ORANGE}{NUM} STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING} -STR_AI_LIST_ACCEPT :{BLACK}Acceptéiert -STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Wiel den markéierten Script +STR_AI_LIST_ACCEPT :{BLACK}Akzeptéiert +STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Wiel de markéierten Script STR_AI_LIST_CANCEL :{BLACK}Ofbriechen STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Script net änneren @@ -3974,7 +4024,7 @@ STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spill-Script STR_AI_SETTINGS_CLOSE :{BLACK}Zoumaachen STR_AI_SETTINGS_RESET :{BLACK}Reset STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} -STR_AI_SETTINGS_START_DELAY :Unzuel vun Deeg wou dës KI gestart gëtt no der leschter: {ORANGE}{STRING} +STR_AI_SETTINGS_START_DELAY :Unzuel un Deeg wou des KI gestart gëtt no der leschter: {ORANGE}{STRING} # Textfile window @@ -4003,54 +4053,54 @@ STR_INCOME_FLOAT_COST_SMALL :{TINY_FONT}{RED STR_INCOME_FLOAT_COST :{RED}Käschten: {CURRENCY_LONG} STR_INCOME_FLOAT_INCOME_SMALL :{TINY_FONT}{GREEN}Akommes: {CURRENCY_LONG} STR_INCOME_FLOAT_INCOME :{GREEN}Akommes: {CURRENCY_LONG} -STR_FEEDER_TINY :{TINY_FONT}{YELLOW}Transfer: {CURRENCY_LONG} -STR_FEEDER :{YELLOW}Transfer: {CURRENCY_LONG} -STR_FEEDER_INCOME_TINY :{TINY_FONT}{YELLOW}Transfer: {CURRENCY_LONG}{WHITE} / {GREEN}Akommes: {CURRENCY_LONG} -STR_FEEDER_INCOME :{YELLOW}Transfer: {CURRENCY_LONG}{WHITE} / {GREEN}Akommes: {CURRENCY_LONG} -STR_FEEDER_COST_TINY :{TINY_FONT}{YELLOW}Transfer: {CURRENCY_LONG}{WHITE} / {RED}Käschten: {CURRENCY_LONG} -STR_FEEDER_COST :{YELLOW}Transfer: {CURRENCY_LONG}{WHITE} / {RED}Käschten: {CURRENCY_LONG} -STR_MESSAGE_ESTIMATED_COST :{WHITE}Geschätzten Käschten: {CURRENCY_LONG} -STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Geschätzten Akommen: {CURRENCY_LONG} +STR_FEEDER_TINY :{TINY_FONT}{YELLOW}Transfert: {CURRENCY_LONG} +STR_FEEDER :{YELLOW}Transfert: {CURRENCY_LONG} +STR_FEEDER_INCOME_TINY :{TINY_FONT}{YELLOW}Transfert: {CURRENCY_LONG}{WHITE} / {GREEN}Akommes: {CURRENCY_LONG} +STR_FEEDER_INCOME :{YELLOW}Transfert: {CURRENCY_LONG}{WHITE} / {GREEN}Akommes: {CURRENCY_LONG} +STR_FEEDER_COST_TINY :{TINY_FONT}{YELLOW}Transfert: {CURRENCY_LONG}{WHITE} / {RED}Käschten: {CURRENCY_LONG} +STR_FEEDER_COST :{YELLOW}Transfert: {CURRENCY_LONG}{WHITE} / {RED}Käschten: {CURRENCY_LONG} +STR_MESSAGE_ESTIMATED_COST :{WHITE}Geschätzte Käschten: {CURRENCY_LONG} +STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Geschätzten Akommes: {CURRENCY_LONG} # Saveload messages -STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Nach umgaangen ze späicheren. {} Weg. waarden bis daat faerdeg ass! +STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Nach amgaangen ze späicheren. {} W.e.g. waarde bis daat fäerdeg ass! STR_ERROR_AUTOSAVE_FAILED :{WHITE}Fehler beim Autospäicheren STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Kann net um Laafwierk liesen STR_ERROR_GAME_SAVE_FAILED :{WHITE}Fehler beim Späicheren{}{STRING} STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}Kann d'Datei net läschen STR_ERROR_GAME_LOAD_FAILED :{WHITE}Fehler beim Lueden{}{STRING} -STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Internen Fehler: {STRING} +STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Interne Fehler: {STRING} STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :Futtissen Spillstand - {STRING} STR_GAME_SAVELOAD_ERROR_TOO_NEW_SAVEGAME :Spillstand ass mat enger méi neier Versioun gemaach STR_GAME_SAVELOAD_ERROR_FILE_NOT_READABLE :Datei net liesbar STR_GAME_SAVELOAD_ERROR_FILE_NOT_WRITEABLE :Datei net beschreiwbar STR_GAME_SAVELOAD_ERROR_DATA_INTEGRITY_CHECK_FAILED :Datenintegritéitfehler -STR_GAME_SAVELOAD_NOT_AVAILABLE : +STR_GAME_SAVELOAD_NOT_AVAILABLE : STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}Spill gouf an enger Versioun ouni Tram support gesaved. All Tram gouf wechgeholl # Map generation messages STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Kaartenerstellung ofgebrach...{}... keng passend Stadplazen -STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... et ass keen Duerf an dësem Szenario +STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... et ass keng Stad an dësem Szenario STR_ERROR_PNGMAP :{WHITE}Kann d'Landschaft net vum PNG lueden... STR_ERROR_PNGMAP_FILE_NOT_FOUND :{WHITE}... Datei net fonnt -STR_ERROR_PNGMAP_IMAGE_TYPE :{WHITE}... konnt den Bildtyp net konvertéieren. 8 oder 24-bit PNG Bild benéidegt. +STR_ERROR_PNGMAP_IMAGE_TYPE :{WHITE}... konnt de Bildtyp net konvertéieren. Brauch en 8 oder 24-bit PNG Bild. STR_ERROR_PNGMAP_MISC :{WHITE}... eppes ass schief gaangen (warscheinlech eng korrupt Datei) STR_ERROR_BMPMAP :{WHITE}Kann d'Landschaft net aus der BMP lueden... -STR_ERROR_BMPMAP_IMAGE_TYPE :{WHITE}... konnt den Bildtyp net konvertéieren +STR_ERROR_BMPMAP_IMAGE_TYPE :{WHITE}... konnt de Bildtyp net konvertéieren STR_ERROR_HEIGHTMAP_TOO_LARGE :{WHITE}... Bild ass ze grouss STR_WARNING_HEIGHTMAP_SCALE_CAPTION :{WHITE}Scaléirungswarnung -STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Quellenkaart zevill an der Gréisst änneren ass net ugeroden. Weiderman ? +STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Quellekaart zevill an der Gréisst änneren ass net ugeroden. Weiderman ? # Soundset messages -STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Et gouf nëmmen en Ersatzsoundset fonnt. Wann Sounds erwënscht sin, kënnen se iwwer den Downloadsystem installéiert ginn. +STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Et gouf nëmmen en Ersatzsoundset fonnt. Wann Sounds erwënscht sinn, kënnen se iwwer den Downloadsystem installéiert ginn. # Screenshot related messages STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Riesenscreenshot -STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Den Screenshot wäert eng Opléisung vun{COMMA} x {COMMA} Pixel hunn. Et kann e bëssen dauern bis en gemet ass. Wëllsde weiderman? +STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}De Screenshot wäert eng Opléisung vun {COMMA} x {COMMA} Pixel hunn. Et kann e bëssen dauere bis en gemet ass. Wëllsde weiderman? STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Screenshot gespäichert als '{STRING}' STR_ERROR_SCREENSHOT_FAILED :{WHITE}Screenshotfehler! @@ -4062,27 +4112,27 @@ STR_ERROR_MESSAGE_CAPTION_OTHER_COMPANY :{YELLOW}Matdeel # Generic construction errors STR_ERROR_OFF_EDGE_OF_MAP :{WHITE}Ausserhalb vun der Kaart STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP :{WHITE}Ze noo um Rand vun der Kaart -STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Net genuch Geld - dës Aktioun kascht {CURRENCY_LONG} +STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Net genuch Geld - des Aktioun kascht {CURRENCY_LONG} STR_ERROR_FLAT_LAND_REQUIRED :{WHITE}D'Land muss flaach sinn -STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION :{WHITE}Land ass an dei falsch Richtung geneigt +STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION :{WHITE}Land ass an déi falsch Richtung geneigt STR_ERROR_CAN_T_DO_THIS :{WHITE}Kann dat net maachen... STR_ERROR_BUILDING_MUST_BE_DEMOLISHED :{WHITE}Gebai muss fir d'éischt ofgerapt ginn -STR_ERROR_CAN_T_CLEAR_THIS_AREA :{WHITE}Kann dei Plaz net frai maachen... +STR_ERROR_CAN_T_CLEAR_THIS_AREA :{WHITE}Kann des Plaz net raumen... STR_ERROR_SITE_UNSUITABLE :{WHITE}... Plaz net gëeegent -STR_ERROR_ALREADY_BUILT :{WHITE}... schon gebaut +STR_ERROR_ALREADY_BUILT :{WHITE}... scho gebaut STR_ERROR_OWNED_BY :{WHITE}... am Besëtz vun {STRING} STR_ERROR_AREA_IS_OWNED_BY_ANOTHER :{WHITE}... d'Plaz ass am Besëtz vun enger aanerer Firma -STR_ERROR_TERRAFORM_LIMIT_REACHED :{WHITE}... Limit fir d'Emformen vun Land erreescht -STR_ERROR_CLEARING_LIMIT_REACHED :{WHITE}... Limit fir d'Läschen vun Felder erreescht -STR_ERROR_TREE_PLANT_LIMIT_REACHED :{WHITE}... Limit fir Beem ze planzen erreescht -STR_ERROR_NAME_MUST_BE_UNIQUE :{WHITE}Numm muss eenzegartëg sinn +STR_ERROR_TERRAFORM_LIMIT_REACHED :{WHITE}... Limit fir d'Emformen vu Land erreecht +STR_ERROR_CLEARING_LIMIT_REACHED :{WHITE}... Limit fir d'Raume vu Felder erreecht +STR_ERROR_TREE_PLANT_LIMIT_REACHED :{WHITE}... Limit fir Beem ze planzen erreecht +STR_ERROR_NAME_MUST_BE_UNIQUE :{WHITE}Numm muss eenzegarteg sinn STR_ERROR_GENERIC_OBJECT_IN_THE_WAY :{WHITE}{1:STRING} am Wee STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Net erlaabt an der Paus # Local authority errors -STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}{TOWN} d'Gemeng wëll dat net erlaaben -STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}{TOWN} d'Gemeng erlaabt keen weideren Fluchhafen an der Stad -STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}{TOWN}er Gemeng refüséiert den Bau fir den Fluchhafen wéinst Kaméidi +STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}D'Gemeng {TOWN} wëll dat net erlaben +STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}D'Gemeng {TOWN} erlaabt keen weidere Fluchhafen an der Stad +STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}D'Gemeng {TOWN} refuséiert de Bau vum Fluchhafen wéinst Kaméidi STR_ERROR_BRIBE_FAILED :{WHITE}D'Bestiechung as enger regionaler Ennersichung opgefall # Levelling errors @@ -4092,74 +4142,78 @@ STR_ERROR_CAN_T_LEVEL_LAND_HERE :{WHITE}Kann d'L STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Verdéiwung géif den Tunnel beschiedegen STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... schon op Mieresspigel STR_ERROR_TOO_HIGH :{WHITE}... ze héich -STR_ERROR_ALREADY_LEVELLED :{WHITE}... schon flaach +STR_ERROR_ALREADY_LEVELLED :{WHITE}... scho flaach +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Dono wier d'Bréck ze héich fir dësen Terrain. # Company related errors -STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kann den Firmennumm net änneren... +STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kann de Firmennumm net änneren... STR_ERROR_CAN_T_CHANGE_PRESIDENT :{WHITE}Kann den Numm vum Manager net änneren... -STR_ERROR_MAXIMUM_PERMITTED_LOAN :{WHITE}... Maximalen Kredit ass {CURRENCY_LONG} +STR_ERROR_MAXIMUM_PERMITTED_LOAN :{WHITE}... maximale Kredit ass {CURRENCY_LONG} STR_ERROR_CAN_T_BORROW_ANY_MORE_MONEY :{WHITE}Kann net méi Geld léinen... STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... keen Kredit zeréckzebezuelen STR_ERROR_CURRENCY_REQUIRED :{WHITE}... et ginn {CURRENCY_LONG} gebraucht -STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Kann den Kredit net zeréckbezuelen... +STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Kann de Kredit net zeréckbezuelen... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}Kann keng Suen ginn déi vun der Bank geléint sinn... STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Kann d'Firma net kafen... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Kann d'Firmenhaaptgebai net bauen... -STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}Kann keng 25% Undeel vun dëser Firma kafen... -STR_ERROR_CAN_T_SELL_25_SHARE_IN :{WHITE}Kann kéng 25% Undeel vun dëser Firma verkafen... -STR_ERROR_PROTECTED :{WHITE}Dës Firma ass nach net aal genuch fir Undeeler ze handelen... +STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}Kann keng 25% Undeeler vun dëser Firma kafen... +STR_ERROR_CAN_T_SELL_25_SHARE_IN :{WHITE}Kann keng 25% Undeeler vun dëser Firma verkafen... +STR_ERROR_PROTECTED :{WHITE}Des Firma ass nach net al genuch fir Undeeler ze handelen... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kann keng Stiedt bauen -STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Kann d'Stad net ëmbënennen... +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Ka keng Stied bauen +STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Kann d'Stad net ëmbenennen... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Kann d'Stad hei net bauen... -STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Kann d'Stad net vergréissern... +STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Kann d'Stad net vergréisseren... STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... ze noo um Enn vun der Kaart -STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... ze no un enger anerer Stad +STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... ze noo un enger anerer Stad STR_ERROR_TOO_MANY_TOWNS :{WHITE}... ze vill Stied STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... et ass keng Plaz méi op der Kaart -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Stied bauen keng Stroossen. Du kanns den Bau iwwert Erweidert Astellungen->Economie->Stied anschalten -STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Stroossenarbeschten umgaangen -STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kann dës Stad net läschen...{}Eng Statioun oder Schapp huet den Numm vun dëser Stad oder en Stéck dat der Stad gehéiert kann net ewechgeholl ginn -STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... et gëtt keng Gëeegent Plaz fir eng Statue am Stadzentrum +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Stied bauen keng Stroossen. Du kanns de Bau iwwert Astellungen->Economie->Stied aschalten +STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Stroossenarbeschten amgaangen +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kann des Stad net läschen...{}Eng Statioun oder Schapp huet den Numm vun dëser Stad oder en Stéck dat der Stad gehéiert kann net ewechgeholl ginn +STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... et gëtt keng gëeegent Plaz fir eng Statu am Stadzentrum # Industry related errors STR_ERROR_TOO_MANY_INDUSTRIES :{WHITE}... zevill Industrien STR_ERROR_CAN_T_GENERATE_INDUSTRIES :{WHITE}Kann keng Industrien bauen... STR_ERROR_CAN_T_BUILD_HERE :{WHITE}Kann {STRING} net hei bauen... STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY :{WHITE}Kann deen Industrietyp hei net bauen... -STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... ze Noo bei enger aanerer Fabrik +STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... ze noo bei enger anerer Fabrik STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... muss fir d'éischt eng Stad bauen STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... nëmmen 1 pro Stad erlaabt -STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... kann nëmmen an Stiedt mat opmannst 1200 Anwunner gebaut ginn -STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... kann nëmmen am Regenwaldgebitt gebaut ginn +STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... kann nëmmen an Stied mat op mannst 1200 Anwunner gebaut ginn +STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... kann nëmmen am Reebësch gebaut ginn STR_ERROR_CAN_ONLY_BE_BUILT_IN_DESERT :{WHITE}... kann nëmmen an der Wüst gebaut ginn -STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... kann nëmmen an Stied gebaut ginn (ersetzt Haiser) +STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... kann nëmmen a Stied gebaut ginn (ersetzt Haiser) STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... kann nëmmen an der Géigend vum Zentrum vun der Stad gebaut ginn STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... kann nëmmen an niddregen Beräicher gebaut ginn STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... kann nëmmen no un den Ecker vun der Kaart positionéiert ginn STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... Bësch kann nëmmen iwwert der Schnéilinn geplanzt ginn STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kann nëmmen iwwert der Schnéilinn gebaut ginn -STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kann net ënnert der Schnéilinn bauen +STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kann nëmmen ënnert der Schnéilinn gebaut ginn + +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Et gouf keng brauchbar Plaz fir '{STRING}' Industrien fonnt +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Änner d'Parameter fir d'Kaartegeneratioun fir eng besser Kaart ze erstellen # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kann d'Gare hei net bauen... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kann de Busarrêt hei net bauen... STR_ERROR_CAN_T_BUILD_TRUCK_STATION :{WHITE}Kann d'Camionsgare net bauen... -STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION :{WHITE}Kann d'Passagéier-Tramstatioun net bauen... +STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION :{WHITE}Kann d'Passagéier-Tramsarrêt net bauen... STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION :{WHITE}Kann d'Wueren-Tramstatioun net bauen... STR_ERROR_CAN_T_BUILD_DOCK_HERE :{WHITE}Kann den Dock hei net bauen... -STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Kann den Fluchhafen hei net bauen... +STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Kann de Fluchhafen hei net bauen... STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Grenzt un méi wéi eng Gare un STR_ERROR_STATION_TOO_SPREAD_OUT :{WHITE}... Statioun ze ausgebreed -STR_ERROR_TOO_MANY_STATIONS_LOADING :{WHITE}Ze vill Garen +STR_ERROR_TOO_MANY_STATIONS_LOADING :{WHITE}Ze vill Garen/Luedstatiounen STR_ERROR_TOO_MANY_STATION_SPECS :{WHITE}Ze vill Garesdeeler STR_ERROR_TOO_MANY_BUS_STOPS :{WHITE}Ze vill Busarrêten STR_ERROR_TOO_MANY_TRUCK_STOPS :{WHITE}Ze vill Camionsgaren -STR_ERROR_TOO_CLOSE_TO_ANOTHER_STATION :{WHITE}Ze noo un enger aanerer Gare -STR_ERROR_TOO_CLOSE_TO_ANOTHER_DOCK :{WHITE}Ze noo bei engem aanerem Hafen +STR_ERROR_TOO_CLOSE_TO_ANOTHER_STATION :{WHITE}Ze noo un enger aanerer Gare/Luedstatioun +STR_ERROR_TOO_CLOSE_TO_ANOTHER_DOCK :{WHITE}Ze noo un engem aanerem Hafen STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Ze noo un engem aaneren Fluchhafen STR_ERROR_CAN_T_RENAME_STATION :{WHITE}Kann d'Statioun net ëmbenennen... STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... d'Strooss ass am Besëtz vun der Stad @@ -4169,21 +4223,21 @@ STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... Duer # Station destruction related errors STR_ERROR_CAN_T_REMOVE_PART_OF_STATION :{WHITE}Kann den Deel vun der Gare net ofrappen... -STR_ERROR_MUST_REMOVE_RAILWAY_STATION_FIRST :{WHITE}Musst d'Gare fir d'éischt ofrappen +STR_ERROR_MUST_REMOVE_RAILWAY_STATION_FIRST :{WHITE}Muss d'Gare fir d'éischt ofrappen STR_ERROR_CAN_T_REMOVE_BUS_STATION :{WHITE}Kann de Busarrêt net ofrappen... STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Kann d'Camionsgare net ofrappen... STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Kann d'Tramstatioun net ofrappen... STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Kann d'Wueren-Tramstatioun net ofrappen... -STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Stroossenstop muss fir d'éischt wechgeholl ginn +STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Busarrêt muss fir d'éischt wechgeholl ginn STR_ERROR_THERE_IS_NO_STATION :{WHITE}... et ass keng Statioun do -STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}Musst d'Gare fir d'éischt ofrappen +STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}Muss d'Gare fir d'éischt ofrappen STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}Busarrêt muss fir d'éischt ofgerapt ginn STR_ERROR_MUST_DEMOLISH_TRUCK_STATION_FIRST :{WHITE}Muss d'Camionsgare fir d'éischt ofrappen STR_ERROR_MUST_DEMOLISH_PASSENGER_TRAM_STATION_FIRST :{WHITE}Muss d'Tramstatioun fir d'éischt ofrappen STR_ERROR_MUST_DEMOLISH_CARGO_TRAM_STATION_FIRST :{WHITE}Muss d'Tramstatioun fir d'éischt ofrappen STR_ERROR_MUST_DEMOLISH_DOCK_FIRST :{WHITE}Muss den Hafen fir déischt ofrappen -STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Musst den Fluchhafen fir d'éischt ofrappen +STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Muss de Fluchhafe fir d'éischt ofrappen # Waypoint related errors STR_ERROR_WAYPOINT_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Grenzt un méi wéi een Weepunkt @@ -4191,9 +4245,9 @@ STR_ERROR_TOO_CLOSE_TO_ANOTHER_WAYPOINT :{WHITE}Ze no un STR_ERROR_CAN_T_BUILD_TRAIN_WAYPOINT :{WHITE}Kann keen Zuchweepunkt héi bauen... STR_ERROR_CAN_T_POSITION_BUOY_HERE :{WHITE}Kann Boje net hei plazéieren... -STR_ERROR_CAN_T_CHANGE_WAYPOINT_NAME :{WHITE}Kann den Weepunktnumm net änneren... +STR_ERROR_CAN_T_CHANGE_WAYPOINT_NAME :{WHITE}Kann de Weepunktnumm net änneren... -STR_ERROR_CAN_T_REMOVE_TRAIN_WAYPOINT :{WHITE}Kann den Wee-Punkt hei net ofrappen... +STR_ERROR_CAN_T_REMOVE_TRAIN_WAYPOINT :{WHITE}Kann de Wee-Punkt hei net ofrappen... STR_ERROR_MUST_REMOVE_RAILWAYPOINT_FIRST :{WHITE}Zuchweepunkt muss fir d'éischt ofgerappt ginn STR_ERROR_BUOY_IN_THE_WAY :{WHITE}... Boje am Wee STR_ERROR_BUOY_IS_IN_USE :{WHITE}... Boje ass am Gebrauch vun enger anerer Firma! @@ -4204,7 +4258,7 @@ STR_ERROR_CAN_T_BUILD_ROAD_DEPOT :{WHITE}Kann de STR_ERROR_CAN_T_BUILD_TRAM_DEPOT :{WHITE}Kann den Tramschapp hei net bauen... STR_ERROR_CAN_T_BUILD_SHIP_DEPOT :{WHITE}Kann de Schëffsschapp hei net bauen... -STR_ERROR_CAN_T_RENAME_DEPOT :{WHITE}Kann den Schapp net ëmbenennen +STR_ERROR_CAN_T_RENAME_DEPOT :{WHITE}Kann de Schapp net ëmbenennen STR_ERROR_TRAIN_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... muss an engem Schapp gestoppt ginn STR_ERROR_ROAD_VEHICLE_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... muss an engem Depot gestoppt ginn @@ -4214,13 +4268,13 @@ STR_ERROR_AIRCRAFT_MUST_BE_STOPPED_INSIDE_HANGAR :{WHITE}... muss STR_ERROR_TRAINS_CAN_ONLY_BE_ALTERED_INSIDE_A_DEPOT :{WHITE}Zich kënnen nëmmen an engem Schapp verännert ginn STR_ERROR_TRAIN_TOO_LONG :{WHITE}Zuch ze laang STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE :{WHITE}Kann d'Gefier hei net ëmdréinen... -STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}... ass aus e puer Eenheeten zesummengesat +STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}... ass aus e puer Eenheeten zesummegesat STR_ERROR_INCOMPATIBLE_RAIL_TYPES :Onkompatibel Schinnentypen STR_ERROR_CAN_T_MOVE_VEHICLE :{WHITE}Kann d'Gefier net réckelen... STR_ERROR_REAR_ENGINE_FOLLOW_FRONT :{WHITE}D'hënnescht Maschinn geet ëmmer der viischter no. -STR_ERROR_UNABLE_TO_FIND_ROUTE_TO :{WHITE}Kann den Wee an den Schapp net fannen -STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Kann den Schapp net fannen +STR_ERROR_UNABLE_TO_FIND_ROUTE_TO :{WHITE}Kann de Wee an de Schapp net fannen +STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Kann de Schapp net fannen STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Falschen Schapp-Typ @@ -4231,18 +4285,18 @@ STR_ERROR_AUTOREPLACE_MONEY_LIMIT :(Geldlimit) # Rail construction errors STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION :{WHITE}Onméiglech Streckenkombinatioun -STR_ERROR_MUST_REMOVE_SIGNALS_FIRST :{WHITE}Signaler mussen fir d'éischt wechgeholl ginn +STR_ERROR_MUST_REMOVE_SIGNALS_FIRST :{WHITE}Signaler mussen fir d'éischt ewechgeholl ginn STR_ERROR_NO_SUITABLE_RAILROAD_TRACK :{WHITE}Keng gëeegent Schinnen STR_ERROR_MUST_REMOVE_RAILROAD_TRACK :{WHITE}D'Schinne musse fir d'éischt ewech -STR_ERROR_CROSSING_ON_ONEWAY_ROAD :{WHITE}D'Strooss ass eng Richtung oder blockéiert -STR_ERROR_CROSSING_DISALLOWED :{WHITE}Héich Kräizungen sinn fir dësen Schinnentyp net erlaabt +STR_ERROR_CROSSING_ON_ONEWAY_ROAD :{WHITE}D'Strooss ass eng Einbahn oder blockéiert +STR_ERROR_CROSSING_DISALLOWED :{WHITE}Barrièren si fir dësen Schinnentyp net erlaabt STR_ERROR_CAN_T_BUILD_SIGNALS_HERE :{WHITE}Kann d'Signaler hei net bauen... STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK :{WHITE}Kann d'Schinnen hei net bauen... STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK :{WHITE}Kann d'Schinnen hei net ewech huelen... STR_ERROR_CAN_T_REMOVE_SIGNALS_FROM :{WHITE}Kann d'Signaler hei net ewech huelen... STR_ERROR_SIGNAL_CAN_T_CONVERT_SIGNALS_HERE :{WHITE}Kann d'Signal hei net konvertéieren... -STR_ERROR_THERE_IS_NO_RAILROAD_TRACK :{WHITE}... et sinn keng Schinnen do -STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}... et sinn keng Signaler do +STR_ERROR_THERE_IS_NO_RAILROAD_TRACK :{WHITE}... et si keng Schinnen do +STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}... et si keng Signaler do STR_ERROR_CAN_T_CONVERT_RAIL :{WHITE}Kann de Schinnentyp hei net konvertéiren... @@ -4250,43 +4304,44 @@ STR_ERROR_CAN_T_CONVERT_RAIL :{WHITE}Kann de STR_ERROR_MUST_REMOVE_ROAD_FIRST :{WHITE}Muss d'Strooss ewech huelen STR_ERROR_ONEWAY_ROADS_CAN_T_HAVE_JUNCTION :{WHITE}... Einbahnstroossen kënnen keng Kräizung hunn STR_ERROR_CAN_T_BUILD_ROAD_HERE :{WHITE}Kann d'Strooss hei net bauen... -STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE :{WHITE}Kann den Tram heinet bauen... +STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE :{WHITE}Kann den Tram hei net bauen... STR_ERROR_CAN_T_REMOVE_ROAD_FROM :{WHITE}Kann d'Strooss hei net ewech huelen... -STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}Kann den Tram net wech huelen... +STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}Kann den Tram net ewech huelen... STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... et ass keng Strooss do STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... et ass keen Tram do # Waterway construction errors STR_ERROR_CAN_T_BUILD_CANALS :{WHITE}Kann hei keen Kanal bauen... -STR_ERROR_CAN_T_BUILD_LOCKS :{WHITE}Kann keen Schlass hei setzen... -STR_ERROR_CAN_T_PLACE_RIVERS :{WHITE}Kann hei keen Floss platzéiren... +STR_ERROR_CAN_T_BUILD_LOCKS :{WHITE}Kann d'Schleis hei net bauen... +STR_ERROR_CAN_T_PLACE_RIVERS :{WHITE}Kann hei kee Floss plazéiren... STR_ERROR_MUST_BE_BUILT_ON_WATER :{WHITE}... muss op Waasser gebaut ginn -STR_ERROR_CAN_T_BUILD_ON_WATER :{WHITE}... Kann net op d'Waasser bauen +STR_ERROR_CAN_T_BUILD_ON_WATER :{WHITE}... kann net op d'Waasser gebaut ginn STR_ERROR_CAN_T_BUILD_ON_SEA :{WHITE}... kann net op opener Séi bauen STR_ERROR_CAN_T_BUILD_ON_CANAL :{WHITE}... kann net um Kanal bauen STR_ERROR_CAN_T_BUILD_ON_RIVER :{WHITE}... kann net um Floss bauen -STR_ERROR_MUST_DEMOLISH_CANAL_FIRST :{WHITE}Musst den Kanal fir d'éischt ofrappen -STR_ERROR_CAN_T_BUILD_AQUEDUCT_HERE :{WHITE}Kann den Aquadukt héi net bauen... +STR_ERROR_MUST_DEMOLISH_CANAL_FIRST :{WHITE}Muss de Kanal fir d'éischt ofrappen +STR_ERROR_CAN_T_BUILD_AQUEDUCT_HERE :{WHITE}Kann den Aquadukt hei net bauen... # Tree related errors -STR_ERROR_TREE_ALREADY_HERE :{WHITE}... schon Beem hei -STR_ERROR_TREE_WRONG_TERRAIN_FOR_TREE_TYPE :{WHITE}... falschen Terrain fir free type +STR_ERROR_TREE_ALREADY_HERE :{WHITE}... et ass schon e Bam hei +STR_ERROR_TREE_WRONG_TERRAIN_FOR_TREE_TYPE :{WHITE}... falschen Terrain fir dësen Typ bam STR_ERROR_CAN_T_PLANT_TREE_HERE :{WHITE}Kann d'Beem hei net planzen... # Bridge related errors -STR_ERROR_CAN_T_BUILD_BRIDGE_HERE :{WHITE}Kann d'Bréck net hei bauen... -STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Musst d'Bréck fir d'éischt ofrapen -STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kann net op der selweschter Plaz unfänken an ophalen +STR_ERROR_CAN_T_BUILD_BRIDGE_HERE :{WHITE}Kann d'Bréck hei net bauen... +STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Muss d'Bréck fir d'éischt ofrappen +STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kann net op der selwechter Plaz ufänken an ophalen STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Bréckenenner net op der selwechter Héicht -STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Bréckass ze déif fir dësen Terrain +STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Bréck ass ze déif fir dësen Terrain +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Bréck ass ze héich fir dësen Terrain. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Start an Enn mussen op enger Linn sinn -STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... dei zwee Enner vun der Bréck mussen um Land sinn +STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... dei zwee Enner vun der Bréck mussen u Land sinn STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... Bréck ze laang STR_ERROR_BRIDGE_THROUGH_MAP_BORDER :{WHITE}Bréck géif ausserhalb der Kaart ukommen # Tunnel related errors STR_ERROR_CAN_T_BUILD_TUNNEL_HERE :{WHITE}Kann den Tunnel hei net bauen... -STR_ERROR_SITE_UNSUITABLE_FOR_TUNNEL :{WHITE}Plaz onpassend fir Tunnelentrée +STR_ERROR_SITE_UNSUITABLE_FOR_TUNNEL :{WHITE}Plaz onpassend fir den Tunnelsagang STR_ERROR_MUST_DEMOLISH_TUNNEL_FIRST :{WHITE}Muss den Tunnel fir d'éischt ofrappen STR_ERROR_ANOTHER_TUNNEL_IN_THE_WAY :{WHITE}Aaneren Tunnel am Wee STR_ERROR_TUNNEL_THROUGH_MAP_BORDER :{WHITE}Tunnel géif ausserhalb der Kaart erauskommen @@ -4294,11 +4349,11 @@ STR_ERROR_UNABLE_TO_EXCAVATE_LAND :{WHITE}Kann d'L STR_ERROR_TUNNEL_TOO_LONG :{WHITE}... Tunnel ze laang # Object related errors -STR_ERROR_TOO_MANY_OBJECTS :{WHITE}... zevill Objekter -STR_ERROR_CAN_T_BUILD_OBJECT :{WHITE}Kann Objekt net bauen... +STR_ERROR_TOO_MANY_OBJECTS :{WHITE}... zevill Objeten +STR_ERROR_CAN_T_BUILD_OBJECT :{WHITE}Kann Objet net bauen... STR_ERROR_OBJECT_IN_THE_WAY :{WHITE}Objet am Wee STR_ERROR_COMPANY_HEADQUARTERS_IN :{WHITE}... Firmen Haaptgebai am Wee -STR_ERROR_CAN_T_PURCHASE_THIS_LAND :{WHITE}Kann daat Land net kafen... +STR_ERROR_CAN_T_PURCHASE_THIS_LAND :{WHITE}Kann dat Land net kafen... STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... schon am Besëtz! # Group related errors @@ -4316,40 +4371,40 @@ STR_ERROR_ROAD_VEHICLE_IN_THE_WAY :{WHITE}Stroosse STR_ERROR_SHIP_IN_THE_WAY :{WHITE}Schëff am Wee STR_ERROR_AIRCRAFT_IN_THE_WAY :{WHITE}Fliger am Wee -STR_ERROR_CAN_T_REFIT_TRAIN :{WHITE}Kann den Zuch net unpassen... +STR_ERROR_CAN_T_REFIT_TRAIN :{WHITE}Kann den Zuch net ëmbauen... STR_ERROR_CAN_T_REFIT_ROAD_VEHICLE :{WHITE}Kann Stroossegefier net ëmbauen... STR_ERROR_CAN_T_REFIT_SHIP :{WHITE}Kann d'Schëff net ëmbauen... -STR_ERROR_CAN_T_REFIT_AIRCRAFT :{WHITE}Kann den Fliger net ëmbauen... +STR_ERROR_CAN_T_REFIT_AIRCRAFT :{WHITE}Kann de Fliger net ëmbauen... STR_ERROR_CAN_T_RENAME_TRAIN :{WHITE}Kann den Zuch net benennen... STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE :{WHITE}Kann d'Stroossegefier net benennen... STR_ERROR_CAN_T_RENAME_SHIP :{WHITE}Kann d'Schëff net benennen... -STR_ERROR_CAN_T_RENAME_AIRCRAFT :{WHITE}Kann den Fliger net benennen... +STR_ERROR_CAN_T_RENAME_AIRCRAFT :{WHITE}Kann de Fliger net benennen... -STR_ERROR_CAN_T_STOP_START_TRAIN :{WHITE}Kann den Zuch net starten/stopen... +STR_ERROR_CAN_T_STOP_START_TRAIN :{WHITE}Kann den Zuch net stoppen/starten... STR_ERROR_CAN_T_STOP_START_ROAD_VEHICLE :{WHITE}Kann d'Stroossegefier net stoppen/starten... STR_ERROR_CAN_T_STOP_START_SHIP :{WHITE}Kann d'Schëff net stoppen/starten... -STR_ERROR_CAN_T_STOP_START_AIRCRAFT :{WHITE}Kann den Fliger net stoppen/starten... +STR_ERROR_CAN_T_STOP_START_AIRCRAFT :{WHITE}Kann de Fliger net stoppen/starten... -STR_ERROR_CAN_T_SEND_TRAIN_TO_DEPOT :{WHITE}Kann den Zuch net an den Schapp schécken... +STR_ERROR_CAN_T_SEND_TRAIN_TO_DEPOT :{WHITE}Kann den Zuch net an de Schapp schécken... STR_ERROR_CAN_T_SEND_ROAD_VEHICLE_TO_DEPOT :{WHITE}Kann d'Gefier net an den Depot schécken... -STR_ERROR_CAN_T_SEND_SHIP_TO_DEPOT :{WHITE}Kann d'Schëff net an den Schapp schécken... -STR_ERROR_CAN_T_SEND_AIRCRAFT_TO_HANGAR :{WHITE}Kann den Fliger net an den Hangar schécken... +STR_ERROR_CAN_T_SEND_SHIP_TO_DEPOT :{WHITE}Kann d'Schëff net an de Schapp schécken... +STR_ERROR_CAN_T_SEND_AIRCRAFT_TO_HANGAR :{WHITE}Kann de Fliger net an den Hangar schécken... STR_ERROR_CAN_T_BUY_TRAIN :{WHITE}Kann den Zuch net bauen... STR_ERROR_CAN_T_BUY_ROAD_VEHICLE :{WHITE}Kann d'Stroossegefier net kafen... STR_ERROR_CAN_T_BUY_SHIP :{WHITE}Kann Schëff net kafen... -STR_ERROR_CAN_T_BUY_AIRCRAFT :{WHITE}Kann den Fliger net kafen... +STR_ERROR_CAN_T_BUY_AIRCRAFT :{WHITE}Kann de Fliger net kafen... STR_ERROR_CAN_T_RENAME_TRAIN_TYPE :{WHITE}Kann den Zuchgefiertyp net ëmbenennen... -STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE_TYPE :{WHITE}Kann den Gefiertyp net ëmbenennen... -STR_ERROR_CAN_T_RENAME_SHIP_TYPE :{WHITE}Kann den Schëffstyp net ëmbenennen... -STR_ERROR_CAN_T_RENAME_AIRCRAFT_TYPE :{WHITE}Kann den Fligertyp net ëmbenennen... +STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE_TYPE :{WHITE}Kann de Gefiertyp net ëmbenennen... +STR_ERROR_CAN_T_RENAME_SHIP_TYPE :{WHITE}Kann de Schëffstyp net ëmbenennen... +STR_ERROR_CAN_T_RENAME_AIRCRAFT_TYPE :{WHITE}Kann de Fligertyp net ëmbenennen... STR_ERROR_CAN_T_SELL_TRAIN :{WHITE}Kann den Zuch net verkafen... STR_ERROR_CAN_T_SELL_ROAD_VEHICLE :{WHITE}Kann d'Stroossegefier net verkafen... STR_ERROR_CAN_T_SELL_SHIP :{WHITE}Kann Schëff net verkafen... -STR_ERROR_CAN_T_SELL_AIRCRAFT :{WHITE}Kann dën Fliger net verkafen... +STR_ERROR_CAN_T_SELL_AIRCRAFT :{WHITE}Kann de Fliger net verkafen... STR_ERROR_RAIL_VEHICLE_NOT_AVAILABLE :{WHITE}Gefier net verfügbar STR_ERROR_ROAD_VEHICLE_NOT_AVAILABLE :{WHITE}Stroossegefier net verfügbar @@ -4357,23 +4412,23 @@ STR_ERROR_SHIP_NOT_AVAILABLE :{WHITE}Schëff STR_ERROR_AIRCRAFT_NOT_AVAILABLE :{WHITE}Fliger net verfügbar STR_ERROR_TOO_MANY_VEHICLES_IN_GAME :{WHITE}Ze vill Gefierer am Spill -STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Den Service-Intervall kann net geännert ginn... +STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}De Service-Intervall kann net geännert ginn... STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... Gefier ass zerstéiert STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL :{WHITE}Keng Gefierer verfügbar STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Änner d'NewGRF Konfiguratioun STR_ERROR_NO_VEHICLES_AVAILABLE_YET :{WHITE}Nach keng Gefierer verfügbar -STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}En neit Spill no {DATE_SHORT} ufenken oder benotz en NewGRF den aal Gefierer erlabt +STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}En neit Spill no {DATE_SHORT} ufenken oder benotz en NewGRF den al Gefierer erlaabt # Specific vehicle errors -STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Kann den Zuch net bei Gefohr lanscht d'Signal schecken... +STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Kann den Zuch net bei Gefor durch d'Signal schécken... STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Kann d'Richtung vum Zuch net änneren... STR_ERROR_TRAIN_START_NO_POWER :Zuch huet keng Kraaft STR_ERROR_CAN_T_MAKE_ROAD_VEHICLE_TURN :{WHITE}Kann d'Stroossegefier net ëmdréinen... -STR_ERROR_AIRCRAFT_IS_IN_FLIGHT :{WHITE}Fliger ass um Fluch +STR_ERROR_AIRCRAFT_IS_IN_FLIGHT :{WHITE}Fliger ass an der Loft # Order related errors STR_ERROR_NO_MORE_SPACE_FOR_ORDERS :{WHITE}Keng Plaz méi fir Opträg @@ -4381,7 +4436,7 @@ STR_ERROR_TOO_MANY_ORDERS :{WHITE}Ze vill STR_ERROR_CAN_T_INSERT_NEW_ORDER :{WHITE}Kann keen neien Optrag bäisetzen... STR_ERROR_CAN_T_DELETE_THIS_ORDER :{WHITE}Kann den Optrag net läschen... STR_ERROR_CAN_T_MODIFY_THIS_ORDER :{WHITE}Kann den Optrag net änneren... -STR_ERROR_CAN_T_MOVE_THIS_ORDER :{WHITE}Kann den Optraag net réckelen... +STR_ERROR_CAN_T_MOVE_THIS_ORDER :{WHITE}Kann den Optrag net réckelen... STR_ERROR_CAN_T_SKIP_ORDER :{WHITE}Kann den Optrag net iwwersprangen... STR_ERROR_CAN_T_SKIP_TO_ORDER :{WHITE}Kann net op den ugewieltenen Optrag iwwersprangen... STR_ERROR_CAN_T_COPY_SHARE_ORDER :{WHITE}... Gefier kann net op all Statioun goen @@ -4391,7 +4446,7 @@ STR_ERROR_CAN_T_ADD_ORDER_SHARED :{WHITE}... en G STR_ERROR_CAN_T_SHARE_ORDER_LIST :{WHITE}Kann d'Optragslëscht net deelen... STR_ERROR_CAN_T_STOP_SHARING_ORDER_LIST :{WHITE}Kann d'Deelen vun der Optragslëscht net stoppen... STR_ERROR_CAN_T_COPY_ORDER_LIST :{WHITE}Kann d'Optragslëscht net kopéieren... -STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... ze wäit vun leschter Destinatioun +STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... ze wäit ewech vu leschter Destinatioun STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... Fliger huet net genuch Distanz # Timetable related errors @@ -4414,37 +4469,37 @@ STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Original Transp STR_BASEGRAPHICS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows Editioun Grafik. STR_BASESOUNDS_DOS_DESCRIPTION :Original Transport Tycoon Deluxe DOS Editioun Sound. STR_BASESOUNDS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows Editioun Sound. -STR_BASESOUNDS_NONE_DESCRIPTION :En Soundpack mat all den Sounds. -STR_BASEMUSIC_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows Editioun Music. +STR_BASESOUNDS_NONE_DESCRIPTION :E Soundpack ouni iergendee Sound. +STR_BASEMUSIC_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows Editioun Musik. STR_BASEMUSIC_NONE_DESCRIPTION :E Musikpack ouni aktuell Musik. ##id 0x2000 # Town building names -STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Héichen Büroblock +STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Héije Büroblock STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_1 :Büroblock -STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Klengen Apartementsblock +STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Klengen Appartementsblock STR_TOWN_BUILDING_NAME_CHURCH_1 :Kierch -STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :Groussen Büroblock +STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :Grousse Büroblock STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Stadhaiser STR_TOWN_BUILDING_NAME_HOTEL_1 :Hotel STR_TOWN_BUILDING_NAME_STATUE_1 :Statu STR_TOWN_BUILDING_NAME_FOUNTAIN_1 :Sprangbuer STR_TOWN_BUILDING_NAME_PARK_1 :Park STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_2 :Büroblock -STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_1 :Geschäfter an Büroen +STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_1 :Geschäfter a Büroen STR_TOWN_BUILDING_NAME_MODERN_OFFICE_BUILDING_1 :Modernt Bürosgebai STR_TOWN_BUILDING_NAME_WAREHOUSE_1 :Lagerhaus STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_3 :Büroblock -STR_TOWN_BUILDING_NAME_STADIUM_1 :Stadium -STR_TOWN_BUILDING_NAME_OLD_HOUSES_1 :Aal Haiser +STR_TOWN_BUILDING_NAME_STADIUM_1 :Stadion +STR_TOWN_BUILDING_NAME_OLD_HOUSES_1 :Al Haiser STR_TOWN_BUILDING_NAME_COTTAGES_1 :Hütten STR_TOWN_BUILDING_NAME_HOUSES_1 :Haiser -STR_TOWN_BUILDING_NAME_FLATS_1 :Apartementer -STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_2 :Héichen Gewerbeblock -STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_2 :Geschäfter an Büroen -STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_3 :Geschäfter an Büroen +STR_TOWN_BUILDING_NAME_FLATS_1 :Appartementer +STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_2 :Héije Bürosblock +STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_2 :Geschäfter a Büroen +STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_3 :Geschäfter a Büroen STR_TOWN_BUILDING_NAME_THEATER_1 :Theater -STR_TOWN_BUILDING_NAME_STADIUM_2 :Stadium +STR_TOWN_BUILDING_NAME_STADIUM_2 :Stadion STR_TOWN_BUILDING_NAME_OFFICES_1 :Büroen STR_TOWN_BUILDING_NAME_HOUSES_2 :Haiser STR_TOWN_BUILDING_NAME_CINEMA_1 :Kino @@ -4456,7 +4511,7 @@ STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Spuerschwäin-B ##id 0x4800 # industry names -STR_INDUSTRY_NAME_COAL_MINE :Kuelenstollen +STR_INDUSTRY_NAME_COAL_MINE :Kuelestollen STR_INDUSTRY_NAME_POWER_STATION :Kraaftwierk STR_INDUSTRY_NAME_SAWMILL :Seeërei STR_INDUSTRY_NAME_FOREST :Bësch @@ -4490,7 +4545,7 @@ STR_INDUSTRY_NAME_TOY_SHOP :Spillgeschäft STR_INDUSTRY_NAME_TOY_FACTORY :Spillsaachen Fabrik STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS :Plastikpëtz STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY :Spruddelgedrenks Fabrik -STR_INDUSTRY_NAME_BUBBLE_GENERATOR :Blosengenerator +STR_INDUSTRY_NAME_BUBBLE_GENERATOR :Blosegenerator STR_INDUSTRY_NAME_TOFFEE_QUARRY :Karamellbroch STR_INDUSTRY_NAME_SUGAR_MINE :Zockerminn @@ -4510,7 +4565,7 @@ STR_SV_STNAME_SOUTH :{STRING} Süden STR_SV_STNAME_EAST :{STRING} Osten STR_SV_STNAME_WEST :{STRING} Westen STR_SV_STNAME_CENTRAL :{STRING} Zentrum -STR_SV_STNAME_TRANSFER :{STRING}er Transfer +STR_SV_STNAME_TRANSFER :{STRING}er Transfert STR_SV_STNAME_HALT :{STRING}er Stopp STR_SV_STNAME_VALLEY :{STRING}er Dall STR_SV_STNAME_HEIGHTS :{STRING}er Bierg @@ -4524,8 +4579,8 @@ STR_SV_STNAME_DOCKS :{STRING} Hafen STR_SV_STNAME_BUOY :{STRING} STR_SV_STNAME_WAYPOINT :{STRING} ##id 0x6020 -STR_SV_STNAME_ANNEXE :{STRING} Annexe -STR_SV_STNAME_SIDINGS :{STRING}er Ofstellplaatz +STR_SV_STNAME_ANNEXE :{STRING} Annex +STR_SV_STNAME_SIDINGS :{STRING}er Ofstellgleis STR_SV_STNAME_BRANCH :{STRING}er Ofzweigung STR_SV_STNAME_UPPER :Uewer {STRING} STR_SV_STNAME_LOWER :Nidder {STRING} @@ -4536,7 +4591,7 @@ STR_SV_STNAME_FALLBACK :{STRING} Statio ##id 0x8000 # Vehicle names -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KIRBY_PAUL_TANK_STEAM :Collet Pannier Tank (Damp) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KIRBY_PAUL_TANK_STEAM :Kirby Paul Tank (Damp) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_250_DIESEL :MJS 250 (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_CHOO_CHOO :Ploddyphut Chu-Chu STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_CHOO_CHOO :Powernaut Chu-Chu @@ -4544,12 +4599,12 @@ STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MIGHTYMOVER_CHOO_CHOO :MightyMover Chu STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_DIESEL :Ploddyphut Diesel STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_DIESEL :Powernaut Diesel STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_WILLS_2_8_0_STEAM :Wills 2-8-0 (Damp) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Stanier 'Jubilee' (Damp) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Chaney 'Jubilee' (Damp) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_GINZU_A4_STEAM :Gresley 'A4' (Damp) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_8P_STEAM :BR '8P' (Damp) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Metro Cammell DMU (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Manley-Morel DMU (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_DASH_DIESEL :'Sprinter' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :BR/Sulzer '25' (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry '25' (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :EE '37' (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Brush '47' (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_4000_DIESEL :CS 4000 (Diesel) @@ -4559,17 +4614,17 @@ STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KELLING_3100_DIESEL :Kelling 3100 (D STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_TURNER_TURBO_DIESEL :Turner Turbo (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_1000_DIESEL :MJS 1000 (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :BR 'IC125' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :BR '30' (Elektrësch) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :BR '40' (Elektrësch) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :'T.G.V.' (Elektrësch) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :'EuroStar' (Elektrësch) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :BR '30' (Elektresch) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :BR '40' (Elektresch) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :'T.G.V.' (Elektresch) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :'EuroStar' (Elektresch) STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PASSENGER_CAR :Passagéierwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_MAIL_VAN :Postwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COAL_CAR :Kuelewaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_OIL_TANKER :Uelegwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_LIVESTOCK_VAN :Véiwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GOODS_VAN :Wuerewaggon -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GRAIN_HOPPER :Kaarwaggon +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GRAIN_HOPPER :Karwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WOOD_TRUCK :Holzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_IRON_ORE_HOPPER :Eisenäerzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_STEEL_TRUCK :Stolwaggon @@ -4585,13 +4640,13 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COTTON_CANDY_HOPPER :Zockerwattwaggo STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOFFEE_HOPPER :Karamellwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BUBBLE_VAN :Blosenwaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COLA_TANKER :Colawaggon -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_CANDY_VAN :Séissegkeetenwaggon -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOY_VAN :Spillsaachenwaggon -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BATTERY_TRUCK :Batterienwaggon +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_CANDY_VAN :Séissegkeetewaggon +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOY_VAN :Spillsaachewaggon +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BATTERY_TRUCK :Batteriewaggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FIZZY_DRINK_TRUCK :Spruddelgedrénks Waggon STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PLASTIC_TRUCK :Plastikwaggon -STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :'X2001' (Elektrësch) -STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :'Millennium Z1' (Elektrësch) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :'X2001' (Elektresch) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :'Millennium Z1' (Elektresch) STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_WIZZOWOW_Z99 :Wizzowow Z99 STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PASSENGER_CAR :Passagéierwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_MAIL_VAN :Postwaggon @@ -4599,31 +4654,31 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COAL_CAR :Kuelenwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_OIL_TANKER :Uelegwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_LIVESTOCK_VAN :Véiwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_GOODS_VAN :Wuerewaggon -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_GRAIN_HOPPER :Kaarwaggon +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_GRAIN_HOPPER :Karwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_WOOD_TRUCK :Holzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_IRON_ORE_HOPPER :Eisenäerzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_STEEL_TRUCK :Stolwaggon -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_ARMORED_VAN :Gepanzerten Waggon +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_ARMORED_VAN :Gepanzerte Waggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FOOD_VAN :Iesswuerewaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PAPER_TRUCK :Pabeierwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COPPER_ORE_HOPPER :Kofferäerzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_WATER_TANKER :Waasserwaggon -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FRUIT_TRUCK :Friichtenwaggon +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FRUIT_TRUCK :Friichtewaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_RUBBER_TRUCK :Kautschuckwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_SUGAR_TRUCK :Zockerwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COTTON_CANDY_HOPPER :Zockerwattwaggon -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOFFEE_HOPPER :Karamelwaggon +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOFFEE_HOPPER :Karamellwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_BUBBLE_VAN :Blosenwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COLA_TANKER :Colawaggon -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_CANDY_VAN :Séissegkeetenwaggon -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOY_VAN :Spillsaachenwaggon +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_CANDY_VAN :Séissegkeetewaggon +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOY_VAN :Spillsaachewaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_BATTERY_TRUCK :Batteriewaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FIZZY_DRINK_TRUCK :Spruddelgedrénkswaggon STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PLASTIC_TRUCK :Plastikwaggon -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV1_LEVIATHAN_ELECTRIC :Lev1 'Leviathan' (Elektrësch) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 'Cyclops' (Elektrësch) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 'Pegasus' (Elektrësch) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 'Chimaera' (Elektrësch) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV1_LEVIATHAN_ELECTRIC :Lev1 'Leviathan' (Elektresch) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 'Cyclops' (Elektresch) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 'Pegasus' (Elektresch) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 'Chimaera' (Elektresch) STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_WIZZOWOW_ROCKETEER :Wizzowow Rocketeer STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PASSENGER_CAR :Passagéierwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_MAIL_VAN :Postwaggon @@ -4631,7 +4686,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COAL_CAR :Kuelewaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_OIL_TANKER :Uelegwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_LIVESTOCK_VAN :Véiwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_GOODS_VAN :Wuerewaggon -STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_GRAIN_HOPPER :Kaarwaggon +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_GRAIN_HOPPER :Karwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_WOOD_TRUCK :Holzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_IRON_ORE_HOPPER :Eisenäerzwaggon STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_STEEL_TRUCK :Stolwaggon @@ -4659,9 +4714,9 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_MKII_SUPERBUS :Foster MkII Sup STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKI_BUS :Ploddyphut MkI Bus STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKII_BUS :Ploddyphut MkII Bus STR_VEHICLE_NAME_ROAD_VEHICLE_PLODDYPHUT_MKIII_BUS :Ploddyphut MkIII Bus -STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_COAL_TRUCK :Balogh Kuelencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_COAL_TRUCK :Uhl Kuelencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_DW_COAL_TRUCK :DW Kuelencamion +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_COAL_TRUCK :Balogh Kuelecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_COAL_TRUCK :Uhl Kuelecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_DW_COAL_TRUCK :DW Kuelecamion STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_MAIL_TRUCK :MPS Postcamion STR_VEHICLE_NAME_ROAD_VEHICLE_REYNARD_MAIL_TRUCK :Reynard Postcamion STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_MAIL_TRUCK :Perry Postcamion @@ -4677,9 +4732,9 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_LIVESTOCK_VAN :Foster Véitran STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_GOODS_TRUCK :Balogh Wuerecamion STR_VEHICLE_NAME_ROAD_VEHICLE_CRAIGHEAD_GOODS_TRUCK :Craighead Wuerecamion STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_GOODS_TRUCK :Goss Wuerecamion -STR_VEHICLE_NAME_ROAD_VEHICLE_HEREFORD_GRAIN_TRUCK :Hereford Kaarcamion -STR_VEHICLE_NAME_ROAD_VEHICLE_THOMAS_GRAIN_TRUCK :Thomas Kaarcamion -STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_GRAIN_TRUCK :Goss Kaarcamion +STR_VEHICLE_NAME_ROAD_VEHICLE_HEREFORD_GRAIN_TRUCK :Hereford Karcamion +STR_VEHICLE_NAME_ROAD_VEHICLE_THOMAS_GRAIN_TRUCK :Thomas Karcamion +STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_GRAIN_TRUCK :Goss Karcamion STR_VEHICLE_NAME_ROAD_VEHICLE_WITCOMBE_WOOD_TRUCK :Witcombe Holzcamion STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_WOOD_TRUCK :Foster Holzcamion STR_VEHICLE_NAME_ROAD_VEHICLE_MORELAND_WOOD_TRUCK :Moreland Holzcamion @@ -4689,12 +4744,12 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_CHIPPY_IRON_ORE_TRUCK :Chippy Eisenäe STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_STEEL_TRUCK :Balogh Stolcamion STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_STEEL_TRUCK :Uhl Stolcamion STR_VEHICLE_NAME_ROAD_VEHICLE_KELLING_STEEL_TRUCK :Kelling Stolcamion -STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_ARMORED_TRUCK :Balogh gepanzerten Camion -STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_ARMORED_TRUCK :Uhl gepanzerten Camion -STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_ARMORED_TRUCK :Foster gepanzerten Camion +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_ARMORED_TRUCK :Balogh gepanzerte Camion +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_ARMORED_TRUCK :Uhl gepanzerte Camion +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_ARMORED_TRUCK :Foster gepanzerte Camion STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_FOOD_VAN :Foster Iessenscamion STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_FOOD_VAN :Perry Iessenscamion -STR_VEHICLE_NAME_ROAD_VEHICLE_CHIPPY_FOOD_VAN :Chippy Iesenscamion +STR_VEHICLE_NAME_ROAD_VEHICLE_CHIPPY_FOOD_VAN :Chippy Iessenscamion STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_PAPER_TRUCK :Uhl Pabeiercamion STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_PAPER_TRUCK :Balogh Pabeiercamion STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_PAPER_TRUCK :MPS Pabeiercamion @@ -4704,9 +4759,9 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_COPPER_ORE_TRUCK :Goss Kofferäer STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_WATER_TANKER :Uhl Waassercamion STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_WATER_TANKER :Balogh Waassercamion STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_WATER_TANKER :MPS Waassercamion -STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_FRUIT_TRUCK :Balogh Friichtencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_FRUIT_TRUCK :Uhl Friichtencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_KELLING_FRUIT_TRUCK :Kelling Friichtencamion +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_FRUIT_TRUCK :Balogh Friichtecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_FRUIT_TRUCK :Uhl Friichtecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_KELLING_FRUIT_TRUCK :Kelling Friichtecamion STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_RUBBER_TRUCK :Balogh Kautschuckcamion STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_RUBBER_TRUCK :Uhl Kautschuckcamion STR_VEHICLE_NAME_ROAD_VEHICLE_RMT_RUBBER_TRUCK :RMT Kautschuckcamion @@ -4722,29 +4777,29 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COTTON_CANDY_TRUCK :Wizzowow Zocker STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_TOFFEE_TRUCK :MightyMover Karamellcamion STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_TOFFEE_TRUCK :Powernaught Karamellcamion STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_TOFFEE_TRUCK :Wizzowow Karamellcamion -STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_TOY_VAN :MightyMover Spillsaachencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_TOY_VAN :Powernaught Spillsaachencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_TOY_VAN :Wizzowow Spillsaachencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_CANDY_TRUCK :MightyMover Séissegkeetencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_CANDY_TRUCK :Powernaught Séissegkeetencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_CANDY_TRUCK :Wizzowow Séissegkeetencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_BATTERY_TRUCK :MightyMover Batteriencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_BATTERY_TRUCK :Powernaught Batteriencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_BATTERY_TRUCK :Wizzowow Batteriencamion +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_TOY_VAN :MightyMover Spillsaachecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_TOY_VAN :Powernaught Spillsaachecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_TOY_VAN :Wizzowow Spillsaachecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_CANDY_TRUCK :MightyMover Séissegkeetecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_CANDY_TRUCK :Powernaught Séissegkeetecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_CANDY_TRUCK :Wizzowow Séissegkeetecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_BATTERY_TRUCK :MightyMover Batteriecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_BATTERY_TRUCK :Powernaught Batteriecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_BATTERY_TRUCK :Wizzowow Batteriecamion STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_FIZZY_DRINK :MightyMover Spruddelgedrénks Camion STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_FIZZY_DRINK :Powernaught Spruddelgedrénks Camion STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_FIZZY_DRINK_TRUCK :Wizzowow Spruddelgedrénks Camion STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_PLASTIC_TRUCK :MightyMover Plastikcamion STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_PLASTIC_TRUCK :Powernaught Plastikcamion STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_PLASTIC_TRUCK :Wizzowow Plastikcamion -STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_BUBBLE_TRUCK :MightyMover Blosencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_BUBBLE_TRUCK :Powernaught Blosencamion -STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_BUBBLE_TRUCK :Wizzowow Blosencamion +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_BUBBLE_TRUCK :MightyMover Blosecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_BUBBLE_TRUCK :Powernaught Blosecamion +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_BUBBLE_TRUCK :Wizzowow Blosecamion STR_VEHICLE_NAME_SHIP_MPS_OIL_TANKER :MPS Uelegtanker STR_VEHICLE_NAME_SHIP_CS_INC_OIL_TANKER :CS-Inc. Uelegtanker STR_VEHICLE_NAME_SHIP_MPS_PASSENGER_FERRY :MPS Passagéierfähr STR_VEHICLE_NAME_SHIP_FFP_PASSENGER_FERRY :FFP Passagéierfähr -STR_VEHICLE_NAME_SHIP_BAKEWELL_300_HOVERCRAFT :Bakewell 300 Loftkëssenboot +STR_VEHICLE_NAME_SHIP_BAKEWELL_300_HOVERCRAFT :Bakewell 300 Loftkësseboot STR_VEHICLE_NAME_SHIP_CHUGGER_CHUG_PASSENGER :Chugger-Chug Passagéierfähr STR_VEHICLE_NAME_SHIP_SHIVERSHAKE_PASSENGER_FERRY :Shivershake Passagéierfähr STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Yate Frachtschëff @@ -4789,9 +4844,9 @@ STR_VEHICLE_NAME_AIRCRAFT_PLODDYPHUT_500 :Ploddyphut 500 STR_VEHICLE_NAME_AIRCRAFT_FLASHBANG_X1 :Flashbang X1 STR_VEHICLE_NAME_AIRCRAFT_JUGGERPLANE_M1 :Juggerplane M1 STR_VEHICLE_NAME_AIRCRAFT_FLASHBANG_WIZZER :Flashbang Wizzer -STR_VEHICLE_NAME_AIRCRAFT_TRICARIO_HELICOPTER :Tricario Helicopter -STR_VEHICLE_NAME_AIRCRAFT_GURU_X2_HELICOPTER :Guru X2 Helicopter -STR_VEHICLE_NAME_AIRCRAFT_POWERNAUT_HELICOPTER :Powernaut Helicopter +STR_VEHICLE_NAME_AIRCRAFT_TRICARIO_HELICOPTER :Tricario Helikopter +STR_VEHICLE_NAME_AIRCRAFT_GURU_X2_HELICOPTER :Guru X2 Helikopter +STR_VEHICLE_NAME_AIRCRAFT_POWERNAUT_HELICOPTER :Powernaut Helikopter ##id 0x8800 # Formatting of some strings @@ -4802,7 +4857,7 @@ STR_FORMAT_DATE_ISO :{2:NUM}-{1:STRI STR_FORMAT_BUOY_NAME :{TOWN}-Boje STR_FORMAT_BUOY_NAME_SERIAL :{TOWN} Boje #{COMMA} -STR_FORMAT_COMPANY_NUM :(Company {COMMA}) +STR_FORMAT_COMPANY_NUM :(Firma {COMMA}) STR_FORMAT_GROUP_NAME :Grupp {COMMA} STR_FORMAT_INDUSTRY_NAME :{TOWN} {STRING} STR_FORMAT_WAYPOINT_NAME :Weepunkt {TOWN} @@ -4843,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (verstoppt) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/malay.txt b/src/lang/malay.txt index 1a6ea8092d..4c42c73389 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -95,7 +95,7 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Minuman bergas # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} penumpang +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}penumpang{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} arang batu STR_QUANTITY_MAIL :{COMMA} beg surat STR_QUANTITY_OIL :{VOLUME_LONG} minyak @@ -239,6 +239,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Palang S STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Bar Skrol - gerakkan senarai ke kiri/kanan STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Musnahkan bangunan dll. dari dataran tanah. Ctrl memilih kawasan menyerong. Shift bangunan/tunjukkan anggaran kos. +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Asal STR_BUTTON_CANCEL :{BLACK}Batal @@ -347,7 +350,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Keluar ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Pilihan permainan -STR_SETTINGS_MENU_CONFIG_SETTINGS :Tetapan Lanjutan +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Tetapan STR_SETTINGS_MENU_SCRIPT_SETTINGS :Al/Tetapan skrip permainan STR_SETTINGS_MENU_NEWGRF_SETTINGS :Tetapan NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Pilihan Ketelusan @@ -892,10 +895,6 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :South African R STR_GAME_OPTIONS_CURRENCY_CUSTOM :Sesuaikan... ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Kenderaan Jalanraya STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Pilih laluan memandu kenderaan sebelah kiri atau kanan STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Memandu di sebelah kiri @@ -949,6 +948,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resolusi STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Pilih resolusi skrin untuk digunakan STR_GAME_OPTIONS_RESOLUTION_OTHER :lain +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Saiz Antaramuka +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Sila pilih saiz elemen antara muka untuk digunakan + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Biasa +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Saiz berganda +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Saiz kuad + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Set grafik asas STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Pilih set grafik asas untuk digunakan STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fail hilang/rosak @@ -1042,6 +1048,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Sangat Rata STR_TERRAIN_TYPE_FLAT :Rata STR_TERRAIN_TYPE_HILLY :Berbukit STR_TERRAIN_TYPE_MOUNTAINOUS :Bergunung +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Mengizinkan STR_CITY_APPROVAL_TOLERANT :Bertoleransi @@ -1049,8 +1056,8 @@ STR_CITY_APPROVAL_HOSTILE :Kurang mengizin STR_WARNING_NO_SUITABLE_AI :{WHITE}Tiada AI yang bersesuaian...{}Anda boleh memuat turun beberapa AI dari sistem 'Kandungan Atas Talian' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Tetapan Lanjutan +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Tetapan STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Tapis baris: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Kembangkan semua STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Musnahkan semua @@ -1064,9 +1071,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Tetapan syarika STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Tetapan syarikat (disimpan di penyimpanan; hanya berkesan kepada syarikat semasa) STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Hadkan senarai di bawah menggunakan penapis yang telah ditetapkan -STR_CONFIG_SETTING_RESTRICT_BASIC :Tetapan asas -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Tetapan tambahan -STR_CONFIG_SETTING_RESTRICT_ALL :Pakar tetapan / semua tetapan +STR_CONFIG_SETTING_RESTRICT_BASIC :Asas (menunjukkan tetapan yang penting sahaja) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Terperinci (tunjukkan kebanyakan tetapan) +STR_CONFIG_SETTING_RESTRICT_ALL :Expert (memaparkan semua tetapan, termasuk yang pelik) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Tetapan dengan nilai berbeza dari yang lalai STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Tetapan dengan nilai yang berbeza daripada tetapan baru permainananda @@ -1110,6 +1117,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Jika kereta api STR_CONFIG_SETTING_CITY_APPROVAL :Sikap majlis bandaraya terhadap penyusunan semula kawasan: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Pilih tahap kebisingan dan kerosakan persekitaran +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Ketinggian maksimum peta: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Tetapkan ketinggian maksimum yang dibenarkan bagi gunung pada peta +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Kamu tidak boleh ubah ketinggian maxima kepada nilai ini. Sekurang-kurangnya satu gunung di dalam peta lebih tinggi. STR_CONFIG_SETTING_AUTOSLOPE :Benarkan pengubahsuaian tanah di bawah bangunan, landasan, dan sebagainya (autocerun): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Benarkan landskap di arah bangunan dan trek tanpa memusnahkannya STR_CONFIG_SETTING_CATCHMENT :Benarkan kawasan tangkapan yang lebih realistik: {STRING} @@ -1138,6 +1148,8 @@ STR_CONFIG_SETTING_INFLATION :Inflasi: {STRIN STR_CONFIG_SETTING_INFLATION_HELPTEXT :Mengupayakan inflasi kepada ekonomi, di mana kos adalah sedikit lebih cepat meningkat daripada pembayaran STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Panjang maksimum jambatan: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Panjang maksimum untuk binaan jambatan +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Ketinggian jambatan maksima: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Ketinggian maksimum untuk membina jambatan STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Panjang maksimum terowong: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Panjang maksimum binaan terowong STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Cara pembinaan manual industri utama: {STRING} @@ -1213,10 +1225,13 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Sangat Licin STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Licin STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Kasar STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Sangat Kasar +STR_CONFIG_SETTING_RIVER_AMOUNT :Jumlah sungai: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Pilih jumlah sungai untuk dijanakan STR_CONFIG_SETTING_TREE_PLACER :Algoritma letakan pokok: {STRING} STR_CONFIG_SETTING_TREE_PLACER_NONE :Tiada STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Asal STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Diperbaiki +STR_CONFIG_SETTING_ROAD_SIDE :Kenderaan: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Putaran heightmap: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Lawan jam STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Pusingan jam @@ -1440,7 +1455,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Pemain b STR_INTRO_GAME_OPTIONS :{BLACK}Pilihan Permainan STR_INTRO_HIGHSCORE :{BLACK}Carta mata tertinggi -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Tetapan Lanjutan +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Tetapan STR_INTRO_NEWGRF_SETTINGS :{BLACK}Tetapan NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Periksa Kandungan Atas Talian STR_INTRO_SCRIPT_SETTINGS :{BLACK}Al/Tetapan Skrip Permainan @@ -1460,7 +1475,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Pilih la STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Paparkan pilihan permainan STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Paparan carta mata tertinggi -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Paparkan tetapan lanjutan +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Pamerkan pilihan STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Paparkan tetapan NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Periksa kandungan baru atau yang telah dikemaskini untuk dimuat turun STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Paparan Al/Tetapan Skrip Permainan @@ -1500,6 +1515,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Bermain STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Jentolak ajaib (buang industri dan objek lain yang biasanya tidak boleh dibuang): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Terowong boleh bersilang: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Pesawat jet tidak akan (sentiasa) terhempas di lapangan terbang kecil: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Ubah ketinggian maxima di dalam peta: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Ubah ketinggian maxima gunung di dalam peta STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Lanskap temperate STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Lanskap subartik STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Lanskap subtropik @@ -2371,7 +2388,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tanah dimiliki STR_ABOUT_OPENTTD :{WHITE}Tentang OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Hakcipta Asal {COPYRIGHT} 1995 Chris Sawyer, Hakcipta terpelihara STR_ABOUT_VERSION :{BLACK}OpenTTD versi {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Simpankan Permainan @@ -2405,6 +2422,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Jumlah bandar: STR_MAPGEN_DATE :{BLACK}Tarikh: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Jumlah industri: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Ketinggian maxima peta: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Mengurangkan ketinggian maksimum gunung di peta oleh satu +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Mengurangkan ketinggian maksimum gunung di peta oleh satu STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Paras ketinggian garis salji: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Tinggikan paras garis salji satu petak STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Rendahkan paras garis salji satu petak @@ -2434,6 +2454,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nama hei STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Saiz: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Mengubah saiz maksimum ketinggian peta STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Tukarkan paras garis salji STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Tukar tahun permulaan @@ -2488,6 +2509,7 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Gerak Ke STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Gerakkan ke atas senarai NewGRF yang terpilih STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Gerak Ke Bawah STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Gerakkan ke bawah senarai NewGRF yang terpilih +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Naik Taraf STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Senarai fail NewGRF yang telah dipasang. STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Tetapkan parameter @@ -2513,6 +2535,9 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Dinyahakti STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Tidak serasi dengan versi OpenTTD ini # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Simpan pratetapan +STR_SAVE_PRESET_TITLE :{BLACK}Masukkan nama untuk pratetapan +STR_SAVE_PRESET_SAVE :{BLACK}Simpan # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Ubah parameter NewGRF @@ -2544,7 +2569,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Peperi s STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Teruskan ke peperi dahulu yang biasa, melangkau sebarang peperi pseudo/warna kembali/fon dan memusing balik semula STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Perwakilan peperi yang terpilih. Penjajaran tidak diendahkan apabila sedang melukiskan peperi. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Alih peperi, mengubahkan ofset X dan Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X ofset: {NUM}, Y ofset: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Pilih peperi STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pilih peperi di mana-mana sahaja dari skrin @@ -2709,7 +2733,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Maklumat STR_GOAL_QUESTION_CAPTION_WARNING :Amaran STR_GOAL_QUESTION_CAPTION_ERROR :Kesilapan -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Batal STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Tidak @@ -2728,6 +2752,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Mula semula STR_GOAL_QUESTION_BUTTON_POSTPONE :Tangguh STR_GOAL_QUESTION_BUTTON_SURRENDER :Menyerah STR_GOAL_QUESTION_BUTTON_CLOSE :Tutup +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidi @@ -3036,6 +3061,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Namakan STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Namakan semula jenis kapal STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Namakan semula pesawat +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyi +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyi +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyi +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Sembunyi + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Paparan +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Paparan +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Paparan +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Paparan + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Menyembunyikan Togol / memaparkan jenis kenderaan kereta api +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK} Menyembunyikan Togol / memaparkan jenis kenderaan jalan raya +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Menyembunyikan Togol / memaparkan jenis kapal +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Togol menyembunyikan / memaparkan jenis pesawat + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Namakan semula jenis keretapi STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Namakan semula jenis kenderaan jalanraya STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Namakan semula jenis kapal @@ -3089,7 +3129,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Klonkan STR_DEPOT_CLONE_SHIP :{BLACK}Klonkan Kapal STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Klonkan Pesawat -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Perbuatan ini akan membeli salinan keretapi termasuk semua gerabaknya. Klik butang ini dan kemudian di keretapi di luar atau di dalam depoh. Ctrl+Klik untuk berkongsi arahan. Shift+Klik menunjukkan anggaran kos tanpa membeli +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Ini akan membeli satu salinan kereta api termasuk semua kereta. Klik butang ini dan kemudian pada kereta api di dalam atau di luar depot. Ctrl + Klik akan berkongsi perintah. Shift + Klik menunjukkan anggaran kos tanpa pembelian STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Perbuatan ini akan membeli salinan kenderaan jalanraya. Klik butang ini dan kemudian di kenderaan jalanraya di luar atau di dalam depoh. Ctrl+Klik untuk berkongsi arahan. Shift+Klik menunjukkan anggaran kos tanpa pembelian STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Perbuatan ini akan membeli salinan kapal. Klik butang ini dan kemudian di kapal di luar atau di dalam depoh. Ctrl+Klik untuk berkongsi arahan. Shift+Klik menunjukkan anggaran kos tanpa membeli STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Ini akan membeli salinan pesawat. Klik butang ini dan kemudian di pesawat di luar atau di dalam depoh. Ctrl+Klik untuk berkongsi arahan. Shift+Klik menunjukkan anggaran kos tanpa membeli @@ -3140,6 +3180,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Kenderaan Jalan STR_REPLACE_VEHICLE_SHIP :Kapal STR_REPLACE_VEHICLE_AIRCRAFT :Pesawat + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Pilih jenis enjin untuk diganti STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Pilih jenis enjin baru yang anda ingin guna untuk menggantikan jenis enjin sebelah kiri @@ -3458,7 +3499,7 @@ STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Pindah dan tun STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Pindah dan tunggu sebarang kargo sehingga penuh dengan ubahsuai secara auto ke {STRING}) STR_ORDER_NO_UNLOAD_REFIT :Tiada muat turun dan ambil kargo dengan ubahsuai secara auto ke {STRING}) STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Tiada muat turun dan tunggu sehingga muatan penuh dengan ubahsuai secara auto ke {STRING}) -STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Tiada muat turun dan tunggu sebarang kargo penuh dengan ubahsuai secara auto ke {STRING}) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Tiada muat turun dan tunggu sebarang kargo dengan kapasiti penuh dengan ubahsuai secara automatik ke {STRING}) STR_ORDER_AUTO_REFIT_ANY :kargo sedia ada @@ -3718,6 +3759,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Penggali STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... sudah berada di paras laut STR_ERROR_TOO_HIGH :{WHITE}... terlalu tinggi STR_ERROR_ALREADY_LEVELLED :{WHITE}... sudah rata +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Selepas itu jambatan atasnya akan jadi terlalu tinggi. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Nama syarikat tidak dapat ditukar... @@ -3768,6 +3810,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... huta STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... hanya boleh dibina di atas paras garisan salji STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... hanya boleh dibina di bawah paras garisan salji + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Stesen keretapi tidak dapat dibina di sini... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Hentian bas tidak dapat dibina di sini... @@ -3904,6 +3947,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Jambatan STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Tidak boleh mula dan tamat di petak yang sama STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Kedua-dua kepala jambatan bukan pada paras yang sama STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Jambatan terlalu rendah untuk rupa bumi ini +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Jambatan terlalu tinggi untuk kawasan ini. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Mula dan hujung mesti pada garisan yang sama STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... kedua-dua kepala jambatan mesti berada di atas tanah STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... jambatan telalu panjang @@ -4455,6 +4499,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (tersembunyi) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4489,8 +4534,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 8b76352aa9..259fd8ee68 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -97,30 +97,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Mineralvann # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passasjer{P "" er} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passasjer{P "" er} STR_QUANTITY_COAL :{WEIGHT_LONG} kull -STR_QUANTITY_MAIL :{COMMA} postsekk{P "" er} +STR_QUANTITY_MAIL :{COMMA}{NBSP}postsekk{P "" er} STR_QUANTITY_OIL :{VOLUME_LONG} olje -STR_QUANTITY_LIVESTOCK :{COMMA} enhet{P "" er} buskap -STR_QUANTITY_GOODS :{COMMA} kasse{P "" r} gods +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}enhet{P "" er} buskap +STR_QUANTITY_GOODS :{COMMA}{NBSP}kasse{P "" r} med gods STR_QUANTITY_GRAIN :{WEIGHT_LONG} korn STR_QUANTITY_WOOD :{WEIGHT_LONG} tømmer STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} jernmalm STR_QUANTITY_STEEL :{WEIGHT_LONG} stål -STR_QUANTITY_VALUABLES :{COMMA} sekk{P "" er} med verdisaker +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}sekk{P "" er} med verdisaker STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} kobbermalm STR_QUANTITY_MAIZE :{WEIGHT_LONG} mais STR_QUANTITY_FRUIT :{WEIGHT_LONG} frukt -STR_QUANTITY_DIAMONDS :{COMMA} sekk{P "" er} med diamanter +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}sekk{P "" er} med diamanter STR_QUANTITY_FOOD :{WEIGHT_LONG} mat STR_QUANTITY_PAPER :{WEIGHT_LONG} papir -STR_QUANTITY_GOLD :{COMMA} sekk{P "" er} med gull +STR_QUANTITY_GOLD :{COMMA}{NBSP}sekk{P "" er} med gull STR_QUANTITY_WATER :{VOLUME_LONG} vann STR_QUANTITY_WHEAT :{WEIGHT_LONG} hvete STR_QUANTITY_RUBBER :{VOLUME_LONG} gummi STR_QUANTITY_SUGAR :{WEIGHT_LONG} sukker -STR_QUANTITY_TOYS :{COMMA} leke{P "" r} -STR_QUANTITY_SWEETS :{COMMA} sekk{P "" er} med godteri +STR_QUANTITY_TOYS :{COMMA}{NBSP}leke{P "" r} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}sekk{P "" er} med godteri STR_QUANTITY_COLA :{VOLUME_LONG} cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} sukkerspinn STR_QUANTITY_BUBBLES :{COMMA} boble{P "" r} @@ -167,12 +167,12 @@ STR_ABBREV_NONE :{TINY_FONT}IN STR_ABBREV_ALL :{TINY_FONT}ALLE # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passasjer{P "" er} -STR_BAGS :{COMMA} sekk{P "" er} -STR_TONS :{COMMA} tonn -STR_LITERS :{COMMA} liter -STR_ITEMS :{COMMA} enhet{P "" er} -STR_CRATES :{COMMA} kasse{P "" r} +STR_PASSENGERS :{COMMA}{NBSP}passasjer{P "" er} +STR_BAGS :{COMMA}{NBSP}sekk{P "" er} +STR_TONS :{COMMA}{NBSP}tonn +STR_LITERS :{COMMA}{NBSP}liter +STR_ITEMS :{COMMA}{NBSP}element{P "" er} +STR_CRATES :{COMMA}{NBSP}kasse{P "" r} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Mørkeblå @@ -193,37 +193,37 @@ STR_COLOUR_GREY :Grå STR_COLOUR_WHITE :Hvit # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mi/t -STR_UNITS_VELOCITY_METRIC :{COMMA} km/t -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mi/t +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/t +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA} hk -STR_UNITS_POWER_METRIC :{COMMA} hk -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hk +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hk +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonn -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonn{P "" er} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonn{P "" er} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} l +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l STR_UNITS_VOLUME_SHORT_SI :{COMMA} m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" er} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter{P "" er} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} fot -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}fot +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filterstreng: @@ -250,6 +250,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Rullefel STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Rullefelt - ruller listen til venstre/høyre STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Riv bygninger osv. på et landområde. Ctrl velger område diagonalt. Shift slår av/på kostnadsestimat +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Vis skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Vis skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Vis skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Vis skjulte + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ved å aktivere denne knappen, blir de skjulte tog også vist +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ved å aktivere denne knappen, blir de skjulte kjøretøy også vist +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ved å aktivere denne knappen, blir de skjulte skip også vist +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ved å aktivere denne knappen, blir de skjulte fly også vist + # Query window STR_BUTTON_DEFAULT :{BLACK}Standard STR_BUTTON_CANCEL :{BLACK}Avbryt @@ -363,7 +374,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Avslutt ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spillinnstillinger -STR_SETTINGS_MENU_CONFIG_SETTINGS :Avanserte innstillinger +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Innstillinger STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI-/Spillskript-innstillinger STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-innstillinger STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Instillinger for gjennomsiktighet @@ -918,10 +929,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgianske Lar STR_GAME_OPTIONS_CURRENCY_IRR :Iranske Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Kjøretøy STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Velg kjøreside for veier STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Venstrekjøring @@ -975,6 +982,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skjermop STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Velg skjermoppløsningen som skal brukes STR_GAME_OPTIONS_RESOLUTION_OTHER :annet +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Grensesnitt-størrelse +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Velg grensesnitt-størrelsen som skal benyttes + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :2 ganger størrelse +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4 ganger størrelse + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grafikksett STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Velg grafikksett som skal brukes STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} manglende/ødelagt{P "" e} fil{P "" er} @@ -1068,6 +1082,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Veldig flatt STR_TERRAIN_TYPE_FLAT :Flatt STR_TERRAIN_TYPE_HILLY :Åslendt STR_TERRAIN_TYPE_MOUNTAINOUS :Berglendt +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Ettergivende STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1075,8 +1090,8 @@ STR_CITY_APPROVAL_HOSTILE :Fientlig STR_WARNING_NO_SUITABLE_AI :{WHITE}Ingen egnet AI tilgjengelig...{}Du kan laste ned flere AIer fra nettet med spillets nedlastingssystem. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Avanserte innstillinger +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Innstillinger STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtrer streng: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Vis alle STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Skjul alle @@ -1092,9 +1107,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Selskapet innst STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategori: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Type: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Begrenser listen nedenfor ved hjelp av forhåndsdefinerte filtre -STR_CONFIG_SETTING_RESTRICT_BASIC :Grunnleggende innstillinger -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avanserte innstillinger -STR_CONFIG_SETTING_RESTRICT_ALL :Avanserte innstillinger / alle innstillinger +STR_CONFIG_SETTING_RESTRICT_BASIC :Grunnleggende (vis bare viktige innstillinger) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avansert (Vis de fleste innstillinger) +STR_CONFIG_SETTING_RESTRICT_ALL :Ekspert (vis alle innstillinger, inkludert merkelige) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Innstillinger med annen verdi enn standarden STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Innstillinger med annen verdi enn innstillingene dine for nye spill @@ -1149,6 +1164,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Aktiver/inaktiv STR_CONFIG_SETTING_CITY_APPROVAL :Bystyrets holdning til restrukturering av området: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Velg hvor mye støy og miljøskader forårsaket av selskaper påvirker deres anseelse i byen og muligheter for ytterligere utbygging i nærområdet +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimal karthøyde: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Still inn maksimal tillatt høyde for fjellene på kartet +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Du kan ikke sette den maksimale karthøyden til denne verdien. Minst ett fjell på kartet er høyere STR_CONFIG_SETTING_AUTOSLOPE :Tillat endring av landskap under bygninger, spor, osv.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tillat endring av landskapet under bygninger og spor uten å fjerne dem STR_CONFIG_SETTING_CATCHMENT :Mer realistisk størrelse på oppfangingsområder: {STRING} @@ -1177,6 +1195,8 @@ STR_CONFIG_SETTING_INFLATION :Inflasjon: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Aktiver inflasjon i økonomien, der kostnader stiger litt raskere enn betalinger STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maksimal brolengde: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maksimal lengde for broer +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimal brohøyde: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimal høyde for å bygge broer STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maksimal tunnellengde: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maksimal lengde for tunneller STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Konstruksjonsmetode for primærindustri: {STRING} @@ -1264,7 +1284,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Varighet for vi STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} andre{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Vis verktøytips: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Forsinkelse før verktøytips vises når musen svever over elementer i grensesnittet. Alternativt kan verktøytips bindes til den høyre museknappen -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Hovre i {COMMA} sekund{P 0 "" s} +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Hovre i {COMMA} millisekunder{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Høyreklikk STR_CONFIG_SETTING_POPULATION_IN_LABEL :Vis byers innbyggertall i tittelfeltet: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Vis inbyggertallet i byer i tittelfeltet på kartet @@ -1447,7 +1467,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Vedlikeholdsint STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Velge om vedlikehold av kjøretøyer utløses av tiden som er forløpt fra siste gjennomførte vedlikehold, eller av at pålitelighet dropper under en bestemt prosent av maksimal pålitelighet STR_CONFIG_SETTING_SERVINT_TRAINS :Standard vedlikeholdsintervall for tog: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Angi standard vedlikeholdsintervall for nye skinnegående kjøretøy, hvis det ikke er satt noe serviceintervall for kjøretøyet -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dag{P 0 "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dag{P 0 "" er}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Deaktivert STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Standard vedlikeholdsintervall for veikjøretøy: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Angi standard vedlikeholdsintervall for nye veikjøretøy, hvis det ikke er satt noe vedlikeholdsintervall for kjøretøyet @@ -1514,7 +1534,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Velg oppførsel STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Bygg vingesignal automatisk før: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Angi året når elektriske signal vil bi tatt i bruk for spor. Før dette året vil ikke-elektriske signal bli brukt (som har nøyaktig samme funksjon, men forskjellig utseende) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Aktiver signalgrensesnittet: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Vis et vindu for å velge hvilke singaltyper som skal bygges, i stedet for vindusløs signaltype-rotasjon når man Ctrl + klikker på byggesignaler +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Vis et vindu for å velge hvilke signaltyper som skal bygges, i stedet for vindusløs signaltype-rotasjon når man Ctrl+klikker på bygde signaler STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Standard signaltype: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Standard signaltype som blir brukt STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Blokksignaler @@ -1587,9 +1607,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :ingen STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Innledende bystørrelsesmultiplikator: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Gjennomsnittsstørrelse på (stor)byer i forhold til vanlige byer ved begynnelsen av spillet -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Oppdater distribusjonsgraf hver {STRING} dag{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Oppdater distribusjonsgraf hver {STRING}{NBSP}dag{P 0:2 "" er} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Tid mellom påfølgende reberegning av koblingsgrafen. Hver reberegning beregner planene for en del av grafen. Det betyr at en verdi X for denne innstillingen ikke betyr at hele grafen vil bli oppdatert for hver X. dag. Bare noen komponenter vil. Jo kortere du setter det, dess mer CPU tid bil være nødvendig for å beregne det. Jo lenger du setter den, dess lenger vil det ta før last-distribusjonen begynner på nye ruter. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Benytt {STRING} dag{P 0:2 "" er} for reberegning av distribusjonsgraf +STR_CONFIG_SETTING_LINKGRAPH_TIME :Benytt {STRING}{NBSP}dag{P 0:2 "" er} for omberegning av distribusjonsgraf STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Tiden det tar for hver ny reberegning av en graf-link komponent. Når en reberegning iverksettes, blir en tråd startet som tillates å kjøre for dette antall dager. Jo kortere du setter dette, desto mer sannsynlig er det at tråden ikke er ferdig til ønsket tid. Da stopper spillet ("etterslep"). Jo lenger du setter den, desto lenger tid tar det for distribusjonen å bli oppdatert når rutene endres. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manual STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetrisk @@ -1599,7 +1619,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"symmetrisk" be STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Distribusjonsmodus for post: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"symmetrisk" betyr at omrent samme mengde post vil bli sent fra stasjon A til stasjon B som omvendt (fra B til A). "asymmetrisk" betyr at vilkårlige mengder post kan bli sendt i begge retninger. "manuelt" betyr at ingen automatisk distribusjon vil forekomme for post. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Distribusjonsmodus for den pansrede gods-klassen: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Den pansrede godsklassen inneholder verdisaker i det tempererte klimaet, diamanter i det subtropiske, og gull i det subarktiske. NEWGRF kan endre på dette. "symmetrisk" betyr at omtrent like mye gods vil bli sendt fra stasjon A til stasjon B som omvendt (fra B til A). "asymmetrisk" betyr at vilkårlige mengder gods kan sendes i begge retninger. "manuelt" betyr at ingen auomatisk distribusjon vil forekomme for lasten. Det anbefales å sette denne til asymmetrisk eller manuell når du spiller subarktisk, siden banker ikke vil sende noe gull tilbake til gullgruver. For temperert og subtropisk klima kan du også velge symmetrisk, da banker fint kan velge å sende verdisaker tilbake til opprinnelig bank. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Den PANSREDE godsklassen inneholder verdisaker i det tempererte klimaet, diamanter i det subtropiske, og gull i det subarktiske. NewGRF-er kan endre på dette. "symmetrisk" betyr at omtrent like mye gods vil bli sendt fra stasjon A til stasjon B som omvendt (fra B til A). "asymmetrisk" betyr at vilkårlige mengder gods kan sendes i begge retninger. "manuelt" betyr at ingen automatisk distribusjon vil forekomme for lasten. Det anbefales å sette denne til asymmetrisk eller manuell når du spiller subarktisk, siden banker ikke vil sende noe gull tilbake til gullgruver. For temperert og subtropisk klima kan du også velge symmetrisk, da banker fint kan velge å sende verdisaker tilbake til opprinnelig bank. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Distribusjonsmodus for andre godsklasser: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"asymmetrisk" betyr at vilkårlige mengder gods kan sendes i begge retninger. "manuelt" betyr at ingen automatisk distribusjon av gods vil forekomme for disse godstypene. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Distribusjons-nøyaktighet: {STRING} @@ -1624,25 +1644,25 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrisk (HK) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Vekt-enheter: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Når vektene er vist i brukergrensesnittet , vise det i de utvalgte enheter +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Når vektene vises i brukergrensesnittet, vis dem i de utvalgte enhetene STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Det britiske imperiets enhetssystem ('short t'/tonn) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrisk (t/tonn) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Volumenheter: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Når volumene er vist i brukergrensesnittet, vise det i de utvalgte enhter +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Når volumene vises i brukergrensesnittet, vis dem i de utvalgte enhetene STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Det britiske imperiets enhetssystem (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrisk (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Enhet for trekkraft: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Når trekkarbeid, også kjent som trekkraft, er vist i brukergrensesnittet, vis det i de utvaglte enheter +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Når trekkarbeid, også kjent som trekkraft, er vist i brukergrensesnittet, vis det i de utvalgte enhetene STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Det britiske imperiets enhetssystem (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrisk (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Høyde-enheter: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Når høyder vises i brukergrensesnittet, vise det i de utvalgte enheter +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Når en høyde vises i brukergrensesnittet, vis den i de valgte enhetene STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Det britiske imperiets enhetssystem (fot) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrisk (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1718,7 +1738,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Flerspil STR_INTRO_GAME_OPTIONS :{BLACK}Spillinnstillinger STR_INTRO_HIGHSCORE :{BLACK}Tavle med høyeste poengsummer -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Avanserte Innstillinger +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Innstillinger STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-innstillinger STR_INTRO_ONLINE_CONTENT :{BLACK}Se etter innhold på nettet STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spillskript-innstillinger @@ -1738,7 +1758,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Velg lek STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Vis spillinnstillinger STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Vise tavle over høyeste poengsummer -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Vis avanserte innstillinger +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Vis innstillinger STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Vis NewGRF-instillinger STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Se etter nytt og oppdatert innhold for nedlasting STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vis AI/Spillskript-innstillinger @@ -1778,6 +1798,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Spiller STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magisk bulldoser (fjern industrier, uflyttbare objekter): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunneler kan krysse hverandre: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetfly vil ikke krasje (regelmessig) på små flyplasser: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Rediger den maksimale karthøyden: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Rediger den maksimale fjellhøyden på kartet STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Temperert landskap STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subarktisk landskap STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Subtropisk landskap @@ -2297,7 +2319,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Bygg jer STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Bygg togstall (trengs for å kjøpe og vedlikeholde tog). Shift slår av/på kostnadsestimat STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Gjør om jernbane til kontrollpunkt. Ctrl slår sammen kontrollpunkt. Shift slår av/på kostnadsestimat STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Bygg jernbanestasjon. Ctrl slår sammen stasjoner. Shift slår av/på kostnadsestimat -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Bygg jernbanesignaler. Ctrl veksler mellom vingesignaler/lyssignaler{}Hold og dra for å bygge signaler langs en rett jernbanestrekning. Ctrl bygger signaler til det neste krysset. Ctrl+klikk viser/skjuler signalvalgsvinduet. Shift slår av/på kostnadsestimat +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Bygg jernbanesignaler. Ctrl veksler mellom vingesignaler/lyssignaler{}Hold og dra for å bygge signaler langs en rett jernbanestrekning. Ctrl bygger signaler til det neste krysset eller signalet. Ctrl+klikk viser/skjuler signalvalgsvinduet. Shift bytter mellom bygging/vising av kostnadsestimat STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Bygg jernbanebro. Shift slår av/på kostnadsestimat STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Bygg jernbanetunnel. Shift slår av/på kostnadsestimat STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Veksle mellom bygging/fjerning av jernbanespor, signaler, kontrollpunkt og stasjoner. Hold inne Ctrl for i tillegg å fjerne jernbanespor fra kontrollpunkt og stasjoner @@ -2669,7 +2691,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Firma-eid lando STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Opprinnelig opphavsbeskyttet {COPYRIGHT} 1995 Chris Sawyer, Alle rettigheter reservert STR_ABOUT_VERSION :{BLACK}OpenTTD versjon {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD-teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Lagre spill @@ -2704,6 +2726,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Antall byer: STR_MAPGEN_DATE :{BLACK}Dato: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Antall industrier: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimal karthøyde: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Øk den maksimale fjellhøyden på kartet med én +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Redusér den maksimale fjellhøyden på kartet med én STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Høyde på snøgrensen: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flytt høyden på snøgrensen ett hakk opp STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flytt høyden på snøgrensen ett hakk ned @@ -2733,6 +2758,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Høydeka STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Størrelse: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Endre maksimal karthøyde STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Endre høyden på snøgrensen STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Endre startår @@ -2847,13 +2873,16 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF-v STR_SPRITE_ALIGNER_CAPTION :{WHITE}Forskyver sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Neste sprite STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Fortsett til neste normale sprite og hopp over enhver pseudo-/omfargings-/skrifttype- sprite, samt start om ved begynnelsen -STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Gå til figur +STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Gå til sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gå til gitt sprite. Hvis spriten ikke er en normal sprite, fortsett til neste normale sprite -STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Forrige figur +STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Forrige sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fortsett til forrige normale sprite og hopp over enhver pseudo-/omfargings-/skrifttype- sprite, samt start om ved begynnelsen STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Forhåndsvisning av valgt sprite. Innrettingen ignoreres når spriten tegnes -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytt spriten rundt omkring, for å endre X- og Y-forskyvningene -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X-forskyvning: {NUM}, Y-forskyvning: {NUM} +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytt på spriten for å endre X- og Y-forskyvningene +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Tilbakestill relativt +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Nullstill de nåværende relative forskyvningene +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X forskyvning: {NUM}, Y forskyvning: {NUM} (Absolutt) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X forskyvning: {NUM}, Y forskyvning: {NUM} (Relativt) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Velg en sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Velg en sprite fra et vilkårlig sted på skjermen @@ -2866,26 +2895,26 @@ STR_NEWGRF_ERROR_MSG_ERROR :{RED}Feil: {SIL STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}En fatal NewGRF-feil har oppstått: {}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} virker ikke med TTDPatch-versjonen som er rapportert av OpenTTD -STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} er for versjon {STRING} av TTD. -STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} er laget for å bli brukt med {STRING} +STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} er for versjon {STRING} av TTD +STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} er laget for bruk med {STRING} STR_NEWGRF_ERROR_INVALID_PARAMETER :Ugyldig parameter for {1:STRING}: parameter {STRING} ({NUM}) -STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} må være lastet før {STRING}. -STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} må være lastet etter {STRING}. -STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} krever OpenTTD versjon {STRING} eller nyere. +STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} må lastes inn før {STRING}. +STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} må lastes inn etter {STRING}. +STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} krever OpenTTD versjon {STRING} eller nyere STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :GRF-filen den var laget for å oversette -STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :For mange NewGRFer innlastet. -STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Å laste inn {1:STRING} som statisk NewGRF med {STRING} kan forårsake synkroniseringsfeil. -STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Uventet figur (figur {3:NUM}) +STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :For mange NewGRF-er er innlastet +STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Å laste inn {1:STRING} som statisk NewGRF med {STRING} kan forårsake synkroniseringsfeil +STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Uventet sprite (figur {3:NUM}) STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Ukjent Handling 0 egenskap {4:HEX} (figur {3:NUM}) -STR_NEWGRF_ERROR_INVALID_ID :Forsøkt å bruke ugyldig ID (figur {3:NUM}) -STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} inneholder en ødelagt sprite. Alle ødelagte spriter vil bli vist som røde spørsmålstegn (?). -STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Inneholder flere Handling 8 oppføringer (figur {3:NUM}) -STR_NEWGRF_ERROR_READ_BOUNDS :Leste forbi slutten av pseudo-figur (figur {3:NUM}) -STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Det nåværende grafikksettet mangler en del spriter.{}Vennligst oppdater grafikksettet. -STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Den benyttede grafikkpakken mangler en mengde bildeelementer.{}Vennligst oppdater grafikkpakken.{}Siden du spiller en {YELLOW}utviklingsversjon av OpenTTD{WHITE}, kan det være at du også trenger en {YELLOW}utviklingsversjon av grafikkpakken{WHITE} +STR_NEWGRF_ERROR_INVALID_ID :Forsøk på å bruke ugyldig ID (sprite {3:NUM}) +STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} inneholder en ødelagt sprite. Alle ødelagte spriter blir vist som røde spørsmålstegn (?). +STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Inneholder flere Handling 8-oppføringer (figur {3:NUM}) +STR_NEWGRF_ERROR_READ_BOUNDS :Leste forbi slutten av pseudo-sprite (figur {3:NUM}) +STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Det benyttede grafikksettet mangler en del spriter.{}Du må oppdatere grafikksettet. +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Den benyttede grafikkpakken mangler en mengde bildeelementer.{}Du må oppdatere grafikkpakken.{}Siden du spiller en {YELLOW}utviklingsversjon av OpenTTD{WHITE}, kan det være at du også trenger en {YELLOW}utviklingsversjon av grafikkpakken{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :Etterspurte GRF-ressurser ikke tilgjengelig (figur {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} ble deaktivert av {STRING} -STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Ugyldig/ukjent figur layout-format (figur {3:NUM}) +STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Ugyldig/ukjent sprite layout-format (figur {3:NUM}) # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Advarsel! @@ -2898,7 +2927,7 @@ STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Kan ikke STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Kompatibel GRF(er) lastet for manglende filer STR_NEWGRF_DISABLED_WARNING :{WHITE}Manglende GRF-fil(er) har blitt deaktivert STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}Mangler GRF-fil(er) -STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Å slå av pause kan medføre at OpenTTD krasjer. Ikke rapporter feil for etterfølgende krasjer.{}Vil du virkelig slå av pause? +STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Å slå av pause kan medføre at OpenTTD krasjer. Ikke rapporter feil for etterfølgende krasjer.{}Er du sikker på at du vil slå av pause? # NewGRF status STR_NEWGRF_LIST_NONE :Ingen @@ -2911,7 +2940,7 @@ STR_NEWGRF_BROKEN :{WHITE}Atferden STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Det endret maskinvogn-tilstand for '{1:ENGINE}' mens det er utenfor en togstall. STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Det endret kjøretøylengde for '{1:ENGINE}' når utenfor en togstall. STR_NEWGRF_BROKEN_CAPACITY :{WHITE} Det endret kjøretøykapasitet for '{1:ENGINE}' når ikke i et depot eller under ombygging -STR_BROKEN_VEHICLE_LENGTH :{WHITE}Tog '{VEHICLE}' tilhørende '{COMPANY}' har ugyldig lengde. Dette skyldes trolig problemer med NewGRFer. Spillet kan bli usynkronisert eller krasje. +STR_BROKEN_VEHICLE_LENGTH :{WHITE}Tog '{VEHICLE}' tilhørende '{COMPANY}' har ugyldig lengde. Dette skyldes trolig problemer med NewGRF-er. Spillet kan bli usynkronisert eller krasje. STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' gir feilaktig informasjon. STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Vare-/ombyggingsinformasjon for '{1:ENGINE}' er forskjellig fra kjøpelisten etter konstruksjonen. Dette kan resultere i at autofornying ikke fungerer på riktig måte. @@ -2965,8 +2994,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} levert STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (fortsatt nødvendig) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (levert) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Byen vokser hver {ORANGE}{COMMA}.{BLACK} dag -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Byen vokser hver {ORANGE}{COMMA}.{BLACK} dag (finansiert) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Byen vokser hver {ORANGE}{COMMA}{BLACK}{NBSP}dag{P "" s} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Byen vokser hver {ORANGE}{COMMA}{BLACK}{NBSP}dag{P "" s} (finansiert) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Byen vokser {RED}ikke{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Flystøy: {ORANGE}{COMMA}{BLACK} støygrense: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Gå til by. Ctrl+klikk åpner et nytt tilleggsvindu over byen @@ -3026,7 +3055,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informasjon STR_GOAL_QUESTION_CAPTION_WARNING :Advarsel STR_GOAL_QUESTION_CAPTION_ERROR :Feil -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Avbryt STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nei @@ -3045,6 +3074,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Start på nytt STR_GOAL_QUESTION_BUTTON_POSTPONE :Utsett STR_GOAL_QUESTION_BUTTON_SURRENDER :Gi opp STR_GOAL_QUESTION_BUTTON_CLOSE :Lukk +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidier @@ -3369,10 +3399,10 @@ STR_PURCHASE_INFO_ALL_BUT :Alt utenom {CAR STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks trekkraft: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rekkevidde: {GOLD}{COMMA} ruter -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Liste over tog/vogner - klikk på tog/vogn for mer informasjon -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liste over kjøretøy - klikk på kjøretøy for mer informasjon -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Liste over skip - klikk på skip for mer informasjon -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Liste over luftfartøy - klikk på luftfartøy for mer informasjon +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Liste over tog/vogner - klikk på tog/vogn for mer informasjon. Ctrl+klikk for å skjule/vise denne typen +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liste over kjøretøy - klikk på kjøretøy for mer informasjon. Ctrl+klikk for å skjule/vise kjøretøytypen +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Liste over skip - klikk på skip for mer informasjon. Ctrl+klikk for å skjule/vise skiptypen +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Liste over luftfartøy - klikk på luftfartøy for mer informasjon. Ctrl+klikk for å skjule/vise luftfartøytypen STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Kjøp tog/vogn STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Kjøp kjøretøy @@ -3394,6 +3424,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Gi nytt STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Gi nytt navn til skipstypen STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Gi nytt navn til luftfartøytypen +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Skjul +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Skjul +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Skjul +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Skjul + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Vis +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Vis +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Vis +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Vis + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Veksle mellom å skjule/vise typen av jernbanekjøretøy +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Veksle mellom å skjule/vise kjøretøystypen +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Veksle mellom å skjule/vise skipstypen +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bytte mellom å skjule/vise flytypen + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Gi tog/vogntype nytt navn STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Gi kjøretøytypen nytt navn STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Gi skipstypen nytt navn @@ -3447,7 +3492,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Kopier k STR_DEPOT_CLONE_SHIP :{BLACK}Kopier skip STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Kopier luftfartøy -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Dette vil skape en kopi av et tog inkludert alle vognene. Klikk denne knappen og deretter på et tog utenfor eller inni togstallen. Ctrl+klikk vil dele ordrene. Shift+klikk viser estimert kostnad +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Dette vil kjøpe en kopi av et tog inkludert alle vognene. Klikk denne knappen og deretter på et tog utenfor eller inni togstallen. Ctrl+klikk deler ordrene. Shift+klikk viser estimert kostnad uten kjøp STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Dette vil skape en kopi av et kjøretøy. Klikk denne knappen og deretter på et kjøretøy utenfor eller inni garasjen. Ctrl+klikk vil dele ordrene. Shift+klikk viser estimert kostnad STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Dette vil skape en kopi av et skip. Klikk denne knappen og deretter på et skip utenfor eller inni skipsdokken. Ctrl+klikk vil dele ordrene. Shift+klikk viser estimert kostnad STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Dette vil skape en kopi av et luftfartøy. Klikk denne knappen og deretter på et luftfartøy utenfor eller inni hangaren. Ctrl+klikk vil dele ordrene. Shift+klikk viser estimert kostnad @@ -3498,6 +3543,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Kjøretøy STR_REPLACE_VEHICLE_SHIP :Skip STR_REPLACE_VEHICLE_AIRCRAFT :{G=neuter}Luftfartøy +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Kjøretøy i bruk +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolonne med kjøretøy som du eier +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Tilgjengelige kjøretøy +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolonne med kjøretøy tilgjengelig for utskiftning + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Velg lokomotivtype som skal erstattes STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Velg lokomotivtypen du ønsker at skal erstatte den du har valgt til venstre @@ -3704,7 +3754,7 @@ STR_ORDER_GO_VIA :Gå via STR_ORDER_GO_NON_STOP_VIA :Gå direkte via STR_ORDER_TOOLTIP_NON_STOP :{BLACK}Endre stopprutinene for den merkede ordren -STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}Full last av enhver varetype +STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}Full last av alle varetyper STR_ORDER_DROP_LOAD_IF_POSSIBLE :Last hvis tilgjengelig STR_ORDER_DROP_FULL_LOAD_ALL :Full last av alle varetyper STR_ORDER_DROP_FULL_LOAD_ANY :Full last av minst en varetype @@ -3858,8 +3908,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(opphold i {STR STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(reise for {STRING}, ikke oppsatt med rutetabell) STR_TIMETABLE_STAY_FOR :og bli værende i {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :og reis i {STRING} -STR_TIMETABLE_DAYS :{COMMA} dag{P "" er} -STR_TIMETABLE_TICKS :{COMMA} tikk +STR_TIMETABLE_DAYS :{COMMA}{NBSP}dag{P "" s} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tikk{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}Det vil ta {STRING} å fullføre rutetabellen STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Det vil ta minst {STRING} å fullføre denne rutetabellen (rutetabell ikke fullstendig) @@ -4098,6 +4148,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Utgravin STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... allerede på havnivå STR_ERROR_TOO_HIGH :{WHITE}... for høyt STR_ERROR_ALREADY_LEVELLED :{WHITE}... allerede flatt +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Etterpå vil broen over den være for høy. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kan ikke endre firmaets navn... @@ -4124,7 +4175,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}...{NBSP STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}...{NBSP}for nær en annen by STR_ERROR_TOO_MANY_TOWNS :{WHITE}...{NBSP}for mange byer STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... det er ikke mer plass på kartet -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Byen kommer ikke til å bygge veier. Du kan aktivere bygging av veier via Avanserte innstillinger->Økonomi->Byer. +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Byen kommer ikke til å bygge veier. Du kan aktivere bygging av veier via Innstillinger->Miljø->Byer STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Veiarbeid i gang STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kan ikke fjerne denne byen...{}En stasjon eller garasje/stall/hangar/dokk henviser til byen eller en by-eid rute som ikke kan fjernes STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... det er ingen passende steder for en statue i sentrum av denne byen @@ -4148,6 +4199,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... skog STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kan kun bygges over snøgrensen STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kan kun bygges under snøgrensen +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Det var ingen egnede steder for '{STRING}' bransjer +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Endre parametrene for kart-generering for å få et bedre kart + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kan ikke bygge jernbanestasjon her... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kan ikke bygge busstasjon... @@ -4284,6 +4338,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Må rive STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kan ikke starte og slutte på samme felt STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Broender er ikke på samme nivå STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Broen er for lav for terrenget +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Bro er for høy for dette terrenget. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Start og slutt må være på linje STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}...{NBSP}broens ender må være på land STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... broen er for lang @@ -4848,6 +4903,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (skjult) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4883,8 +4939,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt index fb19787ce9..b65f71ad15 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -250,6 +250,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Rullefel STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Rullefelt - blar lista til venstre/høgre STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Riv bygningar o.a. i eit firkanta område. Ctrl vel området diagonalt. Shift syner estimert rivingskostnad +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Syn skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Syn skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Syn skjulte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Syn skjulte + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ved å slå på denne knappen, vert skjulte tok også syna +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ved å slå på denne knappen, vert skjulte køyretøy også syna +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ved å slå på denne knappen, vert skjulte skip også syna +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ved å slå på denne knappen, vert skjulte luftfartøy også syna + # Query window STR_BUTTON_DEFAULT :{BLACK}Standard STR_BUTTON_CANCEL :{BLACK}Avbryt @@ -363,7 +374,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Avslutt ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spelinstillingar -STR_SETTINGS_MENU_CONFIG_SETTINGS :Avanserte instillingar +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Innstillinger STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI- / Spelscript-innstillingar STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-innstillingar STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gjennomsiktigheitsinnstillingar @@ -835,6 +846,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} har ein ugyldig ordre STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} har to like ordrar STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} har ein ugyldig stasjon i sine ordre +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} har i ordrane ein flyplass der rullebanen er for kort STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} er gammal STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} er veldig gammal @@ -917,10 +929,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgiske Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iranske Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Veg-køyrety STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Vel køyreretning STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Venstrekøyring @@ -974,6 +982,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skjermop STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Vel skjermoppløysinga som skal nyttast STR_GAME_OPTIONS_RESOLUTION_OTHER :anna +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Grensesnittstorleik +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Vel storleik å bruke på grensesnittet + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dobbel størrelse +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Firedobbel størrelse + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grafikksett STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Vel grafikksett som skal nyttast STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} manglande/øydelagd{P "" e} fil{P "" er} @@ -1067,6 +1082,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Særs flatt STR_TERRAIN_TYPE_FLAT :Flatt STR_TERRAIN_TYPE_HILLY :Åslendt STR_TERRAIN_TYPE_MOUNTAINOUS :Berglendt +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Tillatande STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1074,8 +1090,8 @@ STR_CITY_APPROVAL_HOSTILE :Fiendsleg STR_WARNING_NO_SUITABLE_AI :{WHITE}Inga passande AIer tilgjengeleg...{}Du kan lasta ned fleire AI'ar frå nettet med spelets nedlastingssystem. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Avanserte innstillingar +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Innstillingar STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Søkefilter: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Utvid alle STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Skjul alle @@ -1148,6 +1164,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Skru av/på kat STR_CONFIG_SETTING_CITY_APPROVAL :Haldninga til bystyra når det gjeld ombygging: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vel kor mykje vurderinga frå bystyra og høvet for meir bygging i området vert påverka av støy og øydelegging frå eit firma. +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimal høgd på kart: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Sett maksimal høgd for fjell på kartet +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Du kan ikkje sette maksimal høgd på kartet til denne verdien. Minst eit fjell på kartet er høgare STR_CONFIG_SETTING_AUTOSLOPE :Tillet landskapsendringar under bygningar, spor o.s.b.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tillet å endre landskapet under bygningar, vegar og jernbanespor, utan å måtte fjerne dei fyrst. STR_CONFIG_SETTING_CATCHMENT :Meir realistisk storleik på oppfangingsområde: {STRING} @@ -1174,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflasjon: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Skrur på inflasjon, kor kostnader aukar noko fortare enn innbetalingar STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Største brolengde: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maksimal lengde for brubygging +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimal høgd på bru: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimal høgd for å bygge bruer STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Største tunnellengde: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maksimal lengde for tunnelbygging STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Konstruksjonsmetode for primærindustri: {STRING} @@ -1247,20 +1268,28 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Syn befolknings STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Bredde på linjer i grafar: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR :Landskapsgenerator: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Den originale generatoren avhenger av basisgrafikk som er satt, og lagar faste figurar i landskapet. TerraGenesis er ein Perlin støygenerator med finare konroll på innstillingane STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Terrengtype: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Berre TerraGenesis) Grad av fjell i landskapet STR_CONFIG_SETTING_INDUSTRY_DENSITY :Industritetthet: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Set kor månge industriar som skal lagast og på kva nivå dei skal haldas gjennom spelet STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimal avstand frå kartkanten for Oljeraffineri: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Snøgrense: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Kontroller i kva høgde snøen startar i arktis-liknande landskap. Snøen påverkar også kor industri kjem og krava for vekst i byar STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Kor ulendt skal terrenget vere (kun TerraGenesis): {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Berre TerraGenesis) Endre hyppigheit på høgder: Mjuke landskap he færre, meir spredde høgder. Tøffe landskap har månge høgdre, som kan sjå repeterande ut STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Særs jamnt STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Jamnt STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Ulendt STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Særs ulendt STR_CONFIG_SETTING_VARIETY :Variasjonsdistrubusjon: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Berre TerraGenesis) Kontroller om kartet inneheld både høge og flate område. Sidan dette berre gjer kartet flatare, bør andre innstillingar setjast til høge STR_CONFIG_SETTING_RIVER_AMOUNT :Elve-mengde: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Vel mengde elver å generera STR_CONFIG_SETTING_TREE_PLACER :Treplasseringalgoritme: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Vel fordelinga av tre på kartet: 'Original' plantar trea likt utover, 'Forbedra' plantar dei i grupper STR_CONFIG_SETTING_TREE_PLACER_NONE :Ingen STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Original STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Forbetra @@ -1558,11 +1587,22 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrisk (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Plassering +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafikk STR_CONFIG_SETTING_SOUND :{ORANGE}Lydar STR_CONFIG_SETTING_INTERFACE :{ORANGE}Grensesnitt +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Generelt STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Konstruksjon +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Nyhende / Rådgjevarar +STR_CONFIG_SETTING_COMPANY :{ORANGE}Firma +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Rekneskap STR_CONFIG_SETTING_VEHICLES :{ORANGE}Køyretøy +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Fysikk STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Ruting +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Avgrensingar +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastrofar / ulykker +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Generer ei verd +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Miljø +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Styremaktane STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Byar STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industriar STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Varefordeling @@ -1616,7 +1656,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Fleirspe STR_INTRO_GAME_OPTIONS :{BLACK}Spelinnstillingar STR_INTRO_HIGHSCORE :{BLACK}Poengtavle -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Avanserte innstillingar +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Innstillinger STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-innstillingar STR_INTRO_ONLINE_CONTENT :{BLACK}Sjå etter innhald på nett STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI- / Spelscriptinnstillingar @@ -1636,7 +1676,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Vel leik STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Syne spelinstillingar STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Syn poengtavla -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Syne avanserte innstillingar +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Skjerminnstillingar STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Syne NewGRF-instillingar STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Sjå etter nytt og oppdatert innhald som kan lastas ned STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vis AI- og spelscriptinnstillingar @@ -1676,6 +1716,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Speler STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magisk bulldoser (fjern industriar, uflyttbare ting): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnelar kan krysse kvarandre: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetfly vil ikkje krasje (ofte) på små flyplassar: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Endre maksimal høgd på kart: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Endre maksimal høgd på fjell på kartet STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Temperert landskap STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :subarktisk landskap STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :subtropisk landskap @@ -2566,7 +2608,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Feltet eigast a STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Opphaveleg opphavsbeskytta av {COPYRIGHT} 1995 Chris Sawyer, Alle rettigheiter reservert STR_ABOUT_VERSION :{BLACK}OpenTTD versjon {REV}. Oversett til nynorsk av Thor Morten Skogrand med fleire. -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD-teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Lagre spel @@ -2585,6 +2627,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Lagre STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Lagre gjeldande spel ved å bruke det valde namnet STR_SAVELOAD_LOAD_BUTTON :{BLACK}Last inn STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Last inn det valde spelet +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Last det valde høgdekartet STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Speldetaljar STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Ingen informasjon tilgjengeleg STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2600,6 +2643,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Antal byar: STR_MAPGEN_DATE :{BLACK}Dato: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Antal industriar: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimal høgd på kart: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Auk maksimal høgd på fjell på kartet med ein +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Minsk maksimal høgd på fjell på kartet med ein STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Høgd på snøgrensa: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flytt høgda på snøgrensa eitt hakk opp STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flytt høgda på snøgrensa eitt hakk ned @@ -2629,6 +2675,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Høgdeka STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Storleik: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Endre maksimal høgd på kartet STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Byt høgda på snøgrensa STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Byt startår @@ -2711,6 +2758,7 @@ STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Ikkje komp # NewGRF save preset window STR_SAVE_PRESET_CAPTION :{WHITE}Lagre førehandsinnstilling +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Liste av tilgjengelege førval, vel ein for å kopiera han til same navn nedanfor STR_SAVE_PRESET_TITLE :{BLACK}Skriv inn eit namn for førehandsinnstillinga STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Vald namn for førehandsinnstillinga som skal lagrast STR_SAVE_PRESET_CANCEL :{BLACK}Avbryt @@ -2748,7 +2796,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Førre s STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fortsett til neste normale sprite og hopp over einhver pseudo-/omfargings-/skrifttype- sprite, samt start om ved byrjinga STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Førehandsvisning av valgt sprite. Innrettinga ignorerast når spriten tegnes STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytt spriten rundt omkring, for å endre X- og Y-forskyvningene -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X-forskyvning: {NUM}, Y-forskyvning: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Vel sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Vel ein sprite frå eit vilkårleg sted på skjermen @@ -2921,7 +2968,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informasjon STR_GOAL_QUESTION_CAPTION_WARNING :Åtvaring STR_GOAL_QUESTION_CAPTION_ERROR :Feil -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Avbryt STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nei @@ -2940,6 +2987,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Start om STR_GOAL_QUESTION_BUTTON_POSTPONE :Utsett STR_GOAL_QUESTION_BUTTON_SURRENDER :Gje opp STR_GOAL_QUESTION_BUTTON_CLOSE :Lukk +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsidiar @@ -3224,6 +3272,8 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Slett de STR_GROUP_RENAME_TOOLTIP :{BLACK}Gje den valde gruppa nytt namn STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klikk for å beskytte denne gruppa frå å global automatisk erstatning +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Slett gruppe +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Er du sikker på at du vil slette denne gruppa og alle underpunkt? STR_GROUP_ADD_SHARED_VEHICLE :Legg til delte køyretøy STR_GROUP_REMOVE_ALL_VEHICLES :Fjern alle køyretøy @@ -3287,6 +3337,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Endre na STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Endre namnet til skipstypen STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Endre namn til luftfartøytype +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Skjul +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Skjul +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Skjul +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Skjul + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Syne +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Syne +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Syne +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Syne + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bytt skjul/vis type tog +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bytt skjul/vis type køyretøy +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bytt skjul/vis type skip +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bytt skjul/vis type luftfartøy + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Gje tog/vogn nytt namn STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Endre namnet til køyretøytypen STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Endre namnet til skipstypen @@ -3391,6 +3456,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Køyretøy STR_REPLACE_VEHICLE_SHIP :Skip STR_REPLACE_VEHICLE_AIRCRAFT :Luftfartøy +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Køyretøy i bruk +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolonne med køyretøy som du eig +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Tilgjengelege køyretøy +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolonne med køyretøy som kan erstattast + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Vel lokomotivtype å byte ut STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Vel den nye typen lokomotiv du vil at skal ta over for den du har vald til venstre @@ -3745,6 +3815,7 @@ STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Reis (ikkje på STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Reis med maks {2:VELOCITY} (utan rutetabell) STR_TIMETABLE_TRAVEL_FOR :Reis i {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :Reis i {STRING} med maks {VELOCITY} +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(reis {STRING}, ikkje på rutetabell) STR_TIMETABLE_STAY_FOR :og bli værande i {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :og reis i {STRING} STR_TIMETABLE_DAYS :{COMMA} dag{P "" ar} @@ -3986,6 +4057,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Utgravin STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Allereie på havnivå STR_ERROR_TOO_HIGH :{WHITE}For høgt STR_ERROR_ALREADY_LEVELLED :{WHITE}... allereie flatt +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Etterpå vil brua over det bli for høg. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kan ikkje byta firmanamn... @@ -4036,6 +4108,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... skog STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kan berre byggjast over snøgrensa STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kan berre byggjast under snøgrensa +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Der er ingen egna plass for '{STRING}' industriar +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Byt innstillingar for å generera eit betre kart + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kan ikkje byggje jernbanestasjon her... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kan ikkje byggje busstasjon... @@ -4172,6 +4247,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Må rive STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kan ikkje starte og slutte på same felt STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Bruhovud er ikkje på same nivå STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Brua er for låg for terrenget +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Brua er for høg for terrenget. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Start og slutt må vere på linje STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... endane på brua må vere på land STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... brua er for lang @@ -4198,6 +4274,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... du e STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Kan ikkje lage gruppe... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Kan ikkje slette denne gruppa... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Kan ikkje gje gruppa nytt namn... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Kan ikkje setja overordna gruppe... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Kan ikkje fjerne alle køyretøy fra denne gruppa... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Kan ikkje legge dette køyretøyet til denne gruppa... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Kan ikkje legge til gruppe for delte køyretøy... @@ -4735,6 +4812,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (skjult) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4770,8 +4848,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/polish.txt b/src/lang/polish.txt index 5951c397f3..220114005b 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -468,30 +468,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.w :napoju gazowany # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} pasażer{P "" ów ów} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}pasażer{P "" ów ów} STR_QUANTITY_COAL :{WEIGHT_LONG} węgla -STR_QUANTITY_MAIL :{COMMA} pacz{P ka ki ek} poczty +STR_QUANTITY_MAIL :{COMMA}{NBSP}pacz{P ka ki ek} poczty STR_QUANTITY_OIL :{VOLUME_LONG} ropy -STR_QUANTITY_LIVESTOCK :{COMMA} sztuk{P a i ""} żywca -STR_QUANTITY_GOODS :{COMMA} skrzy{P nia nie ń} towarów +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}sztuk{P a i ""} żywca +STR_QUANTITY_GOODS :{COMMA}{NBSP}skrzy{P nia nie ń} towarów STR_QUANTITY_GRAIN :{WEIGHT_LONG} zboża STR_QUANTITY_WOOD :{WEIGHT_LONG} drewna STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} rudy żelaza STR_QUANTITY_STEEL :{WEIGHT_LONG} stali -STR_QUANTITY_VALUABLES :{COMMA} pacz{P ka ki ek} kosztowności +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}pacz{P ka ki ek} kosztowności STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} rudy miedzi STR_QUANTITY_MAIZE :{WEIGHT_LONG} kukurydzy STR_QUANTITY_FRUIT :{WEIGHT_LONG} owoców -STR_QUANTITY_DIAMONDS :{COMMA} pacz{P ka ki ek} diamentów +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}pacz{P ka ki ek} diamentów STR_QUANTITY_FOOD :{WEIGHT_LONG} żywności STR_QUANTITY_PAPER :{WEIGHT_LONG} papieru -STR_QUANTITY_GOLD :{COMMA} wor{P ek ki ków} złota +STR_QUANTITY_GOLD :{COMMA}{NBSP}wor{P ek ki ków} złota STR_QUANTITY_WATER :{VOLUME_LONG} wody STR_QUANTITY_WHEAT :{WEIGHT_LONG} pszenicy STR_QUANTITY_RUBBER :{VOLUME_LONG} kauczuku STR_QUANTITY_SUGAR :{WEIGHT_LONG} cukru -STR_QUANTITY_TOYS :{COMMA} zabaw{P ka ki ek} -STR_QUANTITY_SWEETS :{COMMA} pacz{P ka ki ek} słodyczy +STR_QUANTITY_TOYS :{COMMA}{NBSP}zabaw{P ka ki ek} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}pacz{P ka ki ek} słodyczy STR_QUANTITY_COLA :{VOLUME_LONG} coli STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} waty cukrowej STR_QUANTITY_BUBBLES :{COMMA} bąbel{P ek ki ków} @@ -538,18 +538,18 @@ STR_ABBREV_NONE :{TINY_FONT}0 STR_ABBREV_ALL :{TINY_FONT}+ # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} pasażer{P "" ów ów} -STR_BAGS :{COMMA} wor{P ek ki ków} +STR_PASSENGERS :{COMMA}{NBSP}pasażer{P "" ów ów} +STR_BAGS :{COMMA}{NBSP}wor{P ek ki ków} STR_BAGS.d :{COMMA} worków STR_BAGS.c :{COMMA} workom STR_BAGS.b :{COMMA} worki STR_BAGS.n :{COMMA} workami STR_BAGS.m :{COMMA} workach STR_BAGS.w :{COMMA} worki -STR_TONS :{COMMA} ton{P a y ""} -STR_LITERS :{COMMA} litr{P "" y ów} -STR_ITEMS :{COMMA} sztuk{P a i ""} -STR_CRATES :{COMMA} skrzy{P nia nie ń} +STR_TONS :{COMMA}{NBSP}ton{P a y ""} +STR_LITERS :{COMMA}{NBSP}litr{P "" y ów} +STR_ITEMS :{COMMA}{NBSP}sztuk{P a i ""} +STR_CRATES :{COMMA}{NBSP}skrzy{P nia nie ń} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Ciemnoniebieski @@ -570,37 +570,37 @@ STR_COLOUR_GREY :Szary STR_COLOUR_WHITE :Biały # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}KM -STR_UNITS_POWER_METRIC :{COMMA}KM -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}KM +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}KM +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P a y ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P a y ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P a y ""} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P a y ""} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon{P "" y ów} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr{P "" y ów} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P "" y ów} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P "" y ów} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} st{P opa opy óp} -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}st{P opa opy óp} +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtr: @@ -627,6 +627,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Suwak - STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Pasek przewijania - przewija listę w prawo/w lewo STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Niszczenie budynków itp. w danym kwadracie terenu. Ctrl zaznacza obszar po przekątnej. Shift przełącza pomiędzy trybem burzenia a szacowaniem jego kosztów +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Pokaż ukryte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Pokaż ukryte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Pokaż ukryte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Pokaż ukryte + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Włączenie tego przycisku pokazuje wszystkie ukryte typy taboru +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Włączenie tego przycisku pokazuje wszystkie ukryte typy pojazdów +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Włączenie tego przycisku pokazuje wszystkie ukryte typy statków +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Włączenie tego przycisku pokazuje wszystkie ukryte typy samolotów + # Query window STR_BUTTON_DEFAULT :{BLACK}Domyślna STR_BUTTON_CANCEL :{BLACK}Anuluj @@ -740,7 +751,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Wyjście ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opcje gry -STR_SETTINGS_MENU_CONFIG_SETTINGS :Ustawienia zaawanasowane +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ustawienia STR_SETTINGS_MENU_SCRIPT_SETTINGS :Ustawienia SI / Game Script STR_SETTINGS_MENU_NEWGRF_SETTINGS :Ustawienia NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcje przeźroczystości @@ -1296,10 +1307,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari gruziński STR_GAME_OPTIONS_CURRENCY_IRR :Rial irański (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Pojazdy drogowe STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Wybierz stronę, po której będą jeździć samochody STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Jazda po lewej @@ -1353,6 +1360,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Rozdziel STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Wybierz rozdzielczość ekranu STR_GAME_OPTIONS_RESOLUTION_OTHER :inna +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Rozmiar interfejsu +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wybierz rozmiar elementów interfejsu + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normalne +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Podwójny +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Poczwórny + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Podstawowy zestaw grafik STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Wybierz podstawowy zestaw grafik do użycia STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} brak/uszkodzony plik{P "" i ów} @@ -1446,6 +1460,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Bardzo płaski STR_TERRAIN_TYPE_FLAT :Płaski STR_TERRAIN_TYPE_HILLY :Pagórkowaty STR_TERRAIN_TYPE_MOUNTAINOUS :Górzysty +STR_TERRAIN_TYPE_ALPINIST :Alpejski STR_CITY_APPROVAL_PERMISSIVE :Przyjazne STR_CITY_APPROVAL_TOLERANT :Tolerancyjne @@ -1453,8 +1468,8 @@ STR_CITY_APPROVAL_HOSTILE :Wrogie STR_WARNING_NO_SUITABLE_AI :{WHITE}Brak pasujących SI...{}Możesz pobrać wszystkie SI przez system "Zawartości online" -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Ustawienia zaawansowane +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Ustawienia STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtrowanie po frazie: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Otwórz wszystko STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Zamknij wszystko @@ -1470,9 +1485,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Ustawienie firm STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategoria: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Typ: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Ogranicza poniższą listę używając zdefiniowanych filtrów -STR_CONFIG_SETTING_RESTRICT_BASIC :Ustawienia podstawowe -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Ustawienia zaawansowane -STR_CONFIG_SETTING_RESTRICT_ALL :Ustawienia eksperta / wszystkie ustawienia +STR_CONFIG_SETTING_RESTRICT_BASIC :Podstawowe (pokaż tylko ważne opcje) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Zaawansowane (pokaż większość opcji) +STR_CONFIG_SETTING_RESTRICT_ALL :Ekspert (pokaż wszystkie opcje, włącznie z dziwnymi) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Ustawienie z inną wartością niż domyślna STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Ustawienia z wartościami innymi niż twoje ustawienia dla nowej gry @@ -1527,6 +1542,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Ustaw katastrof STR_CONFIG_SETTING_CITY_APPROVAL :Nastawienie władz miasta do przekształcania terenu: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Wybierz jak bardzo hałas i niszczenie środowiska przez firmy wpływa na ich ocenę przez miasto i dalsze konstrukcje na ich obszarze +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksymalna wysokość mapy: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Ustaw maksymalną możliwą wysokość dla gór na mapie +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nie możesz ustawić maksymalnej wysokości mapy na tę wartość. Conajmniej jedna góra na mapie jest wyższa STR_CONFIG_SETTING_AUTOSLOPE :Pozwól na zmiany terenu pod budynkami, torami itp.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Pozwalaj na modyfikowanie terenu pod budynkami i torami bez usuwania ich STR_CONFIG_SETTING_CATCHMENT :Pozwól na bardziej realistyczny zasięg obejmowania: {STRING} @@ -1555,6 +1573,8 @@ STR_CONFIG_SETTING_INFLATION :Inflacja: {STRI STR_CONFIG_SETTING_INFLATION_HELPTEXT :Włącz inflację w ekonomii, gdzie koszty rosną nieco szybciej niż zapłaty STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maksymalna długość mostu: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maksymalna długość budowanych mostów +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksymalna wysokość mostu: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksymalna wysokośc dla budowy mostów STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maksymalna długość tunelu: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maksymalna długość budowanych tuneli STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Budowa przedsiębiorstw wydobywczych: {STRING} @@ -1630,7 +1650,7 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Pojazdy nigdy n STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Kiedy włączone, wszystkie modele pojazdów pozostają dostępne na zawsze od daty ich wprowadzenia STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Autoodnawianie pojazdów gdy stają się stare: {STRING} STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Kiedy włączone, pojazd zbliżający się do końca swojej żywotności zostaje automatycznie zastąpiony, gdy warunki jego odnowienia są spełnione -STR_CONFIG_SETTING_AUTORENEW_MONTHS :Automatyczna odnowa, gdy pojazd ma {STRING} maks. wieku +STR_CONFIG_SETTING_AUTORENEW_MONTHS :Automatyczna odnowa, gdy pojazd ma {STRING} maksymalnym wieku STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Odpowiedni wiek pojazdu, kiedy powinien on zostać automatycznie odnowiony STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} miesi{P ąc ące ęcy} do STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} miesi{P ąc ące ęcy} po @@ -1640,8 +1660,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Czas wyświetla STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Czas wyświetlania komunikatów o błędach w czerwonym oknie. Niektóre (krytyczne) komunikaty o błędach nie zamykają się automatycznie po tym czasie, tylko muszą zostać zamknięte ręcznie STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekund{P a y ""} STR_CONFIG_SETTING_HOVER_DELAY :Pokaż wskazówki: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Opóźnienie, zanim wskazówka zostanie wyświetlona po najechaniu myszką na element interfejsu. Alternatywnie wskazówki mogą zostać przypisane do prawego przycisku myszki -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :po zatrzymaniu kursora przez {COMMA} sekund{P ę y ""} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Opóźnienie, zanim wskazówka zostanie wyświetlona po najechaniu myszką na element interfejsu. Alternatywnie wskazówki mogą zostać przypisane do prawego przycisku myszki, kiedy ta wartość jest ustawiona na 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Zatrzymaj kursor przez {COMMA} milisekund{P ę y ""} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :prawy klik STR_CONFIG_SETTING_POPULATION_IN_LABEL :Pokaż populację miasta w jego nazwie: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Wyświetlaj populację miast w ich etykietach na mapie @@ -1703,7 +1723,7 @@ STR_CONFIG_SETTING_SMOOTH_SCROLLING :Wygładź przes STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Zdecyduj, jak główny widok przesuwa się do konkretnej lokacji, gdy klikasz na mini-mapie lub gdy używasz komendy do przesunięcia do danego obiektu na mapie. Kiedy włączone, widok przesuwa się płynnie, kiedy wyłączone, następuje skok bezpośrednio do wybranego miejsca STR_CONFIG_SETTING_MEASURE_TOOLTIP :Pokaż dymek z pomiarem podczas używania różnych narzędzi: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Wyświetlaj długość budowanych odcinków i różnicę wysokości przy przeciąganiu w trakcie operacji budowlanych -STR_CONFIG_SETTING_LIVERIES :Pokaż barwy firm: {STRING} +STR_CONFIG_SETTING_LIVERIES :Pokaż barwy firm wg typu pojazdu: {STRING} STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Kontrolka stosowania schematu kolorów pojazdów specyficznych dla typów pojazdów (w przeciwieństwie do specyfiki firmy) STR_CONFIG_SETTING_LIVERIES_NONE :brak STR_CONFIG_SETTING_LIVERIES_OWN :własnej firmy @@ -1750,7 +1770,7 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Brak działań STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Wszystkie niezwiązane z konstrukcją STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Wszystkie oprócz modyfikowania terenu STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Wszystkie działania -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Używaj zaawansowanej listy pojazdów: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Używaj grup w liście pojazdów: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Wlącz obsługę zaawansowanych list pojazdów do grupowania pojazdów STR_CONFIG_SETTING_LOADING_INDICATORS :Pokazuj wskaźniki załadunku: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Wybierz, czy wskaźnik załadunku pokazuje się nad ładowanym/rozładowywanym pojazdem @@ -1791,9 +1811,9 @@ STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Odtwarzaj dźwi STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Zablokuj budowę infrastruktury, kiedy brak odpowiednich pojazdów: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Kiedy włączone, rodzaj infrastruktury jest dostępny tylko wtedy, gdy są dostępne również pojazdy, zapobiegając marnowaniu czasu i pieniędzy na zbędną infrastrukturę -STR_CONFIG_SETTING_MAX_TRAINS :Maks. liczba pociągów na firmę: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS :Makymalna liczba pociągów na firmę: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Maksymalna ilość pociągów, jakie firma może posiadać -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maks. liczba samochodów na firmę: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maksymalna liczba samochodów na firmę: {STRING} STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Maksymalna ilość pojazdów drogowych, jakie firma może posiadać STR_CONFIG_SETTING_MAX_AIRCRAFT :Maksymalna liczba samolotów na firmę: {STRING} STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Maksymalna ilość maszyn latających, jakie firma może posiadać @@ -1824,7 +1844,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Okres między s STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Wybierz, czy serwisowanie pojazdów odbywa się na podstawie czasu od ostatniego serwisu, czy sprawności malejącej o pewien procent maksymalnej sprawności STR_CONFIG_SETTING_SERVINT_TRAINS :Domyślny interwał serwisowania pociągów: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Ustaw domyślny okres serwisowania dla nowych pojazdów kolejowych, jeśli takowy nie istnieje dla określonego pojazdu -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} d{P zień ni ni}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}d{P zień ni ni}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Wyłączone STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Domyślny interwał serwisowania pojazdów: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Ustaw domyślny okres serwisowania dla nowych pojazdów drogowych, jeśli takowy nie istnieje dla określonego pojazdu @@ -1891,7 +1911,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Wybierz sposób STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Automatycznie buduj semafory przed: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Ustaw rok, w którym semafory świetlne będą używane. Przed tym rokiem w użyciu będą semafory kształtowe (które mają te same właściwości, tylko inny wygląd) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Uaktywnij okno budowania sygnałów: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Wyświetlaj okno wyboru typu semaforów do budowy, zamiast samego przełączania typu semafora z Ctrl+klik bez okna +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Wyświetlaj okno wyboru typu semaforów do budowy, zamiast samego przełączania typu semafora bez okna z Ctrl+klik na zbudowanym semaforze STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Domyślny typ sygnalizatorów: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Domyślny typ semaforów STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :sygnalizatory bloku @@ -1964,9 +1984,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Żadne STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Początkowy mnożnik rozmiarów metropolii: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Średni rozmiar dużych miast w porównaniu do normalnych miast na początku gry -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aktualizuj wykres dystrybucji co {STRING} {P dzień dni dni} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Aktualizuj wykres dystrybucji co {STRING}{NBSP}{P 0:2 dzień dni dni} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Czas pomiędzy kolejnymi rekalkulacjami komonentów wykresu połączeń. Każda rekalkulacja oblicza plany dla jednego komponentu wykresu. To oznacza, że wartość X dla tego ustawienia nie oznacza, że cały wykres będzie aktualizowany co X dni, tylko że niektóre komponenty będą. Im krótszy czas ustawisz, tym więcej czasu obliczeniowego (CPU) będzie potrzebne na te obliczenia. Im dłuższy czas ustawisz, tym więcej czasu minie zanim dystrybucja towarów rozpocznie się na nowych trasach. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Przekalkulowanie wykresu dystrybucji zajmuje {STRING} {P dzień dni dni} +STR_CONFIG_SETTING_LINKGRAPH_TIME :Przekalkulowanie wykresu dystrybucji zajmuje {STRING}{NBSP}{P 0:2 dzień dni dni} STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Czas potrzebny na każdą rekalkulację komponentu wykresu połączeń. Kiedy rekalkulacja startuje, powstaje proces, który może trwać określoną liczbę dni. Im krótszy czas ustawisz, tym większe prawdopodobieństwo, że ten proces nie zakończy się wtedy, kiedy powinien. Wtedy gra zatrzymuje się do czasu jego zakończenia ("lag"). Im dłuższy czas ustawisz, tym dłużej trwa aktualizacja dystrybucji, gdy zmieniają się trasy. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manualnie STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymetrycznie @@ -2001,19 +2021,19 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metryczne (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Jednostki wagi: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Kiedy ciężar jest pokazywany w interfejsie użytkownika, wyświetl go w wybranych jednostkach +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Jeśli kiedykolwiek waga jest pokazywana w interfejsie użytkownika, wyświetl ją w wybranych jednostkach STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperialne (skrót t/tona) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metryczne (t/tony) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Jednostki objętości: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Kiedy objętość pokazywana jest w interfejsie użytkownika, wyświetl ją w wybranych jednostkach +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Jeśli kiedykolwiek objętość jest pokazywana w interfejsie użytkownika, wyświetl ją w wybranych jednostkach STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperialne (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metryczne (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Jednostka siły napędowej: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Pokaż siłę napędową w wybranych jednostkach +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Jeśli kiedykolwiek siła napędowa jest pokazana w interfejsie użytkownika, pokaż ją w wybranych jednostkach STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperialna (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metryczna (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) @@ -2095,7 +2115,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Gra wiel STR_INTRO_GAME_OPTIONS :{BLACK}Opcje gry STR_INTRO_HIGHSCORE :{BLACK}Tabela wyników -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Ustawienia zaawansowane +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ustawienia STR_INTRO_NEWGRF_SETTINGS :{BLACK}Ustawienia NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Sprawdź dodatki online STR_INTRO_SCRIPT_SETTINGS :{BLACK}Ustawienia SI/Game Script @@ -2115,7 +2135,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Wybierz STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Wyświetl opcje gry STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Wyświetl tabelę wyników -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Wyświetl ustawienia zaawansowane +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ustawienia wyświetlania STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Wyświetl ustawienia NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Poszukaj nowych lub zaktualizowanych dodatków do pobrania STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Pokaż ustawienia SI / Game Script @@ -2155,6 +2175,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Grasz j STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magiczny buldożer (usuwanie przedsiębiorstw, obiektów nieprzesuwalnych): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunele mogą się przecinać: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Odrzutowce nie będą rozbijać się (często) na małych lotniskach: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Edytuj maksymalną wysokość mapy: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Edytuj maksymalną wysokość gór na mapie STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Klimat umiarkowany STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Klimat arktyczny STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Klimat tropikalny @@ -2673,7 +2695,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Zbuduj t STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Budowa warsztatów (do kupowania i serwisowania pociągów). Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Zamiana torów na pkt. orientacyjny. Ctrl umożliwia łączenie pkt. orientacyjnych. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Zbuduj stację kolejową. Ctrl umożliwia łączenie stacji. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Zbuduj sygnały kolejowe. Ctrl przełącza semafory/sygnały świetlne{}Przeciągnięcie pozwala na budowę sygnałów wzdłuż prostej linii torów. Ctrl pozwala na budowę sygnałów do następnego skrzyżowania{}Ctrl+klik przełącza do okna wyboru sygnałów. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Zbuduj sygnały kolejowe. Ctrl przełącza semafory/sygnały świetlne{}Przeciągnięcie pozwala na budowę sygnałów wzdłuż prostej linii torów. Ctrl pozwala na budowę sygnałów do następnego skrzyżowania{}Ctrl+klik przełącza do okna wyboru sygnałów. Shift przełącza pomiędzy budowaniem a szacowaniem kosztów STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Zbuduj most kolejowy. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Zbuduj tunel kolejowy. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Przełącz buduj/usuń dla torów kolejowych, sygnałów, pkt. orientacyjnych i stacji. Przetrzymanie Ctrl usuwa także tory kolejowe z pkt. orientacyjnych i stacji @@ -3045,7 +3067,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Teren w posiada STR_ABOUT_OPENTTD :{WHITE}OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Prawa Autorskie {COPYRIGHT} 1995 Chris Sawyer, Wszelkie prawa zastrzeżone STR_ABOUT_VERSION :{BLACK}OpenTTD wersja {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 Zespół OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 Zespół OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Zapisz grę @@ -3080,6 +3102,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Liczba miast: STR_MAPGEN_DATE :{BLACK}Data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Liczba przedsiębiorstw: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksymalna wysokość mapy +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Podnieś maksymalną wysokość gór na mapie o jeden +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Zmniejsz maksymalną wysokość gór na mapie o jeden STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Śnieg od wysokości: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Podnieś wysokość śniegu o jeden w górę STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Obniż wysokość śniegu o jeden w dół @@ -3109,6 +3134,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nazwa ma STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Rozmiar: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Zmień maksymalną wysokość mapy STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Zmień wysokość linii śniegowej STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Zmień datę rozpoczęcia @@ -3222,14 +3248,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGFR z # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Dostosowanie obrazka {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Następny obrazek -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Idź do następnego obrazka, pomijając pseudo/kolorowe/znakowe obrazki i przenieś je na koniec +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Idź do następnego normalnego obrazka, pomijając jakiekolwiek pseudo/kolorowe/znakowe obrazki i zawijaj je od ostatniego do pierwszego STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Idź do obrazka STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Idź do danego obrazka. Jeśli dany obrazek nie jest normalnym obrazkiem, idź do następnego normalnego obrazka STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Poprzedni obrazek -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Idź do poprzedniego obrazka, pomijając wszystkie pseudo/kolorowe/znakowe obrazki i przenieś je na początek +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Idź do poprzedniego normalnego obrazka, pomijając jakiekolwiek pseudo/kolorowe/znakowe obrazki i zawijaj je od pierwszego do ostatniego STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Przedstawienie wybranego orbazka. Dostosowanie jest ignorowane podczas rysowania tego obrazka STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Poruszaj obrazkiem, zmieniając przesunięcia X i Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Przesunięcie X: {NUM}, Przesunięcie Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetuj zależność +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Resetuj aktualne offsety zależne +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Całkowity) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offset: {NUM}, Y offset: {NUM} (Zależny) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Wybierz obrazek STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Wybierz obrazek z dowolnego miejsca na ekranie @@ -3341,8 +3370,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{G=f}{ORANGE}{STRING}{GREEN} dostarczona STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{G=m}{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (wciąż wymagany) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{G=m}{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (dostarczony) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Miasto rośnie co {ORANGE}{COMMA}{BLACK} {P dzień dni dni} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Miasto rośnie co {ORANGE}{COMMA}{BLACK} {P dzień dni dni} (ufundowane) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Miasto rośnie co {ORANGE}{COMMA}{BLACK}{NBSP}{P dzień dni dni} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Miasto rośnie co {ORANGE}{COMMA}{BLACK}{NBSP}{P dzień dni dni} (ufundowane) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Miasto {RED}nie{BLACK} rośnie STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Limit hałasu w mieście: {ORANGE}{COMMA}{BLACK} maksymalnie: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centruj główny widok na mieście. Ctrl+klik otwiera nowy podgląd na lokację miasta @@ -3402,7 +3431,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informacja STR_GOAL_QUESTION_CAPTION_WARNING :Ostrzeżenie STR_GOAL_QUESTION_CAPTION_ERROR :Błąd -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Anuluj STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nie @@ -3421,6 +3450,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restartuj STR_GOAL_QUESTION_BUTTON_POSTPONE :Odłóż STR_GOAL_QUESTION_BUTTON_SURRENDER :Poddaj się STR_GOAL_QUESTION_BUTTON_CLOSE :Zamknij +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsydia @@ -3745,12 +3775,12 @@ STR_PURCHASE_INFO_ALL_BUT :wszystko opróc STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. siła pociągowa: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Zasięg: {GOLD}{COMMA} pól -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista wyboru pociągów - kliknij na pojeździe, aby uzyskać informacje -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista wyboru pojazdów drogowych - kliknij na pojeździe, aby uzyskać więcej informacji -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista wyboru statków - kliknij na statku, aby uzyskać informacje -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista wyboru samolotów - kliknij na samolocie, aby uzyskać informacje +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista wyboru pociągów - kliknij na pojeździe, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu pojazdu +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista wyboru pojazdów drogowych - kliknij na pojeździe, aby uzyskać więcej informacji. Ctrl+klik przełącza ukrywanie typu pojazdu +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista wyboru statków - kliknij na statku, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu statku +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista wyboru samolotów - kliknij na samolocie, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu samolotu -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Kup pociąg +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Kup tabor kolejowy STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Kup pojazd drogowy STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Kup statek STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Kup samolot @@ -3770,6 +3800,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Zmień n STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Zmień nazwę typu statku STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Zmień nazwę typu samolotu +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ukryj +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ukryj +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Ukryj +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Ukryj + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Wyświetl +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Wyświetl +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Wyświetl +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Wyświetl + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Przełącz ukrywanie/wyświetlanie danego typu taboru +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Przełącz ukrywanie/wyświetlanie danego typu pojazdu +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Przełącz ukrywanie/wyświetlanie danego typu statku +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Przełącz ukrywanie/wyświetlanie danego typu ssamolotu + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Zmiana nazwy typu pociągu STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Zmień nazwę typu pojazdu STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Zmień nazwę typu statku @@ -3880,6 +3925,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Pojazd STR_REPLACE_VEHICLE_SHIP :Statek STR_REPLACE_VEHICLE_AIRCRAFT :Samolot +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Używane pojazdy +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Lista posiadanych pojazdów +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{BLACK}Dostępne pojazdy +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Lista pojazdów dostępnych do zamiany + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Wybierz typ pojazdu do zamiany STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Wybierz typ pojazdu jakim chcesz zastąpić pojazd zaznaczony po lewej stronie @@ -4004,7 +4054,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Ładowno STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Wartość ładunku: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Okres między serwisami: {LTBLUE}{COMMA}dni{BLACK} Ostatni serwis: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Okres między serwisami: {LTBLUE}{COMMA}{NBSP}dni{BLACK} Ostatni serwis: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Okres między serwisami: {LTBLUE}{COMMA}%{BLACK} Ostatni serwis: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Zwiększ okres między serwisowaniami o 10. Ctrl+klik zwiększa okres między serwisowaniami o 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Zmniejsz okres między serwisowaniami o 10. Ctrl+klik zmniejsza okres między serwisowaniami o 5 @@ -4196,10 +4246,10 @@ STR_ORDER_NO_UNLOAD_NO_LOAD :(Nie rozładowu STR_ORDER_AUTO_REFIT :(Przebuduj na {STRING.b}) STR_ORDER_FULL_LOAD_REFIT :(Przebuduj na {STRING.b} i czekaj na pełny załadunek) -STR_ORDER_FULL_LOAD_ANY_REFIT :(Przebuduj na {STRING.b} i czekaj na dowolny pełny załadunek) +STR_ORDER_FULL_LOAD_ANY_REFIT :(Przebuduj na {STRING.b} i czekaj na pełny załadunek któregoś z towarów) STR_ORDER_UNLOAD_REFIT :(Rozładuj, przebuduj na {STRING.b} i zabierz ładunek) STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Rozładuj, przebuduj na {STRING.b} i czekaj na pełny załadunek) -STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Rozładuj, przebuduj na {STRING.b} i czekaj na dowolny pełny załadunek) +STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Rozładuj, przebuduj na {STRING.b} i czekaj na pełny załadunek któregoś z towarów) STR_ORDER_TRANSFER_REFIT :(Przeładuj, przebuduj na {STRING.b} i zabierz ładunek) STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Przeładuj, przebuduj na {STRING.b} i czekaj na pełny załadunek) STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Przeładuj, przebuduj na {STRING.b} i czekaj na dowolny pełny załadunek) @@ -4240,8 +4290,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(postój w {STR STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(przejazd przez {STRING} poza rozkładem) STR_TIMETABLE_STAY_FOR :i zostań tam przez {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :i podróżuje przez{STRING} -STR_TIMETABLE_DAYS :{COMMA} d{P zień ni ni} -STR_TIMETABLE_TICKS :{COMMA} tick{P "" i ów} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}d{P zień ni ni} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" i ów} STR_TIMETABLE_TOTAL_TIME :{BLACK}Ten rozkład jazdy zajmie {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Ten rozkład jazdy zajmie przynajmniej {STRING} (nie wszystkie stacje są na rozkładzie) @@ -4479,6 +4529,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Wykop zn STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... już na poziomie morza STR_ERROR_TOO_HIGH :{WHITE}... zbyt wysoko STR_ERROR_ALREADY_LEVELLED :{WHITE}... już wyrównany +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Potem most powyżej byłby zbyt wysoko. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Nie można zmienić nazwy firmy... @@ -4505,7 +4556,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... zbyt STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... zbyt blisko innego miasta STR_ERROR_TOO_MANY_TOWNS :{WHITE}... zbyt wiele miast STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... nie ma więcej miejsca na mapie -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Miasto nie będzie budować dróg. Możesz zezwolić na budowę dróg poprzez Ustawienia zaawansowane->Ekonomia->Miasta +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Miasto nie będzie budować dróg. Możesz zezwolić na budowę dróg poprzez Ustawienia->Środowisko->Miasta STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Trwają roboty drogowe STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Nie można usunąć tego miasta...{}Stacja lub zajezdnia przynależy do tego miasta lub obszar miasta nie może być usunięty STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... w centrum tego miasta nie ma odpowiedniego miejsca na pomnik @@ -4529,6 +4580,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... las STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... można zbudować tylko powyżej linii śniegu STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... można zbudować tylko poniżej linii śniegu +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nie ma odpowiednich miejsc dla przedsiębiorstw '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Zmień parametry tworzenia map, żeby uzyskać lepsze mapy + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Nie można tutaj wybudować stacji... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Nie można zbudować przystanku... @@ -4665,6 +4719,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Należy STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Nie można zaczynać i kończyć w tym samym miejscu STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Początki mostu nie są na tej samej wysokości STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Most jest za nisko dla tego terenu +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Most jest zbyt wysoki dla tego terenu. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Początek i koniec muszą być w jednej linii STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... końce mostu muszą znajdować się na lądzie STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... za długi most @@ -5266,6 +5321,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (ukryty) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -5301,8 +5357,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index 334f9a430e..5b2192292d 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -96,7 +96,7 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Bebidas Gasosas # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passageiro{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passageiro{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} de carvão STR_QUANTITY_MAIL :{COMMA} saco{P "" s} de correio STR_QUANTITY_OIL :{VOLUME_LONG} de petróleo @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de deslize - desloca a lista para a esquerda/direita STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolir edifícios, etc. num quadrado de terreno. Ctrl selecciona a área na diagonal. Shift alterna construção/mostrando estimativa de custos +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Mostrar escondido +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Mostrar escondido +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Mostrar escondido +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Mostrar escondido + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Ao activar este botão, os veículos ferroviários ocultos também serão exibidos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Ao activar este botão, os veículos rodoviários ocultos também serão exibidos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Ao activar este botão, os navios ocultos também serão exibidos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Ao activar este botão, os aviões ocultos também serão exibidos + # Query window STR_BUTTON_DEFAULT :{BLACK}Por Omissão STR_BUTTON_CANCEL :{BLACK}Cancelar @@ -362,7 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Sair ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opções do Jogo -STR_SETTINGS_MENU_CONFIG_SETTINGS :Opções Avançadas +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Definições STR_SETTINGS_MENU_SCRIPT_SETTINGS :Definições de IA / Scripts de Jogo STR_SETTINGS_MENU_NEWGRF_SETTINGS :Definições NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opções de Transparência @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgiano STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iraniano (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Veículos rodoviários STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Seleccione o lado da estrada por onde os veículos circulam STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Circular pela esquerda @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resoluç STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Seleccione a resolução do ecrã que deseja utilizar STR_GAME_OPTIONS_RESOLUTION_OTHER :outra +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Tamanho interface +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Seleccionar tamanho do elemento de interface a usar + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dobro do tamanho +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quádruplo do tamanho + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunto de gráficos base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Seleccione o conjunto de gráficos base a usar STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} ficheiro{P "" s} que falta{P "" m} / corrupto{P "" s} @@ -987,6 +1001,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Seleccio STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} ficheiro corrompido{P "" s} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Informação adicional sobre o conjunto de música base +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Erro ao obter uma lista de resoluções suportadas STR_ERROR_FULLSCREEN_FAILED :{WHITE}Modo de ecrã inteiro falhou # Custom currency window @@ -1065,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Muito Plano STR_TERRAIN_TYPE_FLAT :Plano STR_TERRAIN_TYPE_HILLY :Acidentado STR_TERRAIN_TYPE_MOUNTAINOUS :Montanhoso +STR_TERRAIN_TYPE_ALPINIST :Alpinista STR_CITY_APPROVAL_PERMISSIVE :Permissivo STR_CITY_APPROVAL_TOLERANT :Tolerante @@ -1072,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Hostil STR_WARNING_NO_SUITABLE_AI :{WHITE}Não existem IA utilizáveis...{}Pode encontrar IAs disponiveis pelo sistema 'Verificar conteúdo online' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Opções Avançadas +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Definições STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtrar frase: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Expandir todas STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Colapsar todas @@ -1089,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Configurações STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categoria: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tipo: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Restringe a lista abaixo para mostrar apenas opções modificadas -STR_CONFIG_SETTING_RESTRICT_BASIC :Opções Básicas -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Opções Avançadas -STR_CONFIG_SETTING_RESTRICT_ALL :Opções Avançadas / Todas as Opções +STR_CONFIG_SETTING_RESTRICT_BASIC :Opções Básicas (mostra apenas definições importantes) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avançado (mostra grande parte das definições) +STR_CONFIG_SETTING_RESTRICT_ALL :Avançado (mostrar todas as definições, incluindo as estranhas) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Opções com um valor diferente das de origem STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Preferências com um valor diferente das preferências para novos jogos @@ -1146,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Activa desastre STR_CONFIG_SETTING_CITY_APPROVAL :Atitude da do Concelho Municipal em relação a reestruturação de áreas: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Escolha quanto ruído e estragos ambientais causados pelas empresas afecta o rating da povoação e futuras acções de construção na área +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altura máxima do mapa: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Define altura máxima permitida para montanhas no mapa +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Pode aumentar a altura máxima do mapa para este valor. Pelo menos uma montanha no mapa é mais alta STR_CONFIG_SETTING_AUTOSLOPE :Permitir formação de terra sob os edifícios, vias, etc. (auto-declive): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permitir formação de terras debaixo de edifícios e linhas sem os remover STR_CONFIG_SETTING_CATCHMENT :Dimensionamento mais realista de áreas de abrangência: {STRING} @@ -1174,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflação: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Ativar inflação na economia, para que os preços subam ligeiramente mais rápido do que os pagamentos STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Tamanho máximo de ponte: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Tamanho máximo para construção de pontes +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altura máxima de ponte: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Altura máxima para construir pontes STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Tamanho máximo de túneis: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Tamanho máximo para construção de túneis STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Método de financiamento de indústrias primárias: {STRING} @@ -1259,8 +1280,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duração da me STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duração da visualização de mensagens de erro em janela vermelha. Note que algumas mensagens de erro (críticas) não são fechadas após este tempo e têm que ser fechadas manualmente STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} segundo{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Mostrar textos de ajuda: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Atraso após o qual os textos de ajuda são mostrados após parar o cursor sobre algum elemento da interface. Alternativamente, os textos de ajuda podem ser mostrados com o botão direito do rato -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Parar o rato por {COMMA} segundo{P 0 "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Atraso após o qual os textos de ajuda são mostrados após parar o cursor sobre algum elemento da interface. Alternativamente, os textos de ajuda podem ser mostrados com o botão direito do rato quando este valor está definido como 0 +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Parar o rato por {COMMA} milisegundo{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Clique com botão direito STR_CONFIG_SETTING_POPULATION_IN_LABEL :Mostra população da cidade na janela da cidade: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Mostrar a população das povoações na sua etiqueta no mapa @@ -1270,18 +1291,30 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Largura da linh STR_CONFIG_SETTING_LAND_GENERATOR :Gerador de terra: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Tipo de terreno: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidade industrial: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Define quantas indústrias devem ser geradas e que nível deve ser mantido durante o jogo STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distância máxima entre o limite do mapa e Refinarias de Petróleo: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Refinarias de petróleo são construídas apenas próximo da borda do mapa, isto é, na costa para mapas de ilha STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altura da linha de neve: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Controla a que altura a neve começa em paisagens sub-árticas. A neve também afecta a geração de indústrias e os requisitos de crescimento das cidades STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rudeza do terreno (apenas TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Apenas TerraGenesis) Escolhe a frequência de montes: paisagens macias têm menos montes e mais espalhados. Paisagens duras têm muitos montes, que podem parecer repetitivos STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Muito suave STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Suave STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Acidentado STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Muito acidentado +STR_CONFIG_SETTING_VARIETY :Distribuição de variedade: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Apenas TerraGenesis) Controla se o mapa contém áreas planas e montanhosas. Como isto apenas torna o mapa mais plano, outras definições devem ser definidas como montanhosas +STR_CONFIG_SETTING_RIVER_AMOUNT :Quantidade de rios: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Escolhe quantos rios serão gerados STR_CONFIG_SETTING_TREE_PLACER :Algoritmo de colocação de árvores: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Escolhe a distribuição de árvores no mapa: 'Original' planta árvores espalhadas uniformemente, 'Melhorado' planta-as em grupos STR_CONFIG_SETTING_TREE_PLACER_NONE :Nenhum STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Original STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Melhorada +STR_CONFIG_SETTING_ROAD_SIDE :Veículo rodoviários: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Escolhe o lado de condução STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotação mapa de alt.: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Sentido anti-horário STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Sentido horário @@ -1336,6 +1369,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Desligado STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Deslocar com botão esquerdo: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Activar deslocamento do mapa através de arrastamento com o botão esquerdo do rato. Esta opção é particularmente útil quando é usado um ecran de toque para deslocamento +STR_CONFIG_SETTING_AUTOSAVE :Guardar automaticamente: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Seleccione o intervalo entre gravações automáticas STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Usar formato de data {STRING} para jogos gravados. STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Formato da data nos ficheiros de jogos gravados @@ -1492,7 +1527,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Seleccionar o c STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Usar automaticamente sinais clássicos antes de: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Configurar o ano em que sinais eléctricos podem ser usados para os carris. Antes deste ano, sinais não-eléctricos serão usados (que têm a mesma funcionalidade, mas aspecto diferente) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Activar ferramenta de sinais: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Mostrar uma janela para escolher o tipo de sinais a construir, em vez de escolher a rotação de sinais com +clique em sinais +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Mostrar uma janela para escolher o tipo de sinais a construir, em vez de escolher a rotação de sinais com Ctrl+clique em sinais construídos STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Tipo de farol padrão para construir: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Tipo de sinal a usar por omissão STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Sinais de bloqueio @@ -1577,7 +1612,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"simétrico" si STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Modo de distribuição para o correio: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"simétrico" significa que aproximadamente a mesma quantidade de correio será enviada de uma estação A para estação B assim como de B para A. "assimétrico" significa que uma quantidade arbitrária de correio poderá ser enviada em qualquer direcção. "manual" significa que nenhuma distribuição automática terá lugar para o correio. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Modo de distribuição para a classe de carga ARMOURED: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :A classe de carga ARMOURED contem valores no clima temperado, diamantes no tropical ou ouro no árctico. Os NewGRFs podem mudar isto. "simétrico" significa que aproximadamente a mesma quantidade de carga será enviada da estação A para estação B assim como da B para a A. "assimétrico" significa que o arbitrário dessa carga pode ser enviada em qualquer direcção. "manual" significa que nenhuma distribuição automática ocorrerá para essa carga. Recomenda-se que seja definido para assimétrico ou manual quando a jogar no árctico, pois os bancos não devolvem ouro para as minas de ouro. Para o temperado e tropical pode ser escolhido simétrico pois os bancos irão devolver valores ao banco de origem de algumas cargas de valores. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :A classe de carga ARMOURED contém valores no clima temperado, diamantes no tropical ou ouro no árctico. Os NewGRFs podem mudar isto. "simétrico" significa que aproximadamente a mesma quantidade de carga será enviada da estação A para estação B assim como da B para a A. "assimétrico" significa que quantidades arbitrárias dessa carga podem ser enviadas em qualquer direcção. "manual" significa que nenhuma distribuição automática ocorrerá para essa carga. Recomenda-se que seja definido para assimétrico ou manual quando a jogar no árctico, pois os bancos não devolvem ouro para as minas de ouro. Para o temperado e tropical pode ser escolhido simétrico pois os bancos irão devolver valores ao banco de origem de algumas cargas de valores. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Modo de distribuição para outras classes de carga: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"simetrico" significa que aproximadamente a mesma quantidade de carga será enviada da estação A para estação B assim como da B para a A. "asimetrico" significa que o arbitrario dessa carga pode ser enviada em qualquer direção. "manual" significa que nenhuma distribuição automática ocorrerá para essa carga. Provavelmente será melhor definir como "assimétrico" ou manual. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Precisão de distribuição: {STRING} @@ -1684,7 +1719,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multi-jo STR_INTRO_GAME_OPTIONS :{BLACK}Opções do Jogo STR_INTRO_HIGHSCORE :{BLACK}Tabela de Classificações -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Opções Avançadas +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Definições STR_INTRO_NEWGRF_SETTINGS :{BLACK}Definições NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Verificar Conteúdo Online STR_INTRO_SCRIPT_SETTINGS :{BLACK}Definições de IA / Script de Jogo @@ -1704,7 +1739,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Seleccio STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Mostrar opções de jogo STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostrar tabela de classificações -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Mostrar opções avançadas +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Definições de Display STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostrar definições de NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Verificar conteúdo novo e actualizado para descarga STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostrar definições de IA e de script de jogo @@ -1744,6 +1779,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Jogando STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Bulldozer mágico (destrói indústrias, objectos amovíveis etc.): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Os túneis poderão cruzar-se: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Aviões a jacto não irão ter acidentes (frequentes) em aeroportos pequenos: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar altura máxima do mapa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar altura máxima de montanhas no mapa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Terreno temperado STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Terreno subárctico STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Terreno subtropical @@ -2262,11 +2299,11 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Construi STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Construir depósito ferroviário (para compra e manutenção de comboios). Shift alterna contruir/mostrar custo estimado STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Converter linha em ponto de controlo. Ctrl permite juntar pontos de controlo. Shift alterna contruir/mostrar custo estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Construir estação ferroviária. Ctrl permite juntar estações. Shift alterna contruir/mostrar custo estimado -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construir sinais ferroviários. Ctrl alterna entre s. clássicos/luminosos{}Arrastar constrói sinais numa linha de caminho-de-ferro. Ctrl constrói sinais até a próxima junção{}Ctrl+Clique alterna entre abrir a janela de selecção de sinais. Shift alterna contruir/mostrar custo estimado +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construir sinais ferroviários. Ctrl alterna entre sinais clássicos/luminosos{}Arrastar constrói sinais ao longo de uma linha recta de carris. Ctrl constrói sinais até a próxima junção ou sinal{}Ctrl+Clique alterna entre abrir a janela de selecção de sinais. Shift alterna contruir/mostrar custo estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Construir ponte ferroviária. Shift alterna contruir/mostrar custo estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Construir túnel ferroviário. Shift alterna contruir/mostrar custo estimado STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Alternar entre construir/remover linha férrea, sinais, pontos de passagem e estações. Fixar o Ctrl também remove a linha férrea de pontos de passagem e estações -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Converter/Actualizar tipo de linha. Shift alterna contruir/mostrar custo estimado +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Converter/Atualizar tipo de linha. Shift alterna contruir/mostrar custo estimado STR_RAIL_NAME_RAILROAD :Caminhos-de-ferro STR_RAIL_NAME_ELRAIL :Caminhos-de-ferro elétricos @@ -2634,7 +2671,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno proprie STR_ABOUT_OPENTTD :{WHITE}Sobre o OpenTTD... STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Direitos de autor originais {COPYRIGHT} 1995 Chris Sawyer, Todos os direitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versão {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 A equipa do OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 A equipa do OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Guardar Jogo @@ -2653,6 +2690,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Guardar STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Guardar o jogo actual, usando o nome escolhido STR_SAVELOAD_LOAD_BUTTON :{BLACK}Carregar STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Carregar o jogo selecionado +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Carregar mapa de alturas seleccionado STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Detalhes do Jogo STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Nenhuma informação disponível STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2668,6 +2706,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Num. de cidades: STR_MAPGEN_DATE :{BLACK}Data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Num. de indústrias: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altura máxima do mapa: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Aumentar altura máxima das montanhas no mapa em um +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Diminuir altura máxima das montanhas no mapa em um STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altura linha neve: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mover a linha de neve um nível acima STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mover a linha de neve um nível abaixo @@ -2697,6 +2738,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome map STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamanho: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Mudar altura máxima do mapa STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Mudar a altura da linha de neve STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Mudar ano de início @@ -2751,6 +2793,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Para Cim STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Move o ficheiro NewGRF seleccionado para cima na lista STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Para Baixo STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Move o ficheiro NewGRF seleccionado para baixo na lista +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Actualiza +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Actualiza ficheiros NewGRF para os quais tens uma versão mais recente instalada STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Uma lista dos ficheiros NewGRF que estão instalados STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Definir parâmetros @@ -2776,6 +2820,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Desactivad STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Incompatível com esta versão do OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Gravar predefinição +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Lista de predefinições disponíveis, selecciona uma para a copiar para o nome da gravação abaixo +STR_SAVE_PRESET_TITLE :{BLACK}Intriduza um nome para a predefinição +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Nome seleccionado actualmente para gravação da predefinição +STR_SAVE_PRESET_CANCEL :{BLACK}Cancelar +STR_SAVE_PRESET_CANCEL_TOOLTIP :Não mudar a predefinição +STR_SAVE_PRESET_SAVE :{BLACK}Grava +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Grava a predefinição com o nome seleccionado # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Alterar parâmetros NewGRF @@ -2807,7 +2859,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Gráfico STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceder ao gráfico normal anterior, ignorando quaisquer gráficos pseudo/recolorir/tipo-de-letra e dando a volta no início STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representação do gráfico seleccionado actualmente. O alinhamento é ignorado a desenhar este gráfico STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mover o gráfico, mudando os desvios X e Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Desvio X: {NUM}, Desvio Y: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Escolher gráfico STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Escolha um gráfico de qualquer lado no ecrã @@ -2980,7 +3031,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informação STR_GOAL_QUESTION_CAPTION_WARNING :Aviso STR_GOAL_QUESTION_CAPTION_ERROR :Erro -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Cancelar STR_GOAL_QUESTION_BUTTON_OK :Confirmar STR_GOAL_QUESTION_BUTTON_NO :Não @@ -2999,6 +3050,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Reiniciar STR_GOAL_QUESTION_BUTTON_POSTPONE :Adiar STR_GOAL_QUESTION_BUTTON_SURRENDER :Render-se STR_GOAL_QUESTION_BUTTON_CLOSE :Fechar +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsídios @@ -3283,6 +3335,7 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Remover STR_GROUP_RENAME_TOOLTIP :{BLACK}Mudar o nome do grupo seleccionado STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Clique para proteger este grupo da autosubstituição global +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Apagar Grupo STR_GROUP_ADD_SHARED_VEHICLE :Adic. veíc. partilh. STR_GROUP_REMOVE_ALL_VEHICLES :Remover todos os veículos @@ -3323,7 +3376,7 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de veículos ferroviários - clique num veículo para informações STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de veículos rodoviários - clique num veículo para informações -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de barcos - clique num barco para informações +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de selecção de navios. Clique num navio para informações. Ctrl+Clique para alternar/ocultar o tipo de navio STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista de aeronaves - clique na aeronave para informações STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Comprar Veículo @@ -3346,6 +3399,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Renomear STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Renomear tipo de barco STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Renomear tipo de aeronave +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Esconder +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Esconder +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Esconder +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Esconder + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Mostrar +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Mostrar +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Mostrar +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Mostrar + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alternar mostrar/ocultar o tipo de veículo ferroviário +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alternar mostrar/ocultar o tipo de veículo rodoviário +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Define mostrar/esconder tipo de barco +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Define mostrar/esconder tipo de aeronave + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Renomear tipo de veículo ferroviário STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Renomear tipo de veículo rodoviário STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Renomear tipo de barco @@ -3399,7 +3467,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Clonar V STR_DEPOT_CLONE_SHIP :{BLACK}Clonar Barco STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Clonar Aeronave -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Esta acção comprará uma cópia de um comboio, incluindo as carruagens. Clique neste botão e, de seguida, num comboio que se encontre dentro ou fora do depósito. Ctrl+Clique irá partilhar as ordens. Shift+Clique mostra estimativa de custo, sem comprar +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Esta acção comprará uma cópia de um comboio, incluindo todas as carruagens. Clique neste botão e, de seguida, num comboio que se encontre dentro ou fora do depósito. Ctrl+Clique irá partilhar as ordens. Shift+Clique mostra estimativa de custo, sem comprar STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Esta acção comprará uma cópia de um veículo rodoviário. Clique neste botão e, de seguida, num veículo que se encontre dentro ou fora de um depósito. Ctrl+Clique irá partilhar as ordens. Shift+Clique mostra estimativa de custo, sem comprar STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Esta acção comprará uma cópia de um barco. Clique neste botão e, de seguida, num barco que se encontre dentro ou fora do depósito. Ctrl+Clique irá partilhar as ordens. Shift+Clique mostra estimativa de custo, sem comprar STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Esta acção comprará uma cópia de uma aeronave. Clique neste botão e, de seguida, numa aeronave que se encontre dentro ou fora do hangar. Ctrl+Clique ira partilhar as ordens. Shift+Clique mostra estimativa de custo, sem comprar @@ -3450,6 +3518,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Veículo rodovi STR_REPLACE_VEHICLE_SHIP :Barco STR_REPLACE_VEHICLE_AIRCRAFT :Aeronave +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Veículos em utilização +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Coluna com veículos que possui +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Veículos disponiveis +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Coluna com veículos disponíveis para substituição + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Seleccione o tipo de motor a substituir STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Seleccione o novo tipo de motor para substituir o que seleccionou à esquerda @@ -4045,6 +4118,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}A escava STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... já está ao nível do mar STR_ERROR_TOO_HIGH :{WHITE}... demasiado alto STR_ERROR_ALREADY_LEVELLED :{WHITE}... já plano +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Ponte acima seria demasiado alta. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Não é possível alterar o nome da empresa... @@ -4095,6 +4169,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... a fl STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... só se pode construir acima da linha da neve STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... só se pode construir abaixo da linha da neve +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Não foram encontrados locais adequados para '{STRING}' indústrias +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Altera os parâmetros de geração do mapa para obter um mapa melhor + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Não é possível construir estação ferroviária aqui... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Não é possível construir estação de autocarros... @@ -4231,6 +4308,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Deverá STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Não é possível iniciar e finalizar no mesmo ponto STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Extremos da ponte não estão ao mesmo nível STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Ponte muito baixa para o terreno +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Ponte é demasiado alta para este terreno. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Início e fim devem estar alinhados STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... ambos os extremos da ponte devem estar em terra STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... ponte demasiado longa @@ -4257,6 +4335,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... já STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Impossível criar grupo... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Impossível remover este grupo... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Impossível renomear o grupo... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Não é possível definir grupo parente... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Não é possível remover todos os veículos deste grupo... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Impossível adicionar o veículo a este grupo... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Impossível adicionar veículos com ordens partilhadas ao grupo... @@ -4794,6 +4873,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (escondido) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4829,8 +4909,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt index f9846eeea8..fef8733955 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Bara de STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Bara de defilare - stânga/dreapta STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolează clădiri, străzi, etc. pe un pătrățel de teren. Ctrl pentru selectare pe diagonală. Shift comută construcție/estimare cost +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Arată ascunse +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Arată ascunse +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Arată ascunse +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Arată ascunse + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Activând acest buton, și trenurile vor fi afișate +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Activând acest buton, și autovehiculele vor fi afișate +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Activând acest button, și vapoarele ascunse vor fi afișate +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Activând acest buton, și aeronavele ascunse vor fi afișate + # Query window STR_BUTTON_DEFAULT :{BLACK}Prestabilit(e) STR_BUTTON_CANCEL :{BLACK}Anulează @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Ieşire din joc ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opţiunile jocului -STR_SETTINGS_MENU_CONFIG_SETTINGS :Setări avansate +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Setări STR_SETTINGS_MENU_SCRIPT_SETTINGS :Setări IA / Script Joc STR_SETTINGS_MENU_NEWGRF_SETTINGS :Setări NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opţiuni transparenţă @@ -915,10 +926,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgian ( STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iranian (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Autovehiculele circulă... STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Alege partea străzii pe care se circulă STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Pe partea stângă @@ -972,6 +979,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Rezoluţ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Alege rezoluţia dorită pentru joc STR_GAME_OPTIONS_RESOLUTION_OTHER :(alta/nespecificată) +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Mărime interfată +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Alege mărimea elementelor de interfaţa + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normală +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Mărime dublă +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Mărime împătrită + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Set grafic de bază STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selectează setul grafic de bază utilizat în joc STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fişier{P "" "e"} lipsă/corupt{P "" e} @@ -1064,6 +1078,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Foarte plat STR_TERRAIN_TYPE_FLAT :Plat STR_TERRAIN_TYPE_HILLY :Deluros STR_TERRAIN_TYPE_MOUNTAINOUS :Muntos +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Permisivă STR_CITY_APPROVAL_TOLERANT :Tolerantă @@ -1071,8 +1086,8 @@ STR_CITY_APPROVAL_HOSTILE :Ostilă STR_WARNING_NO_SUITABLE_AI :{WHITE}Nu este disponibil nici un modul de Inteligenţă Artificială...{}Puteţi descărca diferite module de Inteligenţă Artificială prin sistemul de 'Resurse Online' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Setări avansate +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Setări STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtru: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Extinde toate STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Colapsează toate @@ -1086,9 +1101,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Setări compani STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Setări companie (stocate în fişierul de salvare; afectează doar compania curentă) STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Arată în lista de mai jos doar setările modificate -STR_CONFIG_SETTING_RESTRICT_BASIC :Setări de bază -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Setări avansate -STR_CONFIG_SETTING_RESTRICT_ALL :Setări expert / toate setările +STR_CONFIG_SETTING_RESTRICT_BASIC :Setări de bază (afişează numai setări importante) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Setări avansate (afişează majoritatea setărilor) +STR_CONFIG_SETTING_RESTRICT_ALL :Setări expert (afişează toate setările) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Setări cu altă valoare decît cea prestabilită STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Setări cu valori diferite față de cele setate de tine pentru joc nou @@ -1139,6 +1154,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Comută dezastr STR_CONFIG_SETTING_CITY_APPROVAL :Atitudinea consiliului orașului cu privire la restructurarea zonei: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Alege în ce măsură poluarea fonică si deranjamentul local provocat de o companie va afecta impresia orașului despre aceasta, si viitoarele planuri de construcție in zonă +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Înălţimea maximă a harţii: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Setează înălţimea maxim permisă a munţilor pe hartă +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nu poţi seta înălţimea maxima a hărţii la aceasta valoare. Cel puţin un munte pe hartă are o înălţime mai mare. STR_CONFIG_SETTING_AUTOSLOPE :Permite terra-formarea sub clădiri, şine, etc. (auto-pante): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permite terraformarea sub clădiri şi şine fără eliminarea acestora STR_CONFIG_SETTING_CATCHMENT :Permite arii de cuprindere mai realiste: {STRING} @@ -1167,6 +1185,8 @@ STR_CONFIG_SETTING_INFLATION :Inflaţia: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Activează inflaţia în economie, unde costurile cresc ceva mai rapid decât plăţile STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Lungimea maximă a podurilor: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Lungimea maximă pentru construcţia de poduri +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Întăltimea maximă a podurilor: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Întăltimea maximă pentru construcţia de poduri STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Lungimea maximă a tunelurilor: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Lungimea maximă pentru construcţia de tuneluri STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Metoda manuală de construcţie a industriilor primare: {STRING} @@ -1252,8 +1272,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Durata de afiș STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Durata afișării mesajelor de eroare în fereastra roșie. Unele mesaje de eroare (cele critice) nu sunt închise automat după trecerea acestei perioade, și trebuie închise manual. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} secund{P 0 ă e} STR_CONFIG_SETTING_HOVER_DELAY :Afișează texte informative: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Durata dinaintea afișării textelor informative când se ține mouse-ul pe un element al interfeței. Alternativ, afișarea textelor informative poate fi setată pentru click-dreapta -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :După {COMMA} secund{P 0 ă e} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Durata dinaintea afișării sfaturilor când se ține mausul pe un element al interfeței. Alternativ, afișarea sfaturilor poate fi setată pentru clic-dreapta +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Plutește {COMMA} milisecund{P 0 ă e} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Click dreapta STR_CONFIG_SETTING_POPULATION_IN_LABEL :Afişează populaţia unui oras lângă nume: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Afișează populația orașelor în numele afișate pe hartă @@ -1484,7 +1504,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :La plasarea mai STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Construieşte automat semafoare înainte de: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Alege anul din care se vor folosi semnale electrice pe calea feroviară. Înainte de acest an, se vor folosi semnale non-electrice care au aceeasi funcționalitate dar arată diferit STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Activare GUI pentru semnale: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Afişează o fereastră pentru alegerea tipului de semnal de contruit, în loc sa se selecteze tipul de semnal prin cliclare folosind Ctrl+Click +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Afişează o fereastră pentru alegerea tipului de semnal de construit, în loc de Ctrl+Click STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Tip semnal implicit: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Tipul de semnal implicit STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Semnal de bloc @@ -1586,7 +1606,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metric (t/tonă STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Unitate volum: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Afişează volumele din interfaţă folosind unităţile selectate +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Afişează volumele în interfaţă folosind unităţile selectate STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metric (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) @@ -1598,7 +1618,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metric (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Unitate înălţime: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Afişează înălţimile din interfaţă folosind unităţile selectate +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Afişează înălţimile în interfaţă folosind unităţile selectate STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperial (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metric (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1662,7 +1682,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multipla STR_INTRO_GAME_OPTIONS :{BLACK}Opţiuni STR_INTRO_HIGHSCORE :{BLACK}Tabela cu scoruri maxime -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Setări avansate +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Setări STR_INTRO_NEWGRF_SETTINGS :{BLACK}Setări NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Resurse online STR_INTRO_SCRIPT_SETTINGS :{BLACK}Setări IA / Scripturi Joc @@ -1682,7 +1702,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Alege pe STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Afişează opţiunile jocului STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Afișează tabela cu scoruri maxime -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Afişează setările avansate +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Setări afişare STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Afişează setările NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Verifică dacă există resurse noi sau actualizate pentru descărcare STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Afişează setările pentru Inteligența Artificială şi pentru Scripturi Joc @@ -1722,6 +1742,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Joacă STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Buldozer magic (demolează industrii şi lucruri amovibile): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunelele se pot intersecta: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Avioanele cu reacţie nu se vor prăbuşi (frecvent) pe aeroporturile mici: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Schimbă înălţimea maximă a harţii: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Schimbă înălţimea maxima a munţilor pe hartă STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :peisajul temperat STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :peisajul sub-arctic STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :peisajul sub-tropical @@ -2611,7 +2633,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Teren în propr STR_ABOUT_OPENTTD :{WHITE}Despre OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Toate drepturile rezervate STR_ABOUT_VERSION :{BLACK}OpenTTD versiunea {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Echipa OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Echipa OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Salvează joc @@ -2645,6 +2667,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nr. de oraşe: STR_MAPGEN_DATE :{BLACK}Data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nr. de industrii: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Înălţimea maximă a harţii: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Măreşte înălţimea maximă a munţilor pe hartă cu unu +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Reduce înălţimea maximă a munţilor pe hartă cu unu STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Înălţimea zăpezii: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mută linia zăpezii cu un punct în sus STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mută linia zăpezii cu un punct în jos @@ -2674,6 +2699,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nume har STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Dimensiune: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Modifică înălţimea maximă a harţi STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Modifică înălţimea zăpezii STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Modifică anul de început @@ -2784,7 +2810,10 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Imaginea STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Mergi la precedenta imagine normală, sărind peste pseudo-imagini, recolorări sau fonturi şi reporneşte când s-a ajuns la sfârşit STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Reprezentarea imaginii curente. Aliniamentul este ignorat STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mişcă imaginea schimbând distanţele pe axele X şi Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}distanţa X: {NUM}, distanţa Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetează relativele +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Resetază limitele relative actuale +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Limita X: {NUM}, Limita Y: {NUM} (Absolut) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Limita X: {NUM}, Limita Y: {NUM} (Relativ) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Alege imagine STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Alege o imagine de oriunde de pe ecran @@ -2956,7 +2985,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informație STR_GOAL_QUESTION_CAPTION_WARNING :Atenționare STR_GOAL_QUESTION_CAPTION_ERROR :Eroare -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Anulează STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nu @@ -2975,6 +3004,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Reîncearcă STR_GOAL_QUESTION_BUTTON_POSTPONE :Amână STR_GOAL_QUESTION_BUTTON_SURRENDER :Renunță STR_GOAL_QUESTION_BUTTON_CLOSE :Închide +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subvenţii (F6) @@ -3025,7 +3055,7 @@ STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Evaluăr STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Afişează evaluările staţiei STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) -STR_STATION_VIEW_GROUP :{BLACK}Grupare după +STR_STATION_VIEW_GROUP :{BLACK}Grupează după STR_STATION_VIEW_WAITING_STATION :Staţie: Aşteptare STR_STATION_VIEW_WAITING_AMOUNT :Sumă: Aşteptare STR_STATION_VIEW_PLANNED_STATION :Staţie: Planificat @@ -3258,6 +3288,7 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Şterge STR_GROUP_RENAME_TOOLTIP :{BLACK}Redenumeşte grupul selectat STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Click aici pentru a proteja acest grup de la înlocuirile automate globale +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Şterge Grup STR_GROUP_ADD_SHARED_VEHICLE :Adaugă vehicule partajate STR_GROUP_REMOVE_ALL_VEHICLES :Elimină toate vehiculele @@ -3321,6 +3352,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Redenume STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Redenumeşte modelul de navă STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Redenumeşte modelul de aeronavă +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ascunde +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ascunde +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Ascunde +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Ascunde + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Afișează +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Afișează +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Afișează +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Afișează + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Comută ascunderea/afișarea tipului de tren +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Comutator pentru afişarea tipului de autovehicul +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Comutator pentru afişarea tipului de navă +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Comutator pentru afişarea tipului de aeronavă + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Redenumeste modelul vehiculului feroviar STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Redenumeşte modelul de autovehicul STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Redenumeşte modelul de navă @@ -3425,6 +3471,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Autovehicolul STR_REPLACE_VEHICLE_SHIP :Nava STR_REPLACE_VEHICLE_AIRCRAFT :Aeronava +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Vehicule în uz +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Coloana vehiculelor pe care le deții +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Vehicule disponibile +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Coloana vehiculelor disponibile pentru înlocuire + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Alege tipul de motor pentru înlocuire STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Alege noul tip de motor pe care doreşti să-l foloseşti în locul motorului selectat în stânga @@ -4017,6 +4068,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Săpătu STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Deja la nivelul mării STR_ERROR_TOO_HIGH :{WHITE}Prea înalt STR_ERROR_ALREADY_LEVELLED :{WHITE}... este deja plat +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}După aceea podul deasupra ar deveni prea înalt. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Nu se poate schimba numele companiei... @@ -4067,6 +4119,8 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... păd STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... poate fi construit doar deasupra liniei zăpezii STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... poate fi construit doar sub linia zăpezii +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Modifică parametrii generatorului ca să obții o hartă mai bună + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Nu se poate construi o gară aici... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Nu se poate construi staţie de autobuz... @@ -4203,6 +4257,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Mai înt STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Cele două capete nu se pot situa în acelaşi loc STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Capetele podului nu sunt la acelasi nivel STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Podul este prea jos pentru terenul corespunzator +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Podul este prea înalt pentru acest teren. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Cele două capete trebuie să se situeze în linie STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... ambele capete ale podului trebuie să se situeze pe uscat STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... podul este prea lung @@ -4228,7 +4283,8 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... este # Group related errors STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Nu pot crea grup... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Nu pot şterge grup... -STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Nu se poate redenumi grupul... +STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Nu pot redenumi grup... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Nu pot seta grupul predecesor... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Nu pot elimina toate vehiculele din acest grup... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Nu pot adauga vehiculul in acest grup... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Nu pot adauga vehicule partajate in grup... @@ -4766,6 +4822,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (ascuns) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4801,8 +4858,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/russian.txt b/src/lang/russian.txt index 69043754de..3338c32c86 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -221,30 +221,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.acc :газиров # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} пассажир{P "" а ов} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}пассажир{P "" а ов} STR_QUANTITY_COAL :{WEIGHT_LONG} угля -STR_QUANTITY_MAIL :{COMMA} меш{P ок ка ков} почты +STR_QUANTITY_MAIL :{COMMA}{NBSP}меш{P ок ка ков} почты STR_QUANTITY_OIL :{VOLUME_LONG} нефти -STR_QUANTITY_LIVESTOCK :{COMMA} голов{P а ы ""} домашнего скота -STR_QUANTITY_GOODS :{COMMA} ящик{P "" а ов} товаров +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}голов{P а ы ""} домашнего скота +STR_QUANTITY_GOODS :{COMMA}{NBSP}ящик{P "" а ов} товаров STR_QUANTITY_GRAIN :{WEIGHT_LONG} зерна STR_QUANTITY_WOOD :{WEIGHT_LONG} древесины STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} железной руды STR_QUANTITY_STEEL :{WEIGHT_LONG} стали -STR_QUANTITY_VALUABLES :{COMMA} меш{P ок ка ков} драгоценностей +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}меш{P ок ка ков} драгоценностей STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} медной руды STR_QUANTITY_MAIZE :{WEIGHT_LONG} кукурузы STR_QUANTITY_FRUIT :{WEIGHT_LONG} фруктов -STR_QUANTITY_DIAMONDS :{COMMA} меш{P ок ка ков} алмазов +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}меш{P ок ка ков} алмазов STR_QUANTITY_FOOD :{WEIGHT_LONG} продуктов STR_QUANTITY_PAPER :{WEIGHT_LONG} бумаги -STR_QUANTITY_GOLD :{COMMA} меш{P ок ка ков} золота +STR_QUANTITY_GOLD :{COMMA}{NBSP}меш{P ок ка ков} золота STR_QUANTITY_WATER :{VOLUME_LONG} воды STR_QUANTITY_WHEAT :{WEIGHT_LONG} пшеницы STR_QUANTITY_RUBBER :{VOLUME_LONG} каучука STR_QUANTITY_SUGAR :{WEIGHT_LONG} сахара -STR_QUANTITY_TOYS :{COMMA} игруш{P ка ки ек} -STR_QUANTITY_SWEETS :{COMMA} короб{P ка ки ок} конфет +STR_QUANTITY_TOYS :{COMMA}{NBSP}игруш{P ка ки ек} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}короб{P ка ки ок} конфет STR_QUANTITY_COLA :{VOLUME_LONG} колы STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} сахарной ваты STR_QUANTITY_BUBBLES :{COMMA} пузыр{P ёк ька ьков} @@ -291,12 +291,12 @@ STR_ABBREV_NONE :{TINY_FONT}НЕ STR_ABBREV_ALL :{TINY_FONT}Все # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} пассажир{P "" а ов} -STR_BAGS :{COMMA} меш{P ок ка ков} -STR_TONS :{COMMA} тонн{P а ы ""} -STR_LITERS :{COMMA} литр{P "" а ов} -STR_ITEMS :{COMMA} штук{P а и ""} -STR_CRATES :{COMMA} ящик{P "" а ов} +STR_PASSENGERS :{COMMA}{NBSP}пассажир{P "" а ов} +STR_BAGS :{COMMA}{NBSP}меш{P ок ка ков} +STR_TONS :{COMMA}{NBSP}тонн{P а ы ""} +STR_LITERS :{COMMA}{NBSP}литр{P "" а ов} +STR_ITEMS :{COMMA}{NBSP}штук{P а и ""} +STR_CRATES :{COMMA}{NBSP}ящик{P "" а ов} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Тёмно-синий @@ -317,37 +317,37 @@ STR_COLOUR_GREY :Серый STR_COLOUR_WHITE :Белый # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} мил{P я и ь}/ч -STR_UNITS_VELOCITY_METRIC :{COMMA} км/ч -STR_UNITS_VELOCITY_SI :{COMMA} м/с +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}мил{P я и ь}/ч +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}км/ч +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}м/с -STR_UNITS_POWER_IMPERIAL :{COMMA} лс -STR_UNITS_POWER_METRIC :{COMMA} лс -STR_UNITS_POWER_SI :{COMMA} кВт +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}лс +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}лс +STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA} т -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} т -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} кг +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} тонн{P а ы ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} тонн{P а ы ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} кг +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}тонн{P а ы ""} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}тонн{P а ы ""} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}кг -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA} гал. -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} л -STR_UNITS_VOLUME_SHORT_SI :{COMMA} м³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}гал. +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}л +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} галлон{P "" а ов} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} литр{P "" а ов} -STR_UNITS_VOLUME_LONG_SI :{COMMA} м³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галлон{P "" а ов} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}литр{P "" а ов} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}м³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} фунт{P "" а ов}-силы -STR_UNITS_FORCE_METRIC :{COMMA} кгс -STR_UNITS_FORCE_SI :{COMMA} кН +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}фунт{P "" а ов}-силы +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}кгс +STR_UNITS_FORCE_SI :{COMMA}{NBSP}кН -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} фут{P "" а ов} -STR_UNITS_HEIGHT_METRIC :{COMMA} м -STR_UNITS_HEIGHT_SI :{COMMA} м +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фут{P "" а ов} +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Фильтр: @@ -374,6 +374,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Прок STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Прокрутка влево/вправо STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Полная очистка прямоугольного участка земли. Ctrl - выбор области по диагонали. При нажатом Shift - оценка стоимости очистки. +# 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 STR_BUTTON_DEFAULT :{BLACK}По умолчанию STR_BUTTON_CANCEL :{BLACK}Отмена @@ -487,7 +498,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Выход ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Настройки игры -STR_SETTINGS_MENU_CONFIG_SETTINGS :Расширенные настройки +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Настройки STR_SETTINGS_MENU_SCRIPT_SETTINGS :Настройки ИИ / скрипта STR_SETTINGS_MENU_NEWGRF_SETTINGS :Настройки NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Настройки прозрачности @@ -1061,10 +1072,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Грузинс STR_GAME_OPTIONS_CURRENCY_IRR :Иранский риал (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Направление движения STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}По какой стороне дороги ездит автотранспорт STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :левостороннее @@ -1118,6 +1125,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Разр STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Выбор разрешения экрана STR_GAME_OPTIONS_RESOLUTION_OTHER :Другое +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Размер элементов интерфейса +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Выберите размер элементов интерфейса + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Обычный +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Удвоенный +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Учетверённый + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Базовый набор графики STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Выбрать базовый набор графики STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} отсутствующи{P й х х}/повреждённы{P й х х} файл{P "" а ов} @@ -1212,10 +1226,11 @@ STR_SUBSIDY_X2 :x2 STR_SUBSIDY_X3 :x3 STR_SUBSIDY_X4 :x4 -STR_TERRAIN_TYPE_VERY_FLAT :Очень плоский -STR_TERRAIN_TYPE_FLAT :Плоский +STR_TERRAIN_TYPE_VERY_FLAT :Плоский +STR_TERRAIN_TYPE_FLAT :Равнинный STR_TERRAIN_TYPE_HILLY :Холмистый -STR_TERRAIN_TYPE_MOUNTAINOUS :Горный +STR_TERRAIN_TYPE_MOUNTAINOUS :Преимущественно горный +STR_TERRAIN_TYPE_ALPINIST :Исключительно горный STR_CITY_APPROVAL_PERMISSIVE :дозволяющее STR_CITY_APPROVAL_TOLERANT :терпимое @@ -1223,8 +1238,8 @@ STR_CITY_APPROVAL_HOSTILE :отрицат STR_WARNING_NO_SUITABLE_AI :{WHITE}Модули ИИ отсутствуют.{}Их можно скачать через систему проверки онлайн-контента. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Расширенные настройки +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Настройки STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Фильтр: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Развернуть всё STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Свернуть всё @@ -1240,9 +1255,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Настрой STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Категория: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Тип: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Отображать в списке только настройки, соответствующие выбранной категории -STR_CONFIG_SETTING_RESTRICT_BASIC :Основные настройки -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Расширенные настройки -STR_CONFIG_SETTING_RESTRICT_ALL :Специальные настройки / все настройки +STR_CONFIG_SETTING_RESTRICT_BASIC :Основные настройки (только самые важные) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Расширенные настройки (практически все) +STR_CONFIG_SETTING_RESTRICT_ALL :Специальные настройки (все, включая самые непонятные) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Настройки со значениями, отличающимися от значений по умолчанию STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Настройки со значениями, отличающимися от настроек новой игры @@ -1299,6 +1314,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Включен STR_CONFIG_SETTING_CITY_APPROVAL :Отношение городского совета к реструктуризации окрестностей: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Выберите уровень влияния шума и загрязнения окружающей среды компаниями на их рейтинг в городах и возможность дальнейшего строительства около городов +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Максимальная высота: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Установка максимально допустимой высоты гор на карте +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Невозможно изменить максимальную высоту. На карте есть горы выше этого значения. STR_CONFIG_SETTING_AUTOSLOPE :Разрешить изм. ландшафта под зданиями, дорогами и т. д. (автоспуски): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Разрешить изменение ландшафта под домами и дорогами, не требуя их сноса STR_CONFIG_SETTING_CATCHMENT :Зона покрытия зависит от типа станции: {STRING} @@ -1327,6 +1345,8 @@ STR_CONFIG_SETTING_INFLATION :Включит STR_CONFIG_SETTING_INFLATION_HELPTEXT :Включить инфляцию, при которой затраты растут немного быстрее, чем доходы STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Максимальная длина моста: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Ограничение на длину строящихся мостов +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Максимальная высота мостов: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Максимальная допустимая высота мостов STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Максимальная длина туннеля: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Ограничение на длину строящихся туннелей STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Способ создания сырьевых предприятий: {STRING} @@ -1412,8 +1432,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Длитель STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Длительность показа красных окон с сообщениями об ошибках. Эта настройка не действует на некоторые сообщения (о критических ошибках) - они не закрываются автоматически, только вручную. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} секунд{P а ы ""} STR_CONFIG_SETTING_HOVER_DELAY :Показывать подсказки: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Задержка между наведением указателя мыши на элемент интерфейса и появлением подсказки. Можно привязать появление подсказки к щелчку правой кнопкой мыши. -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :при наведении указателя на {COMMA} секунд{P у ы ""} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Задержка между наведением указателя мыши на элемент интерфейса и появлением подсказки. Если это значение равно 0, подсказки появляются по щелчку правой кнопки мыши. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :при наведении указателя на {COMMA} миллисекунд{P у ы ""} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :щелчком правой кнопкой мыши STR_CONFIG_SETTING_POPULATION_IN_LABEL :Показывать количество жителей в названии города: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Показывать количество жителей городов в названиях @@ -1434,7 +1454,7 @@ STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Максима STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Нефтеперерабатывающие заводы всегда строятся у краёв карты или на берегах островов, находящихся недалеко от края STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Высота снеговой линии: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Укажите, на какой высоте в субарктическом климате устанавливается снеговой покров. Наличие снега влияет на расстановку предприятий и на условия роста городов. -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Неровность ландшафта: {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Грубость ландшафта: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Только для TerraGenesis){}Выберите количество гор и холмов на карте. На гладком ландшафте холмов немного и они более пологие. На грубом - много гор, и ландшафт может показаться слишком однообразным. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Очень гладкий STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Гладкий @@ -1596,7 +1616,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Интерва STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Выберите, должно ли техническое обслуживание транспорта выполняться через определённые промежутки времени, либо при снижении надёжности транспортного средства на определённый процент от максимума STR_CONFIG_SETTING_SERVINT_TRAINS :Интервал обслуживания по умолчанию для поездов: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Настройка периодичности тех. обслуживания для новых поездов -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} д{P ень ня ней}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}д{P ень ня ней}/% STR_CONFIG_SETTING_SERVINT_DISABLED :отключен STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Интервал обслуживания по умолчанию для автотранспорта: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Настройка периодичности тех. обслуживания для новых автомобилей @@ -1736,9 +1756,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :нет STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Стартовый множитель размера мегаполисов: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Средний размер мегаполисов по сравнению с остальными городами в начале игры -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Обновлять граф распределения раз в {STRING} д{P 0:2 ень ня ней} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Обновлять граф распределения раз в {STRING}{NBSP}д{P 0:2 ень ня ней} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Период перерасчёта графов распределения. В каждом цикле рассчитывается не граф полностью, а только один из его компонентов. Чем меньше это значение, тем больше будет нагрузка на процессор. Чем больше значение, тем больше времени пройдёт перед началом расчёта графов для новых маршрутов. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Пересчитывать граф распределения раз в {STRING} д{P 0:2 ень ня ней} +STR_CONFIG_SETTING_LINKGRAPH_TIME :Пересчитывать граф распределения раз в {STRING}{NBSP}д{P 0:2 ень ня ней} STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Время, отведённое для перерасчёта компонентов графа. Расчёт запускается отдельным потоком и продолжается в течение указанного количества игровых дней. Если значение будет слишком маленьким, то, возможно, расчёт не успеет завершиться, и игра будет ждать завершения (это приведёт к задержкам). При больших значениях графы распределения будут медленнее обновляться при изменениях маршрутов. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :вручную STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :несимметричное @@ -1767,13 +1787,13 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :метриче STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :СИ (м/с) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Система единиц для мощности: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Показывать мощность двигателей транспортных средств в выбранной системе единиц +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Показывать значения мощности двигателей транспортных средств в выбранной системе единиц STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :английская (л. с.) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :метрическая (л. с.) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :СИ (кВт) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Система единиц для массы: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Показывать величины массы в выбранной системе единиц +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Показывать значения массы в выбранной системе единиц STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :английская (малая тонна) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :метрическая (т) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :СИ (кг) @@ -1867,7 +1887,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Сете STR_INTRO_GAME_OPTIONS :{BLACK}Настройки игры STR_INTRO_HIGHSCORE :{BLACK}Таблица рекордов -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Расширенные настройки +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Настройки STR_INTRO_NEWGRF_SETTINGS :{BLACK}Настройки NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Проверить онлайн-контент STR_INTRO_SCRIPT_SETTINGS :{BLACK}Настройки ИИ / скрипта @@ -1887,7 +1907,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Выбр STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Открыть настройки игры STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Показать таблицу рекордов -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Показать расширенные настройки +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Окно настроек STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Показать настройки NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Найти новый и обновлённый контент для загрузки STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Изменить настройки ИИ / игрового скрипта @@ -1927,6 +1947,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Игр STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Волшебный динамит (снос ВСЕГО): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Туннели могут пересекаться: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Большие самолёты реже разбиваются в малых аэропортах: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Изменить макс. высоту карты: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Изменить максимальную высоту гор на карте STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Умеренный ландшафт STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Субарктический ландшафт STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Субтропический ландшафт @@ -2461,7 +2483,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Стро STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Строительство депо (для приобретения и обслуживания поездов). При нажатом Shift - оценка стоимости строительства. STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Установка на рельсах точек пути. Нажатие Ctrl позволяет объединять точки. При нажатом Shift - оценка стоимости строительства. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Строительство ж/д станций. Нажатие Ctrl позволяет объединять станции. При нажатом Shift - оценка стоимости строительства. -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Установка сигналов. Ctrl переключает семафоры/светофоры.{}Перетаскиваием можно строить сигналы на прямом участке пути. Ctrl строит сигналы до ближайшего пересечения.{}Ctrl+щелчок переключает открытие окна выбора сигналов. При нажатом Shift - оценка стоимости строительства. +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Установка сигналов. Ctrl переключает семафоры/светофоры.{}Перетаскиванием можно строить сигналы на прямом участке пути. С нажатым Ctrl - строительство сигналов до ближайшего пересечения или сигнала.{}Ctrl+щелчок переключает открытие окна выбора сигналов. При нажатом Shift - оценка стоимости строительства. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Строительство ж/д мостов. При нажатом Shift - оценка стоимости строительства. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Строительство ж/д туннелей. При нажатом Shift - оценка стоимости строительства. STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Переключение между строительством и удалением ж/д путей, сигналов, станций. При нажатом Ctrl убирает станции с рельсами. @@ -2845,7 +2867,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Земля в STR_ABOUT_OPENTTD :{WHITE}Об OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Оригинальные авторские права {COPYRIGHT} 1995 Chris Sawyer. Все права защищены. STR_ABOUT_VERSION :{BLACK}OpenTTD версия {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Команда разработчиков OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Команда разработчиков OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Сохранить игру @@ -2880,6 +2902,9 @@ STR_MAPGEN_BY :{BLACK}× STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Количество городов: STR_MAPGEN_DATE :{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}Опустить снеговую линию @@ -2888,7 +2913,7 @@ STR_MAPGEN_TREE_PLACER :{BLACK}Гене STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тип ландшафта: STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Количество морей и озёр: STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Количество рек: -STR_MAPGEN_SMOOTHNESS :{BLACK}Гладкость: +STR_MAPGEN_SMOOTHNESS :{BLACK}Грубость ландшафта: STR_MAPGEN_VARIETY :{BLACK}Разнообразие ландшафта: STR_MAPGEN_GENERATE :{WHITE}Создать @@ -2909,6 +2934,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Назв STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Размер: 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}Изменить год начала игры @@ -3022,14 +3048,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Пара # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Выравнивание спрайта {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Следующий спрайт -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Перейти к следующему нормальному спрайту, пропуская псевдоспрайты, а также изм.{NBSP}цвета/шрифтовые. +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Перейти к следующему нормальному спрайту, пропуская изменяющие цвет, шрифтовые, псевдоспрайты. Переход из конца списка к первому спрайту. STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Перейти к спрайту STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Перейти к заданному спрайту. Если спрайт не нормальный, переход пройзойдет к следующему нормальному. STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Предыдущий спрайт -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Перейти к предыдущему нормальному спрайту, пропуская псевдоспрайты, а также изм.{NBSP}цвета/шрифтовые. +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Перейти к предыдущему нормальному спрайту, пропуская изменяющие цвет, шрифтовые, псевдоспрайты. Переход из начала списка к последнему спрайту. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Представление выбранного спрайта. Выравнивание не учитывается при прорисовке этого спрайта. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Двигайте спрайт, изменяя смещение по X и по Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Смещение по X: {NUM}, Смещение по Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Сброс смещения +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Сбросить значения относительного смещения +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Смещение X: {NUM}; смещение Y: {NUM} (абсолютное) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Смещение X: {NUM}; смещение Y: {NUM} (относительное) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Выбрать спрайт STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Выберите любой спрайт на экране @@ -3141,8 +3170,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} доставлено STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (недостаточно) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (достаточно) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Город растёт раз в {ORANGE}{COMMA}{BLACK} д{P ень ня ней} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Город растёт раз в {ORANGE}{COMMA}{BLACK} д{P ень ня ней} (профинансировано) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Город растёт раз в {ORANGE}{COMMA}{BLACK}{NBSP}д{P ень ня ней} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Город растёт раз в {ORANGE}{COMMA}{BLACK}{NBSP}д{P ень ня ней} (профинансировано) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Город {RED}не{BLACK} развивается STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Уровень шума в городе: {ORANGE}{COMMA}{BLACK} макс: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Показать город в основном окне. Ctrl+щелчок - показать в дополнительном окне. @@ -3202,7 +3231,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Информа STR_GOAL_QUESTION_CAPTION_WARNING :Предупреждение STR_GOAL_QUESTION_CAPTION_ERROR :Ошибка -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Отменить STR_GOAL_QUESTION_BUTTON_OK :Ok STR_GOAL_QUESTION_BUTTON_NO :Нет @@ -3221,6 +3250,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Перезап STR_GOAL_QUESTION_BUTTON_POSTPONE :Отсрочить STR_GOAL_QUESTION_BUTTON_SURRENDER :Сдаться STR_GOAL_QUESTION_BUTTON_CLOSE :Закрыть +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Субсидии @@ -3545,10 +3575,10 @@ STR_PURCHASE_INFO_ALL_BUT :Всё, кро STR_PURCHASE_INFO_MAX_TE :{BLACK}Макс. тяговое усилие: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Дальность: {GOLD}{COMMA} клет{P ка ки ок} -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список локомотивов и вагонов - щёлкните для получения информации -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автотранспорта - щёлкните для получения информации -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список кораблей - щёлкните для получения информации -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список воздушных судов - щёлкните для получения информации +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список локомотивов и вагонов - щёлкните для получения информации. Ctrl+щелчок скроет/покажет ТС. +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автотранспорта - щёлкните для получения информации. Ctrl+щелчок скроет/покажет выбранный автомобиль. +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список кораблей - щёлкните для получения информации. Ctrl+щелчок скроет/покажет выбранный корабль. +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список воздушных судов - щёлкните для получения информации. Ctrl+щелчок скроет/покажет ТС. STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Купить STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Купить @@ -3570,6 +3600,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Изме STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Переключить скрытие/отображение выбранного локомотива/вагона +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Переключить скрытие/отображение выбранной модели автомобиля +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Переключить скрытие/отображение выбранной модели корабля +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Переключить скрытие/отображение выбранной модели воздушного судна + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Название модели поезда STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Название модели автомобиля STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Название модели корабля @@ -3684,6 +3729,11 @@ STR_REPLACE_VEHICLE_SHIP.gen :корабле STR_REPLACE_VEHICLE_AIRCRAFT :Авиатранспорт STR_REPLACE_VEHICLE_AIRCRAFT.gen :воздушного транспорта +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Имеющиеся ТС +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Здесь перечислены модели используемых транспортных средств +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Доступные ТС +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Здесь перечислены модели транспортных средств, доступные для замены + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Выбор типа транспорта для замены STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Выбор типа транспорта, на который следует заменить @@ -3808,7 +3858,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Ёмко STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Выручка перевозки: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Осмотр каждые {LTBLUE}{COMMA} дней{BLACK} Последний раз: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Осмотр каждые {LTBLUE}{COMMA}{NBSP}дней{BLACK} Последний раз: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Осмотр каждые {LTBLUE}{COMMA}%{BLACK} Последний раз: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Увеличить интервал обслуживания на 10. Ctrl+щелчок увеличивает интервал обслуживания на 5. STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Уменьшить интервал обслуживания на 10. Ctrl+щелчок уменьшает интервал обслуживания на 5. @@ -4044,8 +4094,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(ждать {ST STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(в пути {STRING}, график не составлен) STR_TIMETABLE_STAY_FOR :и ждать {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :и идти в {STRING} -STR_TIMETABLE_DAYS :{COMMA} д{P ень ня ней} -STR_TIMETABLE_TICKS :{COMMA} тик{P "" а ов} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}д{P ень ня ней} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}тик{P "" а ов} STR_TIMETABLE_TOTAL_TIME :{BLACK}Весь маршрут займёт {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Движение по маршруту займёт {STRING} (не всё учтено) @@ -4283,6 +4333,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Земл STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Уже на уровне моря STR_ERROR_TOO_HIGH :{WHITE}Слишком высоко STR_ERROR_ALREADY_LEVELLED :{WHITE}... уже ровно +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}После этого высота моста будет недопустимо большой. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Невозможно изменить название компании... @@ -4309,7 +4360,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... сл STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... слишком близко к другому городу STR_ERROR_TOO_MANY_TOWNS :{WHITE}... слишком много городов STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... нет места на карте -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Города не будут строить дороги. Вы можете включить строительство дорог в Расш. настройки->Экономика->Города +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Города не будут строить дороги сами. Вы можете включить строительство дорог в разделе «Настройки -> Окр.{NBSP}среда -> Города». STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Идут дорожные работы... STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Невозможно уничтожить город:{}к нему относится станция или депо, либо невозможно очистить одну из занимаемых им клеток. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}...в центре города нет места для статуи @@ -4333,6 +4384,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... ле STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... можно строить только выше снеговой линии STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... можно строить только ниже снеговой линии +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Нет подходящего места для {STRING.gen} +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Измените настройки создания карты для получения более подходящей карты + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Здесь невозможно построить станцию... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Здесь невозможно построить остановку... @@ -4469,6 +4523,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Снач STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Не может начинаться и заканчиваться в той же точке STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Опоры моста должны быть на одном уровне STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Слишком низкий мост +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Мосты такой высоты строить нельзя. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Начало и конец должны быть на одной линии STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... оба конца моста должны опираться на землю STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... мост слишком длинный @@ -5070,6 +5125,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (скрыт) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -5105,8 +5161,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt index 638257b218..95a47a4e38 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -436,6 +436,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Skrol - STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Klizač - pomera spisak levo/desno STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Uklanja građevinu i dr. na kvadratu tla. Ctrl obeležava dijagonalno područje. Shift prebacuje između izgradnje i prikaza procene troškova +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Prikaži skriveni vozovi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Prikaži skrivena drumska vozila +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Prikaži skrivene brodove +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Prikaži skrivene letilice + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Omogućavanje ovog podešavanja znači da će se i skriveni vozevi biti prikazani. +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Omugućavanjem ovog dogmeta, sakrivena drumska vozila će takođe biti prikazan +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Omugućavanjem ovog dogmeta, sakriveni brod će takođe biti prikazan +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Omugućavanjem ovog dogmeta, sakriveni avion će takođe biti prikazan + # Query window STR_BUTTON_DEFAULT :{BLACK}Prvobitno STR_BUTTON_CANCEL :{BLACK}Otkaži @@ -548,7 +559,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Izađi ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opcije -STR_SETTINGS_MENU_CONFIG_SETTINGS :Detaljna podešavanja +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Podešavanja STR_SETTINGS_MENU_SCRIPT_SETTINGS :Podešavanja VI/Skripte partije STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF podešavanja STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcije transparentnosti @@ -1106,10 +1117,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzijski Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iranski Rijal (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Drumska vozila STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Izaberi stranu puta kojom će se kretati drumska vozila STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Levom stranom @@ -1163,6 +1170,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Veličin STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Odaberite željenu veličinu ekrana STR_GAME_OPTIONS_RESOLUTION_OTHER :drugo +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Veličina interfejsa +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Izaberite većinu elementa koja će se koristiti + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normalna veličina +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Uvećavajte veličinu dva puta +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Uvećavajte veličinu četiri puta + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Osnovni skup grafika STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Odaberite željeni skup osnovnih grafika STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} datotek{P a e a} nedostaj{P e u e}/neispravn{P a o o} @@ -1177,6 +1191,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Odaberit STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} oštećen{P a e ih} datotek{P a e a} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Dodatni podaci o osnovnom skupu muzike +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Neuspešno dobijanje spiska podržanih rezolucija STR_ERROR_FULLSCREEN_FAILED :{WHITE}Neuspešno prebacivanje u ceo ekran # Custom currency window @@ -1255,6 +1270,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Ravničarski STR_TERRAIN_TYPE_FLAT :Brdski STR_TERRAIN_TYPE_HILLY :Brdsko-planinski STR_TERRAIN_TYPE_MOUNTAINOUS :Planinski +STR_TERRAIN_TYPE_ALPINIST :Planinar STR_CITY_APPROVAL_PERMISSIVE :Popustljiv STR_CITY_APPROVAL_TOLERANT :Tolerantan @@ -1262,8 +1278,8 @@ STR_CITY_APPROVAL_HOSTILE :Neprijateljski STR_WARNING_NO_SUITABLE_AI :{WHITE}Nisu dostupne odgovarajuće VI...{}Možete preuzeti nekoliko VI preko sistema za preuzimanje dodataka -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Napredna Podešavanja +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Podešavanja STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtriraj po: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Proširi sve STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Skupi sve @@ -1330,6 +1346,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Uključuje i is STR_CONFIG_SETTING_CITY_APPROVAL :Stav gradskog odbora u pogledu restrukturiranja zone: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Izbor koliko će buka i zagađenje koje proizvode kompanije uticati na njihov gradski rejting i dalje građevinske akcije u toj zoni +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimalna visina mape: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Namestite dozvoljen maksimum visine planina na ovoj mapi +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Ne mozete namestiti maksimalnu visinu mape ovoj vrednosti. Barem još jedna planina je veća STR_CONFIG_SETTING_AUTOSLOPE :Dozvoljena izmena nagiba ispod zgrada, koloseka, itd. (autoslope): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dozvoli iskopavanja ispod građevina i pruge bez da se uklone STR_CONFIG_SETTING_CATCHMENT :Realističnije veličine prihvatnih površina: {STRING} @@ -1358,6 +1377,8 @@ STR_CONFIG_SETTING_INFLATION :Inflacija: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Omogućuje inflaciju tako da troškovi rastu malo brže od isplata STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Najveća dužina mosta: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maksimalna dužina za podizanje mostova +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Najveća visina mosta: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimalna visina za dradjenje mostova STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Najveća dužina tunela: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maksimalna dužina za iskopavanje tunela STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Metod izgradnje finansiranih primarnih industrija: {STRING} @@ -1463,6 +1484,8 @@ STR_CONFIG_SETTING_TREE_PLACER :Posađivanje dr STR_CONFIG_SETTING_TREE_PLACER_NONE :Nikakav STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Originalni STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Unapređen +STR_CONFIG_SETTING_ROAD_SIDE :Drumskih vozila: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Odaberite stranu saobraćaja STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Orijentacija elevacione karte: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Nalevo STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Nadesno @@ -1797,7 +1820,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Partija STR_INTRO_GAME_OPTIONS :{BLACK}Opcije STR_INTRO_HIGHSCORE :{BLACK}Tabela najboljih rezultata -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Napredna Podešavanja +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Podešavanja STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Podešavanja STR_INTRO_ONLINE_CONTENT :{BLACK}Spisak Dodataka na Mreži STR_INTRO_SCRIPT_SETTINGS :{BLACK}Podešavanja VI/Skripte Partije @@ -1817,7 +1840,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Izbor 'z STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Prikazuje opcije igre STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Prikazuje tabelu najboljih rezultata -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Prikazuje prozor sa detaljnim podešavanjima +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Prikaži podešavanje STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Prikazuje NewGRF podešavanja STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Pregled novih i ažureiranih dodatka za preuzimanje STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Prikazuje podešavanja za VI/Skriptu partije @@ -1857,6 +1880,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Upravlj STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magični buldožer (uklanja fabrike, nepokretnosti): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tuneli mogu da se ukrštaju: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Veliki avioni se neće (često) rušiti kod malih aerodorma: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Promenite maksimalnu visinu mape: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Promenite maksimalnu visinu planina na mapi STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Umereni klimatski pojas STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subpolarni klimatski pojas STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Suptropski klimatski pojas @@ -2452,8 +2477,8 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Izgradnj STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Izgradnja tramvajskog mosta. Shift prebacuje između izgradnje i prikaza procene troškova STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Izgradnja drumskog tunela. Shift prebacuje između izgradnje i prikaza procene troškova STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Izgradnja tramvajskog tunela. Shift prebacuje između izgradnje i prikaza procene troškova -STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Uklanjanje puteva (kada je uključeno) -STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Uklanjanje tramvajskih građevina (kada je uključeno) +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Uključi građenje/rušenje drumskih puteva +STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Uključi građenje/rušenje tramvajskih građevina # Road depot construction window STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Orijentacija drumskog depoa @@ -2733,7 +2758,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Zemljište u po STR_ABOUT_OPENTTD :{WHITE}O OpenTTD-u STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Originalni kopirajt {COPYRIGHT} 1995 Chris Sawyer, Sva prava zadržana STR_ABOUT_VERSION :{BLACK}OpenTTD verzija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD tim +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD tim # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sačuvaj poziciju @@ -2767,6 +2792,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Broj naselja: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Broj fabrika: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimalna visina mape +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Povećaj maksimalnu visinu planina na mapi za jedan +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Smanji maksimalnu visinu planina na mapi za jedan STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Nivo snežnog pokrivača: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Sužava snežni pokrivač naviše za jedan STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Proširuje snežni pojas naniže za jedan @@ -2796,6 +2824,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Naziv el STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Veličina: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Promenite maksimalnu visinu mape STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Promena donjeg nivoa snežnog pojasa STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Promena početne godine @@ -2850,6 +2879,7 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Naviše STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Pomera označenu NewGRF datoteku više na spisku STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Naniže STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Pomera označenu NewGRF datoteku niže na spisku +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Ažuriraj STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Spisak instaliranih NewGRF datoteka. STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Postavi parametre @@ -2906,7 +2936,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Prethodn STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Vraća se na prethodni normalan sprajt, preskačući sve pseudo/prebojavajuće/font sprajtove i prelazi na kraj posle početnog STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Prikaz trenutno odabranog sprajta. Poravnanje se ignoriše tokom iscrtavanja ovog sprajta STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Premeštanje sprajta po kordinatama, menjanjem X i Y pomeraja -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X pomeraj: {NUM}, Y pomeraj: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Odabiranje sprajta STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Odabiranje sprajta bilo gde sa ekrana @@ -3077,7 +3106,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Obaveštenje STR_GOAL_QUESTION_CAPTION_WARNING :Upozorenje STR_GOAL_QUESTION_CAPTION_ERROR :Greška -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Otkaži STR_GOAL_QUESTION_BUTTON_OK :U redu STR_GOAL_QUESTION_BUTTON_NO :Ne @@ -3096,6 +3125,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Restartuj STR_GOAL_QUESTION_BUTTON_POSTPONE :Odloži STR_GOAL_QUESTION_BUTTON_SURRENDER :Predaja STR_GOAL_QUESTION_BUTTON_CLOSE :Zatvori +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subvencije @@ -3440,6 +3470,13 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Promenit STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Promenite naziv vrste broda STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Promenite naziv vrste letilice + + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Uključi skrivanje/prikazivanje tip voza +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Uključi skrivanje/prikazivanje tip drumskog vozila +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Uključi skrivanje/prikazivanje tip broda +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Uključi skrivanje/prikazivanje tip letilice + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Promena naziva vrste šinskog vozila STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Naziv vrste drumskog vozila STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Promena naziva vrste broda @@ -3560,6 +3597,9 @@ STR_REPLACE_VEHICLE_SHIP.aku :brod STR_REPLACE_VEHICLE_AIRCRAFT :letelica STR_REPLACE_VEHICLE_AIRCRAFT.aku :letelicu +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Upotrebljena vozila +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Dostupna vozila + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Izaberite vrstu lokomotive za zamenu STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Izaberite novu vrstu lokomotive koju biste želeli da koristite umesto obeležene s leve strane @@ -3818,7 +3858,7 @@ STR_ORDER_CONDITIONAL_VALUE_TOOLTIP :{BLACK}Vrednost STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Unos vrednosti za poređenje STR_ORDERS_SKIP_BUTTON :{BLACK}Preskoči -STR_ORDERS_SKIP_TOOLTIP :{BLACK}Preskače tekuću naredbu, i prelazi na sledeću. Ctrl+Klik preskače naredbe do obeležene +STR_ORDERS_SKIP_TOOLTIP :{BLACK}Preskoči tekuću naredbu, i prelazi na sledeću. Ctrl+Klik preskače naredbe do obeležene STR_ORDERS_DELETE_BUTTON :{BLACK}Izbriši STR_ORDERS_DELETE_TOOLTIP :{BLACK}Uklanja obeleženu naredbu @@ -4153,6 +4193,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Iskopava STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... teren je već na nivou mora STR_ERROR_TOO_HIGH :{WHITE}... previsoko STR_ERROR_ALREADY_LEVELLED :{WHITE}... već je ravno +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Posle toga most bi bio previše visok. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Preduzeće se ne može preimenovati... @@ -4203,6 +4244,8 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... šum STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... može biti izgrađena samo iznad linije snega STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... može biti izgrađena samo ispod linije snega +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nije bilo odgovarajućih mesta za '{STRING}' fabrike + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Izgradnja železničke stanice ovde nije moguća... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Izgradnja autobuske stanice ovde nije moguća... @@ -4339,6 +4382,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Potrebno STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Ne može da se završava na istom mestu gde i počinje STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Krajevi mosta nisu na istom nivou STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Most je nizak u odnosu na teren +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Most je previše visok zaovaj teren STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Početak i kraj moraju biti u istoj liniji STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... oba kraja mosta moraju biti na čvrstom tlu STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... most je previše dugačak @@ -4902,6 +4946,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (sakriveno) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4937,8 +4982,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index e0bb74410b..7ce4e7f6a8 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :汽水 # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} 位旅客 +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}位旅客 STR_QUANTITY_COAL :{WEIGHT_LONG} 煤炭 -STR_QUANTITY_MAIL :{COMMA} 包邮件 +STR_QUANTITY_MAIL :{COMMA}{NBSP}包邮件 STR_QUANTITY_OIL :{VOLUME_LONG} 原油 -STR_QUANTITY_LIVESTOCK :{COMMA} 头牲畜 -STR_QUANTITY_GOODS :{COMMA} 件货物 +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}头牲畜 +STR_QUANTITY_GOODS :{COMMA}{NBSP}件货物 STR_QUANTITY_GRAIN :{WEIGHT_LONG} 谷物 STR_QUANTITY_WOOD :{WEIGHT_LONG} 木材 STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} 铁矿石 STR_QUANTITY_STEEL :{WEIGHT_LONG} 钢材 -STR_QUANTITY_VALUABLES :{COMMA} 包贵重品 +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}包贵重品 STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} 铜矿石 STR_QUANTITY_MAIZE :{WEIGHT_LONG} 玉米 STR_QUANTITY_FRUIT :{WEIGHT_LONG} 水果 -STR_QUANTITY_DIAMONDS :{COMMA} 包钻石 +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}包钻石 STR_QUANTITY_FOOD :{WEIGHT_LONG} 食品 STR_QUANTITY_PAPER :{WEIGHT_LONG} 纸张 -STR_QUANTITY_GOLD :{COMMA} 包黄金 +STR_QUANTITY_GOLD :{COMMA}{NBSP}包黄金 STR_QUANTITY_WATER :{VOLUME_LONG} 饮用水 STR_QUANTITY_WHEAT :{WEIGHT_LONG} 小麦 STR_QUANTITY_RUBBER :{VOLUME_LONG} 橡胶 STR_QUANTITY_SUGAR :{WEIGHT_LONG} 蔗糖 -STR_QUANTITY_TOYS :{COMMA} 件玩具 -STR_QUANTITY_SWEETS :{COMMA} 包糖果 +STR_QUANTITY_TOYS :{COMMA}{NBSP}件玩具 +STR_QUANTITY_SWEETS :{COMMA}{NBSP}包糖果 STR_QUANTITY_COLA :{VOLUME_LONG} 可乐 STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} 棉花糖 STR_QUANTITY_BUBBLES :{COMMA} 个泡泡 @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}无 STR_ABBREV_ALL :{TINY_FONT}全 # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} 旅客 -STR_BAGS :{COMMA} 包 -STR_TONS :{COMMA} 英吨 -STR_LITERS :{COMMA} 升 -STR_ITEMS :{COMMA} 件 -STR_CRATES :{COMMA} 件 +STR_PASSENGERS :{COMMA}{NBSP}旅客 +STR_BAGS :{COMMA}{NBSP}包 +STR_TONS :{COMMA}{NBSP}英吨 +STR_LITERS :{COMMA}{NBSP}升 +STR_ITEMS :{COMMA}{NBSP}头 +STR_CRATES :{COMMA}{NBSP}件 # Colours, do not shuffle STR_COLOUR_DARK_BLUE :深蓝色 @@ -191,37 +191,37 @@ STR_COLOUR_GREY :浅灰色 STR_COLOUR_WHITE :白 色 # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} 英里/小时 -STR_UNITS_VELOCITY_METRIC :{COMMA} 千米/小时 -STR_UNITS_VELOCITY_SI :{COMMA} 米/秒 +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}英里/小时 +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}千米/小时 +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}米/秒 -STR_UNITS_POWER_IMPERIAL :{COMMA}马力 -STR_UNITS_POWER_METRIC :{COMMA}马力 -STR_UNITS_POWER_SI :{COMMA}千瓦 +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}匹马力 +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}匹马力 +STR_UNITS_POWER_SI :{COMMA}{NBSP}千瓦 -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}英吨 -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}吨 -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}千克 +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}英吨 +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}吨 +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}千克 -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}英吨 -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} 吨 -STR_UNITS_WEIGHT_LONG_SI :{COMMA}千克 +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}英吨 +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}吨 +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}千克 -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}加仑 -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}升 -STR_UNITS_VOLUME_SHORT_SI :{COMMA}立方米 +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}加仑 +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}升 +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}立方米 -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}加仑 -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}升 -STR_UNITS_VOLUME_LONG_SI :{COMMA}立方米 +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}加仑 +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}升 +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}立方米 -STR_UNITS_FORCE_IMPERIAL :{COMMA}磅力 -STR_UNITS_FORCE_METRIC :{COMMA}千克力 -STR_UNITS_FORCE_SI :{COMMA}千牛 +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}磅力 +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}千克力 +STR_UNITS_FORCE_SI :{COMMA}{NBSP}千牛 -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}英尺 -STR_UNITS_HEIGHT_METRIC :{COMMA}米 -STR_UNITS_HEIGHT_SI :{COMMA}米 +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}英尺 +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}米 +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}米 # Common window strings STR_LIST_FILTER_TITLE :{BLACK}过滤字串: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}滚动 STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}滚动条 - 左右滚动列表 STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}拆除地块上的建筑物等设施,按住Ctrl键选择对角线区域,按住Shift键操作只提示预计成本 +# 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 STR_BUTTON_DEFAULT :{BLACK}默认 STR_BUTTON_CANCEL :{BLACK}取消 @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :退出 ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :游戏选项 -STR_SETTINGS_MENU_CONFIG_SETTINGS :高级设置 +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :设置 STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / 游戏脚本设定 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF 设置 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :透明选项 @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :格鲁吉亚拉 STR_GAME_OPTIONS_CURRENCY_IRR :伊朗里亚尔(IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}汽车行驶 STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}选择汽车行驶的方向 STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :左侧通行 @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}屏幕 STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}选择要使用的屏幕分辨率 STR_GAME_OPTIONS_RESOLUTION_OTHER :其他 +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}界面大小 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}选择使用的界面元素大小 + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :正常大小 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :两倍大小 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :四倍大小 + STR_GAME_OPTIONS_BASE_GRF :{BLACK}基础图形组 STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}选择要使用的基础图形组 STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} 文件{}未找到或不正确 @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :非常平整 STR_TERRAIN_TYPE_FLAT :平整 STR_TERRAIN_TYPE_HILLY :丘陵 STR_TERRAIN_TYPE_MOUNTAINOUS :山地 +STR_TERRAIN_TYPE_ALPINIST :多山 STR_CITY_APPROVAL_PERMISSIVE :宽容 STR_CITY_APPROVAL_TOLERANT :隐忍 @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :对立 STR_WARNING_NO_SUITABLE_AI :{WHITE}无合适的 AI 可用...{}你可以在线下载各种 AI 。 -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}高级设置 +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}设置 STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}关键字过滤: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}展开全部 STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}关闭全部 @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :当前公司设 STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}筛选设定: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}适用范围: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}仅显示修改过的选项 -STR_CONFIG_SETTING_RESTRICT_BASIC :基础设置 -STR_CONFIG_SETTING_RESTRICT_ADVANCED :高级设置 -STR_CONFIG_SETTING_RESTRICT_ALL :高级设置/全部设置 +STR_CONFIG_SETTING_RESTRICT_BASIC :基本 (仅显示重要设置) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :高级 (显示大部份设置) +STR_CONFIG_SETTING_RESTRICT_ALL :专业 (显示所有设置) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :修改默认值 STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :设置一个与当前游戏设置不同的值 @@ -1147,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :灾难可能引 STR_CONFIG_SETTING_CITY_APPROVAL :地区政府对区域改造的态度: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :设置相关参数以决定各公司造成的噪音及环境破坏时,各城镇对该公司的评价及未来区域建设的影响。 +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :最高地面高度:{STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :此设置决定地图上的山丘最高可以到达什么高度 +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}您不能把最高地面高度设为这个值,因为地图上至少有一座山丘的高度比这个值还大 STR_CONFIG_SETTING_AUTOSLOPE :允许在建筑、轨道等下方改变地形(自动斜坡): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :允许在建筑和轨道下方改变地形而不需要拆除他们 STR_CONFIG_SETTING_CATCHMENT :允许更真实的客源范围:{STRING} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :通货膨胀: STR_CONFIG_SETTING_INFLATION_HELPTEXT :“打开”通货膨胀时,支出比收入增长得稍快 STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :桥梁的最大长度: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :建设桥梁时允许的最大长度 +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :最高桥梁高度:{STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :桥梁与地面之间的最大高度 STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :隧道最大长度: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :建设隧道时允许的最大长度 STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :原料工业建设方式: {STRING} @@ -1260,8 +1280,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :错误信息持 STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :红色窗口显示错误信息的持续时间,在这个时间内一些紧急的错误信息不会自动关闭,必须手动关闭 STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} 秒 STR_CONFIG_SETTING_HOVER_DELAY :显示提示信息:{STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :设置当鼠标停留在某些界面时显示相应提示信息的延迟时间 -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :停留{COMMA} 秒 +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :此设置决定鼠标停留在图标、按键或功能时显示提示信息的时间。如果此设置被赋值为 0,您必须揿住鼠标右键来显示图标、按键或功能的提示信息。 +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :停留 {COMMA} 毫秒 STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :右键点击 STR_CONFIG_SETTING_POPULATION_IN_LABEL :在城镇名称的标签中同时显示人口:{STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :在地图城镇名称标签上显示人口数量 @@ -1444,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :保养周期( STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :选择触发车辆保养的条件,距离上一次保养的时间或者与最高可靠性的百分比 STR_CONFIG_SETTING_SERVINT_TRAINS :火车默认保养周期:{STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :如果没有为火车直接指定保养周期,设定默认火车保养周期 -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}天(%) +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}天/% STR_CONFIG_SETTING_SERVINT_DISABLED :关闭 STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :汽车默认保养周期:{STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :如果没有为汽车指定保养周期,设定汽车的默认保养周期 @@ -1511,7 +1531,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :选择以Ctrl+ STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :在 {STRING} 年前自动设置悬臂信号 STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :设置电子信号灯出现的时间,在此之前,使用悬臂信号灯(功能相同,外观不同) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :使用信号GUI: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :显示一个供选择信号灯的窗口,取代用Ctrl加点击的方式在各种形式信号灯之间切换的方法 +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :此设置让您在建造铁路信号灯时,看到一个包括所有信号灯种类的窗口,从而毋须按住 Ctrl 键再点击信号灯多次去更换信号灯的种类 STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :默认建造的信号灯类型: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :默认信号灯类型 STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :通过信号灯 @@ -1584,9 +1604,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :没有 STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :初始城市规模因子:{STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :游戏开局时,城市的平均规模相对于普通城镇的比值 -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :每 {STRING} 天更新一次统计图 +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :每 {STRING}{NBSP}天刷新一次分配图 STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :指定每次计算货物分配图之间的时间。由于每次重新计算只会处理一个货物分配图元件,因此本设定不代表“每若干日重新计算整个货物分配图”。{}如果此设定赋值越小,則系统需要使用更多处理器时间计算货物分配图。相反,如果此设定赋值越大,則货物被派往新路线所需的时间越长。 -STR_CONFIG_SETTING_LINKGRAPH_TIME :每次刷新货物分配图持续 {STRING} 天 +STR_CONFIG_SETTING_LINKGRAPH_TIME :容许系统用 {STRING}{NBSP}天时间刷新货物分配图 STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :當刷新货物分配图时,系统會衍生一条线程。本设定的值即为线程的持续时间。{}这设定赋值越小,线程越有可能在应当停止的时候还未完成,游戏会暂停运作至线程完成工作。相反,这设定赋值越大,則货物分配功能需要较长时间反映线路网変动的影晌。 STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :手动 STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :不对称 @@ -1596,7 +1616,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :假设有交通 STR_CONFIG_SETTING_DISTRIBUTION_MAIL :邮件分配方式:{STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :假设有交通路线连接甲、乙两站。“对称”指甲站往乙站的邮件数量與乙站往甲站的邮件数量大致相同。“不对称”指任何一站往另一站的邮件数量皆由系统随意决定。“手动”指系统不会自动分配邮件的目的地。 STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :装甲货物分配方式:{STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :依原有设定,“装甲货物”包括溫带景观的“贵重品”、寒带景观的“金块”及沙漠景观的“钻石”。一些NewGRF可能有不同设置。{} 假设有交通路线连接甲、乙两站。“对称”指甲站往乙站的货物数量與乙站往甲站的装甲货物数量大致相同。“不对称”指任何一站往另一站的装甲货物数量皆由系统随意决定。“手动”指系统不会自动分配装甲货物的目的地。{} 建议的设定:在溫带景观应使用“对称”,因为银行会互相运送贵重品;而在寒带及沙漠景观应使用“不对称”,因为银行不会把金块或钻石送回矿场。 +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :“装甲货物”包括溫带场景的“贵重品”、寒带场景的“金块”及沙漠场景的“钻石”。使用 NewGRF 可能会改変以上设置。{} 假设有交通路线连接甲、乙两站。“对称”指甲站往乙站的货物数量與乙站往甲站的装甲货物数量大致相同。“不对称”指任何一站往另一站的装甲货物数量皆由系统随意决定。“手动”指系统不会自动分配装甲货物的目的地。{} 建议在溫带及沙漠场景使用“对称”,因为银行之间会相互发送贵重品或钻石;在寒带则应使用“不对称”,因为银行不会把金块送回金矿。 STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :其他货物分配方式:{STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :如为此设置赋值“不对称”,则任何一站往另一站的货物数量皆由系统随意决定。如为此设置赋值“手动”,则系统不会依据交通路线分配货物的目的地。 STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :分配精确度:{STRING} @@ -1660,7 +1680,7 @@ STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}经由 STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}限制 STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}灾难/事故 STR_CONFIG_SETTING_GENWORLD :{ORANGE}生成地图 -STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}环境保护 +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}环境 STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}政府监管 STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}城镇 STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}工业设施 @@ -1715,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}联机 STR_INTRO_GAME_OPTIONS :{BLACK}游戏选项 STR_INTRO_HIGHSCORE :{BLACK}高分榜 -STR_INTRO_ADVANCED_SETTINGS :{BLACK}高级设置 +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}设置 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF 设置 STR_INTRO_ONLINE_CONTENT :{BLACK}在线查找扩展包 STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / 脚本 设定 @@ -1735,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}选择 ' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}显示游戏选项 STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}显示高分榜 -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}显示高级设置 +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}显示设置 STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}显示GRF设定 STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}连接服务器并查找扩展包 STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}查看AI和脚本设定 @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}作为{ STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}神奇推土机 (清除工业设施和其他不可移除物): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}隧道可以相交:{ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}喷气式飞机不会(经常)在小机场坠毁:{ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}修改最高地面高度:{ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}修改地图上山丘的最高高度 STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :温带景观 STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :寒带景观 STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :沙漠景观 @@ -2293,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}使用 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}建设列车车库(可以购买或维护列车)按住 Shift 键显示预计费用。 STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}将铁路变为路点。按住 Ctrl 键允许合并路点。按住 Shift 键显示预计费用。 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}建设火车站。按住 Ctrl 键允许合并站台。按住 Shift 键显示预计费用。 -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}设置铁路信号。按住 Ctrl 键可以切换悬臂式/电子式信号灯{}拖拽可以沿此分支建立信号灯。按住 Ctrl 键可以建立到下一个联结点。{}按住 Ctrl 键单击此按钮可以开关信号灯选择窗口{}按住 Shift 键显示预计费用 +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}建造铁路信号。{} 按住 Ctrl 键点选铁路,系统会切换悬臂式/电子式信号灯,或者更改被点选信号灯的种类{} 在一段直线铁路上拖拽,系统会依照设置的信号间距,沿铁路建立信号灯。如果按住 Ctrl 键拖拽,系统会建造信号灯至拖拽方向前的下一个道岔{} 如果按住 Shift 键点击铁路或在铁路上拖拽,系统会显示建置成本但不设置信号灯{} 如果按住 Ctrl 键点击此键,系统会切换信号灯选择窗口的显示状态 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}建设铁路桥梁。按住 Shift 键显示预计费用。 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}建设铁路隧道。按住 Shift 键显示预计费用。 STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}切换建设/拆除轨道、信号灯、路点和车站。按住 Ctrl 键可在移除路点和车站时同时移除轨道。 @@ -2534,7 +2556,7 @@ STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}{STRING} STR_INDUSTRY_CARGOES_PRODUCERS :{WHITE}供应商 STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}采购商 STR_INDUSTRY_CARGOES_HOUSES :{WHITE}房屋 -STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}点該工业可显示其上下游工业 +STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}点击查看上下游产业链 STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING}{}点该货物可显示其上下游工业 STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}显示产业链 STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}显示货物的上下游工业 @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :公司属地 STR_ABOUT_OPENTTD :{WHITE}关于 OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}原始版权由 {COPYRIGHT} 1995 Chris Sawyer 所有,保留一切权力。 STR_ABOUT_VERSION :{BLACK}OpenTTD 版本 {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 OpenTTD 团队 +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD 团队 # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}保存游戏 @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}城镇数量: STR_MAPGEN_DATE :{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}降低雪线高度 @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}高度 STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}地图尺寸: 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}改变游戏开始的日期 @@ -2842,14 +2868,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF v # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}定位 sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}下一个 sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}继续处理下个正常的 sprite,略过任何伪 (pseudo)/重新着色/文字 sprite 及结尾的换行标记。 +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}继续处理下个正常的图形元素,略过任何虚位/重新着色/文字字型相关的图形元素;并且在处理到最后的图形元素后,返回第一个图形元素继续处理。 STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}前往 sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}前往选定的sprite。若其不正常,则继续前进到下个sprite。 STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}上一个 sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}继续处理上一个正常的 sprite,略过任何伪 (pseudo)/重新着色/文字 sprite 及开头的换行标记。 +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}继续处理上一个正常的图形元素,略过任何虚位/重新着色/文字字型相关的图形元素;并且在处理到第一个图形元素后,返回最后的图形元素继续处理。 STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}显示目前选取的 sprite。当 sprite 正在描绘时会忽略其定位。 STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}移动 sprite 到指定的 X 与 Y 座标位移 -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X 座标位移: {NUM}, Y 座标位移: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}重置相关 +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}重置当前相关偏移 +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X 偏移: {NUM}, Y 偏移: {NUM} (绝对) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X 偏移: {NUM}, Y 偏移: {NUM} (相对) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}选择 sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}请从屏幕画面中任意选取一个 sprite @@ -2961,8 +2990,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}已运输 {GREEN} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}已运输:{CARGO_TINY} /{RED}总需求: {CARGO_LONG} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (已运输) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}城镇每 {ORANGE}{COMMA}{BLACK} 天成长一次 -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}城镇每 {ORANGE}{COMMA}{BLACK} 天成长一次(加速中) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}城镇每 {ORANGE}{COMMA}{BLACK}{NBSP}天成长一次 +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}城镇每 {ORANGE}{COMMA}{BLACK}{NBSP}天成长一次 (正接受资助) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK} 城镇发展正在 {RED}停滞 {BLACK}! STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}当前城镇噪音: {ORANGE}{COMMA}{BLACK} 最大: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}将屏幕中心移动到城镇所在的位置. 单击的同时按住Ctrl会在新视点中显示城镇位置 @@ -3022,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :信息 STR_GOAL_QUESTION_CAPTION_WARNING :警告 STR_GOAL_QUESTION_CAPTION_ERROR :错误 -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :取消 STR_GOAL_QUESTION_BUTTON_OK :确定 STR_GOAL_QUESTION_BUTTON_NO :取消 @@ -3041,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :重新开启 STR_GOAL_QUESTION_BUTTON_POSTPONE :暂缓 STR_GOAL_QUESTION_BUTTON_SURRENDER :放弃 STR_GOAL_QUESTION_BUTTON_CLOSE :关闭 +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}财政补贴项目 @@ -3108,12 +3138,12 @@ STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_S STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} 前往 本站 STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} 直达该站 -STR_STATION_VIEW_GROUP_S_V_D :來源-途经-目的地 -STR_STATION_VIEW_GROUP_S_D_V :來源-目的地-途经 -STR_STATION_VIEW_GROUP_V_S_D :途经-來源-目的地 -STR_STATION_VIEW_GROUP_V_D_S :途经-目的地-來源 -STR_STATION_VIEW_GROUP_D_S_V :目的地-來源-途经 -STR_STATION_VIEW_GROUP_D_V_S :目的地-途经-來源 +STR_STATION_VIEW_GROUP_S_V_D :来源-途经-目的地 +STR_STATION_VIEW_GROUP_S_D_V :来源-目的地-途经 +STR_STATION_VIEW_GROUP_V_S_D :途经-来源-目的地 +STR_STATION_VIEW_GROUP_V_D_S :途经-目的地-来源 +STR_STATION_VIEW_GROUP_D_S_V :目的地-来源-途经 +STR_STATION_VIEW_GROUP_D_V_S :目的地-途经-来源 ############ range for rating starts STR_CARGO_RATING_APPALLING :垃圾(最差评价) @@ -3365,10 +3395,10 @@ STR_PURCHASE_INFO_ALL_BUT :除了 {CARGO_L STR_PURCHASE_INFO_MAX_TE :{BLACK}最大牵引力:{GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}航行距离: {GOLD}{COMMA} 格 -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列车选择列表 - 点击可以查看详细信息 -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}汽车列表 - 点击可以查看详细信息 -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}船只列表 - 点击可以查看详细信息 -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}飞机列表 - 点击可以查看详细信息 +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列车车辆选择列表。点击车辆查看详细信息,或者按住 Ctrl 键再点击以切换是否隐藏车辆的种类 +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}路面车辆选择列表。点击车辆查看详细信息,或者按住 Ctrl 键再点击以切换是否隐藏车辆的种类 +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}船舶选择列表。点击船舶查看详细信息,或者按住 Ctrl 键再点击以切换是否隐藏船舶的种类 +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}飞行器选择列表。点击飞行器查看详细信息,或者按住 Ctrl 键再点击以切换是否隐藏飞行器的种类 STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}购买车头/车厢 STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}购买汽车 @@ -3390,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}重命 STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切换隐藏还是显示有关的铁路列车类型 +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切换隐藏还是显示有关的路面车辆类型 +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切换隐藏还是显示有关的船舶类型 +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切换是否显示飞机类型 + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}重命名车辆的类型 STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}重命名汽车型号 STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}重命名船只型号 @@ -3443,7 +3488,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}克隆 STR_DEPOT_CLONE_SHIP :{BLACK}克隆船只 STR_DEPOT_CLONE_AIRCRAFT :{BLACK}克隆飞机 -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}复制列车。按此按钮后{}点击一辆在车库内或外面的列车即可{}按住 Ctrl 键单击可以同时共享调度计划,按住 Shift 键单击可以显示所需资金 +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}点击此键后,再点击任何列车,即会购买一列跟它一样的列车。{}如果点击此键后,按住 Ctrl 键点击列车,则新列车会与旧列车共享调度计划。{}如果点击此键后,按住 Shift 键点击列车,系统会显示购买复制列车的所需资金,但不会建造新列车。 STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}复制汽车。按此按钮后{}点击一辆在车库内或外面的汽车即可{}按住 Ctrl 键单击可以同时共享调度计划,按住 Shift 键单击可以显示所需资金 STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}复制船只。按此按钮后{}点击一个在船坞内或外面的船只即可。按住 Ctrl 键单击可以同时共享调度计划,按住 Shift 键单击可以显示所需资金 STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}复制飞机。按此按钮后{}点击一个在机库内或外面的飞机即可。按住 Ctrl 键单击可以同时共享调度计划,按住 Shift 键单击可以显示所需资金 @@ -3494,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :汽车 STR_REPLACE_VEHICLE_SHIP :船只 STR_REPLACE_VEHICLE_AIRCRAFT :飞机 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}正在使用的运输工具 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}此行显示您拥有的运输工具 +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}可用的运输工具 +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}此行显示可供替换的运输工具 + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}选择要更新的车辆类型 STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}选择用来替换左侧指定车辆的新车辆 @@ -3618,7 +3668,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}运载 STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}转运成本: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}保养周期:{LTBLUE}{COMMA}天{BLACK} 上次保养:{LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}保养周期:{LTBLUE}{COMMA}天{BLACK} 上次保养日期:{LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}保养周期:{LTBLUE}{COMMA}%{BLACK} 上次保养:{LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}增大检修时间间隔,以10为单位进行调整. 按住Ctrl同时点击则以5为单位进行调整 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}减少检修时间间隔,以10为单位进行调整. 按住Ctrl同时点击则以5为单位进行调整 @@ -3854,8 +3904,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(停靠 {STRING STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(驶往 {STRING}, 无时间表) STR_TIMETABLE_STAY_FOR :并且停留 {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :并行驶{STRING} -STR_TIMETABLE_DAYS :{COMMA} 天 -STR_TIMETABLE_TICKS :{COMMA} 个时间标记 +STR_TIMETABLE_DAYS :{COMMA}{NBSP}天 +STR_TIMETABLE_TICKS :{COMMA}{NBSP}个时间标记 STR_TIMETABLE_TOTAL_TIME :{BLACK}该时间表需要 {STRING} 完成 STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}该时间表至少需要 {STRING} 完成(并非全部计划的时间) @@ -4093,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}挖掘 STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}已经是海平面了 STR_ERROR_TOO_HIGH :{WHITE}太高了 STR_ERROR_ALREADY_LEVELLED :{WHITE}... 已经平了 +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}这样的话,在它上面的桥梁会太高 # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}不能为公司更名…… @@ -4119,7 +4170,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}太靠 STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}太靠近另一个城镇了 STR_ERROR_TOO_MANY_TOWNS :{WHITE}城镇太多了 STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}地图上没有多余的地方了 -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}这个城镇不会修建道路{}请在在"高级设置->经济->城镇"处{}设置允许城镇建设道路 +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}城镇不会修建道路{}您可以在“设置->环境->城镇”选项下开启建设道路的功能 STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}正在进行道路工程 STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}无法删除城镇...{}城镇范围内还有车站、车库或无法移除的区块 STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... 城市中心没有合适的地方放置公司塑像 @@ -4143,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}林场 STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... 只能在雪线以上建造 STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... 只能在雪线以下建造 +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}没有合适的地方建设 “{STRING}” 工业设施 +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}请更改参数以生成较好的场景 + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}不能在这里建设火车站…… STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}不能建设公共汽车站 @@ -4279,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}必须 STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}起止点不能相同 STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}桥梁起止点不在同一水平高度 STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}桥梁对于现有地形来说位置太低了 +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}这桥梁对这个地形而言太高了 STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}起止两端必须在一条线上 STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}桥的两端必须都位于地面上 STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... 桥梁太长 @@ -4843,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (隐藏) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index 6381835c40..223f0491bf 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -159,7 +159,7 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.g :malinovky # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} cestujuci{P "" "" ch} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}cestujuci{P "" "" ch} STR_QUANTITY_COAL :{WEIGHT_LONG} uhlia STR_QUANTITY_MAIL :{COMMA} balik{P "" y ov} pošty STR_QUANTITY_OIL :{VOLUME_LONG} ropy @@ -312,6 +312,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Navigacn STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Posuvná lišta - posúva zoznam doľava/doprava STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolácia budov atď. na rovný terén. CTRL označí oblasť diagonálne. Shift zobrazí odhad nákladov +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Ukáž skryté +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Ukáž skryté +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Ukáž skryté +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Ukáž skryté + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Zapnutím tohoto tlačítka sa budú zobrazovať aj skyté koľajové vozidlá +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Zapnutím tohoto tlačítka sa budú zobrazovať aj skyté cestné vozidlá +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Zapnutím tohoto tlačítka sa budú zobrazovať aj skyté lode +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Zapnutím tohoto tlačítka sa budú zobrazovať aj skyté lietadlá + # Query window STR_BUTTON_DEFAULT :{BLACK}Štandardné STR_BUTTON_CANCEL :{BLACK}Zrušiť @@ -425,7 +436,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Koniec ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Nastavenia hry -STR_SETTINGS_MENU_CONFIG_SETTINGS :Rozšírené nastavenia +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Nastavenia STR_SETTINGS_MENU_SCRIPT_SETTINGS :Umelá inteligencia / Nastavenia hry STR_SETTINGS_MENU_NEWGRF_SETTINGS :Nastavenie NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Nastavenie priehľadnosti @@ -839,7 +850,7 @@ STR_NEWS_CUSTOM_ITEM :{BIG_FONT}{BLAC STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvý vlak dorazil do stanice {STATION}! STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvý autobus dorazil do {STATION}! STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvý automobil dorazil do {STATION}! -STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvá elektricka dorazila do stanice {STATION}! +STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvá električka dorazila do stanice {STATION}! STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvá nákladná električka dorazila do stanice {STATION}! STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvá loď dorazila do {STATION}! STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Mesto oslavuje . . .{}Prvé lietadlo pristálo na {STATION}! @@ -880,7 +891,7 @@ STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLAC STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}Európska Menová Únia!{}{}Euro bolo uvedené ako hlavná mena pre bežné používanie v tejto krajine! STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLACK}Svetová kríza!{}{}Finanční experti majú obavy z prepadu ekonomiky! -STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}Koniec kíizy!{}{}Očakáva sa vzostup predaja a posilnenie ekonomiky! +STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}Koniec krízy!{}{}Očakáva sa vzostup predaja a posilnenie ekonomiky! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} zvyšuje produkciu! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLACK}Nové nálezisko uhlia sa objavilo v {INDUSTRY}!{}Očakáva sa zdvojnásobenie produkcie! @@ -984,10 +995,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzínske Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iránsky rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cestné vozidlá STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Strana po ktorej jazdia cestne vozidla STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Jazdia nalavo @@ -1041,6 +1048,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Rozlíš STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Voľba rozlíšenia obrazovky STR_GAME_OPTIONS_RESOLUTION_OTHER :iné +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Veľkosť rozhrania +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Vyberte si veľkosť prvkov rozhrania + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normálne +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná veľkosť +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Štvornásobná veľkosť + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Základná sada grafiky STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Zvoľte sadu grafiky, ktorá má byť použitá STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} chýbajúci/poškodený súbor{P "" "y" "ov"} @@ -1134,6 +1148,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Veľmi rovný STR_TERRAIN_TYPE_FLAT :Rovný STR_TERRAIN_TYPE_HILLY :Kopcovitý STR_TERRAIN_TYPE_MOUNTAINOUS :Horský +STR_TERRAIN_TYPE_ALPINIST :Alpinista STR_CITY_APPROVAL_PERMISSIVE :Pozitivny STR_CITY_APPROVAL_TOLERANT :Tolerantny @@ -1141,8 +1156,8 @@ STR_CITY_APPROVAL_HOSTILE :Odmietavy STR_WARNING_NO_SUITABLE_AI :{WHITE}Nieje dostupné žiadne použiteľné AI...{}Niekoľko AI je možné stiahnuť cez 'Online obsah' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Rozšírené nastavenia +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Nastavenia STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtrovací reťazec: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Rozšíriť všetko STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Zbaliť všetky @@ -1215,6 +1230,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Vypne alebo zap STR_CONFIG_SETTING_CITY_APPROVAL :Postoj mestskej správy k reštrukturalizácii v oblasti: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Zvoľte ako veľmi ovplyvňuje hluk a poškodzovanie prostredia spoločnosťami ich hodnotenie v meste a ich budúce možnosti výstavby v oblasti vlastnenej mestom +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximálna výška mapy: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Nastav maximálnu povolenú výšku pohorí na mape +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nemôžete nastaviť takúto maximálnu výšku mapy. Najmenej jeden vrch na mape je vyšší. STR_CONFIG_SETTING_AUTOSLOPE :Povoliť úpravy terénu pod budovami, koľajami, atď.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Umožňuje úpravy terénu pod budovami a traťami bez potreby ich odstránenia STR_CONFIG_SETTING_CATCHMENT :Povoliť realistickejšiu veľkosť oblasti pokrytia: {STRING} @@ -1243,6 +1261,8 @@ STR_CONFIG_SETTING_INFLATION :Inflácia: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Povoluje infláciu v ekonomike, kedy náklady stúpaju rýchlejšie ako platby za prepravy. STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximálna dĺžka mosta: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximálna dĺžka na budovanie mostov +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximálna výška mostu: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximálna výška pre stavanie mostov STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximálna dĺžka tunela: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximálna dĺžka na budovanie tunelov STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Spôsob výstavby priemyslu produkujúceho suroviny: {STRING} @@ -1326,7 +1346,7 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :Potrebné finan STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Minimálna suma ktorá musí zostať na účte pred plánovanou automatickou výmenou vozidiel. STR_CONFIG_SETTING_ERRMSG_DURATION :Trvanie zobrazenia chybovej hlášky: {STRING} STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Trvanie zobrazenia chybovej hlášky v červenom okne. Uvedomte si že niektoré "kritické" správy nezmiznú po uplynutí času, ale musia byť zatvorené ručne. -STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekund(y) +STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sek{P unda undy únd} STR_CONFIG_SETTING_HOVER_DELAY :Ukáž nápovedu: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Oneskorenie pred tým ako bude zobrazená nápoveda po ukázaní myšou. Nápoveda môže byť eventuálne nastavené aj na PRAVÉ tlačítko myši. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Zobrazenie na {COMMA} sekúnd @@ -1622,7 +1642,7 @@ STR_CONFIG_SETTING_STATUSBAR_POS :Pozícia inform STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT :Horizontálna poloha stavového riadku na spodu obrazovky STR_CONFIG_SETTING_SNAP_RADIUS :Rádius uchytenia okna: {STRING} STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :Vzdialenosť medzi oknami pred tým ako je okno pripojené automaticky k vedľajšiemu oknu -STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} pixel(ov) +STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} pixel{P "" y ov} STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :vypnuté STR_CONFIG_SETTING_SOFT_LIMIT :Maximálný počet nepriľnavých okien: {STRING} STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Počet otvorených neprilepených okien pred tým ako sa najstrašie okno automatický zatvorí @@ -1783,7 +1803,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Viacero STR_INTRO_GAME_OPTIONS :{BLACK}Nastavenia hry STR_INTRO_HIGHSCORE :{BLACK}Najlepší hráči -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Rozšírené nastavenia +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Nastavenia STR_INTRO_NEWGRF_SETTINGS :{BLACK}Nastavenia NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Skontrolovať online obsah STR_INTRO_SCRIPT_SETTINGS :{BLACK}Umelá inteligencia / Nastavenia skriptu @@ -1803,7 +1823,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Vybrať STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Zobraziť nastavenia hry STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Zobraziť tabuľku hráčov s najvyšším skóre -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Zobraziť rozšírené nastavenia +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Nastavenie zobrazenia STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Zobraziť NewGRF nastavenia STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Skontrolovať nový a aktualizovaný obsah pre stiahnutie STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Zobraz umelú inteligenciu a nastavenia skriptu @@ -1843,6 +1863,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Hrať z STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magický buldozér (odstráni priemysel a nehnuteľnosti): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunely sa môžu navzájom krížiť: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Prúdové lietadlá nehavarujú (tak často) na malých letiskách: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Zmeň maximálnu výšku mapy: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Zmeň maximálnu výšku hôr na mape STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Krajina mierneho pásma STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subpolárna krajina STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Subtropická krajina @@ -2733,7 +2755,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Spoločnosťou STR_ABOUT_OPENTTD :{WHITE}OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Pôvodný copyright: {COPYRIGHT} 1995 Chris Sawyer, všetky práva vyhradené STR_ABOUT_VERSION :{BLACK}OpenTTD verzia {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 team OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 team OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Uložiť hru @@ -2768,6 +2790,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Počet miest: STR_MAPGEN_DATE :{BLACK}Rok: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Počet priemyslu: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximálna výška mapy +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Zvýš maximálnu výšku hôr na mape o jedno +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Zníž maximálnu výšku hôr na mape o jedno STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Výška línie snehu: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Zvýšiť výšku snehovej čiary STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Znížiť výšku snehovej čiary @@ -2797,6 +2822,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Názov v STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Velkost: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Zmeniť maximálnu výšku mapy STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Zmeniť výšku línie snehu STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Zmenit rok zaciatku hry @@ -2917,7 +2943,10 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Predchá STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Prejsť na predchádzajúci normálny sprite, vynechajúc akékoľvek falošné/prefarbené sprites a sprites fontu použité na začiatku STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Reprezentuje aktuálne zvolený objekt. Zarovnanie je ignorované pri vykresľovaní objektu STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Pri hýbaní objektom, sa menia X a Y súradnice -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X súradnica: {NUM}, Y súradnica: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetovať relatívne +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Resetovať aktuálne relatívne posunutie +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (absolútne) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offset: {NUM}, Y offset: {NUM} (relatívne) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Vybrať objekt STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Vyberte objekt z obrazovky @@ -3029,8 +3058,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} doručené STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (stále potrebné) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (doručené) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Mesto rastie každých {ORANGE}{COMMA}{BLACK} dní -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Mesto rastie každých {ORANGE}{COMMA}{BLACK} dní (dotované) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Mesto rastie každ{P 0 ý é ých} {ORANGE}{COMMA}{BLACK} {P deň dni dní} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Mesto rastie každ{P 0 ý é ých} {ORANGE}{COMMA}{BLACK} {P deň dni dní} (dotované) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Mesto {RED}nerastie{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Hlukový limit v meste: {ORANGE}{COMMA}{BLACK} max.: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Vycentrovať pohľad na pozíciu mesta. Ctrl+klik otvorí nové okno s pohľadom na mesto @@ -3090,7 +3119,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informácie STR_GOAL_QUESTION_CAPTION_WARNING :Varovanie STR_GOAL_QUESTION_CAPTION_ERROR :Chyba -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Zrušiť STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Nie @@ -3109,6 +3138,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Spustiť znova STR_GOAL_QUESTION_BUTTON_POSTPONE :Odložiť STR_GOAL_QUESTION_BUTTON_SURRENDER :Vzdať STR_GOAL_QUESTION_BUTTON_CLOSE :Zavrieť +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Dotácie @@ -3433,20 +3463,20 @@ STR_PURCHASE_INFO_ALL_BUT :Všetko okrem { STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. trakčná sila: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Dosah: {GOLD}{COMMA} políčok -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Výber vlakov - kliknúť na vlak pre informácie -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Výber vozidiel - kliknúť na vozidlo pre informácie -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Vyber lodi - kliknut pre informacie -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Výber lietadiel - kliknúť na lietadlo pre informácie +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Výber vlakov. Pre získanie informácií klikni na vlak. CTRL+klik prepne skrytie typu vlaku. +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Výber cestných vozidiel. Pre získanie informácií klikni na vozidlo. CTRL+klik prepne skrytie typu vozidla. +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Zoznam lodí. Pre získanie informácií klikni na loď. CTRL+klik prepnie skrytie typu lode. +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Zoznam lietadiel. Pre získanie informácií klikni na lietadlo. CTRL+klik prepnie skrytie typu lietadla. -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Zakupit vozidlo -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Zakupit vozidlo -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Vyrobiť loď -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Vyrobit lietadlo +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Kúpiť vozidlo +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Kúpiť vozidlo +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Kúpiť loď +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Kúpiť lietadlo -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Kúpiť vybraný vlak. Shif+klik zobrazí predpokladanú cenu -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Zakúpiť vybraný automobil. Shif+klik zobrazí predpokladanú cenu -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Vyrobiť vybranú loď. Shif+klik zobrazí predpokladanú cenu -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Vyrobiť vybrané lietadlo. Shift+Klik ukáže predpokladanú +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Kúpiť vybraný vlak. Shift+klik zobrazí predpokladanú cenu bez nákupu. +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Kúpiť vybrané vozidlo. Shift+klik zobrazí predpokladanú cenu bez nákupu +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Kúpiť vybranú loď. Shift+klik zobrazí predpokladanú cenu bez nákupu +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Kúpiť vybrané lietadlo. Shift+klik zobrazí predpokladanú cenu bez nákupu STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Premenovať STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Premenovať @@ -3458,6 +3488,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Premenov STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Premenovať typ lode STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Premenovať typ lietadla +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Skryť +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Skryť +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Skryť +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Skryť + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Zobraziť +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Zobraziť +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Zobraziť +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Zobraziť + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prepnúť zobrazenie/skrytie typu koľajového vozidla +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prepnúť zobrazenie/skrytie typu cestného vozidla +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prepnúť zobrazenie/skrytie typu lode +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Prepnúť zobrazenie/skrytie typu lietadla + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Premenovať typ vlaku STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Premenovať typ automobilu STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Premenovať typ lode @@ -3480,7 +3525,7 @@ STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Lode - p STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lietadlo - pravý kliknutím na lietadlo sa zobrazia informácie STR_DEPOT_TRAIN_SELL_TOOLTIP :{BLACK}Presunutím lokomotívy bude predaná -STR_DEPOT_ROAD_VEHICLE_SELL_TOOLTIP :{BLACK}Presunutím automobilu sem sa predá +STR_DEPOT_ROAD_VEHICLE_SELL_TOOLTIP :{BLACK}Automobil presunutý sem bude predaný STR_DEPOT_SHIP_SELL_TOOLTIP :{BLACK}Presunutím lode sem sa predá STR_DEPOT_AIRCRAFT_SELL_TOOLTIP :{BLACK}Presunutím lietadla sem sa predá @@ -3562,6 +3607,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :{G=m}Automobil STR_REPLACE_VEHICLE_SHIP :{G=z}Loď STR_REPLACE_VEHICLE_AIRCRAFT :{G=s}Lietadlo +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Používané vozidlá +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Stĺpec s vozidlami, ktoré vlastníte +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Dostupné dopravné prostriedky +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Stĺpec s vozidlami, ktoré možno nahradiť + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Zvoľte typ lokomotívy na výmenu STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Zvoľte nový typ lokomotívy, ktorú chceš použiť namiesto typu z ľavého zoznamu @@ -3661,7 +3711,7 @@ STR_VEHICLE_DETAILS_CAPTION :{WHITE}{VEHICLE STR_VEHICLE_NAME_BUTTON :{BLACK}Meno STR_VEHICLE_DETAILS_TRAIN_RENAME :{BLACK}Pomenovať vlak -STR_VEHICLE_DETAILS_ROAD_VEHICLE_RENAME :{BLACK}Pomenovať automobil +STR_VEHICLE_DETAILS_ROAD_VEHICLE_RENAME :{BLACK}Premenovať automobil STR_VEHICLE_DETAILS_SHIP_RENAME :{BLACK}Pomenovať loď STR_VEHICLE_DETAILS_AIRCRAFT_RENAME :{BLACK}Pomenovat lietadlo @@ -3686,7 +3736,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapacita STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer kredity: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servisný interval: {LTBLUE}{COMMA}dní{BLACK} Posledný servis: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servisný interval: {LTBLUE}{COMMA}{NBSP}dní{BLACK} Posledný servis: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servisný interval: {LTBLUE}{COMMA}%{BLACK} Posledný servis: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Predĺžiť servisný interval o 10. Ctrl+klik predĺži servisný interval o 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Skrátiť servisný interval o 10. Ctrl+klik pre skrátenie servisného intervalu o 5 @@ -3697,9 +3747,9 @@ STR_VEHICLE_DETAILS_DAYS :Dni STR_VEHICLE_DETAILS_PERCENT :Percentáž STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Premenovať vlak -STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Pomenovať automobil -STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Pomenovať loď -STR_QUERY_RENAME_AIRCRAFT_CAPTION :{WHITE}Pomenovať lietadlo +STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Premenovať automobil +STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Premenovať loď +STR_QUERY_RENAME_AIRCRAFT_CAPTION :{WHITE}Premenovať lietadlo # Extra buttons for train details windows STR_VEHICLE_DETAILS_TRAIN_ENGINE_BUILT_AND_VALUE :{LTBLUE}{ENGINE}{BLACK} Vyrobené: {LTBLUE}{NUM}{BLACK} Hodnota: {LTBLUE}{CURRENCY_LONG} @@ -3793,7 +3843,7 @@ STR_ORDER_SERVICE :{BLACK}Oprava STR_ORDER_DROP_GO_ALWAYS_DEPOT :Vždy choď STR_ORDER_DROP_SERVICE_DEPOT :Servis, ak je potrebné STR_ORDER_DROP_HALT_DEPOT :Zastav -STR_ORDER_SERVICE_TOOLTIP :{BLACK}Vynechať tento príkaz pokiaľ nie je potrebná oprava +STR_ORDER_SERVICE_TOOLTIP :{BLACK}Preskočiť tento príkaz pokiaľ nie je potrebná oprava STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Údaje vozidla na základe ktorých sa vykoná skok @@ -3822,18 +3872,18 @@ STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Zadajte STR_ORDERS_SKIP_BUTTON :{BLACK}Preskočiť STR_ORDERS_SKIP_TOOLTIP :{BLACK}Preskočiť aktuálny príkaz a začať ďalší. CTRL+klik pre skok na označený príkaz -STR_ORDERS_DELETE_BUTTON :{BLACK}Vynechať +STR_ORDERS_DELETE_BUTTON :{BLACK}Vymazať STR_ORDERS_DELETE_TOOLTIP :{BLACK}Vymazať označený príkaz -STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Zmazať všetky príkazy -STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Prestať zdielať -STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Prestať zdielať zoznam príkazov. Ctrl+Klik naviac zmaže všetky príkazy. +STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Vymazať všetky príkazy +STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Prestať zdieľať +STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Prestať zdieľať zoznam príkazov. Ctrl+Klik naviac zmaže všetky príkazy tohoto vozidla. STR_ORDERS_GO_TO_BUTTON :{BLACK}Choď do STR_ORDER_GO_TO_NEAREST_DEPOT :Choď do najbližšieho depa STR_ORDER_GO_TO_NEAREST_HANGAR :Choď do najbližšieho hangáru STR_ORDER_CONDITIONAL :Podmienený príkaz skoku STR_ORDER_SHARE :Zdieľať príkazy -STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Vložiť nový príkaz pred označený príkaz, alebo na koniec zoznamu. CTRL zmení príkaz pre stanicu na 'plne nalož čokoľvek', waypoint príkazy na pokračuj 'non-stop' a pre depá servise. 'Zdieľať príkazy' alebo CTRL umožní vozidlu zdieľať príkazy s vybraným vozidlom. Kliknutím na vozidlo sa skopírujú príkazy z vozidla +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Vložiť nový príkaz pred označený príkaz alebo na koniec zoznamu. CTRL zmení príkaz pre stanicu na 'plne nalož čokoľvek', waypoint príkazy na pokračuj 'non-stop' a pre depá 'servisuj'. 'Zdieľať príkazy' alebo CTRL umožní vozidlu zdieľať príkazy s vybraným vozidlom. Kliknutím na vozidlo sa skopírujú príkazy z vozidla. Príkaz na presun do depa zneplatní automatické servisovanie vozidla STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Zobraziť všetky vozidlá s rovnakým zoznamom príkazov @@ -3914,7 +3964,7 @@ STR_TIMETABLE_NO_TRAVEL :Necestuj STR_TIMETABLE_NOT_TIMETABLEABLE :Cestovanie (automaticky; nastavené po ďalšom zadaní objednávky) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Cesta (neurcený cas) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Cestovanie (bez cestovného plánu) s najviac {2:VELOCITY} -STR_TIMETABLE_TRAVEL_FOR :Cesta do {STRING} +STR_TIMETABLE_TRAVEL_FOR :Cesta {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :Cestovanie na {STRING} s {VELOCITY} STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Cesta ({STRING}, nerozvrhnuté) STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Cesta (for {STRING}, nerozvrhnuté) pri najviac {VELOCITY} @@ -3922,8 +3972,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(prestávka {ST STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(cesta {STRING}, nerozvrhnuté) STR_TIMETABLE_STAY_FOR :prestávka {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :a cestuj {STRING} -STR_TIMETABLE_DAYS :{COMMA} d{P en ni ní} -STR_TIMETABLE_TICKS :{COMMA} tik{P "" y ov} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}d{P eň ni ní} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tik{P "" y ov} STR_TIMETABLE_TOTAL_TIME :{BLACK}Na dokončenie cestovného poriadku je potrebných {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Na dokončenie cestovného poriadku je potrebných min. {STRING} (nie všetko je určené) @@ -4161,6 +4211,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Vyhĺben STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... už na úrovni mora STR_ERROR_TOO_HIGH :{WHITE}... príliš vysoko STR_ERROR_ALREADY_LEVELLED :{WHITE}... už vyrovnané +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Most nad tým by bol potom príliš vysoko. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Názov spoločnosti sa nedá zmeniť... @@ -4188,7 +4239,7 @@ STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... prí STR_ERROR_TOO_MANY_TOWNS :{WHITE}... príliš veľa miest STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... nie je dalsie miesto na mape STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Mesto nebude stavať cesty. Môžete povoliť budovanie ciest cez Pokročilé nasvavenia->Ekonomika->Mestá. -STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Prebiehaju cestne prace +STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Prebiehajú cestné práce STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Toto mesto nie je možné odstrániť...{}Stanica alebo depo sa odvoláva na mesto, alebo parcela vo vlastníctve mesta nemôže byť odstránená STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... v centre mesta sa nenachádza žiadne vhodné miesto pre sochu @@ -4211,6 +4262,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... les STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... môže byť postavené len nad čiarou snehu STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... môže byť postavené len pod čiarou snehu +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nenašli sa žiadne vhodné miesta pre '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Pre získanie lepšej mapy zmeňte parametre jej generovania + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Nemôžeš tu postaviť železničnú stanicu... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Nemôžeš tu postaviť autobusovú zastávku... @@ -4347,6 +4401,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Most mus STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Nemožno začať a skončiť na tom istom mieste STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Konce mosta nie sú v rovnakej výške STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Most je príliš nízky pre tento terén +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Most je privysoký pre tento terén. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Začiatok a koniec musí byť v rovine STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... oba konce mosta musia byť na pevnine STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... most je príliš dlhý @@ -4390,7 +4445,7 @@ STR_ERROR_CAN_T_REFIT_SHIP :{WHITE}Nemožno STR_ERROR_CAN_T_REFIT_AIRCRAFT :{WHITE}Nie je možné prestavať na nový typ nákladu... STR_ERROR_CAN_T_RENAME_TRAIN :{WHITE}Vlak nemožno pomenovať... -STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE :{WHITE}Nemožno pomenovať automobil... +STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE :{WHITE}Nemožno premenovať automobil... STR_ERROR_CAN_T_RENAME_SHIP :{WHITE}Nemožno pomenovať loď... STR_ERROR_CAN_T_RENAME_AIRCRAFT :{WHITE}Nie je možné pomenovať lietadlo... @@ -4450,14 +4505,14 @@ STR_ERROR_CAN_T_INSERT_NEW_ORDER :{WHITE}Nemožno STR_ERROR_CAN_T_DELETE_THIS_ORDER :{WHITE}Nemožno vymazať tento príkaz... STR_ERROR_CAN_T_MODIFY_THIS_ORDER :{WHITE}Nemožno zmeniť tento príkaz... STR_ERROR_CAN_T_MOVE_THIS_ORDER :{WHITE}Nie je možné presunúť tento príkaz... -STR_ERROR_CAN_T_SKIP_ORDER :{WHITE}Nie je možné vynechať tento príkaz... +STR_ERROR_CAN_T_SKIP_ORDER :{WHITE}Nie je možné preskočiť tento príkaz... STR_ERROR_CAN_T_SKIP_TO_ORDER :{WHITE}Nie je možné preskočiť na vybraný príkaz... STR_ERROR_CAN_T_COPY_SHARE_ORDER :{WHITE}... vozidlo nemôže ísť do všetkých staníc STR_ERROR_CAN_T_ADD_ORDER :{WHITE}... vozidlo nemôže ísť do tejto stanice STR_ERROR_CAN_T_ADD_ORDER_SHARED :{WHITE}... vozidlo zdieľajúce tento príkaz nemôže ísť do stanice -STR_ERROR_CAN_T_SHARE_ORDER_LIST :{WHITE}Nemozno zdielat zoznam smerov ... -STR_ERROR_CAN_T_STOP_SHARING_ORDER_LIST :{WHITE}Nieje možné prestať zdielať zoznam príkazov... +STR_ERROR_CAN_T_SHARE_ORDER_LIST :{WHITE}Nemožno zdieľať zoznam príkazov ... +STR_ERROR_CAN_T_STOP_SHARING_ORDER_LIST :{WHITE}Nie je možné prestať zdieľať zoznam príkazov... STR_ERROR_CAN_T_COPY_ORDER_LIST :{WHITE}Nemozno kopirovat zoznam prikazov ... STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... príliš ďaleko z predchádzajúceho cieľa STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... lietadlo nemá dostatočný dosah @@ -4911,6 +4966,8 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (skryté) +STR_HIDDEN_ENGINE_NAME.g :{G=m}{ENGINE} (skrytý) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4946,8 +5003,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt index b9b92ad111..736c4f38aa 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -248,7 +248,7 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.t :Gazirano pijač # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} potnik{P "" a i ov} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}potnik{P "" a i ov} STR_QUANTITY_COAL :{WEIGHT_LONG} premoga STR_QUANTITY_MAIL :{COMMA} vreč{P a i e ""} pošte STR_QUANTITY_OIL :{VOLUME_LONG} nafte @@ -401,6 +401,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Drsnik - STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Drsnik - premakne seznam levo/desno STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Poruši zgradbe itd. na kvadratku zemlje. Ctrl izbere diagonalno območje. Shift preklaplja med izgradnjo in predvidenimi stroški +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Privzeto STR_BUTTON_CANCEL :{BLACK}Prekliči @@ -514,7 +517,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Izhod ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Možnosti igre -STR_SETTINGS_MENU_CONFIG_SETTINGS :Napredne nastavitve +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Nastavitve STR_SETTINGS_MENU_SCRIPT_SETTINGS :UI/Nastavitve skriptov igre STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF nastavitve STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Nastavitve prozornega pogleda @@ -1068,10 +1071,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzijski Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iranski Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cestna vozila STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Izberi smer vožnje cestnih vozil STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vožnja po levi @@ -1125,6 +1124,11 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ločljiv STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Izberi ločljivost zaslona STR_GAME_OPTIONS_RESOLUTION_OTHER :drugo +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Velikost vmesnika + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normalno +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dvojna velikost + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Osnovni komplet grafik STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Izberi osnovni komplet grafik za uporabo STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} manjkajoč{P a i e ih}/okvarjen{P a i e ih} datotek{P a i e ""} @@ -1217,6 +1221,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Zelo raven STR_TERRAIN_TYPE_FLAT :Raven STR_TERRAIN_TYPE_HILLY :Hribovit STR_TERRAIN_TYPE_MOUNTAINOUS :Gorat +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Dopustno STR_CITY_APPROVAL_TOLERANT :Tolerantno @@ -1224,8 +1229,8 @@ STR_CITY_APPROVAL_HOSTILE :Sovražno STR_WARNING_NO_SUITABLE_AI :{WHITE}Ni na voljo nobene uporabne UI.{}UI so na voljo preko 'Prenosa vsebin'. -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Napredne nastavitve +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Nastavitve STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtriraj niz: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Razširi vse STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Skrči vse @@ -1239,6 +1244,7 @@ STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Nastavitve podj STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Nastavitve podjetja (shranjeno v igrah, vpliva samo na trenutno podjetje) STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorija: +STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tip: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Omeji seznam na prikaz le spremenjenih nastavitev STR_CONFIG_SETTING_RESTRICT_BASIC :Osnovne nastavitve STR_CONFIG_SETTING_RESTRICT_ADVANCED :Napredne nastavitve @@ -1848,7 +1854,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Več igr STR_INTRO_GAME_OPTIONS :{BLACK}Možnosti STR_INTRO_HIGHSCORE :{BLACK}Tabela najboljših rezultatov -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Napredne nastavitve +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Nastavitve STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF nastavitve STR_INTRO_ONLINE_CONTENT :{BLACK}Preveri razpoložljive vsebine STR_INTRO_SCRIPT_SETTINGS :{BLACK}UI / Nastavitve skriptov igre @@ -1868,7 +1874,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Izberi o STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Prikaži možnosti igre STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Prikaži tabelo najboljših rezultatov -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Prikaz naprednih nastavitev +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Nastavitve zaslona STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Prikaži nastavitve NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Preveri posodobljene vsebine na strežniku,{} ki so na voljo za prenos STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Prikaži UI in Nastavitve skriptov igre @@ -2798,7 +2804,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ozemlje v lasti STR_ABOUT_OPENTTD :{WHITE}O OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Prvotne avtorske pravice {COPYRIGHT} 1995 Chris Sawyer, vse pravice pridržane STR_ABOUT_VERSION :{BLACK}OpenTTD različica {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 ekipa OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 ekipa OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Shrani igro @@ -2833,6 +2839,7 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Število mest: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Število industrij: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimalna višina mape: STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Višina snežne meje: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Premik snežne meje eno enoto višje STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Premik snežne meje eno enoto nižje @@ -2862,6 +2869,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Ime viš STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Velikost: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Spremeni maksimalno višino mape STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Spremeni višino snežne meje STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Spremeni začetno leto @@ -2977,7 +2985,10 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Prejšnj STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Nadaljuj k prejšnji navadni sličici, zanemari vse navidezne/pobarvane/besedilne sličice in okvir na koncu STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Predstavitev trenutno izbrane sličice. Zamik je zanemarjen pri risanju te sličice STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Premakni sličico s spreminjanjem X in Y osi -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X zamik: {NUM}, Y zamik: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetiraj relativno +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Resetiraj zdajšne relativne odmike +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X odmik: {NUM}, Y odmik: {NUM} (Absolutno) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X odmik: {NUM}, Y odmik: {NUM} (Relativno) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Izberi sličico STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Izberi sličico kjerkoli na zaslonu @@ -3149,7 +3160,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Informacije STR_GOAL_QUESTION_CAPTION_WARNING :Opozorilo STR_GOAL_QUESTION_CAPTION_ERROR :Napaka -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Prekliči STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Ne @@ -3168,6 +3179,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Ponovni zagon STR_GOAL_QUESTION_BUTTON_POSTPONE :Preloži STR_GOAL_QUESTION_BUTTON_SURRENDER :Predaja STR_GOAL_QUESTION_BUTTON_CLOSE :Zapri +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subvencije @@ -3516,6 +3528,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Preimenu STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Preimenuj ladjo STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Preimenuj letalo + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Preimenuj železniško vozilo STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Preimenuj cestno vozilo STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Preimenuj ladjo @@ -3620,6 +3635,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Cestno vozilo STR_REPLACE_VEHICLE_SHIP :Ladja STR_REPLACE_VEHICLE_AIRCRAFT :Letalo + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Izberi tip lokomotive za zamenjati STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Izberi vrsto lokomotive, ki jo hočeš prestaviti na levo označeno mesto @@ -4265,6 +4281,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... gozd STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... lahko se zgradi samo nad snežno mejo STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... lahko se zgradi samo pod snežno mejo + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Tukaj ni mogoče zgraditi železniške postaje... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Tukaj ni mogoče zgraditi avtobusne postaje... @@ -5044,8 +5061,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index b1c548f927..3b8cb42b21 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :{G=m}Refresco # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} pasajero{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}pasajero{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} de carbón -STR_QUANTITY_MAIL :{COMMA} bolsa{P "" s} de correo +STR_QUANTITY_MAIL :{COMMA}{NBSP}bolsa{P "" s} de correo STR_QUANTITY_OIL :{VOLUME_LONG} de petróleo -STR_QUANTITY_LIVESTOCK :{COMMA} cabeza{P "" s} de ganado -STR_QUANTITY_GOODS :{COMMA} caja{P "" s} de mercancías +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}cabeza{P "" s} de ganado +STR_QUANTITY_GOODS :{COMMA}{NBSP}caja{P "" s} de mercancías STR_QUANTITY_GRAIN :{WEIGHT_LONG} de grano STR_QUANTITY_WOOD :{WEIGHT_LONG} de madera STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} de mineral de hierro STR_QUANTITY_STEEL :{WEIGHT_LONG} de acero -STR_QUANTITY_VALUABLES :{COMMA} bolsa{P "" s} de objetos de valor +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}bolsa{P "" s} de objetos de valor STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de mineral de cobre STR_QUANTITY_MAIZE :{WEIGHT_LONG} de maíz STR_QUANTITY_FRUIT :{WEIGHT_LONG} de fruta -STR_QUANTITY_DIAMONDS :{COMMA} bolsa{P "" s} de diamantes +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}bolsa{P "" s} de diamantes STR_QUANTITY_FOOD :{WEIGHT_LONG} de alimento STR_QUANTITY_PAPER :{WEIGHT_LONG} de papel -STR_QUANTITY_GOLD :{COMMA} bolsa{P "" s} de oro +STR_QUANTITY_GOLD :{COMMA}{NBSP}bolsa{P "" s} de oro STR_QUANTITY_WATER :{VOLUME_LONG} de agua STR_QUANTITY_WHEAT :{WEIGHT_LONG} de trigo STR_QUANTITY_RUBBER :{VOLUME_LONG} de caucho STR_QUANTITY_SUGAR :{WEIGHT_LONG} de azúcar -STR_QUANTITY_TOYS :{COMMA} juguete{P "" s} -STR_QUANTITY_SWEETS :{COMMA} bolsa{P "" s} de dulces +STR_QUANTITY_TOYS :{COMMA}{NBSP}juguete{P "" s} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}bolsa{P "" s} de dulces STR_QUANTITY_COLA :{VOLUME_LONG} de cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} de algodón dulce STR_QUANTITY_BUBBLES :{COMMA} burbuja{P "" s} @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}TOD # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} pasajero{P "" s} -STR_BAGS :{COMMA} bolsa{P "" s} -STR_TONS :{COMMA} tonelada{P "" s} -STR_LITERS :{COMMA} litro{P "" s} -STR_ITEMS :{COMMA} artículo{P "" s} -STR_CRATES :{COMMA} caja{P "" s} +STR_PASSENGERS :{COMMA}{NBSP}pasajero{P "" s} +STR_BAGS :{COMMA}{NBSP}bolsa{P "" s} +STR_TONS :{COMMA}{NBSP}tonelada{P "" s} +STR_LITERS :{COMMA}{NBSP}litro{P "" s} +STR_ITEMS :{COMMA}{NBSP}artículo{P "" s} +STR_CRATES :{COMMA}{NBSP}caja{P "" s} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Azul oscuro @@ -192,37 +192,37 @@ STR_COLOUR_GREY :Gris STR_COLOUR_WHITE :Blanco # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}cv -STR_UNITS_POWER_METRIC :{COMMA}cv -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}cv +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon{P "" es} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litro{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gal{P ón ones} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" s} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kp -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kp +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} pies -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pies +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Patrón de filtrado: @@ -249,6 +249,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de desplazamiento - mueve la lista izquierda/derecha STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demoler edificios, etc. en un área de terreno. Ctrl permite seleccionar un área diagonalmente. Shift permite mostrar una estimación del precio +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Mostrar ocultos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Mostrar ocultos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Mostrar ocultos +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Mostrar ocultos + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Al activar este botón, los trenes ocultos también serán mostrados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Al activar este botón, los vehículos de carretera ocultos también serán mostrados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Al activar este botón, los barcos ocultos también serán mostrados +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Al activar este botón, las aeronaves ocultas también serán mostradas + # Query window STR_BUTTON_DEFAULT :{BLACK}Por defecto STR_BUTTON_CANCEL :{BLACK}Cancelar @@ -308,7 +319,7 @@ STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Avance r STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Opciones STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Guardar juego, abandonar juego, salir STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Mostrar mapa -STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Mostrar guía de pueblos +STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Mostrar guía de municipios STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Mostrar subvenciones STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Mostrar lista de estaciones STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Mostrar información financiera de la empresa @@ -341,9 +352,9 @@ STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Editor STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Retrocede la fecha de inicio en un año STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Avanza la fecha de inicio en un año STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Click para fijar el año inicial -STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Mostrar mapa, guía de pueblos +STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Mostrar mapa, guía de municipios STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Generación de terreno -STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Creación de pueblos +STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Creación de municipios STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Generación de industria STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Construcción de carreteras STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Plantar árboles. Shift permite mostrar una estimación del precio @@ -362,11 +373,11 @@ STR_SCENEDIT_FILE_MENU_QUIT :Salir ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Opciones de juego -STR_SETTINGS_MENU_CONFIG_SETTINGS :Opciones avanzadas +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configuración STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configuración de scripts STR_SETTINGS_MENU_NEWGRF_SETTINGS :Configuración NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opciones de transparencia -STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Ver nombres de pueblos +STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Ver nombres de municipios STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Ver nombres de estaciones STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :Ver puntos de ruta STR_SETTINGS_MENU_SIGNS_DISPLAYED :Ver carteles @@ -392,8 +403,8 @@ STR_MAP_MENU_LINGRAPH_LEGEND :Leyenda de Movi STR_MAP_MENU_SIGN_LIST :Lista de carteles ############ range for town menu starts -STR_TOWN_MENU_TOWN_DIRECTORY :Directorio de pueblos -STR_TOWN_MENU_FOUND_TOWN :Fundar pueblo +STR_TOWN_MENU_TOWN_DIRECTORY :Directorio de municipios +STR_TOWN_MENU_FOUND_TOWN :Fundar municipio ############ range ends here ############ range for subsidies menu starts @@ -604,8 +615,8 @@ STR_PERFORMANCE_DETAIL_SELECT_COMPANY_TOOLTIP :{BLACK}Mostrar ############ Those following lines need to be in this order!! STR_PERFORMANCE_DETAIL_VEHICLES :{BLACK}Vehículos: STR_PERFORMANCE_DETAIL_STATIONS :{BLACK}Estaciones: -STR_PERFORMANCE_DETAIL_MIN_PROFIT :{BLACK}Beneficio Min.: -STR_PERFORMANCE_DETAIL_MIN_INCOME :{BLACK}Ingreso Min.: +STR_PERFORMANCE_DETAIL_MIN_PROFIT :{BLACK}Beneficio Mín.: +STR_PERFORMANCE_DETAIL_MIN_INCOME :{BLACK}Ingreso Mín.: STR_PERFORMANCE_DETAIL_MAX_INCOME :{BLACK}Ingreso Máx.: STR_PERFORMANCE_DETAIL_DELIVERED :{BLACK}Entregado: STR_PERFORMANCE_DETAIL_CARGO :{BLACK}Carga: @@ -732,12 +743,12 @@ STR_SMALLMAP_LEGENDA_TREES :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_ROCKS :{TINY_FONT}{BLACK}Rocas STR_SMALLMAP_LEGENDA_WATER :{TINY_FONT}{BLACK}Agua STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Sin propietario -STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Pueblos +STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Municipios STR_SMALLMAP_LEGENDA_INDUSTRIES :{TINY_FONT}{BLACK}Industrias STR_SMALLMAP_LEGENDA_DESERT :{TINY_FONT}{BLACK}Desierto STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLACK}Nieve -STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Mostrar/ocultar nombres de pueblos en el mapa +STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Mostrar/ocultar nombres de municipios en el mapa STR_SMALLMAP_CENTER :{BLACK}Centrar mapa en la posición actual STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STRING} ({NUM}) STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING} @@ -802,7 +813,7 @@ STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLAC STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}¡{STRING} ha sido adquirida por {STRING}! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Presidente) -STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}¡{STRING} patrocina la construcción del nuevo pueblo {TOWN}! +STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}¡{STRING} patrocina la construcción del nuevo municipio {TOWN}! STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}¡Nuev{G o a} {STRING} en construcción cerca de {TOWN}! STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}¡Nuev{G o a} {STRING} está siendo plantad{G o a} cerca de {TOWN}! @@ -917,17 +928,13 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgiano STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iraní (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehículos de carretera STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selecciona el lado de la carretera por donde se debe conducir STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conducir por la izquierda STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Conducir por la derecha -STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Nombres de pueblos -STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Selección del estilo del nombre de las poblaciones +STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Nombres de municipios +STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Selección del estilo del nombre de los municipios ############ start of townname region STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Inglés @@ -974,6 +981,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Resoluci STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Seleccione la resolución de pantalla a usar STR_GAME_OPTIONS_RESOLUTION_OTHER :Otras +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Tamaño de la interfaz +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Elige el tamaño de los elementos de la interfaz a usar + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Tamaño doble +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Tamaño cuádruple + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunto de gráficos base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecciona el conjunto de gráficos base a usar STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fichero{P "" s} perdido{P "" s} o corrupto{P "" s} @@ -1067,15 +1081,16 @@ STR_TERRAIN_TYPE_VERY_FLAT :Muy llano STR_TERRAIN_TYPE_FLAT :Llano STR_TERRAIN_TYPE_HILLY :Accidentado STR_TERRAIN_TYPE_MOUNTAINOUS :Montañoso +STR_TERRAIN_TYPE_ALPINIST :Alpino STR_CITY_APPROVAL_PERMISSIVE :Permisiva STR_CITY_APPROVAL_TOLERANT :Tolerante STR_CITY_APPROVAL_HOSTILE :Hostil -STR_WARNING_NO_SUITABLE_AI :{WHITE}No se encontraron IAs apropiadas...{}Puedes descargar IAs a través del sistema de 'Contenido Online' +STR_WARNING_NO_SUITABLE_AI :{WHITE}No se encontraron IA apropiadas...{}Puedes descargar IA a través del sistema de 'Contenido Online' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Opciones avanzadas +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Configuración STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Patrón de filtrado: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Expandir todos STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Colapsar todos @@ -1091,9 +1106,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Opción de empr STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categoría: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tipo: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Muestra solamente las opciones modificadas en la lista -STR_CONFIG_SETTING_RESTRICT_BASIC :Opciones básicas -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Opciones avanzadas -STR_CONFIG_SETTING_RESTRICT_ALL :Opciones de experto / todas las opciones +STR_CONFIG_SETTING_RESTRICT_BASIC :Opciones básicas (solo muestra los ajustes de configuración más importantes) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avanzado (muestra la mayoría de las opciones) +STR_CONFIG_SETTING_RESTRICT_ALL :Experto (muestra todas las opciones, incluidas las más extrañas) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Opciones con un valor diferente al valor por defecto STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Opciones con un valor diferente a las opciones de partida nueva @@ -1132,7 +1147,7 @@ STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Porcentaje de i STR_CONFIG_SETTING_RUNNING_COSTS :Costes de operación: {STRING} STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Permite fijar el nivel de los costes de mantenimiento y operación de vehículos e infraestructuras STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocidad de construcción: {STRING} -STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limita la velocidad de las acciones de construcción para las IAs +STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limita la velocidad de las acciones de construcción para las IA STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Averías de vehículos: {STRING} STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Controla la frecuencia con la que los vehículos que no hayan tenido un mantenimiento adecuado se rompen STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Multiplicador por subsidio: {STRING} @@ -1145,15 +1160,18 @@ STR_CONFIG_SETTING_TRAIN_REVERSING :Prohibir cambio STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si se activa, los trenes no se darán la vuelta en estaciones no finales en el caso de que haya un camino más cercano si se dan la vuelta STR_CONFIG_SETTING_DISASTERS :Desastres: {STRING} STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Activa desastres que ocasionalmente pueden bloquear o destruir vehículos o infraestructuras -STR_CONFIG_SETTING_CITY_APPROVAL :Actitud de los pueblos frente a reestructuraciones en su zona: {STRING} -STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Permite elegir la medida en la que el ruido y el daño ambiental causado por las compañías afecta a su calificación local en los pueblos +STR_CONFIG_SETTING_CITY_APPROVAL :Actitud de los municipios frente a reestructuraciones en su zona: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Permite elegir la medida en la que el ruido y el daño ambiental causado por las compañías afecta a su calificación local en los municipios +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altura máxima del mapa: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Establece la altura máxima permitida para las montañas en el mapa +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}No se puede establecer la altura máxima del mapa en el valor indicado. Al menos una montaña ya es más alta STR_CONFIG_SETTING_AUTOSLOPE :Permitir modificar terreno bajo edificios, raíles, etc.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permitir modificar el terreno debajo de edificios y raíles sin eliminarlos STR_CONFIG_SETTING_CATCHMENT :Tamaño del área de captación realista: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Permite tener diferentes áreas de captación para distintos tipos de estaciones y aeropuertos -STR_CONFIG_SETTING_EXTRADYNAMITE :Permitir eliminar más propiedades de pueblos: {STRING} -STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Hace que sea más fácil eliminar infraestructuras y edificios de pueblos +STR_CONFIG_SETTING_EXTRADYNAMITE :Permitir eliminar más propiedades de los municipios: {STRING} +STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Hace que sea más fácil eliminar infraestructuras y edificios de los municipios STR_CONFIG_SETTING_TRAIN_LENGTH :Longitud máxima de trenes: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Permite cambiar la longitud máxima de trenes STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} casilla{P 0 "" s} @@ -1176,6 +1194,8 @@ STR_CONFIG_SETTING_INFLATION :Inflación: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Activa la inflación económica, lo cual hace que los costes aumenten ligeramente más rápido que los beneficios STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Longitud máxima de puentes: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Máxima longitud permitida para puentes +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altura máxima de puentes: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Altura máxima permitida al construir puentes STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Longitud máxima de túneles: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Máxima longitud permitida para túneles STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Método de construcción de industria primaria: {STRING} @@ -1185,8 +1205,8 @@ STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Como las otras STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Prospección STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Área plana alrededor de industrias: {STRING} STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Cantidad de espacio plano alrededor de las industrias. Esto permite que haya espacio libre alrededor de las industrias para construir -STR_CONFIG_SETTING_MULTIPINDTOWN :Construcción de más de una industria similar por pueblo: {STRING} -STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Normalmente, no se permite más de una industria del mismo tipo por pueblo. Con esta opción, se permiten múltiples industrias del mismo tipo en el mismo pueblo +STR_CONFIG_SETTING_MULTIPINDTOWN :Construcción de más de una industria similar por municipio: {STRING} +STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Normalmente, no se permite más de una industria del mismo tipo por municipio. Con esta opción, se permiten múltiples industrias del mismo tipo en el mismo municipio STR_CONFIG_SETTING_SIGNALSIDE :Mostrar señales: {STRING} STR_CONFIG_SETTING_SIGNALSIDE_HELPTEXT :Selecciona en qué lado de la vía se colocarán las señales STR_CONFIG_SETTING_SIGNALSIDE_LEFT :A la izquierda @@ -1197,10 +1217,10 @@ STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Si se activa, l STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Nuevas órdenes son 'sin parada' por defecto: {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normalmente, un vehículo se detendrá en todas las estaciones por las que pase. Si se activa esta opción, pasará sin detenerse a través de todas las estaciones hasta llegar a su destino. Esta opción solamente cambia el comportamiento por defecto de las órdenes nuevas. Es posible especificar para cada orden el comportamiento que se desea STR_CONFIG_SETTING_STOP_LOCATION :Nuevos trenes paran por defecto en el {STRING} de la plataforma -STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Permite seleccionar en que parte de la plataforma se detendrán los trenes por defecto. 'cerca del fin' significa cerca del punto de entrada, 'centro' significa en el punto medio de la estación y 'lejos del fin' significa el punto más lejano de la estación. Esta opción solamente cambia el comportamiento por defecto de las órdenes nuevas. Es posible especificar para cada orden el comportamiento que se desea -STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :principio +STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Permite seleccionar en qué parte de la plataforma se detendrán los trenes por defecto. 'extremo cercano' para parar cerca del punto de entrada, 'centro' para parar en el punto medio de la estación y 'extremo lejano' para parar lo más lejos posible del punto de entrada. Esta opción solamente cambia el comportamiento por defecto de las órdenes nuevas. Es posible especificar para cada orden el comportamiento que se desea +STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :extremo cercano STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :centro -STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :lejos del fin +STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :extremo lejano STR_CONFIG_SETTING_AUTOSCROLL :Desplazar ventana mediante el cursor en los bordes: {STRING} STR_CONFIG_SETTING_AUTOSCROLL_HELPTEXT :Cuando esta opción está activa, las vistas empezarán a desplazarse cuando el ratón esté cerca del borde de la ventana STR_CONFIG_SETTING_AUTOSCROLL_DISABLED :Desactivado @@ -1208,13 +1228,13 @@ STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Vista principal STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Vista principal STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Todas las vistas STR_CONFIG_SETTING_BRIBE :Permitir sobornos a la autoridad local: {STRING} -STR_CONFIG_SETTING_BRIBE_HELPTEXT :Permite a las compañías intentar sobornar a las autoridades locales. Si el soborno es descubierto por un inspector, la compañía no podrá actuar en el pueblo durante seis meses +STR_CONFIG_SETTING_BRIBE_HELPTEXT :Permite a las compañías intentar sobornar a las autoridades locales. Si el soborno es descubierto por un inspector, la compañía no podrá actuar en el municipio durante seis meses STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Permitir comprar derechos de transporte exclusivos: {STRING} -STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Si una compañía compra derechos de transporte exclusivos en un pueblo, las estaciones de sus oponentes (pasajeros o carga) no recibirán nada para transportar durante un año +STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Si una compañía compra derechos de transporte exclusivos en un municipio, las estaciones de sus oponentes (pasajeros o carga) no recibirán nada para transportar durante un año STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Permitir la construcción de nuevos edificios: {STRING} -STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Permite a las compañías dar dinero a los pueblos para crear nuevas casas +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Permite a las compañías dar dinero a los municipios para crear nuevas casas STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Permitir pagar la reconstrucción de las carreteras locales: {STRING} -STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Permite a las compañías dar dinero a los pueblos para que reconstruyan sus carreteras, saboteando los servicios de carretera en la zona +STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Permite a las compañías dar dinero a los municipios para que reconstruyan sus carreteras, saboteando los servicios de carretera en la zona STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Permitir enviar dinero a otras empresas: {STRING} STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Permite la transferencia de dinero entre compañías en modo multijugador STR_CONFIG_SETTING_FREIGHT_TRAINS :Multiplicador de peso para simular trenes pesados: {STRING} @@ -1227,8 +1247,8 @@ STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Fija la probabi STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ninguno STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reducida STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permite construir paradas sobre carreteras de pueblo: {STRING} -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Permite construir estaciones de carretera de paso en carreteras que sean propiedad de pueblos +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permite construir paradas sobre carreteras de los municipios: {STRING} +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Permite construir estaciones de carretera de paso en carreteras que sean propiedad de municipios STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Permitir pasar a través de las paradas de carretera de los competidores: {STRING} STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Permite construir estaciones de carretera de paso en carreteras que sean propiedad de otras compañías STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Cambiar esta opción no es posible cuando ya existen vehículos @@ -1261,16 +1281,16 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duración de me STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duración de los mensajes de error mostrados en ventanas rojas. Algunos mensajes de error críticos no se cierran automáticamente, y deben de ser cerrados manualmente STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} segundo{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Mostrar mensajes de ayuda: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tiempo que hace falta mantener el ratón encima de un elemento de la interfaz para mostrar su mensaje de ayuda. De forma alternativa, se puede escoger mostrar estos mensajes al pulsar el botón derecho -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Mantener ratón durante {COMMA} segundo{P 0 "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tiempo necesario con el ratón sobre un elemento de la interfaz para que esta muestre su mensaje de ayuda. De forma alternativa, se puede escoger mostrar estos mensajes al pulsar el botón derecho cuando el valor de esta opción ha sido establecido a 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Mantener ratón durante {COMMA} milisegundo{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Click derecho -STR_CONFIG_SETTING_POPULATION_IN_LABEL :Muestra la población de un pueblo en su etiqueta: {STRING} -STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Muestra el número de habitantes de los pueblos en su etiqueta sobre el mapa +STR_CONFIG_SETTING_POPULATION_IN_LABEL :Muestra la población de un municipio en su etiqueta: {STRING} +STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Muestra la población de los municipios en su etiqueta sobre el mapa STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Grosor de las líneas en los gráficos: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Grosor de las líneas en los gráficos. Una línea fina es más precisa, una línea más gruesa es más fácil de distinguir STR_CONFIG_SETTING_LANDSCAPE :Terreno: {STRING} -STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Los terrenos definen escenarios con diferentes tipos de carga y requisitos de crecimiento de pueblos. Es posible modificarlos empleando NewGRF y scripts de juego +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Los terrenos definen escenarios con diferentes tipos de carga y requisitos de crecimiento de municipios. Es posible modificarlos empleando NewGRF y scripts de juego STR_CONFIG_SETTING_LAND_GENERATOR :Generador terreno: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :El generador original depende del tipo de gráficos base, y crea formas de terreno fijas. TerraGenesis es un generador basado en ruido Perlin que permite un mayor control de configuración STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original @@ -1282,7 +1302,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Permite fijar e STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Máxima distancia de Refinerías de Petróleo con los bordes: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Las refinerías de petróleo solamente se construyen cerca del borde del mapa, el cual es costa para los mapas con borde de océano STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altura línea nieve: {STRING} -STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Permite escoger la altura a la cual la nieve comienza en el clima subártico. La nieve también afecta a la generación de industrias y a los requisitos de crecimiento de pueblos +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Permite escoger la altura a la cual la nieve comienza en el clima subártico. La nieve también afecta a la generación de industrias y a los requisitos de crecimiento de municipios STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rugosidad del terreno: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Sólo TerraGenesis) Permite elegir la frecuencia de colinas: los terrenos más planos tienen un número menor de colinas, agrupadas. Los terrenos más accidentados tienen múltiples colinas, lo cual puede resultar repetitivo STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Muy Suave @@ -1408,7 +1428,7 @@ STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Reproducir efec STR_CONFIG_SETTING_SOUND_VEHICLE :Vehículos: {STRING} STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Reproducir efectos de sonido de vehículos STR_CONFIG_SETTING_SOUND_AMBIENT :Ambiental: {STRING} -STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Reproducir sonidos ambientales de terreno, industrias y pueblos +STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Reproducir sonidos ambientales de terreno, industrias y municipios STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Deshabilitar construcción de infraestructuras cuando no haya vehículos apropiados disponibles: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Cuando se activa, solamente se pueden construir infraestructuras si hay vehículos disponibles para ellas, previniendo un gasto innecesario de tiempo y dinero @@ -1422,21 +1442,21 @@ STR_CONFIG_SETTING_MAX_SHIPS :Número máximo STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Número máximo de barcos que una compañía puede tener STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Desactivar trenes para el ordenador: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Activar esta opción deshabilita la construcción de trenes para IAs +STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Activar esta opción deshabilita la construcción de trenes para las IA STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :Desactivar vehículos de carretera para el ordenador: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT :Activar esta opción deshabilita la construcción de vehículos de carretra para IAs +STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT :Activar esta opción deshabilita la construcción de vehículos de carretra para las IA STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT :Desactivar aeroplanos para el ordenador: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT :Activar esta opción deshabilita la construcción de aeronaves para IAs +STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT :Activar esta opción deshabilita la construcción de aeronaves para las IA STR_CONFIG_SETTING_AI_BUILDS_SHIPS :Desactivar barcos para el ordenador: {STRING} -STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Activar esta opción deshabilita la construcción de barcos para IAs +STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Activar esta opción deshabilita la construcción de barcos para las IA STR_CONFIG_SETTING_AI_PROFILE :Perfil por defecto: {STRING} -STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Permite decidir el perfil a emplear para IAs aleatorias o para los valores iniciales al añadir una nueva IA o un script de juego +STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT :Permite decidir el perfil a emplear para IA aleatorias o para los valores iniciales al añadir una nueva IA o un script de juego STR_CONFIG_SETTING_AI_PROFILE_EASY :Fácil STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Intermedio STR_CONFIG_SETTING_AI_PROFILE_HARD :Difícil -STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Permitir IAs en multijugador: {STRING} +STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Permitir IA en multijugador: {STRING} STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Permite a los jugadores controlados por el ordenador participar en partidas multijugador STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes antes de que los scripts sean suspendidos: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Número máximo de operaciones de computación que un script puede realizar por turno @@ -1445,7 +1465,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Intervalo de ma STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Permite escoger si el mantenimiento de vehículos comenzará debido al tiempo pasado desde el último mantenimiento o por una reducción de la fiabilidad más allá de un porcentaje determinado STR_CONFIG_SETTING_SERVINT_TRAINS :Intervalo de mantenimiento por defecto para trenes: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Fija el intervalo de mantenimiento por defecto para vehículos de ferrocarril nuevos, que se empleará si no se define un intervalo de forma explícita para ese vehículo -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dia{P 0 "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}día{P 0 "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Deshabilitado STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Intervalo de mantenimiento por defecto para vehículos de carretera: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Fija el intervalo de mantenimiento por defecto para vehículos de carretera nuevos, que se empleará si no se define un intervalo de forma explícita para ese vehículo @@ -1512,7 +1532,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Fija el comport STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Señales mecánicas por defecto antes de: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Fija el año a partir del cual se usarán señales eléctricas. Antes de ese año se usarán señales mecánicas (tienen la misma funcionalidad pero distinto aspecto) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Activar la GUI de señales: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Muestra una ventana para escoger los tipos de señales a construir, en lugar de no usar ventana y permitir cambiar de tipo de señal solamente mediante Ctrl+Click +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Muestra una ventana para escoger los tipos de señales a construir, en lugar de no usar ventana y únicamente permitir el cambio de tipo de señal por rotación mediante Ctrl+Click sobre las señales ya construidas STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Tipo de señal a construir por defecto: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Tipo de señal a usar por defecto STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Señales de bloque @@ -1524,21 +1544,21 @@ STR_CONFIG_SETTING_CYCLE_SIGNAL_NORMAL :Solo señales d STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :Solo señales de ruta STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Todas -STR_CONFIG_SETTING_TOWN_LAYOUT :Patrón de carreteras para los nuevos pueblos: {STRING} -STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Patrón de carreteras a usar para las redes de transporte de los pueblos +STR_CONFIG_SETTING_TOWN_LAYOUT :Patrón de carreteras para los nuevos municipios: {STRING} +STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Patrón de carreteras a usar para las redes de transporte de los municipios STR_CONFIG_SETTING_TOWN_LAYOUT_DEFAULT :Original STR_CONFIG_SETTING_TOWN_LAYOUT_BETTER_ROADS :Mejorado STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :rejilla 2x2 STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :rejilla 3x3 STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :Aleatorio -STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Permitir que los pueblos construyan carreteras: {STRING} -STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Permite a los pueblos construir carreteras para crecer. Si se deshabilita, las autoridades del pueblo no podrán construir ninguna carretera +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Permitir que los municipios construyan carreteras: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Permite a los municipios construir carreteras para crecer. Si se deshabilita, las autoridades municipales no podrán construir ninguna carretera STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Permitir a las ciudades construir pasos a nivel: {STRING} -STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Permite a los pueblos construir pasos a nivel -STR_CONFIG_SETTING_NOISE_LEVEL :Permitir al pueblo controlar el nivel de ruido de los aeropuertos: {STRING} -STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Con esta opción desactivada, solamente puede haber dos aeropuertos por pueblo. Si se activa, el número de aeropuertos en un pueblo depende del nivel de aceptación de ruido del mismo, el cual depende de la población, del tamaño de los aeropuertos y de la distancia a la que estén -STR_CONFIG_SETTING_TOWN_FOUNDING :Fundar pueblos: {STRING} -STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Permite a los jugadores crear nuevos pueblos durante la partida +STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Permite a los municipios construir pasos a nivel +STR_CONFIG_SETTING_NOISE_LEVEL :Permitir al municipio controlar el nivel de ruido de los aeropuertos: {STRING} +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Con esta opción desactivada, solamente puede haber dos aeropuertos por municipio. Si se activa, el número de aeropuertos en el municipio depende del nivel de aceptación de ruido del mismo, el cual depende de la población, del tamaño de los aeropuertos y de la distancia a la que estén +STR_CONFIG_SETTING_TOWN_FOUNDING :Fundar municipios: {STRING} +STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Permite a los jugadores crear nuevos municipios durante la partida STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Prohibido STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Permitido STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Permitido, patrón de carreteras personalizado @@ -1571,23 +1591,23 @@ STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normal STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x -STR_CONFIG_SETTING_TOWN_GROWTH :Velocidad crecimiento pueblo: {STRING} -STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Velocidad de crecimiento de los pueblos +STR_CONFIG_SETTING_TOWN_GROWTH :Velocidad crecimiento población: {STRING} +STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Velocidad de crecimiento de los municipios STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Ninguna STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :Lenta STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Normal STR_CONFIG_SETTING_TOWN_GROWTH_FAST :Rápida STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :Muy rápida -STR_CONFIG_SETTING_LARGER_TOWNS :Proporción de pueblos que se convertirán en ciudades: {STRING} +STR_CONFIG_SETTING_LARGER_TOWNS :Proporción de municipios que se convertirán en ciudades: {STRING} STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Número de pueblos que se convertirán en ciudades. Las ciudades comienzan siendo más grandes y crecen más rápido STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 de cada {COMMA} STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Ninguna STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador inicial tamaño de ciudad: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Tamaño medio de las ciudades en relación a los pueblos normales al comienzo de la partida -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Actualizar el grafo de distribución cada {STRING} día{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Actualizar el grafo de distribución cada {STRING}{NBSP}día{P 0:2 "" s} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Periodo de tiempo entre cálculos del grafo de distribución consecutivos. Esta opción se refiere a los cálculos para cada uno de los componentes del grafo, por lo cual fijar un valor no quiere decir que el grafo completo se actualizará tras ese número de días. Cuanto menor sea, mayor tiempo de CPU será necesario para calcular el grafo de distribución. Cuanto mayor sea, más tardará el grafo de distribución en adaptarse a nuevas rutas -STR_CONFIG_SETTING_LINKGRAPH_TIME :Usar {STRING} día{P 0:2 "" s} para el cálculo del grafo de distribución +STR_CONFIG_SETTING_LINKGRAPH_TIME :Usar {STRING}{NBSP}día{P 0:2 "" s} para el cálculo del grafo de distribución STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Tiempo a emplear en el cálculo de cada uno de los componentes del grafo de distribución. Cuanto menor sea este valor, más probable es que se produzca ralentización en el juego. Cuanto mayor sea, más tiempo tardará la distribución en actualizarse cuando se producen cambios en las rutas STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manual STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimétrico @@ -1597,7 +1617,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :En una distribu STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Modo de distribución para el correo: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :En una distribución simétrica, se envía la misma cantidad de carga de la estación A a la B que de B a A. En una distribución asimétrica se pueden enviar cantidades arbitrarias de carga en ambas direcciones. Manual significa que no se realiza una distribución automática para el correo STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Modo de distribución para la clase de carga BLINDADA: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :La clase de carga BLINDADA contiene los objetos de valor del clima templado, los diamantes del clima subtropical o el oro del clima subártico. Los NewGRFs pueden modificar las cargas BLINDADAS presentes en una partida. En una distribución simétrica, se envía la misma cantidad de carga de la estación A a la B que de B a A. En una distribución asimétrica se pueden enviar cantidades arbitrarias de carga en ambas direcciones. Manual significa que no se realiza una distribución automática para esta carga. Se recomienda fijar esta distribución a asimétrica o manual al jugar en subártico o subtropical. En el clima templado es posible escoger simétrica ya que los bancos pueden enviar de vuelta objetos de valor +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :La clase de carga BLINDADA contiene objetos de valor en el clima templado, diamantes en el clima subtropical y oro en el clima subártico. Los NewGRFs pueden modificar esto. En una distribución "simétrica", se envía la misma cantidad de carga de la estación A a la B que de B a A. En una distribución "asimétrica" se pueden enviar cantidades arbitrarias de carga en ambas direcciones. "Manual" significa que no se realiza una distribución automática para esta carga. Se recomienda fijar esta distribución en "asimétrica" o en "manual" al jugar en subártico, y es que los bancos no enviarán oro de vuelta a sus minas de procedencia. En los climas templado y subtropical es factible escoger "simétrica" ya que los bancos pueden enviar de vuelta objetos de valor al banco origen de los mismos. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Modo de distribución para otras clases de carga: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Asimétrico" significa que se pueden mover cantidades arbitrarias de carga en ambas direcciones. "Manual" significa que no habrá distribución automática para estos tipos de carga. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Precisión de la distribución: {STRING} @@ -1622,25 +1642,25 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Métrico (cv) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Unidades de peso: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Cada vez que se muestren pesos en la interfaz de usuario, se emplearán estas unidades +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Cada vez que se muestre un peso en la interfaz de usuario, se mostrará en su unidad preestablecida STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (t/tonelada) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Métrico (t/tonelada) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Unidades de volumen: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Cada vez que se muestren volúmenes en la interfaz de usuario, se emplearán estas unidades +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Cada vez que se muestre un volumen en la interfaz de usuario, se mostrará en su unidad preestablecida STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Métrico (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Unidades de esfuerzo de tracción: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Cada vez que se muestre esfuerzo de tracción en la interfaz de usuario, se emplearán estas unidades +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Cada vez que se muestre un esfuerzo de tracción (también conocido como fuerza de tracción) en la interfaz de usuario, se mostrará en su unidad preestablecida STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Métrico (kp) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Unidades de altura: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Cada vez que se muestren alturas en el interfaz de usuario, se emplearán estas medidas +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Cada vez que se muestre una altura en la interfaz de usuario, se mostrará en su unidad preestablecida STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperial (pies) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Métrico (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1663,11 +1683,11 @@ STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Desastr STR_CONFIG_SETTING_GENWORLD :{ORANGE}Generación de mundo STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Ambiente STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Autoridades -STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Pueblos +STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Municipios STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industrias STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Distribución de carga STR_CONFIG_SETTING_AI :{ORANGE}Competidores -STR_CONFIG_SETTING_AI_NPC :{ORANGE}Jugadores de la CPU (IAs) +STR_CONFIG_SETTING_AI_NPC :{ORANGE}Jugadores de la CPU (IA) STR_CONFIG_SETTING_PATHFINDER_OPF :Original STR_CONFIG_SETTING_PATHFINDER_NPF :NPF @@ -1716,7 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multijug STR_INTRO_GAME_OPTIONS :{BLACK}Opciones de Juego STR_INTRO_HIGHSCORE :{BLACK}Tabla de Puntuaciones -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Opciones Avanzadas +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configuración STR_INTRO_NEWGRF_SETTINGS :{BLACK}Configuración NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Contenido Online STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configuración de Scripts @@ -1736,7 +1756,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Elegir e STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Muestra las opciones del juego STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostrar tabla de puntuaciones -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Mostrar las opciones avanzadas +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostrar configuración STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Muestra ajustes de NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Comprobar si hay nuevos contenidos actualizados para descargar STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostrar configuración de scripts de IA y Juego @@ -1776,6 +1796,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Jugando STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Bulldózer mágico (elimina industrias, objetos inamovibles): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Los túneles pueden cruzarse: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jets se estrellan menos en aeropuertos pequeños: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Edita la altura máxima del mapa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Edita la altura máxima de las montañas en el mapa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Terreno templado STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Terreno subártico STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Terreno subtropical @@ -2216,7 +2238,7 @@ STR_CONTENT_NO_ZLIB_SUB :{WHITE}... ¡No STR_CONTENT_TYPE_BASE_GRAPHICS :{G=m}Gráficos base STR_CONTENT_TYPE_NEWGRF :{G=m}NewGRF STR_CONTENT_TYPE_AI :{G=f}IA -STR_CONTENT_TYPE_AI_LIBRARY :{G=f}Librería de IAs +STR_CONTENT_TYPE_AI_LIBRARY :{G=f}Librería de IA STR_CONTENT_TYPE_SCENARIO :{G=m}Escenario STR_CONTENT_TYPE_HEIGHTMAP :{G=m}Mapa de alturas STR_CONTENT_TYPE_BASE_SOUNDS :{G=m}Sonidos base @@ -2227,7 +2249,7 @@ STR_CONTENT_TYPE_GS_LIBRARY :Librería SJ # Content downloading progress window STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Descargando contenido... STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Solicitando ficheros... -STR_CONTENT_DOWNLOAD_FILE :{WHITE}Descargando {STRING} ({NUM} of {NUM}) +STR_CONTENT_DOWNLOAD_FILE :{WHITE}Descargando {STRING} ({NUM} de {NUM}) STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Descarga completada STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} de {BYTES} descargadas ({NUM} %) @@ -2239,7 +2261,7 @@ STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... no s STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}No ha sido posible descomprimir el fichero descargado STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Gráficos no encontrados -STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD necesita gráficos para funcionar pero no se pudo encontrar ninguno. ¿Desea permitir que OpenTTD descargue e instale dichos gráficos?. +STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD necesita gráficos para funcionar pero no se pudo encontrar ninguno. ¿Desea permitir que OpenTTD descargue e instale dichos gráficos? STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sí, descargar los gráficos STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}No, salir de OpenTTD @@ -2294,7 +2316,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Construi STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Construir depósito de trenes (para comprar y dar servicio a trenes). Shift permite mostrar una estimación del precio STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Convertir ferrocarril a punto de ruta. Ctrl activa la unión de puntos de ruta. Shift permite mostrar una estimación del precio STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Construir estación de ferrocarril. Ctrl activa la unión de estaciones. Shift permite mostrar una estimación del precio -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construir señales de ferrocarril. Ctrl cambia entre señales mecánicas y eléctricas{}Arrastrar construye señales en el trozo de ferrocarril recorrido. Arrastrar+Ctrl construye señales hasta el próximo cruce{}Ctrl+Click no abre la ventana de selección de señales. Shift permite mostrar una estimación del precio +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Construir señales de ferrocarril. Ctrl cambia entre señales mecánicas y eléctricas{}Arrastrar construye señales a lo largo del tramo recto de ferrocarril seleccionado. Ctrl construye señales hasta el siguiente cruce o señal{}Ctrl+Click cambia a la ventana de selección de señales. Shift cambia entre construir/mostrar el precio estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Construir puente de ferrocarril. Shift permite mostrar una estimación del precio STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Construir túnel ferroviario. Shift permite mostrar una estimación del precio STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Cambiar entre construir/retirar ferrocarriles, señales, estaciones y puntos de ruta de ferrocarril. Mantener pulsado Ctrl retirará también el ferrocarril al retirar estaciones y puntos de ruta @@ -2488,31 +2510,31 @@ STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Reinicia STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}¿Está seguro de querer eliminar todas las propiedades de empresas? # Town generation window (SE) -STR_FOUND_TOWN_CAPTION :{WHITE}Creación de Pueblos -STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Nuevo Pueblo -STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Fundar nuevo pueblo. Shift+Click muestra una estimación del precio -STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Pueblo al Azar -STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Fundar pueblo en lugar aleatorio -STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Varios pueblos al azar -STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Cubre el mapa con pueblos colocados al azar +STR_FOUND_TOWN_CAPTION :{WHITE}Creación de Municipios +STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Nuevo Municipio +STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Fundar nuevo municipio. Shift+Click muestra una estimación del precio +STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Municipio al Azar +STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Fundar municipio en lugar aleatorio +STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Varios municipios al azar +STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Cubre el mapa con municipios colocados al azar -STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Nombre del pueblo: -STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Introducir nombre de pueblo -STR_FOUND_TOWN_NAME_EDITOR_HELP :{BLACK}Click para introducir nombre de pueblo +STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Nombre del municipio: +STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Introducir nombre de municipio +STR_FOUND_TOWN_NAME_EDITOR_HELP :{BLACK}Click para introducir nombre del municipio STR_FOUND_TOWN_NAME_RANDOM_BUTTON :{BLACK}Nombre aleatorio STR_FOUND_TOWN_NAME_RANDOM_TOOLTIP :{BLACK}Generar nuevo nombre -STR_FOUND_TOWN_INITIAL_SIZE_TITLE :{YELLOW}Tamaño pueblo: +STR_FOUND_TOWN_INITIAL_SIZE_TITLE :{YELLOW}Tamaño municipio: STR_FOUND_TOWN_INITIAL_SIZE_SMALL_BUTTON :{BLACK}Pequeña STR_FOUND_TOWN_INITIAL_SIZE_MEDIUM_BUTTON :{BLACK}Mediana STR_FOUND_TOWN_INITIAL_SIZE_LARGE_BUTTON :{BLACK}Grande STR_FOUND_TOWN_SIZE_RANDOM :{BLACK}Aleatorio -STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Seleccione el tamaño del pueblo +STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Seleccione el tamaño del municipio STR_FOUND_TOWN_CITY :{BLACK}Ciudad STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Las ciudades crecen más rápido que los pueblos{}Dependiendo de los ajustes, son mayores al ser fundadas STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Patrón de carretera: -STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Seleccionar patrón de carreteras para este pueblo +STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Seleccionar patrón de carreteras para este municipio STR_FOUND_TOWN_SELECT_LAYOUT_ORIGINAL :{BLACK}Original STR_FOUND_TOWN_SELECT_LAYOUT_BETTER_ROADS :{BLACK}Mejorado STR_FOUND_TOWN_SELECT_LAYOUT_2X2_GRID :{BLACK}Rejilla de 2x2 @@ -2666,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno propied STR_ABOUT_OPENTTD :{WHITE}Acerca de OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright Original {COPYRIGHT} 1995 Chris Sawyer, Todos los derechos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versión {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 El equipo OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 El equipo OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Guardar Juego @@ -2698,9 +2720,12 @@ STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Generaci STR_MAPGEN_MAPSIZE :{BLACK}Tamaño del mapa: STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Permite seleccionar el tamaño del mapa en casillas. El número de casillas disponible en el mapa será ligeramente inferior STR_MAPGEN_BY :{BLACK}* -STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. de pueblos: +STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}No. de municipios: STR_MAPGEN_DATE :{BLACK}Fecha: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}No. de industrias: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Altura máxima del mapa: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Aumentar, una unidad, la altura máxima de las montañas del mapa +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Disminuir, una unidad, la altura máxima de las montañas del mapa STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altura línea nieve: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mover la línea de nieve hacia arriba STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mover la línea de nieve hacia abajo @@ -2730,7 +2755,8 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nombre d STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamaño: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} -STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Cambiar altura de la línea de nieve +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Cambiar la altura máxima del mapa +STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Cambiar la altura de la línea de nieve STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Cambiar año de inicio # SE Map generation @@ -2742,7 +2768,7 @@ STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Altura t STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Reduce la altura de la tierra llana STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Aumenta la altura de la tierra llana -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Cambia la altura de la tierra llana +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Cambiar la altura de la tierra llana # Map generation progress STR_GENERATION_WORLD :{WHITE}Generando Mundo... @@ -2800,7 +2826,7 @@ STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Comproba STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Fichero: {SILVER}{STRING} STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}GRF ID: {SILVER}{STRING} STR_NEWGRF_SETTINGS_VERSION :{BLACK}Versión: {SILVER}{NUM} -STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Min. versión compatible: {SILVER}{NUM} +STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Mín. versión compatible: {SILVER}{NUM} STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5sum: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Paleta: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Parámetros: {SILVER}{STRING} @@ -2843,14 +2869,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Parámet # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Alinear sprite {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Siguiente sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Ir al sprite siguiente, ignorando pseudosprites, sprites recoloreados y sprites de fuente +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Ir al siguiente sprite (ignorando pseudosprites, sprites recoloreados y sprites de fuente) y pasar del último al primer sprite STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Ir a sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ir al sprite indicado. Si el sprite no es un sprite normal, ir al siguiente sprite normal STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite anterior -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Saltar al sprite anterior, ignorando pseudosprites, sprites recoloreados y sprites de fuente +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Saltar al sprite anterior (ignorando pseudosprites, sprites recoloreados y sprites de fuente) y pasar del primer al último sprite STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representación del sprite seleccionado. Su alineamiento es ignorado al dibujarlo STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mover el sprite, cambiando los ajustes X e Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Ajuste X: {NUM}, Ajuste Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reiniciar coordenadas relativas +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reinicia las coordenadas relativas actuales +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Coordenada X: {NUM}, Coordenada Y: {NUM} (Absoluta) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Coordenada X: {NUM}, Coordenada Y: {NUM} (Relativa) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Seleccionar sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Seleccionar un sprite de cualquier parte de la pantalla @@ -2927,7 +2956,7 @@ STR_INVALID_VEHICLE : STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}El juego ha sido guardado en una versión sin soporte para tranvías. Todos los tranvías serán eliminados # Map generation messages -STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Generación de mapa abortada...{}... no hay localizaciones apropiadas para pueblos -STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... no hay pueblos en el escenario +STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Generación de mapa abortada...{}... no hay localizaciones apropiadas para municipios +STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... no hay municipios en el escenario STR_ERROR_PNGMAP :{WHITE}No se pudo cargar mapa de alturas PNG... STR_ERROR_PNGMAP_FILE_NOT_FOUND :{WHITE}... fichero no encontrado @@ -4082,7 +4132,7 @@ STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}No permi # Local authority errors STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}Las autoridades locales de {TOWN} rechazan esto -STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}Las autoridades locales de {TOWN} rechazan la construcción de otro aeropuerto en este pueblo +STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}Las autoridades locales de {TOWN} rechazan la construcción de otro aeropuerto en este municipio STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}Las autoridades locales de {TOWN} rechazan el permiso para el aeropuerto debido a su preocupación por el ruido STR_ERROR_BRIBE_FAILED :{WHITE}Su intento de soborno ha sido descubierto por un investigador regional @@ -4094,6 +4144,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}La excav STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... ya está al nivel del mar STR_ERROR_TOO_HIGH :{WHITE}... demasiado alto STR_ERROR_ALREADY_LEVELLED :{WHITE}... ya está llano +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Después del cambio, el puente sobre este terreno será demasiado alto. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}No se puede cambiar el nombre de la empresa... @@ -4112,18 +4163,18 @@ STR_ERROR_CAN_T_SELL_25_SHARE_IN :{WHITE}No se pu STR_ERROR_PROTECTED :{WHITE}Esta empresa es demasiado reciente como para comerciar con acciones... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}No se puede construir ningún pueblo -STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}No se puede renombrar pueblo... -STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}No se puede construir pueblo aquí... -STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}No se puede expandir pueblo... +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}No se puede construir ningún municipio +STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}No se puede renombrar el municipio... +STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}No se puede construir un municipio aquí... +STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}No se puede expandir municipio... STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... demasiado cercano al borde del mapa -STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... demasiado cercano a otro pueblo -STR_ERROR_TOO_MANY_TOWNS :{WHITE}... demasiados pueblos +STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... demasiado cercano a otro municipio +STR_ERROR_TOO_MANY_TOWNS :{WHITE}... demasiados municipios STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... no hay más espacio en el mapa -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}El pueblo no construirá carreteras. Puedes activar la función de construcción de carreteras en Opciones Avanzadas->Economía->Pueblos +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}El municipio no construirá carreteras. Puedes activar la función de construcción de carreteras en Configuración->Ambiente->Municipios STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Trabajos de carretera en progreso -STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}No se puede borrar este pueblo...{}Quedan estaciones o depósitos relacionados con la ciudad, o una propiedad del pueblo no puede ser retirada -STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... no existe un lugar apropiado para una estatua en el centro de este pueblo +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}No se puede borrar este municipio...{}Quedan estaciones o depósitos relacionados con él, o una propiedad suya no puede ser retirada +STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... no existe un lugar apropiado para una estatua en el centro de este municipio # Industry related errors STR_ERROR_TOO_MANY_INDUSTRIES :{WHITE}... demasiadas industrias @@ -4131,19 +4182,22 @@ STR_ERROR_CAN_T_GENERATE_INDUSTRIES :{WHITE}No se pu STR_ERROR_CAN_T_BUILD_HERE :{WHITE}No se puede construir {STRING} aquí... STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY :{WHITE}No se puede construir este tipo de industria aquí... STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... demasiado cerca de otra industria -STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... debe construirse un pueblo primero -STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... solo se permite uno por pueblo -STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... sólo puede ser construido en pueblos con población superior a 1200 +STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... debe construirse un municipio primero +STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... solo se permite uno por municipio +STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... sólo puede ser construido en municipios de al menos 1.200 habitantes STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... sólo se puede construir en áreas de selva STR_ERROR_CAN_ONLY_BE_BUILT_IN_DESERT :{WHITE}... sólo se puede construir en áreas desérticas -STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... solo puede ser construido en pueblos (reemplazando casas) -STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... solamente puede construirse cerca del centro de un pueblo +STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... solo puede ser construido en municipios (reemplazando casas) +STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... solamente puede construirse cerca del centro de un municipio STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... solo puede construirse en zonas bajas STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... sólo se puede colocar cerca de los bordes del mapa STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... sólo se puede plantar bosques sobre la nieve STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... solamente puede construirse por encima de la línea de nieve STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... solamente puede construirse por debajo de la línea de nieve +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}No había sitios apropiados disponibles para industrias '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Cambia los parámetros de generación del mapa para obtener un mapa mejor + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}No se puede construir estación de tren aquí... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}No se puede construir estación de autobuses... @@ -4163,7 +4217,7 @@ STR_ERROR_TOO_CLOSE_TO_ANOTHER_STATION :{WHITE}Demasiad STR_ERROR_TOO_CLOSE_TO_ANOTHER_DOCK :{WHITE}Demasiado cerca de otro muelle STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Demasiado cerca de otro aeropuerto STR_ERROR_CAN_T_RENAME_STATION :{WHITE}No se puede renombrar estación... -STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... esta carretera es propiedad de un pueblo +STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... esta carretera es propiedad de un municipio STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... carretera en la dirección incorrecta STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... las estaciones de autobús de paso no pueden tener esquinas STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... las estaciones de autobús de paso no pueden tener intersecciones @@ -4280,6 +4334,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Primero STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}No se puede comenzar y acabar en la misma posición STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Las cabeceras del puente no están al mismo nivel STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}El puente es demasiado bajo para el terreno +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}El puente es demasiado alto para este terreno. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Comienzo y final deben estar en línea STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... los dos extremos de un puente han de estar sobre tierra STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... puente demasiado largo @@ -4426,7 +4481,7 @@ STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_1 :Bloque de ofici STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Bloque de viviendas pequeño STR_TOWN_BUILDING_NAME_CHURCH_1 :Iglesia STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :Gran bloque de oficinas -STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Casas del pueblo +STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Casas del municipio STR_TOWN_BUILDING_NAME_HOTEL_1 :Hotel STR_TOWN_BUILDING_NAME_STATUE_1 :Estatua STR_TOWN_BUILDING_NAME_FOUNTAIN_1 :Fuente @@ -4844,6 +4899,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (oculto) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4879,8 +4935,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index c3ea0ee8e3..1fbf1641fe 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Läsk # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passagerare +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passagerare STR_QUANTITY_COAL :{WEIGHT_LONG} kol -STR_QUANTITY_MAIL :{COMMA} postsäck{P "" ar} +STR_QUANTITY_MAIL :{COMMA}{NBSP}postsäck{P "" ar} STR_QUANTITY_OIL :{VOLUME_LONG} olja -STR_QUANTITY_LIVESTOCK :{COMMA} boskap -STR_QUANTITY_GOODS :{COMMA} låd{P a or} gods +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}boskap +STR_QUANTITY_GOODS :{COMMA}{NBSP}låd{P a or} gods STR_QUANTITY_GRAIN :{WEIGHT_LONG} spannmål STR_QUANTITY_WOOD :{WEIGHT_LONG} timmer STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} järnmalm STR_QUANTITY_STEEL :{WEIGHT_LONG} stål -STR_QUANTITY_VALUABLES :{COMMA} värdesäck{P "" ar} +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}värdesäck{P "" ar} STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} kopparmalm STR_QUANTITY_MAIZE :{WEIGHT_LONG} majs STR_QUANTITY_FRUIT :{WEIGHT_LONG} frukt -STR_QUANTITY_DIAMONDS :{COMMA} diamantsäck{P "" ar} +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}diamantsäck{P "" ar} STR_QUANTITY_FOOD :{WEIGHT_LONG} mat STR_QUANTITY_PAPER :{WEIGHT_LONG} papper -STR_QUANTITY_GOLD :{COMMA} guldsäck{P "" ar} +STR_QUANTITY_GOLD :{COMMA}{NBSP}guldsäck{P "" ar} STR_QUANTITY_WATER :{VOLUME_LONG} vatten STR_QUANTITY_WHEAT :{WEIGHT_LONG} vete STR_QUANTITY_RUBBER :{VOLUME_LONG} gummi STR_QUANTITY_SUGAR :{WEIGHT_LONG} socker -STR_QUANTITY_TOYS :{COMMA} leksak{P "" er} -STR_QUANTITY_SWEETS :{COMMA} godispås{P e ar} +STR_QUANTITY_TOYS :{COMMA}{NBSP}leksak{P "" er} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}godispås{P e ar} STR_QUANTITY_COLA :{VOLUME_LONG} kola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} sockervadd STR_QUANTITY_BUBBLES :{COMMA} bubbl{P a or} @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}NEJ STR_ABBREV_ALL :{TINY_FONT}ALLA # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passagerare -STR_BAGS :{COMMA} väsk{P a or} -STR_TONS :{COMMA} ton -STR_LITERS :{COMMA} liter -STR_ITEMS :{COMMA} föremål -STR_CRATES :{COMMA} låd{P a or} +STR_PASSENGERS :{COMMA}{NBSP}passagerare +STR_BAGS :{COMMA}{NBSP}väsk{P a or} +STR_TONS :{COMMA}{NBSP}ton +STR_LITERS :{COMMA}{NBSP}liter +STR_ITEMS :{COMMA}{NBSP}föremål +STR_CRATES :{COMMA}{NBSP}låd{P a or} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Mörkblå @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Grå STR_COLOUR_WHITE :Vit # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hk -STR_UNITS_POWER_METRIC :{COMMA}hk -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hk +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hk +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} fot -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}fot +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Sökfilter: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Rullning STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Rullningslist - rullar listan höger/vänster STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Riv byggnader etc. på en markruta. Ctrl väljer yta diagonalt. Shift växlar mellan att riva/visa beräknad kostnad +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Visa dolda +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Visa dolda +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Visa dolda +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Visa dolda + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}När denna knapp aktiveras visas även dolda lok och vagnar +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}När denna knapp aktiveras visas även dolda vägfordon +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}När denna knapp aktiveras visas även dolda fartyg +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}När denna knapp aktiveras visas även dolda flygfarkoster + # Query window STR_BUTTON_DEFAULT :{BLACK}Standardinställning STR_BUTTON_CANCEL :{BLACK}Avbryt @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Avsluta ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spelinställningar -STR_SETTINGS_MENU_CONFIG_SETTINGS :Avancerade inställningar +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Inställningar STR_SETTINGS_MENU_SCRIPT_SETTINGS :Inställningar för AI / spelskript STR_SETTINGS_MENU_NEWGRF_SETTINGS :Inställningar för NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Inställningar för genomskinlighet @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgisk lari ( STR_GAME_OPTIONS_CURRENCY_IRR :Iransk rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vägfordon STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Välj sida av vägen som fordonen kör på STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Kör på vänster sida @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skärmup STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Välj skärmupplösning att använda STR_GAME_OPTIONS_RESOLUTION_OTHER :annan +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Gränssnittstorlek +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Välj vilken gränssnittsstorlek som används + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dubbel storlek +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Fyrdubbel storlek + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grafikpaket som standard STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Välj vilket grafikpaket som ska användas som standard STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} saknad{P "" e}/trasig{P "" a} fil{P "" er} @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Väldigt platt STR_TERRAIN_TYPE_FLAT :Platt STR_TERRAIN_TYPE_HILLY :Kullig STR_TERRAIN_TYPE_MOUNTAINOUS :Bergig +STR_TERRAIN_TYPE_ALPINIST :Alpin STR_CITY_APPROVAL_PERMISSIVE :Eftergiven STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Fientlig STR_WARNING_NO_SUITABLE_AI :{WHITE}Ingen passande datorspelare finns tillgänglig...{}Du kan ladda ner ett flertal datorspelare via 'Online Content'-systemet -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Avancerade inställningar +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Inställningar STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Sökfilter: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Utöka alla STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Stäng alla @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Företagsinstä STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategori: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Typ: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Begränsar listan nedan med fördefinierade filter -STR_CONFIG_SETTING_RESTRICT_BASIC :Grundläggande inställningar -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avancerade inställningar -STR_CONFIG_SETTING_RESTRICT_ALL :Expertinställningar / alla inställningar +STR_CONFIG_SETTING_RESTRICT_BASIC :Grundläggande (visa endast viktiga inställningar) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Avancerat (visa de flesta inställningarna) +STR_CONFIG_SETTING_RESTRICT_ALL :Expert (visa alla inställningar, inklusive de konstiga) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Inställningar med annat värde än standardvärdet STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Inställningar med annat värde än dina inställningar för nytt spel @@ -1147,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Slår av/på ka STR_CONFIG_SETTING_CITY_APPROVAL :Stadsfullmäktiges attityd mot ombyggnation av områden: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Välj hur mycket ett företags oväsen och miljöpåverkan ska påverka dess anseende och möjlighet till vidare byggnationer i området +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maximal karthöjd: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Välj maximala tillåtna höjd för berg på kartan +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Du kan inte ändra maximal karthöjd till detta värde. Åtminstone ett berg på kartan är högre STR_CONFIG_SETTING_AUTOSLOPE :Tillåt landskapsarkitektur under byggnader, spår, etc.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tillåt landskapsarkitektur under byggnader och spår utan att ta bort dem STR_CONFIG_SETTING_CATCHMENT :Tillåt mer realistiska uppsamlingsområden för stationer: {STRING} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Inflation: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Aktivera inflation i ekonomin. Kostnaderna stiger något fortare än inkomsterna. STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maximal brolängd: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maximal längd för broar +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maximal brohöjd: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maximal höjd för att bygga broar STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maximal tunnellängd: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maximal längd för tunnlar STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Metod för manuell konstruktion av primära industrier: {STRING} @@ -1260,8 +1280,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Visningstid fö STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Tid som felmeddelanden i ett rött fönster ska visas. Notera att vissa (kritiska) felmeddelanden inte stängs automatiskt efter denna tid, utan måste stängas manuellt STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekund{P 0 "" er} STR_CONFIG_SETTING_HOVER_DELAY :Visa tooltips: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Fördröjning innan tooltips visas när muspekaren hålls över ett gränssnittselement. Alternativt kan tooltips bindas till den högra musknappen -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Håll muspekaren i {COMMA} sekund{P 0 "" er} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Fördröjning innan tooltips visas när muspekaren hålls över ett gränssnittselement. Alternativt kan tooltips bindas till den högra musknappen när detta värde är satt till 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Håll muspekaren i {COMMA} millisekund{P 0 "" er} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Högerklick STR_CONFIG_SETTING_POPULATION_IN_LABEL :Visa invånarantal i stadsnamnet: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Visa antal invånare efter stadsnamnen på kartan @@ -1444,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Visa serviceint STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Välj om fordonsservice ska triggas av hur lång tid som har gått sedan senaste service eller av att tillförlitligheten faller med en viss procentsats av den maximala tillförlitligheten STR_CONFIG_SETTING_SERVINT_TRAINS :Normalt serviceintervall för tåg: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Välj vilket serviceintervall som normalt sett ska användas för nya tåg, om inget annat serviceintervall uttryckligen anges -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dag{P 0 "" ar}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dag{P 0 "" ar}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Inaktiverat STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Normalt serviceintervall för vägfordon: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Välj vilket serviceintervall som normalt sett ska användas för nya vägfordon, om inget annat serviceintervall uttryckligen anges @@ -1511,7 +1531,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Välj beteende STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Bygg automatiskt semaforer innan: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Välj vilket år elektriska signaler ska börja användas för spår. Innan detta årtal används icke-elektriska signaler (vilka har exakt samma funktion, men annorlunda utseende) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Använd signal-GUI: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Visa ett fönster med de signaltyper som går att bygga, istället för enbart fönsterlös signaltyps-rotation genom Ctrl+klick på byggda signaler +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Visa ett fönster för att välja signaltyp att bygga, istället för enbart fönsterlös signaltyps-rotation genom Ctrl+klick på byggda signaler STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Standardsignal-typ: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Signaltyp att använda som standard STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Normal @@ -1584,9 +1604,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Inga STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Initial stadsstorleks-multiplikator: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Storstäders genomsnittliga storlek i relation till vanliga städers vid spelets början -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Uppdatera distributionsgrafen var {STRING}:e dag{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Uppdatera distributionsgrafen var {STRING}:e{NBSP}dag{P 0:2 "" s} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Tid mellan efterföljande omräkningar av länkgrafen. Varje omräkning beräknar planer för en komponent i grafen. Det medför att ett värde X för den här inställningen inte innebär att hela grafen uppdateras var X:e dag, bara vissa komponenter. Ju lägre värde du ställer in desto mer processorkraft kommer att behövas för beräkningarna. Ju högre värde du ställer in desto längre tid kommer det att ta innan distributionen av last börjar använda nya rutter. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Avsätt {STRING} dag{P 0:2 "" ar} för omberäkning av distributionsgraf +STR_CONFIG_SETTING_LINKGRAPH_TIME :Avsätt {STRING}{NBSP}dag{P 0:2 "" ar} för omberäkning av distributionsgraf STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Den tid varje omberäkning av en länkgrafkomponent tillåts ta. När en omberäkning startas skapas en tråd som tillåts löpa detta antal dagar. Ju kortare du sätter denna, desto mer troligt är det att tråden inte är hinner bli färdig i tid. Då kommer spelet att stanna tills den är klar (vilket gör att det laggar). Ju längre du sätter denna, desto längre tid tar det för distributionen att uppdateras när rutter ändras. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuellt STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetriskt @@ -1639,7 +1659,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrisk (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Höjdenhet: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Närhelst höjder visas i användargränssnittet, visa dem i den valda enheten +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Närhelst en höjd visas i användargränssnittet, visa den i de valda enheterna STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Brittisk (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrisk (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1659,7 +1679,7 @@ STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE} Fysik STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Planering av resrutt STR_CONFIG_SETTING_LIMITATIONS :{ORANGE} Begränsningar STR_CONFIG_SETTING_ACCIDENTS :{ORANGE} Katastrofer / Olyckor -STR_CONFIG_SETTING_GENWORLD :{ORANGE}Världs generation +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Världsgenerering STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Miljö STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Mydigheter STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Städer @@ -1715,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Flera sp STR_INTRO_GAME_OPTIONS :{BLACK}Spelinställningar STR_INTRO_HIGHSCORE :{BLACK}Bästa spelresultat -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Avancerade inställningar +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Inställningar STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-inställningar STR_INTRO_ONLINE_CONTENT :{BLACK}Kontrollera online-innehåll STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / spelskript-inställningar @@ -1735,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Välj 'l STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Visa spelinställningar STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Visar en topplista över de bästa spelresultaten -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Visa avancerade inställningar +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Skärminställningar STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Visa inställningar för NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kolla efter nytt och nyuppdaterat innehåll för nedladdning STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Visa inställningar för datorspelare och spelskript @@ -1775,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Spelar STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magisk Bulldozer (ta bort industrier, oflyttbara objekt etc.): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnlar kan korsa varandra: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetplan kommer inte att störta (frekvent) på små flygplatser: {ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Ändra maximal karthöjd: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Ändra maximal höjd för berg på kartan STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Tempererat landskap STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Sub-arktiskt landskap STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-tropiskt landskap @@ -2665,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Mark som ägs a STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Ursprunglig äganderätt {COPYRIGHT} 1995 Chris Sawyer, Alla rättigheter hävdas STR_ABOUT_VERSION :{BLACK}OpenTTD-version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD-teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spara spel @@ -2700,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Antal städer: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Antal industrier: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maximal karthöjd: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Öka maximal bergshöjd med ett +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Minska maximal bergshöjd med ett STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snögränsens höjd: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Höj snögränsens höjd ett upp STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Sänk snögränsens höjd ett ner @@ -2729,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Namn på STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Storlek: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Ändra maximal karthöjd STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Ändra snögränsens höjd STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Ändra Startår @@ -2842,14 +2868,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF v # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Justera spriteobjekt {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Nästa spriteobjekt -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Fortsätt till nästa nomala spriteobjekt, ignorera eventuella pseudo/recolour/font spriteobjekt och börja om vid slutet +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Fortsätt till nästa nomala spriteobjekt, ignorera eventuella pseudo/recolour/font spriteobjekt och börja om efter sista spriteobjektet STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Gå till spriteobjekt STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gå till angivet spriteobjekt. Om objektet inte är ett normalt spriteobjekt, fortsätt till nästa normala spriteobjekt STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Tidigare spriteobjekt -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fortsätt till nästa normala spriteobjekt, ignorera eventuella pseudo/recolour/font spriteobjekt och börja om vid början +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fortsätt till föregående normala spriteobjekt, ignorera eventuella pseudo/recolour/font spriteobjekt och börja om från slutet efter första spriteobjektet STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation av det valda objektet. Justeringen ignoreras när objektet ritas. STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytta runt objektet, ändrar X och Y offsets -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Återställ relativ +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Återställ den nuvarande relativa offsetten +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offsett: {NUM}, Y offsett: {NUM} (Absolut) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offsett: {NUM}, Y offsett: {NUM} (Relativ) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Välj objekt STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Välj ett objekt på bildskärmen @@ -2961,8 +2990,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} levererat STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (återstår) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (levererat) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Orten växer var {ORANGE}{COMMA}{BLACK} dag -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Orten växer var {ORANGE}{COMMA}{BLACK} dag (bekostad tillväxt) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Orten växer var {ORANGE}{COMMA}{BLACK}{NBSP}dag +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Orten växer var {ORANGE}{COMMA}{BLACK}{NBSP}dag (bekostad tillväxt) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Orten växer {RED}inte{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Bullernivågräns i stad: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centrera huvudvyn på staden. Ctrl+klick öppnar en ny vy över stadens läge @@ -3022,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Information STR_GOAL_QUESTION_CAPTION_WARNING :Varning STR_GOAL_QUESTION_CAPTION_ERROR :Fel -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Avbryt STR_GOAL_QUESTION_BUTTON_OK :Okej STR_GOAL_QUESTION_BUTTON_NO :Nej @@ -3041,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Starta om STR_GOAL_QUESTION_BUTTON_POSTPONE :Skjut upp STR_GOAL_QUESTION_BUTTON_SURRENDER :Ge upp STR_GOAL_QUESTION_BUTTON_CLOSE :Stäng +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subventioner @@ -3365,10 +3395,10 @@ STR_PURCHASE_INFO_ALL_BUT :Allt utom {CARG STR_PURCHASE_INFO_MAX_TE :{BLACK}Maximal Dragkraft: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Räckvidd: {GOLD}{COMMA} rutor -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista av tågvagnar - klicka på tågvagn för information -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Vägfordonslista - klicka på fordon för information -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Skeppslista - klicka på skepp för information -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Flygplanslista - Klicka på flygplan för information +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista av tågvagnar. Klicka på tågvagn för information. Ctrl+klick visar eller döljer vagnstypen +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Vägfordonslista. Klicka på fordon för information. Ctrl+klick visar eller döljer fordonstypen +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Skeppslista. Klicka på skepp för information. Ctrl+klick visar eller döljer skeppstypen +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Flygplanslista. Klicka på flygplan för information. Ctrl+klick visar eller döljer flygplanstypen STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Köp fordon STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Köp Fordon @@ -3390,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Byt namn STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Byt namn på skeppstyp STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Byt namn på flygplanstyp +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Dölj +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Dölj +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Dölj +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Dölj + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Visa +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Visa +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Visa +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Visa + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Växla mellan att dölja och visa lok- och vagntyp +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Växla mellan att dölja och visa fordonstyp +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Växla mellan att dölja och visa fartygstyp +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Växla mellan att dölja och visa flygfarkoststyp + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Byt namn på tågets fordonstyp STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Byt namn på vägfordonstyp STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Byt namn på skeppstyp @@ -3494,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Vägfordon STR_REPLACE_VEHICLE_SHIP :Skepp STR_REPLACE_VEHICLE_AIRCRAFT :Flygplan +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Fordon i bruk +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolumn med fordon du äger +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Tillgängliga fordon +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Kolumn med fordon tillgängliga för att bytas ut + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Välj fordonstyp att byta ut STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Välj den nya fordonstyp du vill använda i stället för den till vänster valda typen @@ -3618,7 +3668,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapacite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK} Överför kredit: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Serviceintervall: {LTBLUE}{COMMA}dagar{BLACK} Senaste service: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Serviceintervall: {LTBLUE}{COMMA}{NBSP}dagar{BLACK} Senaste service: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Serviceintervall: {LTBLUE}{COMMA}%{BLACK} Senaste service: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Öka serviceintervall med 10. Ctrl+klick ökar serviceintervall med 5 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Minska serviceintervall med 10. Ctrl+klick minskar servinceintervall med 5 @@ -3854,8 +3904,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(stanna {STRING STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(resor för {STRING}, ej schemalagd) STR_TIMETABLE_STAY_FOR :och stanna i {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :och res i {STRING} -STR_TIMETABLE_DAYS :{COMMA} dag{P "" ar} -STR_TIMETABLE_TICKS :{COMMA} tick{P "" s} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}dag{P "" ar} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tick{P "" s} STR_TIMETABLE_TOTAL_TIME :{BLACK}Den här tidtabellen kommer ta {STRING} att slutföra STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Denna tidtabell kommer att ta åtminstonde {STRING} att slutföra (allt är inte inlagt i en tidtabell) @@ -4093,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Utgrävn STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Redan på havsnivå STR_ERROR_TOO_HIGH :{WHITE}För hög STR_ERROR_ALREADY_LEVELLED :{WHITE}... redan platt +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Efteråt skulle bron ovanför vara för hög. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Kan inte ändra företagsnamn... @@ -4119,7 +4170,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... för STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... för nära en annan stad STR_ERROR_TOO_MANY_TOWNS :{WHITE}... för många städer STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... det finns ingen plats kvar på kartan -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Staden kommer inte bygga vägar. Du kan tillåta att staden bygger vägar via Avancerade Inställningar -> Ekonomi -> Städer +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Staden kommer inte bygga vägar. Du kan tillåta att staden bygger vägar via Inställningar->Miljö->Städer STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Vägarbete pågår STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kan inte ta bort den här staden...{}En station eller depå refererar till staden eller så kan inte en stadsägd ruta tas bort. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... det finns ingen lämplig plats för en staty i stadens centrum @@ -4143,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... skog STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kan endast byggas ovanför snögränsen STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kan endast byggas nedanför snögränsen +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Det fanns inga lämpliga platser för '{STRING}'-industrier +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Ändra parametrarna för kartgenereringen för att skapa en bättre karta + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kan inte bygga järnvägsstation här... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kan inte bygga busshållplats... @@ -4279,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Måste r STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Kan inte börja och sluta på samma plats STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Broändar ej på samma höjd STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Bro är för låg för terrängen +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Bro är för hög för denna terräng. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Start- och slutpunkt måste ligga i linje STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... brons båda ändar måste vara på land STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... för lång bro @@ -4843,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (dold) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4878,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt index 14917f6a5e..4d9e07efb0 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -95,9 +95,9 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :குளிர # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} பயணி{P "" கள்} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP} பயணி{P "" கள்} STR_QUANTITY_COAL :{WEIGHT_LONG} நிலக்கரி -STR_QUANTITY_MAIL :{COMMA} அஞ்சல் பை{P "" கள்} +STR_QUANTITY_MAIL :{COMMA}{NBSP} அஞ்சல் பை{P "" கள்} STR_QUANTITY_OIL :{VOLUME_LONG} எண்ணெய் STR_QUANTITY_LIVESTOCK :{COMMA} கால்நடை{P "" கள்} STR_QUANTITY_GOODS :{COMMA} சரக்குப் பெட்டி{P "" கள்} @@ -169,8 +169,8 @@ STR_PASSENGERS :{COMMA} பய STR_BAGS :{COMMA} பை{P "" கள்} STR_TONS :{COMMA} டன்{P "" கள்} STR_LITERS :{COMMA} லிட்டர்{P "" கள்} -STR_ITEMS :{COMMA} பொருட்கள்{P "" s} -STR_CRATES :{COMMA} பெட்டி{P "" கள்} +STR_ITEMS :{COMMA}{NBSP}பொருள்{P "" "பொருட்கள்"} +STR_CRATES :{COMMA}{NBSP}பெட்டி{P "" கள்} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :கருநீலம் @@ -191,37 +191,37 @@ STR_COLOUR_GREY :சாம்ப STR_COLOUR_WHITE :வெள்ளை # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}டன் -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}டன் +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}டன் +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}கி.கி. -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} டன்{P "" கள்} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} டன்{P "" கள்} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} கிலோ +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}டன்{P "" கள்} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}டன்{P "" கள்} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}கி.கி. -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}கேலன் -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}கேலன் +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}லி +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}மீ³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} கேலன்{P "" கள்} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} லிட்டர்{P "" கள்} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}கேலன்{P "" கள்} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}லிட்டர்{P "" கள்} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}மீ³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} அடி -STR_UNITS_HEIGHT_METRIC :{COMMA} மீ -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}அடி +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}மீ +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}மீ # Common window strings STR_LIST_FILTER_TITLE :{BLACK}வடிகட்டி தொடர்: @@ -247,6 +247,13 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll b STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Scroll bar - scrolls list left/right STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}சதுர நிலப்பகுதியில் கட்டிடம் போன்றவற்றை இடிக்க. Ctrl தேர்வுசெய்திட. Shift உத்தேச செலவை/கட்டிடத்தை காட்டிட +# 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}மறைந்திருப்பதை காட்டு + + # Query window STR_BUTTON_DEFAULT :{BLACK}Default STR_BUTTON_CANCEL :{BLACK}தவிர் @@ -360,7 +367,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :வெளிய ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :விளையாட்டு விருப்ப பேரம் -STR_SETTINGS_MENU_CONFIG_SETTINGS :அமைப்புகள் +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :அமைப்புகள் STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / ஆட்ட அமைப்புகள் STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF அமைப்புகள் STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :ஒளி அமைப்புகள் @@ -386,6 +393,7 @@ STR_FILE_MENU_EXIT :வெளிய # map menu STR_MAP_MENU_MAP_OF_WORLD :உலகப் படம் STR_MAP_MENU_EXTRA_VIEW_PORT :கூடுதல் பார்வைபடம் +STR_MAP_MENU_LINGRAPH_LEGEND :சரக்கு செல்லும் வழிப் படம் STR_MAP_MENU_SIGN_LIST :குறிகளின் பட்டியல் ############ range for town menu starts @@ -885,10 +893,6 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :தென் STR_GAME_OPTIONS_CURRENCY_CUSTOM :புதிதாக... ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}சாலை வாகனங்கள் STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}வாகனங்கள் சாலையின் எந்தப்பக்கத்தில் செல்ல வேண்டும் STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :இடப்பக்கம் ஒட்டு @@ -940,6 +944,11 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}தி STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}திரை அளவினைத் தேர்ந்தெடுக்கவும் STR_GAME_OPTIONS_RESOLUTION_OTHER :மற்றவை + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :சராசரி +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :இரண்டு மடங்கு +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :நான்கு மடங்கு + STR_GAME_OPTIONS_BASE_GRF :{BLACK}அடிப்படை அசைவூட்டம் STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}பயன்படுத்தப்போகும் அடிப்படை அசைவூட்டத்தினை தேர்ந்தெடுக்கவும் STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} இல்லாத/பிழையான கோப்பு{P "" கள்} @@ -1031,14 +1040,15 @@ STR_TERRAIN_TYPE_VERY_FLAT :மிகவு STR_TERRAIN_TYPE_FLAT :சமமான STR_TERRAIN_TYPE_HILLY :உயர்ந்து STR_TERRAIN_TYPE_MOUNTAINOUS :மலைகளாக +STR_TERRAIN_TYPE_ALPINIST :அல்பைனிசிட்டு STR_CITY_APPROVAL_PERMISSIVE :அனுமதிதரும் STR_CITY_APPROVAL_TOLERANT :பொறுத்துக்கொள்ளும் STR_CITY_APPROVAL_HOSTILE :அனுமதிக்காது -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}சிறப்பு அமைப்புகள் +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}அமைப்புகள் STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}வடிகட்டி: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}அனைத்தையும் விரிவாக்கு STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}அனைத்தையும் மூடு @@ -1053,7 +1063,7 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :நிறுவ STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}பகுப்பு: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}வகை: -STR_CONFIG_SETTING_RESTRICT_BASIC :அடிப்படை அமைப்புகள் +STR_CONFIG_SETTING_RESTRICT_BASIC :அடிப்படை அமைப்புகளை மட்டுமே காட்டு STR_CONFIG_SETTING_RESTRICT_ADVANCED :சிறப்பு அமைப்புகள் STR_CONFIG_SETTING_RESTRICT_ALL :அதிக / அனைத்து அமைப்புகள் STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :முதலில் இருந்த மதிப்பினை மாற்றம் செய்யப்பட்ட அமைப்புகள் @@ -1102,6 +1112,8 @@ STR_CONFIG_SETTING_TRAIN_REVERSING :நிலைய STR_CONFIG_SETTING_DISASTERS :பேரழிவுகள்: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL :நகர மறு அமைப்பின் மீது நகராட்சியின் நிலை: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :அதிகபட்ச வரைபட உயரம்: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :இந்த வரைபடத்திலுள்ள மலைகளின் அதிகபட்ச உயரத்தினை அமை STR_CONFIG_SETTING_EXTRADYNAMITE :நகரத்தின் சாலைகள், பாலங்கள் மற்றும் சுரங்கங்களை நீக்க அனுமதிக்கவும்: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :நகராட்சியின் கட்டடங்கள் நீக்குவதை எளிதாக்கவும் STR_CONFIG_SETTING_TRAIN_LENGTH :இரயில்களின் அதிகபட்ச நீளம்: {STRING} @@ -1120,6 +1132,8 @@ STR_CONFIG_SETTING_INFLATION :விலைவ STR_CONFIG_SETTING_INFLATION_HELPTEXT :பண வீக்கத்தினை செயல்படுத்து, இதனால் செலவுகள் வளர்ச்சி வரவுகளின் வளர்ச்சியைவிட அதிகமாகும் STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :அதிகபட்ச பால நீளம்: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :கட்டப்படும் பாலங்களின் அதிகபட்ச நீளம் +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :பாலத்தின் அதிகபட்ச உயரம்: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :பாலம் கட்டுவதற்கான அதிகபட்ச உயரம் STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :அதிகபட்ச சுரங்க நீளம்: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :கட்டப்படும் சுரங்கங்களின் அதிகபட்ச நீளம் STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :மனித அடிப்படை தொழிற்சாலை கட்டுமான வழி: {STRING} @@ -1180,7 +1194,7 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :காலாவ STR_CONFIG_SETTING_ERRMSG_DURATION :பிழை செய்திக்கான கால அளவு: {STRING} STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} விநாடி{P 0 "" கள்} STR_CONFIG_SETTING_HOVER_DELAY :tooltips இனை காட்டு: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :காட்டவும் {COMMA} விநாடி{P 0 "" கள்} +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :{COMMA} விநாடி{P 0 "" கள்} காட்டவும் STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :வலது சொடுக்கு STR_CONFIG_SETTING_POPULATION_IN_LABEL :நகரத்தின் மக்கள்த் தொகையினை அதன் பெயருடன் காட்டு: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :நகரத்தின் மக்கள்தொகையினை வரைபடத்தில் காட்டவும் @@ -1299,7 +1313,7 @@ STR_CONFIG_SETTING_AI_PROFILE_HARD :கடுமை STR_CONFIG_SETTING_SERVINT_ISPERCENT :பழுதுபார்த்தல்கள் இடையே உள்ள காலத்தினை சதவிகிதத்தில் காட்டவும்: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS :இரயிகளின் பழுதுபார்த்தல் இடைவேளி: {STRING} -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} நாள்{P "நாள்" நாட்கள்}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}நாள்{P "நாள்" நாட்கள்}/% STR_CONFIG_SETTING_SERVINT_DISABLED :செயலிழக்க செய்யப்பட்டது STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :சாலை வாகனங்களின் பழுதுபார்த்தல் இடைவேளி: {STRING} STR_CONFIG_SETTING_SERVINT_AIRCRAFT :விமாங்களின் பழுதுபார்த்தல் இடைவேளி: {STRING} @@ -1482,7 +1496,7 @@ STR_INTRO_SCENARIO_EDITOR :{BLACK}சி STR_INTRO_GAME_OPTIONS :{BLACK}ஆட்டத்தின் அமைப்புகள் STR_INTRO_HIGHSCORE :{BLACK}புள்ளிகள் பட்டியல் -STR_INTRO_ADVANCED_SETTINGS :{BLACK}அமைப்புகள் +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}அமைப்புகள் STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF அமைப்புகள் STR_INTRO_ONLINE_CONTENT :{BLACK}கோப்புகளை இணையதளத்தில் தேடு STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / ஆட்டம் அமைப்புகள் @@ -1498,7 +1512,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}'பொ STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}ஆட்டம் அமைப்புகளைக் காட்டு STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}புள்ளிகள் பட்டியலினைக் காட்டவும் -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}சிறப்பு அமைப்புகளைக் காட்டு +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}திரை அமைப்புகள் STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF அமைப்புகளைக் காட்டு STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}AI/வரிவடிவங்கள் அமைப்புகளைக் காட்டு STR_INTRO_TOOLTIP_QUIT :{BLACK} 'OpenTTD'ஐ விட்டு வெளியேறு @@ -1534,6 +1548,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}இந STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}அதிசய நிலச்சமனி (தொழிற்சாலைகள் மற்றும் பொருட்களை நீக்குவதற்கு): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}சுரங்கங்கள் ஒன்றுக்கொன்று குறுக்கிடலாம்: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}சிறிய விமான நிலையங்களில் ஜெட்விமானங்கள் நொறுங்காது: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}வரைபடத்திலுள்ள மலைகளின் அதிகபட்ச உயரத்தினை மாற்று: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}வரைபடத்திலுள்ள மலைகளின் அதிகபட்ச உயரத்தினை மாற்று STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :மிதமான நிலவெளி STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :வட துருவ நிலவெளி STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :மிதவெப்பமண்டல நிலவெளி @@ -2349,7 +2365,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :நிறுவ STR_ABOUT_OPENTTD :{WHITE}OpenTTD-ஐ பற்றி STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}அசல் உரிமைகள் {COPYRIGHT} 1995 கிறிஸ் சாயர், எல்லா உரிமைகளும் பதிவுசெய்யப்பட்டது STR_ABOUT_VERSION :{BLACK}OpenTTD பதிப்பு {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD குழுமம் +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD குழுமம் # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}ஆட்டத்தை பதிவு செய் @@ -2380,6 +2396,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}நகரங்களின் எண்ணிக்கை: STR_MAPGEN_DATE :{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}பனி கோடின் உயரத்தை ஒரு அடி இறக்கு @@ -2408,6 +2427,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}உய STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}அளவு: 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}தொடங்கும் வருடத்தினை மாற்று @@ -2509,7 +2529,6 @@ STR_SPRITE_ALIGNER_CAPTION :{WHITE}ஸ் STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}அடுத்த ஸ்பிரைட்டு STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}ஸ்பிரைட்டுயிற்கு செல்லவும் STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}முந்தைய ஸ்பிரைட்டு -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}ஸ்பிரைட்டினைத் தேர்ந்தெடுக்கவும் STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}ஸ்பிரைட்டிற்கு செல்லவும் @@ -2600,8 +2619,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} சேர்க்கப்பட்டவை STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (இன்னும் தேவை) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (சேர்க்கப்பட்டது) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}நகரம் ஒவ்வொரு {ORANGE}{COMMA}{BLACK} நாட்களுக்கும் வளர்கிறது -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}நகரம் ஒவ்வொரு {ORANGE}{COMMA}{BLACK} நாட்களுக்கும் வளர்கிறது (நிதியதவியால்) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}நகரம் ஒவ்வொரு {ORANGE}{COMMA}{BLACK}{NBSP}நாட்களுக்கும் வளர்கிறது +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}நகரம் ஒவ்வொரு {ORANGE}{COMMA}{BLACK}{NBSP}நாட்களுக்கும் வளர்கிறது (நிதியதவியால்) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}நகரம் {RED}வளருவதில்லை{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}நகரத்தில் ஒலி இரைச்சல் அளவு: {ORANGE}{COMMA}{BLACK} அதிகம்: {ORANGE}{COMMA} STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}நகராட்சி @@ -2655,7 +2674,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :தகவல் STR_GOAL_QUESTION_CAPTION_WARNING :எச்சரிக்கை STR_GOAL_QUESTION_CAPTION_ERROR :பிழை -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :இரத்து செய் STR_GOAL_QUESTION_BUTTON_OK :சரி STR_GOAL_QUESTION_BUTTON_NO :இல்லை @@ -2674,6 +2693,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :மீண்ட STR_GOAL_QUESTION_BUTTON_POSTPONE :தள்ளிவை STR_GOAL_QUESTION_BUTTON_SURRENDER :சரணடை STR_GOAL_QUESTION_BUTTON_CLOSE :மூடு +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}மானியங்கள் @@ -3001,6 +3021,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}சா STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}கப்பல் வகையின் பெயரினை மாற்றவும் STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}விமான வகையின் பெயரினை மாற்றவும் + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}இரயில் வாகன வகையின் பெயரினை மாற்றவும் STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}சாலை வாகன வகையின் பெயரினை மாற்றவும் STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}கப்பல் வகையின் பெயரினை மாற்றவும் @@ -3095,6 +3118,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :சாலை STR_REPLACE_VEHICLE_SHIP :கப்பல் STR_REPLACE_VEHICLE_AIRCRAFT :விமானம் + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}மாற்றியமைக்க பொறி வகையினை தேர்ந்தெடுக்க STR_REPLACE_VEHICLES_START :{BLACK}வாகனங்களை மாற்றுவதை ஆரம்பி @@ -3208,7 +3232,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}கொ STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}இடமாற்றம் வரவுகள்: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}பராமரிப்புகளுக்கிடையேயான காலம்: {LTBLUE}{COMMA}நாட்கள்{BLACK} கடைசி பராமரிப்பு: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}பராமரிப்புகளுக்கிடையேயான காலம்: {LTBLUE}{COMMA}{NBSP}நாட்கள்{BLACK} கடைசி பராமரிப்பு: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}பராமரிப்புகளுக்கிடையேயான காலம்: {LTBLUE}{COMMA}%{BLACK} கடைசி பராமரிப்பு: {LTBLUE}{DATE_LONG} STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}பழுதுபார்த்தல் இடைவேளி வகையினை மாற்றவும் @@ -3428,8 +3452,8 @@ STR_TIMETABLE_TRAVEL_FOR :{STRING} கா STR_TIMETABLE_TRAVEL_FOR_SPEED :{STRING} காலத்திற்கு பயணி, அதிகபட்ச வேகம் {VELOCITY} STR_TIMETABLE_STAY_FOR :மற்றும் {STRING} இற்கு நிற்கவும் STR_TIMETABLE_AND_TRAVEL_FOR :மற்றும் {STRING} இற்கு பயணிக்கவும் -STR_TIMETABLE_DAYS :{COMMA} நாள்{P "" கள்} -STR_TIMETABLE_TICKS :{COMMA} நொடி{P "" கள்} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}நாள்{P "" "நாட்கள்"} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}நொடி{P "" கள்} STR_TIMETABLE_TOTAL_TIME :{BLACK}இந்த கால அட்டவணை முடிய {STRING} காலமாகும் STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}இந்த கால அட்டவணை முடிய குரைந்தபட்சம் {STRING} காலமாவது ஆகும்.(ஏனெனில் அனைத்தும் கால அட்டவணைபடவில்லை) @@ -3708,6 +3732,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... ப STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... பனி-கோடின் மேலே மட்டுமே கட்ட முடியும் STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... பனி-கோடின் கீழே மட்டுமே கட்ட முடியும் + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}இங்கே இரயில் நிலையம் கட்ட முடியாது... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}பேருந்து நிலையத்தினை கட்ட இயலாது... @@ -3844,6 +3869,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}மு STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}ஆரம்பித்த இடத்திலிருந்தே முடியக் கூடாது STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}பாலத்தின் முனைகள் ஒரே உயரத்தில் இல்லை STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}பாலம் மிகவும் உயரம் மிகவும் குறைவாக உள்ளது +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}இந்த நிலப்பரப்பிற்கு இப்பாலம் அதிகமான உயரத்திலுள்ளது. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}ஆரம்பம் மற்றும் முடிவு ஒரே கோடில் இருக்க வேண்டும் STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... பாலத்தின் முடிவுகள் இரண்டும் நிலத்திலேயே இருக்க வேண்டும் STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... பாலம் மிக நீளமாக உள்ளது @@ -4407,6 +4433,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (மறைக்கப்பட்டுள்ளது) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4442,8 +4469,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/thai.txt b/src/lang/thai.txt index e5bf248202..9b6b2780bd 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -248,6 +248,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}แถ STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}แถบเลื่อน - ใช้เลื่อนรายการ ซ้าย/ขวา STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}ทำลายสิ่งก่อสร้าง และสิ่งต่างๆ ในพื้นที่ช่องหนึ่ง. กด Ctrl เพื่อเลือกพื้นที่แบบทะแยง. กด Shift เพื่อสลับระหว่างสิ่งปลูกสร้างและแสดงมูลค่า +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}ค่าปกติ STR_BUTTON_CANCEL :{BLACK}ยกเลิก @@ -361,7 +364,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :ออก ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :ตัวเลือกเกม -STR_SETTINGS_MENU_CONFIG_SETTINGS :กำหนดค่าขั้นสูง STR_SETTINGS_MENU_SCRIPT_SETTINGS :กำหนดค่าสคริปต์ AI/Game STR_SETTINGS_MENU_NEWGRF_SETTINGS :กำหนดค่า NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :แถบเมนูตั้งค่าวัตถุโปร่งใส @@ -915,10 +917,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgian Lari ( STR_GAME_OPTIONS_CURRENCY_IRR :Iranian Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}ยานยนต์ STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}เลือกฝั่งถนนในการขับยานพาหนะ STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :ขับชิดซ้าย @@ -972,6 +970,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}คว STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}เลือกความละเอียดของหน้าจอที่จะใช้ STR_GAME_OPTIONS_RESOLUTION_OTHER :อื่นๆ + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}ตั้งค่า Graphic พื้นฐาน STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}เลือกและตั้งค่าฐานกราฟิกที่จะใช้ STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} ไฟล์สูญหายหรือไม่สมบูรณ์ @@ -1071,8 +1071,7 @@ STR_CITY_APPROVAL_HOSTILE :ไม่เป STR_WARNING_NO_SUITABLE_AI :{WHITE}ไม่มี AI ที่เหมาะสมปรากฎ...{}คุณสามารถดาวน์โหลด AI จากระบบ 'Online Content' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}การตั้งค่าขั้นสูง +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}เติม string: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}ขยายทั้งหมด STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}ยุบลงทั้งหมด @@ -1677,7 +1676,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}เล STR_INTRO_GAME_OPTIONS :{BLACK}ตัวเลือกเกม STR_INTRO_HIGHSCORE :{BLACK}ตารางคะแนนสูงสุด -STR_INTRO_ADVANCED_SETTINGS :{BLACK}การตั้งค่าขั้นสูง STR_INTRO_NEWGRF_SETTINGS :{BLACK}การตั้งค่า NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}ตรวจสอบเนื้อหาออนไลน์ STR_INTRO_SCRIPT_SETTINGS :{BLACK}ตั้งค่า AI/Game Script @@ -1697,7 +1695,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}เล STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}แสดงตัวเลือกเกม STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}แสดงตารางคะแนนสูงสุด -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}แสดงการกำหนดค่าขั้นสูง STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}แสดงการกำหนดค่า NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}ตรวจสอบเนื้อหาใหม่และการปรับปรุงสำหรับดาวโหลด STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}แสดงการตั้งค่า AI/Game script @@ -2626,7 +2623,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :บริษั STR_ABOUT_OPENTTD :{WHITE}เกี่ยวกับ OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}ลิขสิทธิ์เดิม {COPYRIGHT} ค.ศ.1995 ของ Chris Sawyer, สงวนลิขสิทธิ์ STR_ABOUT_VERSION :{BLACK}OpenTTD รุ่นที่ {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}ลิขสิทธิ์ OpenTTD {COPYRIGHT}2002-2014 ของ The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}ลิขสิทธิ์ OpenTTD {COPYRIGHT}2002-2015 ของ The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}บันทึกเกม @@ -2799,7 +2796,6 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}เคลื่อนไปยัง sprite ปกติอันก่อนหน้า โดยข้าม pseudo/recolour/font และวกกลับเมื่อถึงจุดเริ่มต้น STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}แสดง sprite ที่เลือกใหม่อีกครั้ง STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}ย้าย sprite wxiv[q, แก้ไขแกน X และ Y สำหรับความคลาดเคลื่อน -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X คลาดเคลื่อน: {NUM}, Y คลาดเคลื่อน: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}หยิบ sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}หยิบ sprite จากที่ใดก็ตามในหน้าจอ @@ -2971,7 +2967,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :ข้อมู STR_GOAL_QUESTION_CAPTION_WARNING :คำเตือน STR_GOAL_QUESTION_CAPTION_ERROR :ข้อผิดพลาด -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :ยกเลิก STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :ไม่ @@ -2990,6 +2986,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :เริ่ม STR_GOAL_QUESTION_BUTTON_POSTPONE :เลื่อนออกไป STR_GOAL_QUESTION_BUTTON_SURRENDER :ยอมจำนน STR_GOAL_QUESTION_BUTTON_CLOSE :ปิด +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}เงินอุดหนุน @@ -3337,6 +3334,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}เป STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}เปลี่ยนชื่อชนิดของเรือ STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}เปลี่ยนชื่อชนิดของเครื่องบิน + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}เปลี่ยนชื่อชนิดของรถไฟ STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}เปลี่ยนชื่อชนิดของรถ STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}เปลี่ยนชื่อชนิดของเรือ @@ -3441,6 +3441,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :ยานพา STR_REPLACE_VEHICLE_SHIP :ยานพาหนะทางน้ำ STR_REPLACE_VEHICLE_AIRCRAFT :อากาศยาน + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}เลือกประเภทของรถจักรที่จะแทนที่ STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}เลือกประเภทของพาหนะที่จะแทนที่ทางซ้ายมือ @@ -4086,6 +4087,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... ส STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... สามารถสร้างได้ที่ระดับเหนือกว่าระดับหิมะเท่านั้น STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... สามารถสร้างได้ที่ระดับต่ำกว่าระดับหิมะเท่านั้น + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}บริเวณนี้ไม่สามารถสร้างสถานีรถไฟได้ STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}ไม่สามารถสร้าง ป้ายหยุดรถ/สถานีขนส่ง @@ -4820,8 +4822,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE} {CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index d3b552a3e9..56bba19acb 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :汽水 # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} 名乘客 +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}名乘客 STR_QUANTITY_COAL :{WEIGHT_LONG} 煤碳 -STR_QUANTITY_MAIL :{COMMA} 包郵件 +STR_QUANTITY_MAIL :{COMMA}{NBSP}包郵件 STR_QUANTITY_OIL :{VOLUME_LONG} 石油 -STR_QUANTITY_LIVESTOCK :{COMMA} 頭牲畜 -STR_QUANTITY_GOODS :{COMMA} 箱商品 +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}頭牲畜 +STR_QUANTITY_GOODS :{COMMA}{NBSP}箱商品 STR_QUANTITY_GRAIN :{WEIGHT_LONG} 穀物 STR_QUANTITY_WOOD :{WEIGHT_LONG} 木材 STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} 鐵礦 STR_QUANTITY_STEEL :{WEIGHT_LONG} 鋼鐵 -STR_QUANTITY_VALUABLES :{COMMA} 包貴重物品 +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}包貴重物品 STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} 銅礦 STR_QUANTITY_MAIZE :{WEIGHT_LONG} 玉米 STR_QUANTITY_FRUIT :{WEIGHT_LONG} 水果 -STR_QUANTITY_DIAMONDS :{COMMA} 包鑽石 +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}包鑽石 STR_QUANTITY_FOOD :{WEIGHT_LONG} 食物 STR_QUANTITY_PAPER :{WEIGHT_LONG} 紙張 -STR_QUANTITY_GOLD :{COMMA} 包黃金 +STR_QUANTITY_GOLD :{COMMA}{NBSP}包黃金 STR_QUANTITY_WATER :{VOLUME_LONG} 淡水 STR_QUANTITY_WHEAT :{WEIGHT_LONG} 小麥 STR_QUANTITY_RUBBER :{VOLUME_LONG} 橡膠 STR_QUANTITY_SUGAR :{WEIGHT_LONG} 砂糖 -STR_QUANTITY_TOYS :{COMMA} 件玩具 -STR_QUANTITY_SWEETS :{COMMA} 包甜點 +STR_QUANTITY_TOYS :{COMMA}{NBSP}件玩具 +STR_QUANTITY_SWEETS :{COMMA}{NBSP}包糖果 STR_QUANTITY_COLA :{VOLUME_LONG} 可樂 STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} 棉花糖 STR_QUANTITY_BUBBLES :{COMMA} 個泡泡 @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}無 STR_ABBREV_ALL :{TINY_FONT}全 # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} 乘客 -STR_BAGS :{COMMA} 包 -STR_TONS :{COMMA} 噸 -STR_LITERS :{COMMA} 公升 -STR_ITEMS :{COMMA} 件 -STR_CRATES :{COMMA} 箱 +STR_PASSENGERS :{COMMA}{NBSP}名乘客 +STR_BAGS :{COMMA}{NBSP}包 +STR_TONS :{COMMA}{NBSP}噸 +STR_LITERS :{COMMA}{NBSP}公升 +STR_ITEMS :{COMMA}{NBSP}頭 +STR_CRATES :{COMMA}{NBSP}箱 # Colours, do not shuffle STR_COLOUR_DARK_BLUE :暗藍 @@ -191,42 +191,42 @@ STR_COLOUR_GREY :灰 STR_COLOUR_WHITE :白 # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} 英里/小時 -STR_UNITS_VELOCITY_METRIC :{COMMA} 公里/小時 -STR_UNITS_VELOCITY_SI :{COMMA} 米/秒 +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}英里/小時 +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}公里/小時 +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}米/秒 -STR_UNITS_POWER_IMPERIAL :{COMMA}匹 -STR_UNITS_POWER_METRIC :{COMMA}匹 -STR_UNITS_POWER_SI :{COMMA}千瓦 +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}匹 +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}匹 +STR_UNITS_POWER_SI :{COMMA}{NBSP}千瓦 -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA} 短噸 -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}噸 -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}短噸 +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}噸 +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}公斤 -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} 短噸 -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}公噸 -STR_UNITS_WEIGHT_LONG_SI :{COMMA} 千克 +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}短噸 +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}公噸 +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}公斤 -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA} 加侖 -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}升 -STR_UNITS_VOLUME_SHORT_SI :{COMMA}米³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}加侖 +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}升 +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}米³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} 加侖 -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} 公升 -STR_UNITS_VOLUME_LONG_SI :{COMMA} 立方米 +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}加侖 +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}公升 +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}立方米 -STR_UNITS_FORCE_IMPERIAL :{COMMA} 磅力 -STR_UNITS_FORCE_METRIC :{COMMA} 公斤力 -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}磅力 +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}公斤力 +STR_UNITS_FORCE_SI :{COMMA}{NBSP}千牛頓 -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} 英呎 -STR_UNITS_HEIGHT_METRIC :{COMMA} 米 -STR_UNITS_HEIGHT_SI :{COMMA} 公尺 +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}英呎 +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}米 +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}公尺 # Common window strings STR_LIST_FILTER_TITLE :{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}選擇排序 (逆序/順序) @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}捲軸 - STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}捲軸 - 左右捲動清單 STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}拆卸建築物等。在格子裡的土地。按Ctrl以對角選擇區域。Shift切換建築或顯示預估成本。 +# 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 STR_BUTTON_DEFAULT :{BLACK}預設值 STR_BUTTON_CANCEL :{BLACK}取消 @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :離開 ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :遊戲選項 -STR_SETTINGS_MENU_CONFIG_SETTINGS :進階設定 +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :設定 STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / 遊戲腳本設定 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF 設定 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :透明度選項 @@ -465,7 +476,7 @@ STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :最近鏡截圖 STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :在預設的縮放範圍截圖 STR_ABOUT_MENU_GIANT_SCREENSHOT :擷取全場景畫面 STR_ABOUT_MENU_ABOUT_OPENTTD :關於「OpenTTD」 -STR_ABOUT_MENU_SPRITE_ALIGNER :Sprite 定位工具 +STR_ABOUT_MENU_SPRITE_ALIGNER :子畫面定位工具 STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :切換邊界框 STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :切換骯髒區塊的配色 ############ range ends here @@ -916,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :喬治亞拉里 STR_GAME_OPTIONS_CURRENCY_IRR :伊朗里亞爾 (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}車輛 STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}選擇車輛在路上的行駛位置 STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :靠左行駛 @@ -973,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}螢幕 STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}選擇螢幕解析度 STR_GAME_OPTIONS_RESOLUTION_OTHER :其它 +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}介面大小 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}選擇使用的介面元素大小 + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :正常大小 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :兩倍大小 +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :四倍大小 + STR_GAME_OPTIONS_BASE_GRF :{BLACK}基本圖形集 STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}選擇要使用的基本圖形集 STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} 檔案遺失/損毀 @@ -1066,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :非常平坦 STR_TERRAIN_TYPE_FLAT :平坦 STR_TERRAIN_TYPE_HILLY :丘陵 STR_TERRAIN_TYPE_MOUNTAINOUS :高山 +STR_TERRAIN_TYPE_ALPINIST :多山 STR_CITY_APPROVAL_PERMISSIVE :寬容 STR_CITY_APPROVAL_TOLERANT :能忍受 @@ -1073,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :抱敵意 STR_WARNING_NO_SUITABLE_AI :{WHITE}無適合的 AI 可使用...{}您可以從「線上內容」系統中下載各種 AI。 -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}進階設定 +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}顯示設定 STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}篩選字串: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}展開所有選項 STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}折疊所有選項 @@ -1090,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :公司設定 ( STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}篩選設定: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}適用範圍: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}限制以下列表僅顯示曾被更改的設定 -STR_CONFIG_SETTING_RESTRICT_BASIC :基本設定 -STR_CONFIG_SETTING_RESTRICT_ADVANCED :進階設定 -STR_CONFIG_SETTING_RESTRICT_ALL :專業設定 / 所有設定 +STR_CONFIG_SETTING_RESTRICT_BASIC :基本 (僅顯示重要設定) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :進階 (顯示大部份設定) +STR_CONFIG_SETTING_RESTRICT_ALL :專業 (顯示所有設定) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :與預設值有所不同的設定 STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :與您開始新遊戲時所選擇的值有所不同的設定 @@ -1147,6 +1162,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :切換那些有 STR_CONFIG_SETTING_CITY_APPROVAL :地方政府對地區結構重組的態度: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :選擇公司所製造的噪音和環境傷害對其在市鎮的評比及未來的建設行動會造成多大影響 +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :最大地圖高度: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :設定該地圖上山丘最多能有多高 +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}您不能把地圖的最高高度設成此值。至少有一座山比這個高度更高。 STR_CONFIG_SETTING_AUTOSLOPE :允許在建築物或軌道底下改變地形斜度 (autoslope):{STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :可以在建築物或軌道底下改變地形而不需移除它們 STR_CONFIG_SETTING_CATCHMENT :容許更真實的服務範圍設定:{STRING} @@ -1175,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :通貨膨脹: STR_CONFIG_SETTING_INFLATION_HELPTEXT :啟用通貨膨脹,而且成本的增長會稍為比收入的增長快 STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :橋樑長度上限: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :建造橋樑長度的上限 +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :橋樑高度上限: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :橋樑與地面之間的最大高度 STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :隧道長度上限: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :設定建造隧道長度的上限 STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :修改基礎工業的建造方式:{STRING} @@ -1260,7 +1280,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :錯誤訊息持 STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :設定所有以紅色對話窗顯示的錯誤訊息之持續時間。請注意有些較嚴重的錯誤訊息必須手動關閉 STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} 秒 STR_CONFIG_SETTING_HOVER_DELAY :顯示工具提示: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :設定是否在游標處於工具按鈕之上時顯示工具使用提示。如停用此選項,玩家仍可在工具按鈕上右撳鼠键以顯示工具使用提示 +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :設定游標需在工具按鈕之上停留多久才會顯示工具使用提示。如此選項的值為 0,您需在工具按鈕上右撳鼠键以顯示工具使用提示 STR_CONFIG_SETTING_HOVER_DELAY_VALUE :游標在按鈕之上停留 {COMMA} 秒 STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :右撳 STR_CONFIG_SETTING_POPULATION_IN_LABEL :於標籤顯示市鎮人口:{STRING} @@ -1268,21 +1288,32 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :在地圖的市 STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :圖像上的線條之粗細值: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :設定圖像上的線條之粗細值。較幼細的線條能較準確地顯示數值,而較粗大的線較容易看到和分辨 +STR_CONFIG_SETTING_LANDSCAPE :場景:{STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :此設定決定基本的遊戲場景、可供運輸的貨物種類,以及城鎮發展的條件。然而,NewGRF 及遊戲腳本可提供更加細緻的設定 STR_CONFIG_SETTING_LAND_GENERATOR :地形產生器:{STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :「原版」地圖產生器根據所使用的基本圖形集來產生固定的地形。TerraGenesis 則是一個建基於 Perlin 噪音原理的地形產生程序,支援較為細緻的地形設定 STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :原版 STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis -STR_CONFIG_SETTING_INDUSTRY_DENSITY :工業密度: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE :地形種類:{STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(只適用於 TerraGenesis) 此設定控制產生的地圖是平坦還是峰巒起伏 +STR_CONFIG_SETTING_INDUSTRY_DENSITY :工業設施密度: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :此設定控制工業設定出現的密度。遊戲進行時,系統仍會根據此設定來決定工業設施的數量 STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :煉油廠與地圖邊緣之最遠距離: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :僅於地圖邊緣建造煉油廠,在島嶼型地圖中它們將處於海邊 STR_CONFIG_SETTING_SNOWLINE_HEIGHT :雪線高度:{STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :此設定控制在「寒帶」地圖中雪地開始出現的高度。除了外觀的不同外,雪地也會影響工業設施的分佈以及市鎮成長的條件 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :地形起伏度 (只適用於 TerraGenesis):{STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(只適用於 TerraGenesis) 此設定控制地圖上的山丘密度。「平滑」的地形會包含較少而且相互距離較遠的山丘;較粗糙的地形會包含密集的山丘,但可能會使地圖顯得重複 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :非常平滑 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :平滑 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :高低不平 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :非常粗糙 +STR_CONFIG_SETTING_VARIETY :地形起伏分佈:{STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(只適用於 TerraGenesis) 此設定控制地圖是否同時包含多山及平坦的地帶。由於此設定只會使地圖的部份區域變得平坦,請把其他地形設定設為「高山」 STR_CONFIG_SETTING_RIVER_AMOUNT :河流數量: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :選擇欲產生的河流數量 STR_CONFIG_SETTING_TREE_PLACER :樹木分佈演算法:{STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :選擇地圖上樹木的分布方式:如選擇「原版」設定,系統會把樹木均勻地散佈在地圖上;如選擇「改進版」,系統會在地圖上產生若干樹林 STR_CONFIG_SETTING_TREE_PLACER_NONE :無 STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :原版 STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :改進版 @@ -1433,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :維護間隔以 STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :選擇啟動運輸工具自動前往維修設施進行維護的條件:要麼以上次進行維修的時距決定,要麼以可靠度下降的百分比(相對於其最大可靠度而言)決定 STR_CONFIG_SETTING_SERVINT_TRAINS :預設的列車維護作業時距: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :設定預設的列車維護作業時距。所有沒有指定維護作業時距的列車都會使用這個預設值 -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} 日/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}日/% STR_CONFIG_SETTING_SERVINT_DISABLED :停用 STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :預設的公路車輛維護作業時距: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :設定預設的公路車輛維護作業時距。所有沒有指定維護作業時距的公路車輛都會使用這個預設值 @@ -1500,7 +1531,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :選擇當進行 STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :自動在指定年份前建造懸臂號誌:{STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :設定使用燈號號誌的年份。在遊戲進行到那一年之前,系統會預設豎立懸臂號誌 STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :啟用號誌介面:{STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :設定是否顯示「號誌工具列」。如否,玩家須按下 Ctrl 鍵並同時單撳已建置的號誌以更換號誌類型 +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :此設定讓您在興建號誌時,看到一個包括所有號誌種類的窗口,從而毋需按住 Ctrl 鍵再反覆點選已建置的號誌以更換號誌類型 STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :預設的號誌種類:{STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :預設建造的號誌種類 STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :閉塞號誌 @@ -1575,7 +1606,7 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :設定遊戲開 STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :每{STRING}日更新貨物分配圖 STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :指定每次計算貨物分配圖之間的時間。由於每次重新計算只會處理一個貨物分配圖元件,因此本設定不代表「每若干日重新計算整個貨物分配圖」。{}如果此設定賦值越小,則系統需要使用更多處理器時間計算貨物分配圖。相反,如果此設定賦值越大,則貨物被派往新路線所需的時間越長。 -STR_CONFIG_SETTING_LINKGRAPH_TIME :每次更新貨物分配圖持續 {STRING} 天 +STR_CONFIG_SETTING_LINKGRAPH_TIME :用 {STRING}{NBSP}天更新貨物分配圖 STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :當更新貨物分配圖時,系統會衍生一條執行緒。本設定的值即為執行緒的持續時間。{}這設定賦值越小,執行緒越有可能在應當停止的時候仍未完成運算,遊戲會暫停運行至執行緒完成工作。相反,這設定賦值越大,則貨物分配功能需要較長時間反映路線網絡變動的影響。 STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :手動 STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :不對稱 @@ -1585,7 +1616,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :設使有交通 STR_CONFIG_SETTING_DISTRIBUTION_MAIL :郵件分配方式:{STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :設使有交通路線連接甲、乙兩站。「對稱」指甲站往乙站的郵件數量與乙站往甲站的郵件數量大致相同。「不對稱」指任何一站往另一站的郵件數量皆由系統隨意決定。「手動」指系統不會自動分配郵件的目的地。 STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :裝甲貨物分配方式:{STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :依原有設定,「裝甲貨物」包括溫帶場景的「貴重物品」、寒帶場景的「金塊」及亞熱帶場景的「鑽石」。一些 NewGRF 可能有不同設定。{} 設使有交通路線連接甲、乙兩站。「對稱」指甲站往乙站的郵件數量與乙站往甲站的裝甲貨物數量大致相同。「不對稱」指任何一站往另一站的裝甲貨物數量皆由系統隨意決定。「手動」指系統不會自動分配裝甲貨物的目的地。{} 建議的設定:在溫帶場景應使用「對稱」,因為銀行會互相運送貴重物品;而在寒帶場景及亞熱帶場景應使用「不對稱」,因為銀行不會把金塊或鑽石送回礦場。 +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :「裝甲貨物」包括溫帶場景的「貴重物品」、寒帶場景的「金塊」及亞熱帶場景的「鑽石」。使用 NewGRF 可能會改變以上設定。{} 設使有交通路線連接甲、乙兩站。「對稱」指甲站往乙站的郵件數量與乙站往甲站的裝甲貨物數量大致相同。「不對稱」指任何一站往另一站的裝甲貨物數量皆由系統隨意決定。「手動」指系統不會自動分配裝甲貨物的目的地。{} 建議在溫帶及亞熱帶場景應使用「對稱」,因為銀行會互相發送貴重物品或鑽石;而在寒帶場景應使用「不對稱」,因為銀行不會把金塊送回礦場。 STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :其他貨物分配方式:{STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :如設定此值為「不對稱」,則任何一站往另一站的貨物數量皆由系統隨意決定。如設定此值為「手動」,則系統不會自動分配貨物的目的地。 STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :分配精確度:{STRING} @@ -1634,11 +1665,23 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :米制(米) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :國際單位(米) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}本地化 +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}圖形 STR_CONFIG_SETTING_SOUND :{ORANGE}音效 STR_CONFIG_SETTING_INTERFACE :{ORANGE}介面 +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}基本顯示 +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}顯示設定 STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}建造 +STR_CONFIG_SETTING_ADVISORS :{ORANGE}訊息提示 +STR_CONFIG_SETTING_COMPANY :{ORANGE}預設的基建及運具選項 +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}財務 STR_CONFIG_SETTING_VEHICLES :{ORANGE}運輸工具 +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}物理 STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}路線 +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}遊戲限制 +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}災難/事故 +STR_CONFIG_SETTING_GENWORLD :{ORANGE}地圖的產生 +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}環境 +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}地方政府 STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}市鎮 STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}工業 STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}貨物分配 @@ -1692,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}多人 STR_INTRO_GAME_OPTIONS :{BLACK}遊戲選項 STR_INTRO_HIGHSCORE :{BLACK}積分排行榜 -STR_INTRO_ADVANCED_SETTINGS :{BLACK}進階設定 +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}設定 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF 設定 STR_INTRO_ONLINE_CONTENT :{BLACK}檢查線上內容 STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / 遊戲腳本設定 @@ -1712,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}選擇 STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}顯示遊戲選項 STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}顯示積分排行榜 -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}顯示進階設定 +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}顯示設定 STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}顯示 NewGRF 設定 STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}檢查有無最新或可更新的內容可下載 STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}顯示AI和遊戲腳本設定 @@ -1752,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}切換 STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}神奇推土機 (可摧毀工業、無法移除的物件):{ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}允許隧道互相交叉:{ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}噴射機不會 (經常) 在小機場墜毀:{ORANGE} {STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}修改地圖最高高度: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}修改地圖上山丘的最高高度 STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :溫帶 STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :寒帶 STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :亞熱帶 @@ -2270,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}以自 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}興建鐵路機廠 (用來購置及維修列車)。按Shift可切換建築/顯示預估成本。 STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}將軌道轉成號誌站。 按住 Ctrl 可興建相鄰車站。按Shift可切換建築/顯示預估成本。 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}興建火車站。 按住 Ctrl 可興建相鄰車站。按Shift可切換建築/顯示預估成本。 -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}興建鐵路號誌。 按住 Ctrl 點選可切換懸臂/燈號號誌{} 於直線鐵路上拖曳可興建多個號誌。 按住 Ctrl 拖曳則只興建號誌至下個岔道{} 於選單按鈕。按住 Ctrl 點選可切換顯示號誌選擇視窗。按Shift可切換建築/顯示預估成本。 +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}興建鐵路號誌。{} 按住 Ctrl 鍵再點選鐵路,系統會切換懸臂/燈號號誌,或者更改被點選號誌的種類{} 在直線鐵路上拖曳,系統會依照設定的號誌間距,沿路興建多個號誌。按住 Ctrl 鍵再拖曳,系統會興建號誌至下個岔道{} 如果按住 Shift 鍵再點選鐵路或在鐵路上拖曳,系統會顯示興建號誌所需成本,但不會建造號誌{} 如果按住 Ctrl 再點選此鍵,系統會切換號誌選擇視窗的顯示狀態。 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}興建鐵路橋樑。按Shift可切換建築/顯示預估成本。 STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}挖掘鐵路隧道。按Shift可切換建築/顯示預估成本。 STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}切換建築/移除鐵軌、號誌、號誌站及車站。 按住 Ctrl 點選可移除號誌站及車站中的鐵軌 @@ -2552,7 +2597,7 @@ STR_LAI_CLEAR_DESCRIPTION_ROCKS :石頭 STR_LAI_CLEAR_DESCRIPTION_ROUGH_LAND :粗地 STR_LAI_CLEAR_DESCRIPTION_BARE_LAND :裸地 STR_LAI_CLEAR_DESCRIPTION_GRASS :草地 -STR_LAI_CLEAR_DESCRIPTION_FIELDS :農場 +STR_LAI_CLEAR_DESCRIPTION_FIELDS :田地 STR_LAI_CLEAR_DESCRIPTION_SNOW_COVERED_LAND :覆雪地 STR_LAI_CLEAR_DESCRIPTION_DESERT :沙漠 @@ -2642,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :公司所有土 STR_ABOUT_OPENTTD :{WHITE}關於 OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}原著作權為 {COPYRIGHT} 1995 Chris Sawyer,保留所有權利 STR_ABOUT_VERSION :{BLACK}OpenTTD 版本 {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD 開發小組 +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD 開發小組 # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}儲存遊戲 @@ -2677,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}市鎮數量: STR_MAPGEN_DATE :{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}將雪線高度下移一層 @@ -2706,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}高度 STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}大小: 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}修改開始年份 @@ -2788,7 +2837,9 @@ STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}與此版 # NewGRF save preset window STR_SAVE_PRESET_CAPTION :{WHITE}儲存設定值 +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}現有的預設值名稱。點選一個預設值名稱,它會被複製到下方的輸入欄 STR_SAVE_PRESET_TITLE :{BLACK}輸入預設值名稱 +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}預設值會儲存成現時選定的名稱 STR_SAVE_PRESET_CANCEL :{BLACK}取消 STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}請勿修改預設值 STR_SAVE_PRESET_SAVE :{BLACK}存檔 @@ -2816,19 +2867,22 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF v # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}定位 Sprite {COMMA} ({STRING}) -STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}下一個 Sprite -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}繼續處理下個正常的 sprite,略過任何偽 (pseudo)/重新著色/文字 sprite 及結尾的換行標記 -STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}前往 Sprite +STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}下一個子畫面 +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}繼續處理下個正常的子畫面,略過任何虛位/重新著色/文字字型相關的子畫面,並在到達最後的子畫面後,返回第一個子畫面繼續進行處理。 +STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}前往子畫面 STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}前往選定的 sprite。若該 sprite 不是正常的 sprite,則繼續前進到下個 sprite -STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}上一個 Sprite -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}繼續處理上個正常的 sprite,略過任何偽 (pseudo)/重新著色/文字 sprite 及開頭的換行標記 +STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}上一個子畫面 +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}繼續處理上一個正常的子畫面,略過任何虛位/重新著色/文字字型相關的子畫面,並在到達第一個子畫面後,返回最後的子畫面繼續進行處理。 STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}顯示目前選取的 sprite。當 sprite 正在描繪時會忽略其定位 STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}移動 sprite 到指定的 X 及 Y 座標位移 -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X 座標位移:{NUM}, Y 座標位移:{NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}重設相對值 +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}重設目前的相對位移值 +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X 位移:{NUM},Y 位移:{NUM}(絕對值) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X 位移:{NUM},Y 位移:{NUM}(相對值) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}選取 Sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}請從畫面中任意選取一個 sprite -STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}前往 Sprite +STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}前往子畫面 # NewGRF (self) generated warnings/errors STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING} @@ -2936,8 +2990,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} 已運送 STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (仍然需要) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN}(已運送) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}該市鎮每隔 {ORANGE}{COMMA}{BLACK} 天擴張一次 -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}該市鎮每隔 {ORANGE}{COMMA}{BLACK} 天擴張一次 (有資金協助) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}該市鎮每隔 {ORANGE}{COMMA}{BLACK}{NBSP}天擴張一次 +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}該市鎮每隔 {ORANGE}{COMMA}{BLACK}{NBSP}天擴張一次 (正接受資助) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}市鎮{RED}不在{BLACK}成長 STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}市鎮噪音限制:{ORANGE}{COMMA}{BLACK} 最大:{ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}將市鎮置於畫面中央。按住 Ctrl 點選可於市鎮位置開啟新視窗視野 @@ -2997,7 +3051,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :資訊 STR_GOAL_QUESTION_CAPTION_WARNING :警告 STR_GOAL_QUESTION_CAPTION_ERROR :錯誤 -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :取消 STR_GOAL_QUESTION_BUTTON_OK :確定 STR_GOAL_QUESTION_BUTTON_NO :否 @@ -3016,6 +3070,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :重新啟動 STR_GOAL_QUESTION_BUTTON_POSTPONE :延遲 STR_GOAL_QUESTION_BUTTON_SURRENDER :投降 STR_GOAL_QUESTION_BUTTON_CLOSE :關閉 +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}補助資訊 @@ -3300,6 +3355,8 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}移除 STR_GROUP_RENAME_TOOLTIP :{BLACK}重新命名群組 STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}點選可保護此群組排除在全域自動替換設定之外 +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}刪除群組 +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}您是否決定刪除此群組及其所有子群組? STR_GROUP_ADD_SHARED_VEHICLE :加入共享指令的運具 STR_GROUP_REMOVE_ALL_VEHICLES :移去所有運具 @@ -3338,10 +3395,10 @@ STR_PURCHASE_INFO_ALL_BUT :所有貨物( STR_PURCHASE_INFO_MAX_TE :{BLACK}最大牽引力:{GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}範圍: {GOLD}{COMMA} 方格 -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列車選單 - 點選列車檢視資訊 -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}車輛清單 - 點選車輛可看到詳細資料 -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}船舶清單 - 點選船舶顯示詳細資料 -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}飛機清單 - 點選飛機檢視詳細資料 +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列車選單。點選機車或車卡檢視詳細資訊,或者按住 Ctrl 鍵再點選機車或車卡以切換是否顯示機車或車卡的種類 +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}車輛選單。點選車輛檢視詳細資訊,或者按住 Ctrl 鍵再點選車輛以切換是否顯示車輛的種類 +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}船舶選單。點選船舶檢視詳細資訊,或者按住 Ctrl 鍵再點選船舶以切換是否顯示船舶的種類 +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}飛機選單。點選飛機檢視詳細資訊,或者按住 Ctrl 鍵再點選飛機以切換是否顯示飛機的種類 STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}購買運具 STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}購買車輛 @@ -3363,6 +3420,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}重新 STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切換是否顯示列車類型 +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切換是否顯示車輛類型 +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切換是否顯示船舶類型 +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}切換是否顯示飛機類型 + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}重新命名列車種類 STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}重新命名車輛種類 STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}重新命名船舶種類 @@ -3416,7 +3488,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}複製 STR_DEPOT_CLONE_SHIP :{BLACK}複製船舶 STR_DEPOT_CLONE_AIRCRAFT :{BLACK}複製飛機 -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}這會購買一列相同的列車,包含所有車廂。按下按鈕之後再點選機廠内外的其他列車,按住 CTRL 點選還可共享指令,按住 Shift 點選則只會顯示預估的購買費用 +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}點選此按鈕,然後再點選列車,系統會建造一列跟它一樣的列車。{}如果點選此按鈕之後,按住 Ctrl 鍵點選列車,則新列車會與舊列車共享指令。{}如果點選此按鈕之後,按住 Shift 鍵點選列車,系統會顯示建造新列車的費用,而不建造列車。 STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}點選此按鈕,然後點選任何一部於車廠内或外的車輛,會購買一部屬性與指令清單皆相同的車輛。如按住 Ctrl 掣點選車輛,新車輛會與原有車輛共享指令;如按住 Shift 掣點選車輛,系統會顯示預估的購買費用但不作任何購買 STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}這會購買一艘相同的船舶。按下按鈕之後再點選船塢内或外的船舶,按住 CTRL 點選還可共享指令,按住 Shift 點選則只會顯示預估的購買費用 STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}這會購買一架相同的飛機。按下此鈕之後再點選機棚内或外的飛機,按住 CTRL 點選還可共享指令,按住 Shift 點選則只會顯示預估的購買費用 @@ -3467,6 +3539,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :車輛 STR_REPLACE_VEHICLE_SHIP :船舶 STR_REPLACE_VEHICLE_AIRCRAFT :飛機 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}使用中的運輸工具 +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}此行顯示您正在擁有的運輸工具 +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}可用的運輸工具 +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}此行顯示可供替換的運輸工具 + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}選擇要替換的車頭種類 STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}選擇您想替換左方選定車頭的新車頭種類 @@ -3591,7 +3668,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}容量 STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}轉運潛在收入:{LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}維護間隔:{LTBLUE}{COMMA} 天{BLACK} 上次維護:{LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}每隔 {LTBLUE}{COMMA}{NBSP}天進行維護{BLACK} 上次維護日期:{LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}維護間隔:{LTBLUE}{COMMA}%{BLACK} 上次維護:{LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}以 10 為單位延長維護間隔。 按住 Ctrl 點選可以 5 為單位 STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}以 10 為單位縮短維護間隔。 按住 Ctrl 點選可以 5 為單位 @@ -3821,10 +3898,14 @@ STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :運行中 (未 STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :以不超過 {2:VELOCITY} 的速度運行 (未指定時間) STR_TIMETABLE_TRAVEL_FOR :運行需時 {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :以不超過 {1:VELOCITY} 的速度運行 {0:STRING} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :運行 {STRING} (未指定時間) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :運行 {STRING} (速度不超過 {VELOCITY},未指定時間) +STR_TIMETABLE_STAY_FOR_ESTIMATED :等待 {STRING} (未指定時間) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(運行 {STRING} ,未指定時間) STR_TIMETABLE_STAY_FOR :並等待 {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :並運行 {STRING} -STR_TIMETABLE_DAYS :{COMMA} 日 -STR_TIMETABLE_TICKS :{COMMA} tick +STR_TIMETABLE_DAYS :{COMMA}{NBSP}日 +STR_TIMETABLE_TICKS :{COMMA}{NBSP}個時間標記 STR_TIMETABLE_TOTAL_TIME :{BLACK}此時刻表跑完全程需時 {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}此時刻表跑完全程至少需時 {STRING} (此表尚未完成) @@ -4062,6 +4143,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}挖掘 STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}已到海平面 STR_ERROR_TOO_HIGH :{WHITE}... 太高 STR_ERROR_ALREADY_LEVELLED :{WHITE}... 已經平了 +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}這樣做的話,在它上面的橋樑會太高 # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}無法修改公司名稱... @@ -4088,7 +4170,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... 太 STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... 太接近另一個市鎮 STR_ERROR_TOO_MANY_TOWNS :{WHITE}... 已有太多市鎮 STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... 地圖沒有足夠空間 -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}此市鎮不會自動興建道路。你可以到 [進階設定] -> [經濟] -> [市鎮] 中啟用 [市鎮可以興建道路] 選項。 +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}市鎮不會自動興建道路。你可以在 [設定] -> [環境] -> [市鎮] 啟用市鎮自行興建道路的功能。 STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}道路施工中 STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}無法刪除此市鎮...{}市鎮範圍內還有車站或機廠或無法移除的區塊 STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... 市中心沒有適合的空間建造雕像 @@ -4112,6 +4194,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... 森 STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... 只能在雪線以上建造 STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... 只能在雪線以下建造 +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}無適當地點興建「{STRING}」工業 +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}請更改參數以產生較佳的地圖 + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}無法在此興建火車站... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}無法興建公車站... @@ -4248,6 +4333,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}必須 STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}開始與結束的位置必須不同 STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}橋樑兩端不在同個海拔 STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}橋樑太接近地面 +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}這座橋對這個地形而言太高了 STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}開始與結束位置必須在同一直線上 STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... 橋樑的兩端應在陸地上 STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... 橋樑過長 @@ -4274,6 +4360,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... 您 STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}無法建立群組... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}無法移除群組... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}無法修改群組名稱... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}無法指定母群組 STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}無法從此群組移去所有運輸工具... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}無法加入該運輸工具到此群組... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}無法加入共享指令的運輸工具到此群組... @@ -4811,6 +4898,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (隱藏) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4846,8 +4934,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt index f31cbb2f52..319961d6e6 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -96,30 +96,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Gazlı İçecek # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} yolcu +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}yolcu STR_QUANTITY_COAL :{WEIGHT_LONG} kömür -STR_QUANTITY_MAIL :{COMMA} çanta posta +STR_QUANTITY_MAIL :{COMMA}{NBSP}çanta posta STR_QUANTITY_OIL :{VOLUME_LONG} petrol -STR_QUANTITY_LIVESTOCK :{COMMA} tane hayvan -STR_QUANTITY_GOODS :{COMMA} kasa eşya +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}tane hayvan +STR_QUANTITY_GOODS :{COMMA}{NBSP}kasa eşya STR_QUANTITY_GRAIN :{WEIGHT_LONG} tahıl STR_QUANTITY_WOOD :{WEIGHT_LONG} odun STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} demir STR_QUANTITY_STEEL :{WEIGHT_LONG} çelik -STR_QUANTITY_VALUABLES :{COMMA} çanta değerli eşya +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}çanta değerli eşya STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} bakır STR_QUANTITY_MAIZE :{WEIGHT_LONG} mısır STR_QUANTITY_FRUIT :{WEIGHT_LONG} meyve -STR_QUANTITY_DIAMONDS :{COMMA} çanta elmas +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}çanta elmas STR_QUANTITY_FOOD :{WEIGHT_LONG} gıda STR_QUANTITY_PAPER :{WEIGHT_LONG} kağıt -STR_QUANTITY_GOLD :{COMMA} çanta altın +STR_QUANTITY_GOLD :{COMMA}{NBSP}çanta altın STR_QUANTITY_WATER :{VOLUME_LONG} su STR_QUANTITY_WHEAT :{WEIGHT_LONG} buğday STR_QUANTITY_RUBBER :{VOLUME_LONG} kauçuk STR_QUANTITY_SUGAR :{WEIGHT_LONG} şeker -STR_QUANTITY_TOYS :{COMMA} oyuncak -STR_QUANTITY_SWEETS :{COMMA} çanta tatlı +STR_QUANTITY_TOYS :{COMMA}{NBSP}oyuncak +STR_QUANTITY_SWEETS :{COMMA}{NBSP}çanta tatlı STR_QUANTITY_COLA :{VOLUME_LONG} kola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} pamuk şeker STR_QUANTITY_BUBBLES :{COMMA} baloncuk @@ -166,12 +166,12 @@ STR_ABBREV_NONE :{TINY_FONT}YOK STR_ABBREV_ALL :{TINY_FONT}HEPSİ # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} yolcu -STR_BAGS :{COMMA} çanta -STR_TONS :{COMMA} ton -STR_LITERS :{COMMA} litre -STR_ITEMS :{COMMA} adet -STR_CRATES :{COMMA} kasa +STR_PASSENGERS :{COMMA}{NBSP}yolcu +STR_BAGS :{COMMA}{NBSP}çanta +STR_TONS :{COMMA}{NBSP}ton +STR_LITERS :{COMMA}{NBSP}litre +STR_ITEMS :{COMMA}{NBSP}adet +STR_CRATES :{COMMA}{NBSP}kasa # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Koyu Mavi @@ -192,37 +192,37 @@ STR_COLOUR_GREY :Gri STR_COLOUR_WHITE :Beyaz # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mil/s -STR_UNITS_VELOCITY_METRIC :{COMMA} km/s -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mil/s +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/s +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}bg -STR_UNITS_POWER_METRIC :{COMMA}bg -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}bg +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}bg +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litre -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Süzgeç metni: @@ -249,6 +249,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Kaydırm STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Kaydırma çubuğu - listeyi sağa/sola kaydır STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Bir arazi üzerinde bulunan binaları ve benzeri yapıları yık. Ctrl bir alanı köşeden köşeye seçer. Shift ile tıklama maliyet tahminini gösterir +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Varsayılan STR_BUTTON_CANCEL :{BLACK}İptal @@ -362,7 +365,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :Oyundan Çık ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Seçenekler -STR_SETTINGS_MENU_CONFIG_SETTINGS :Gelişmiş ayarlar STR_SETTINGS_MENU_SCRIPT_SETTINGS :YZ/Oyun betik ayarları STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF ayarları STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Şeffaflık seçenekleri @@ -916,10 +918,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gürcistan Lari STR_GAME_OPTIONS_CURRENCY_IRR :İran Riyali (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Karayolu taşıtları STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Trafik akış yönünü seçin STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Soldan trafik @@ -973,6 +971,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ekran Ç STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Kullanılacak ekran çözünürlüğünü seçin STR_GAME_OPTIONS_RESOLUTION_OTHER :diğer + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Temel grafik kümesi STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Kullanılacak temel grafik kümesini seçin STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} kayıp/bozuk dosya @@ -1072,8 +1072,7 @@ STR_CITY_APPROVAL_HOSTILE :Düşman STR_WARNING_NO_SUITABLE_AI :{WHITE}Uygun YZ'ler yok...{}'Çevrimiçi içerik' sistemiyle pek çok YZ indirebilirsiniz -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Gelişmiş Ayarlar +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Süzgeç metni: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Tümünü genişlet STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Tümünü kısalt @@ -1089,9 +1088,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Şirket ayarlar STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategori: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Tür: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Aşağıdaki listeyi önceden tanımlı filtreler kullanarak sınırlandırır -STR_CONFIG_SETTING_RESTRICT_BASIC :Temel ayarlar -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Gelişmiş ayarlar -STR_CONFIG_SETTING_RESTRICT_ALL :Uzman ayarları / tüm ayarlar +STR_CONFIG_SETTING_RESTRICT_BASIC :Temel (sadece önemli ayarları göster) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Gelişmiş (çoğu ayarı göster) +STR_CONFIG_SETTING_RESTRICT_ALL :Uzman (garip olanlar dahil tüm ayarları göster) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Geçerli değerden farklı bir değere sahip ayarlama STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Yeni oyun ayarlarınızdan farklı bir değere sahip ayarlar @@ -1146,7 +1145,7 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Araçları ya d STR_CONFIG_SETTING_CITY_APPROVAL :Arazi şekillendirmeye karşı belediye meclisinin tavrı: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Şirketlerin sebep olduğu gürültü ve çevreye zararın kasaba beğenilerini ve ilerideki inşaatlarını nasıl etkileyeceğini seçin -STR_CONFIG_SETTING_AUTOSLOPE :Binaların, yolların, rayların v.b. altındaki araziyi değiştirmeye izin ver (otomatik eğim): {STRING} +STR_CONFIG_SETTING_AUTOSLOPE :Binaların, yolların vb. altındaki araziyi değiştirmeye izin ver: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Binaları ve yolları kaldırmaksızın altlarında yeryüzü şekillendirmesi yapılmasına izin ver STR_CONFIG_SETTING_CATCHMENT :İstasyon kapsama alanlarının daha gerçeğe yakın ölçülerde olmasına izin ver: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Farklı istasyon ve hava limanları için farklı büyüklükte alanlar gerekir @@ -1260,7 +1259,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Kırmızı penc STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} saniye STR_CONFIG_SETTING_HOVER_DELAY :Araçlara dair bilgileri göster: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Fare bir arayüz elemanının üzerine getirildiğinde o araca dair bilgilerin gösterilmesi için geçmesi gereken süre. Alternatif olarak bu işlem için sağ fare tuşu da kullanılabilir. -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Fareyi {COMMA} saniye boyunca üzerinde bekletin +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Fareyi {COMMA} milisaniye üzerinde tutun STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Sağ tıklama STR_CONFIG_SETTING_POPULATION_IN_LABEL :Şehir nüfusunu isminin yanına yaz: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Haritadaki şehir etiketlerinde nüfus bilgisini görüntüle @@ -1273,7 +1272,7 @@ STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Petrol rafinerilerinin kenarlardan azami uzaklığı: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Petrol rafinerileri sadece haritanın sınırlarında inşa edilir; ada haritalarında sahillere kurulurlar. STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Kar kalınlığı: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Arazinin engebesi (sadece TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Arazinin engebesi: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Dümdüz STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Düzgün STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Engebeli @@ -1306,7 +1305,7 @@ STR_CONFIG_SETTING_SMOOTH_SCROLLING :Düzgün viewpo STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Küçük haritaya tıklandığında veya harita üzerindeki belli bir nesneye gidilmesi için komut verildiğinde ana görüntünün nasıl kaydırılacağını kontrol eder. Etkinleştirildiğinde harita kayarak ilerler, kapatıldığında ise doğrudan hedeflenen noktaya atlama yapar. STR_CONFIG_SETTING_MEASURE_TOOLTIP :İnşa araçları kullanılırken ölçüm ipucu göster: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :İnşaat işlemleri sırasında fareyi sürükleyince kare-uzaklıkları ve yükseklik farklarını göster. -STR_CONFIG_SETTING_LIVERIES :Şirketin renklerini göster: {STRING} +STR_CONFIG_SETTING_LIVERIES :Araç türüne özel logolar göster: {STRING} STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Araç türüne özel görünümlerin kullanımını kontrol et (şirkete özel olanın tam tersine) STR_CONFIG_SETTING_LIVERIES_NONE :Hiçbiri STR_CONFIG_SETTING_LIVERIES_OWN :Şirketi al @@ -1351,7 +1350,7 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Hiçbir hareket STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :İnşa içermeyen tüm hareketler STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Yer şekillendirme hareketleri dışında tüm hareketler STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Tüm hareketler -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Gelişmiş araç listesini kullan: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Araç listesinde gruplar kullan: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Araçları gruplamak için gelişmiş araç listelerinin kullanımını etkinleştirir STR_CONFIG_SETTING_LOADING_INDICATORS :Araç yükleme bilgisini göster: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Yükleme veya boşaltma yapan araçların üzerinde yükleme işaretlerinin görünüp görünmeyeceğini seçin @@ -1366,7 +1365,7 @@ STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Oyuna başland STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :En eskisi STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :En yenisi STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :En çok kullanılan -STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Ayrılan rayları göster: {STRING} +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Raylar için yol ayrılmalarını göster: {STRING} STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Trenlerin güzergah tabanlı bloklara girmeyi reddetmesine dair sorunları engellemek için ayrılmış (rezerve) raylar için farklı bir renk kullan. STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Yapı araçlarını kullanımdan sonra aktif tut: {STRING} STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Köprü, tünel vb. için kullanılan inşa araçlarını kullanımdan sonra da açık tut @@ -1394,7 +1393,7 @@ STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Uygun araç bul STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Etkinleştirildiğinde, eğer kullanılabilecek araçlar mevcutsa altyapıyı kullanılabilir hale getirir, böylece altyapıya boş yere zaman ve para harcanmasını engeller STR_CONFIG_SETTING_MAX_TRAINS :Şirket başına azami tren sayısı: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Bir şirketin sahip olabileceği azami tren sayısı -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Şirket başına azami karayolu aracı: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Şirket başına azami karayolu aracı sayısı: {STRING} STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Bir şirketin sahip olabileceği azami karayolu aracı sayısı STR_CONFIG_SETTING_MAX_AIRCRAFT :Şirket başına azami uçak sayısı: {STRING} STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Bir şirketin sahip olabileceği azami hava aracı sayısı @@ -1425,7 +1424,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Servis gecikmel STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Araçlara bakım yapılmasına bir önceki bakımın üzerinden geçen zamana göre mi, yoksa aracın güvenilirlik değerinin azami güvenilirliğe kıyasla belli bir yüzde oranında düşmesine bağlı olarak mı karar verileceğini seçin STR_CONFIG_SETTING_SERVINT_TRAINS :Trenler için varsayılan bakım aralığı: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Yeni tren yolu araçları için varsayılan bakım aralığını ayarlar, eğer araç için özel bir bakım aralığı belirtilmemişse geçerlidir -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} gün/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}gün/% STR_CONFIG_SETTING_SERVINT_DISABLED :Etkisiz STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Yol araçları için varsayılan bakım aralığı: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Yeni karayolu araçları için varsayılan bakım aralığını ayarlar, eğer araç için özel bir bakım aralığı belirtilmemişse geçerlidir @@ -1565,9 +1564,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Hiçbiri STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Birincil şehir büyüklüğü çarpanı: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Oyun başlangıcında şehirlerin normal kasabalara kıyasla ortalama büyüklüğü -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Dağıtım grafiğini her {STRING} günde bir güncelle +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Dağıtım grafiğini her {STRING}{NBSP}günde bir güncelle STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Bağlantı grafiğinin tekrar hesaplamaları arasında geçen süre. Her tekrar hesaplama grafiğin öğelerinden biri için planları hesaplar. Yani bu ayar için girdiğiniz X değeri tüm grafiğin her X günde bir güncelleneceği manasına gelmez; sadece grafiğin öğelerinden biri güncellenir. Daha kısa sürelere ayarladıkça hesaplamalar için daha fazla işlemci süresi gerekir. Daha uzun süreler seçtikçe yeni güzergahlardaki kargo dağıtımının başlaması da daha uzun sürer. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Dağıtım grafiğini {STRING} güne göre tekrar hesapla +STR_CONFIG_SETTING_LINKGRAPH_TIME :Dağıtım grafiğini {STRING}{NBSP}güne göre tekrar hesapla STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Bağlantı grafiğini oluşturan parçaların her tekrar hesaplaması için kullanılan zaman. Tekrar hesaplama başlatıldığında bu kadar gün sürecek bir işlem başlatılmış olur. Buraya daha kısa süreler girdikçe işlemin bitmesi gerekirken bitmemiş olma ihtimali artar. Ardından oyun ("lag") olana dek durur. Daha uzun süreler girdiğinizde güzergahlar değiştikçe dağıtımın güncellenmesi daha uzun sürer. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :el ile (manual) STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimetrik @@ -1602,38 +1601,38 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrik (hp/beyg STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (Uluslararası Ölçüm Sistemi) (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Ağırlık ölçü birimi: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Kullanıcı arayüzünde ağırlıklar görüntülendiğinde, bunları seçili ölçü biriminde göster. +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Kullanıcı arayüzünde ağırlıklar görüntülendiğinde, bunları seçili ölçü biriminde göster STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (Ingiliz ölçü birimleri) (kısa t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrik (t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (Uluslararası Ölçüm Sistemi) (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Hacim ölçü birimi: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Kullanıcı arayüzünde hacimler görüntülendiğinde, bunları seçili ölçü biriminde göster. +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Kullanıcı arayüzünde hacimler görüntülendiğinde, bunları seçili ölçü biriminde göster STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (Ingiliz ölçü birimleri) (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrik (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (Uluslararası Ölçüm Sistemi) (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Çekici güç ölçü birimi: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Kullanıcı arayüzünde çekici güç görüntülendiğinde, bunları seçili ölçü biriminde göster. +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Kullanıcı arayüzünde çekici güç görüntülendiğinde (çekici yük olarak da bilinir), bunları seçili ölçü biriminde göster STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (Ingiliz ölçü birimleri) (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrik (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (Uluslararası Ölçüm Sistemi) (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Yükseklik ölçü birimi: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Kullanıcı arayüzünde yükseklikler görüntülendiğinde, bunları seçili ölçü biriminde göster. +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Kullanıcı arayüzünde yükseklikler görüntülendiğinde, bunları seçili ölçü biriminde göster STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Imperial (Ingiliz ölçü birimleri) (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrik (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (Uluslararası Ölçüm Sistemi) (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Yerelleştirme -STR_CONFIG_SETTING_SOUND :{ORANGE}Ses efektleri +STR_CONFIG_SETTING_SOUND :{ORANGE}Ses STR_CONFIG_SETTING_INTERFACE :{ORANGE}Arayüz STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}İnşaat STR_CONFIG_SETTING_VEHICLES :{ORANGE}Araçlar STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Yönlenme STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Şehirler STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Endüstri -STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Kargo Dağılımı +STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Kargo dağılımı STR_CONFIG_SETTING_AI :{ORANGE}Rakipler STR_CONFIG_SETTING_AI_NPC :{ORANGE}Bilgisayar oyuncuları @@ -1684,7 +1683,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}Çok Oyu STR_INTRO_GAME_OPTIONS :{BLACK}Seçenekler STR_INTRO_HIGHSCORE :{BLACK}Puan Tablosu -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Gelişmiş Ayarlar STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Ayarları STR_INTRO_ONLINE_CONTENT :{BLACK}Çevrimiçi İçeriği Kontrol Et STR_INTRO_SCRIPT_SETTINGS :{BLACK}YZ/Oyun Betik Ayarları @@ -1704,7 +1702,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}'Oyuncak STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Seçenekleri göster STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Puan tablosunu göster -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Gelişmiş ayarları görüntüle STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF ayarlarını göster STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}İndirilecek yeni ve güncellenmiş içeriği kontrol et STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}YZ ve Oyun betik ayarlarını göster @@ -1913,13 +1910,13 @@ STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Erişimi STR_NETWORK_START_SERVER_UNADVERTISED :Hayır STR_NETWORK_START_SERVER_ADVERTISED :Evet STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} istemci -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}İzin verilen en fazla oyuncu: +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Azami istemci sayısı: STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}İzin verilen en fazla oyuncu sayısını seç. Her yerin dolması gerekmez STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} şirket -STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}En fazla şirket: +STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}En fazla şirket sayısı: STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}Sunucudaki şirket sayısını sınırla STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} seyirci -STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}En fazla izleyici: +STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}En fazla izleyici sayısı: STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS_TOOLTIP :{BLACK}Sunucudaki izleyici sayısını sınırla STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Konuşulan dil: STR_NETWORK_START_SERVER_LANGUAGE_TOOLTIP :{BLACK}Diğer oyuncular sunucuda hangi dilin konuşulacağını bilecek @@ -2634,7 +2631,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Satın alınmı STR_ABOUT_OPENTTD :{WHITE}OpenTTD Hakkında STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Telif hakkı {COPYRIGHT} 1995 Chris Sawyer, Her hakkı saklıdır STR_ABOUT_VERSION :{BLACK}OpenTTD sürüm {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 OpenTTD ekibi +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD ekibi # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Oyunu Kaydet @@ -2801,14 +2798,13 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}NewGRF d # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Nesne hizalanıyor {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Sonraki nesne -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Tüm sahte/yeniden renklendirme/yazı tipi nesnelerini ve sondaki sargıyı atlayarak bir sonraki normal nesneye geç +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Tüm sahte/yeniden renklendirme/yazı tipi nesnelerini ve sondaki nesneden atlayarak bir sonraki normal nesneye geç STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Nesneye git STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Verilen nesneye git. Eğer normal bir nesne değilse, bir sonraki normal nesneye geç STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Önceki nesne STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Tüm sahte/yeniden renklendirme/yazı tipi nesnelerini ve baştaki sargıyı atlayarak bir önceki normal nesneye geç STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Seçili nesnenin mevcut gösterimi. Bu nesneyi çizerken hizalama ihmal edilir STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Nesneyi X ve Y ofsetlerini değiştirerek gezdir -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X ofseti: {NUM}, Y ofseti: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Nesne seç STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Ekrandaki herhangi bir yerden bir nesne seçin @@ -2920,8 +2916,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} taşındı STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (hala ihtiyaç var) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (taşındı) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Kasaba {ORANGE}{COMMA}{BLACK} günde bir büyür -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Kasaba {ORANGE}{COMMA}{BLACK} günde bir büyür (finanse edildiğinde) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Kasaba her {ORANGE}{COMMA}{BLACK}{NBSP}günde bir büyür +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Kasaba her {ORANGE}{COMMA}{BLACK}{NBSP}günde bir büyür (finanse edildiğinde) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Kasaba {RED}büyümüyor{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Kasabadaki gürültü sınırı: {ORANGE}{COMMA}{BLACK} En fazla: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Ana görüntüyü şehrin üzerine ortala. Ctrl ile tıklama şehrin konumunu gösteren yeni bir pencere açar @@ -2981,7 +2977,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Bilgi STR_GOAL_QUESTION_CAPTION_WARNING :Uyarı STR_GOAL_QUESTION_CAPTION_ERROR :Hata -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :İptal STR_GOAL_QUESTION_BUTTON_OK :Tamam STR_GOAL_QUESTION_BUTTON_NO :Hayır @@ -3000,6 +2996,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Yeniden başlat STR_GOAL_QUESTION_BUTTON_POSTPONE :Ertele STR_GOAL_QUESTION_BUTTON_SURRENDER :Yenilgiyi kabul et STR_GOAL_QUESTION_BUTTON_CLOSE :Kapat +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Teşvikler @@ -3324,10 +3321,10 @@ STR_PURCHASE_INFO_ALL_BUT :Şunlar hariç STR_PURCHASE_INFO_MAX_TE :{BLACK}Aza. Çekim Gücü: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Menzil: {GOLD}{COMMA} kare -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Tren seçim listesi - daha fazla bilgi için araca tıklayın -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Karayolu araçları listesi - bilgi için araca tıklayın -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Gemi seçim listesi - bilgi için gemiye tıkla -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Uçak listesi - bilgi için uçaga tıklayın +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Tren seçim listesi. Bilgi için araç tıklayın. Ctrl+Tıklama araç türünün gizlenmesini açar/kapatır +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Karayolu araçları seçim listesi. Bilgi için araca tıklayın. Ctrl+Tıklama araç türünün gizlenmesini açar/kapatır +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Gemi seçim listesi. Bilgi için gemiye tıklayın. Ctrl+Tıklama gemi türünün gizlenmesini açar/kapatır +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Uçak seçim listesi. Bilgi için uçağa tıklayın. Ctrl+Tıklama, uçak türünün gizliliğini açar/kapatır STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Araç Satın Al STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Araç Satın Al @@ -3349,6 +3346,9 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Araç t STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Gemi türünü adlandır STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Uçak türünü adlandır + + + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Tren yeniden adlandırılamaz STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Araç türünü yeniden adlandır STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Gemi türünü adlandır @@ -3402,7 +3402,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Aracı K STR_DEPOT_CLONE_SHIP :{BLACK}Gemiyi kopyala STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Uçağı kopyala -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Tüm vagonlarla birlikte treni kopyalar. Önce bu düğmeye sonra da garın içindeki veya dışındaki bir araca tıklayın. Ctrl-tıklama talimatları paylaştırır. Shift ile tıklama satın almadan tahmini maliyeti gösterir. +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Tüm vagonlarla birlikte treni kopyalar. Önce bu düğmeye sonra da garın içindeki veya dışındaki bir trene tıklayın. Ctrl+tıklama talimatları paylaştırır. Shift+tıklama satın almadan tahmini maliyeti gösterir. STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Karayolu aracının bir kopyasını yapar. Önce bu düğmeye sonra da garın içindeki veya dışındaki bir araca tıklayın. Ctrl+Tıklama talimatları paylaştırır. Shift+Tıklama satın almadan tahmini maliyeti gösterir STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Geminin bir kopyasını oluşturur. Önce bu düğmeye sonra da tersanenin içindeki veya dışındaki bir gemiye tıklayın. Ctrl-tıklama talimatları paylaştırır. Shift ile tıklama satın almadan tahmini maliyeti gösterir STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Uçağın bir kopyasını oluşturur. Önce bu düğmeye sonra da hangarın içindeki veya dışındaki bir uçaga tıklayın. Ctrl-tıklama talimatları paylaştırır. Shift ile tıklama satın almadan tahmini maliyeti gösterir @@ -3453,6 +3453,7 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Karayolu taşı STR_REPLACE_VEHICLE_SHIP :Gemi STR_REPLACE_VEHICLE_AIRCRAFT :Uçak + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Değiştirilecek türü seçin STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Değiştirilecek türün yerine geçecek türü seçin @@ -3577,7 +3578,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Aktarma Maliyeti: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Bakım zamanı: {LTBLUE}{COMMA}günde bir{BLACK} Son bakım: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Bakım aralığı: {LTBLUE}{COMMA}{NBSP}günde bir{BLACK} Son bakım: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Bakım zamanı: {LTBLUE}%{COMMA}{BLACK} Son bakım: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Bakım periyodunu 10 arttır. Ctrl-tıklama bakım periyodunu 5 arttırır. STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Bakım periyodunu 10 azalt. Ctrl+Tıklama bakım periyodunu 5 azaltır @@ -3675,8 +3676,8 @@ STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Seçili STR_ORDER_REFIT :{BLACK}Modifiye STR_ORDER_REFIT_TOOLTIP :{BLACK}Bu talimatta değiştirilecek kargo türünü seçin. Değiştirmeyi kaldırmak için Ctrl ile tıklayın -STR_ORDER_REFIT_AUTO :{BLACK}Otomatik modifiye et -STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Bu talimatta hangi kargo türünün otomatik onarılacağını seçin. Ctrl+Tıklama ile otomatik onarım talimatını kaldırın. Otomatik onarım izin verilen araçlarda mümkündür +STR_ORDER_REFIT_AUTO :{BLACK}İstasyonda taşı +STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Bu talimatta hangi kargo türünün taşınacağını seçin. Ctrl+Tıklama ile taşıma talimatını kaldırın. İstasyonlarda taşıma sadece izin verilen araçlarda mümkündür STR_ORDER_DROP_REFIT_AUTO :Sabit kargo STR_ORDER_DROP_REFIT_AUTO_ANY :Kullanılabilir kargo @@ -3767,18 +3768,18 @@ STR_ORDER_NO_UNLOAD_FULL_LOAD :(Boşaltma ve t STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Boşaltma ve herhangi bir tam dolduruşu bekle) STR_ORDER_NO_UNLOAD_NO_LOAD :(Boşaltma ve yükleme yok) -STR_ORDER_AUTO_REFIT :({STRING} taşımak için otomatik modifiye et) -STR_ORDER_FULL_LOAD_REFIT :({STRING} taşımak için otomatik modifiye et ve tam doldur) -STR_ORDER_FULL_LOAD_ANY_REFIT :({STRING} taşımak için otomatik modifiye et ve herhangi bir kargoyu tam doldur) -STR_ORDER_UNLOAD_REFIT :({STRING} taşımak için otomatik modifiye et ve boşalt) -STR_ORDER_UNLOAD_FULL_LOAD_REFIT :({STRING} taşımak için otomatik modifiye et, boşalt ve tam doldur) -STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :({STRING} taşımak için otomatik modifiye et, boşalt ve herhangi bir kargoyu tam doldur) -STR_ORDER_TRANSFER_REFIT :({STRING} taşımak için otomatik modifiye et, aktar ve kargo al) -STR_ORDER_TRANSFER_FULL_LOAD_REFIT :({STRING} taşımak için otomatik modifiye et, aktar ve tam doldur) -STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :({STRING} taşımak için otomatik modifiye et, aktar ve herhangi bir kargoyu tam doldur) -STR_ORDER_NO_UNLOAD_REFIT :({STRING} taşımak için otomatik modifiye et, boşaltmadan kargo al) -STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :({STRING} taşımak için otomatik modifiye et ve boşaltmadan tam doldur) -STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :({STRING} taşımak için otomatik modifiye et, boşaltmadan herhangi bir kargoyu tam doldur) +STR_ORDER_AUTO_REFIT :({STRING} taşımak için) +STR_ORDER_FULL_LOAD_REFIT :({STRING} taşımak için tam doldur) +STR_ORDER_FULL_LOAD_ANY_REFIT :({STRING} taşımak için herhangi bir kargoyu tam doldur) +STR_ORDER_UNLOAD_REFIT :({STRING} taşımak için boşalt ve kargoyu al) +STR_ORDER_UNLOAD_FULL_LOAD_REFIT :({STRING} taşımak için boşalt ve tam doldur) +STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :({STRING} taşımak için boşalt ve herhangi bir kargoyu tam doldur) +STR_ORDER_TRANSFER_REFIT :({STRING} taşımak için aktar ve kargo al) +STR_ORDER_TRANSFER_FULL_LOAD_REFIT :({STRING} taşımak için aktar ve tam doldur) +STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :({STRING} taşımak için aktar ve herhangi bir kargoyu tam doldur) +STR_ORDER_NO_UNLOAD_REFIT :({STRING} taşımak için boşaltmadan kargo al) +STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :({STRING} taşımak için boşaltmadan tam doldur) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :({STRING} taşımak için boşaltmadan herhangi bir kargoyu tam doldur) STR_ORDER_AUTO_REFIT_ANY :kullanılabilir kargo @@ -3809,8 +3810,8 @@ STR_TIMETABLE_TRAVEL_FOR :{STRING} boyunc STR_TIMETABLE_TRAVEL_FOR_SPEED :{STRING} boyunca en çok {VELOCITY} hız ile git STR_TIMETABLE_STAY_FOR :{STRING} bekle STR_TIMETABLE_AND_TRAVEL_FOR :ve şuraya sefer yap: {STRING} -STR_TIMETABLE_DAYS :{COMMA} gün -STR_TIMETABLE_TICKS :{COMMA} birim +STR_TIMETABLE_DAYS :{COMMA}{NBSP}gün +STR_TIMETABLE_TICKS :{COMMA}{NBSP}birim STR_TIMETABLE_TOTAL_TIME :{BLACK}Bu zaman çizelgesinin bitmesi {STRING} sürecek STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Bu zaman çizelgesinin bitmesi en az {STRING} sürecek (tamamı hesaplanmadı) @@ -4074,7 +4075,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... hari STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... başka bir şehire çok yakın STR_ERROR_TOO_MANY_TOWNS :{WHITE}... çok fazla şehir var STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... haritada boş yer yok -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Şehir yol yapmayacak. Yol yapımını Gelişmiş Ayarlar->Ekonomi->Şehirler'den etkinleştirebilirsiniz +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Kasaba yol yapmayacak. Yol yapımını Gelişmiş Ayarlar->Ekonomi->Şehirler'den etkinleştirebilirsiniz STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Yol çalışmaları STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Bu kasaba silinemiyor...{}Bir istasyon veya garaj kasabaya atıfta bulunuyor ya da bir kasaba karesi kaldırılamıyor STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... bu şehrin merkezinde heykel için uygun bir yer yok @@ -4098,6 +4099,7 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... orma STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... yalnız kar çizgisinin üzerinde yapılabilir STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... yalnız kar çizgisinin altında yapılabilir + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Buraya tren istasyonu yapılamıyor... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Otobüs durağı yapılamıyor... @@ -4843,8 +4845,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index d5f6dfb9a6..f5ff1162fd 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -220,30 +220,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK.z :газован # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} пасажир{P "" и iв} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}пасажир{P "" и iв} STR_QUANTITY_COAL :{WEIGHT_LONG} вугілля -STR_QUANTITY_MAIL :{COMMA} сум{P ка ки ок} пошти +STR_QUANTITY_MAIL :{COMMA}{NBSP}міш{P ок ка ків} пошти STR_QUANTITY_OIL :{VOLUME_LONG} нафти -STR_QUANTITY_LIVESTOCK :{COMMA} гол{P ова ови ів} худоби -STR_QUANTITY_GOODS :{COMMA} ящи{P к ки ків} товарів +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}гол{P ова ови ів} худоби +STR_QUANTITY_GOODS :{COMMA}{NBSP}ящи{P к ки ків} товарів STR_QUANTITY_GRAIN :{WEIGHT_LONG} зерна STR_QUANTITY_WOOD :{WEIGHT_LONG} деревини STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} залізної руди STR_QUANTITY_STEEL :{WEIGHT_LONG} сталі -STR_QUANTITY_VALUABLES :{COMMA} сум{P ка ки ок} коштовностей +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}міш{P ок ка ків} коштовностей STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} мідної руди STR_QUANTITY_MAIZE :{WEIGHT_LONG} кукурудзи STR_QUANTITY_FRUIT :{WEIGHT_LONG} фруктів -STR_QUANTITY_DIAMONDS :{COMMA} сум{P ка ки ок} діамантів +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}міш{P ок ки ків} діамантів STR_QUANTITY_FOOD :{WEIGHT_LONG} продуктів STR_QUANTITY_PAPER :{WEIGHT_LONG} паперу -STR_QUANTITY_GOLD :{COMMA} міш{P ок ки ків} золота +STR_QUANTITY_GOLD :{COMMA}{NBSP}міш{P ок ки ків} золота STR_QUANTITY_WATER :{VOLUME_LONG} води STR_QUANTITY_WHEAT :{WEIGHT_LONG} пшениці STR_QUANTITY_RUBBER :{VOLUME_LONG} каучуку STR_QUANTITY_SUGAR :{WEIGHT_LONG} цукру -STR_QUANTITY_TOYS :{COMMA} іграш{P ка ки ок} -STR_QUANTITY_SWEETS :{COMMA} пакун{P ок ки ків} цукерок +STR_QUANTITY_TOYS :{COMMA}{NBSP}іграш{P ка ки ок} +STR_QUANTITY_SWEETS :{COMMA}{NBSP}пакун{P ок ки ків} цукерок STR_QUANTITY_COLA :{VOLUME_LONG} Коли STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} солодкої вати STR_QUANTITY_BUBBLES :{COMMA} бульбаш{P ка ки ок} @@ -290,12 +290,12 @@ STR_ABBREV_NONE :{TINY_FONT}НІ STR_ABBREV_ALL :{TINY_FONT}Все # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} пасажир{P "" и ів} -STR_BAGS :{COMMA} міш{P ок ка ків} -STR_TONS :{COMMA} тон{P а и ""} -STR_LITERS :{COMMA} літр{P "" а ів} -STR_ITEMS :{COMMA} штук{P а и ""} -STR_CRATES :{COMMA} ящик{P "" а ів} +STR_PASSENGERS :{COMMA}{NBSP}пасажир{P "" и ів} +STR_BAGS :{COMMA}{NBSP}міш{P ок ка ків} +STR_TONS :{COMMA}{NBSP}тон{P "а" "и" ""} +STR_LITERS :{COMMA}{NBSP}літр{P "" "а" "ів"} +STR_ITEMS :{COMMA}{NBSP}штук{P "а" "и" ""} +STR_CRATES :{COMMA}{NBSP}ящик{P "" а ів} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Темно-синій @@ -316,37 +316,37 @@ STR_COLOUR_GREY :Сірий STR_COLOUR_WHITE :Білий # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} миль/год -STR_UNITS_VELOCITY_METRIC :{COMMA} км/год -STR_UNITS_VELOCITY_SI :{COMMA} м/с +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}миль/год +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}км/год +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}м/с -STR_UNITS_POWER_IMPERIAL :{COMMA}к.с. -STR_UNITS_POWER_METRIC :{COMMA}к.с. -STR_UNITS_POWER_SI :{COMMA}кВт +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}к.с. +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}к.с. +STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}т -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}т -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}кг +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} тонн{P "а" "и" ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} тон{P а и ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} кг +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}тонн{P "а" "и" ""} +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}тон{P а и ""} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}кг -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA} гал -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}л -STR_UNITS_VOLUME_SHORT_SI :{COMMA}м³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}гал +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}л +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} галон{P "" и ів} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} літр{P "" а ів} -STR_UNITS_VOLUME_LONG_SI :{COMMA} м³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галон{P "" и ів} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}літр{P "" "а" "ів"} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}м³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} фунт-сили -STR_UNITS_FORCE_METRIC :{COMMA} кгс -STR_UNITS_FORCE_SI :{COMMA} кН +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}фунт-сила +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}кгс +STR_UNITS_FORCE_SI :{COMMA}{NBSP}кН -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} фт -STR_UNITS_HEIGHT_METRIC :{COMMA} м -STR_UNITS_HEIGHT_SI :{COMMA} м +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фт +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Фільтр: @@ -366,13 +366,24 @@ STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Заго STR_TOOLTIP_SHADE :{BLACK}Згорнути вікно - показувати тільки заголовок STR_TOOLTIP_DEBUG :{BLACK}Показати інформацію для відлагодження NewGRF STR_TOOLTIP_DEFSIZE :{BLACK}Повернути розмір вікна до типового. Ctrl+Click робить поточний розмір типовим -STR_TOOLTIP_STICKY :{BLACK}Не закривати вікно кнопкою "Закрити всі вікна". Ctrl+клік зберігає налаштування як базове +STR_TOOLTIP_STICKY :{BLACK}Не закривати вікно кнопкою "Закрити всі вікна". Ctrl+клац мишою зберігає налаштування як базове STR_TOOLTIP_RESIZE :{BLACK}Натисніть і тягніть для зміни розміру вікна STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Розмір вікна великий/малий STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Смуга прокрутки - прокручує список вверх/вниз STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Смуга прокрутки - прокручує список вліво/вправо STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Зруйнувати будинки, дороги і т.п. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу витрат на руйнування +# 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 STR_BUTTON_DEFAULT :{BLACK}Стандартно STR_BUTTON_CANCEL :{BLACK}Відміна @@ -437,15 +448,15 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Пока STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Показати список станцій компанії STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Фінансова інформація STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Головна інформація -STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Показати список завдань +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Показати історію STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Показати список завдань STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Показати графіки STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Показати таблицю компаній STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Фінансувати будівництво нової промисловості -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Показати список поїздів компанії. Ctrl+клік переключає відкриття звичайного/розширенного списку -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Показати список дорожнього транспорту компанії. Ctrl+клік переключає відкриття звичайного/розширенного списку. -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Показати список кораблів компанії. Ctrl+клік переключає відкриття звичайного/розширенного списку. -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Показати список повітряного транспорту компанії. Ctrl+клік переключає відкриття звичайного/розширенного списку. +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Показати список поїздів компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Показати список дорожнього транспорту компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Показати список кораблів компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Показати список повітряного транспорту компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Збільшити STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Зменшити STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Будувати залізницю @@ -486,7 +497,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Вихід ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Налаштування гри -STR_SETTINGS_MENU_CONFIG_SETTINGS :Розширені налаштування +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Налаштування STR_SETTINGS_MENU_SCRIPT_SETTINGS :Налаштування AI / Ігрового скрипта STR_SETTINGS_MENU_NEWGRF_SETTINGS :Налаштування NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Налаштування прозорості @@ -504,7 +515,7 @@ STR_SETTINGS_MENU_TRANSPARENT_SIGNS :Прозорі ############ range for file menu starts STR_FILE_MENU_SAVE_GAME :Зберегти гру STR_FILE_MENU_LOAD_GAME :Завантажити гру -STR_FILE_MENU_QUIT_GAME :Залишити гру +STR_FILE_MENU_QUIT_GAME :Покинути гру STR_FILE_MENU_SEPARATOR : STR_FILE_MENU_EXIT :Вихід ############ range ends here @@ -796,7 +807,7 @@ STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLA STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Очистити STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Очистити програму (тільки для Набору 1 або Набору 2) STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Виберіть доріжку, щоб додати до програми (тільки для Набору 1 або Набору 2) -STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Клікніть на мелодії для її видалення зі списку (лише Набір1 та Набір2) +STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Клацніть мишою на мелодії для її видалення зі списку (лише Набір1 та Набір2) # Highscore window STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Кращі компанії, які досягли {NUM} @@ -831,9 +842,9 @@ STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Пока STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Показати маршрути на карті STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Показати рослинність на карті STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Показати власників землі на карті -STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Щоб відобразити певний вид підприємств, клацніть на ньому мишкою. Ctrl + клік мишкою вмикає/вимикає відображення всіх видів, окрім обраного. -STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Натисніть на компанію аби відобразити її власність. Ctrl + клік мишкою вмикає/вимикає відображення власності всіх компаній, окрім обраної. -STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Натискання на вантаж покаже його власника. Ctrl+клік відключить усі вантажі, крім одного обраного. Повторний Ctrl+клік підключить усі вантажі +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Щоб відобразити певний вид підприємств, клацніть на ньому мишою. Ctrl+клац мишою вмикає/вимикає відображення всіх видів, окрім обраного +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Натисніть на компанію аби відобразити її власність. Ctrl+клац мишою вмикає/вимикає відображення власності всіх компаній, окрім обраної +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Натискання на вантаж покаже його власника. Ctrl+клац мишою відключить усі вантажі, крім одного обраного. Повторний Ctrl+клац мишою підключить усі вантажі STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Дороги STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Залізниці @@ -1044,10 +1055,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Грузинс STR_GAME_OPTIONS_CURRENCY_IRR :Іранський ріал (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Сторона руху транспорту STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Виберіть, по якій стороні рухається дорожній транспорт STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :лівосторонній рух @@ -1101,6 +1108,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Розд STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Виберіть роздільну здатність екрану STR_GAME_OPTIONS_RESOLUTION_OTHER :інша +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Розмір інтерфейсу +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Оберіть розмір елементів інтерфейсу + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Нормальний розмір +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Подвійний розмір +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Почетверний розмір + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Базовий набір графіки STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Оберіть, яку основну графіку використовувати STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} відсутн{P ій іх іх}/пошкоджен{P ий их их} файл{P "" а ів} @@ -1115,6 +1129,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Обер STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} зіпсовани{P й х х} файл{P "" а ів} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Допоміжна інформація про базовий музичний набір +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Не вдалося отримати список підтримуваних дозволів STR_ERROR_FULLSCREEN_FAILED :{WHITE}Повноекранний режим не працює # Custom currency window @@ -1175,10 +1190,10 @@ STR_SEA_LEVEL_HIGH :високий STR_SEA_LEVEL_CUSTOM :вибірковий STR_SEA_LEVEL_CUSTOM_PERCENTAGE :вибірковий ({NUM}%) -STR_RIVERS_NONE :Нема -STR_RIVERS_FEW :Кілька -STR_RIVERS_MODERATE :Середньо -STR_RIVERS_LOT :Багато +STR_RIVERS_NONE :немає +STR_RIVERS_FEW :кілька +STR_RIVERS_MODERATE :середньо +STR_RIVERS_LOT :багато STR_DISASTER_NONE :відкл. STR_DISASTER_REDUCED :знижено @@ -1193,6 +1208,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :плаский STR_TERRAIN_TYPE_FLAT :рівнинний STR_TERRAIN_TYPE_HILLY :пагористий STR_TERRAIN_TYPE_MOUNTAINOUS :гористий +STR_TERRAIN_TYPE_ALPINIST :скелястий STR_CITY_APPROVAL_PERMISSIVE :допустиме STR_CITY_APPROVAL_TOLERANT :терпиме @@ -1200,8 +1216,8 @@ STR_CITY_APPROVAL_HOSTILE :вороже STR_WARNING_NO_SUITABLE_AI :{WHITE}Немає відповідних AI...{}Ви можете завантажити кілька AI через систему 'Вмісту в Інтернеті' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Розширені налаштування +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Налаштування STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Фільтр: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Розгорнути всі STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Згорнути всі @@ -1209,27 +1225,30 @@ STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(пояснен STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Стандартне значення: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE :{LTBLUE}Тип: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE_CLIENT :Налаштування клієнта (не присутні в збережених іграх; впливають на будь-яку гру) -STR_CONFIG_SETTING_TYPE_GAME_MENU :Налаштування гри (знаходяться в збережених іграх; впливають тільки на нову гру) -STR_CONFIG_SETTING_TYPE_GAME_INGAME :Налаштування гри (знаходяться в збережених іграх; впливають тільки на поточну гру) -STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Налаштування компанії (знаходяться в збережених іграх; впливають тільки на нову гру) +STR_CONFIG_SETTING_TYPE_GAME_MENU :Налаштування гри (залишаються при збереженні; впливають тільки на нову гру) +STR_CONFIG_SETTING_TYPE_GAME_INGAME :Налаштування гри (залишаються при збереженні; впливають тільки на поточну гру) +STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Налаштування компанії (залишаються при збереженні; впливають тільки на нові ігри) STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Налаштування компанії (знаходяться в збережених іграх; впливають тільки на поточну гру) STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Категорія: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Тип: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Показати лише відфільтровані налаштування -STR_CONFIG_SETTING_RESTRICT_BASIC :Основні налаштування -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Розширені налаштування -STR_CONFIG_SETTING_RESTRICT_ALL :Всі / експертні налаштування -STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Налаштування, що відрізняються від дефолтних +STR_CONFIG_SETTING_RESTRICT_BASIC :Основні (показує лише найважливіші налаштування) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Розширені (показати основні налаштування) +STR_CONFIG_SETTING_RESTRICT_ALL :Експертні / (показати всі налаштування, в тому числі незвичні) +STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Налаштування, що відрізняються від стандартних STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Налаштування, що відрізняються від налаштувань нової гри STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Обмежує перелік нижче визначеними типами налаштувань STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Усі типи налаштувань -STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Налаштування клієнта (не присутні в збережених іграх; впливають на всі ігри) -STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Налаштування гри (знаходяться в збережених іграх; впливають лише на нові ігри) -STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Налаштування гри (знаходяться в збережених іграх; впливають лише на поточну гру) +STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Налаштування клієнта (не залишаються при збереженні; впливають на всі ігри) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Налаштування гри (залишаються при збереженні; впливають лише на нові ігри) +STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Налаштування гри (залишаються при збереженні; впливають лише на поточну гру) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Налаштування компанії (знаходяться в збережених іграх; впливають лише на нові ігри) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Налаштування компанії (знаходяться у збережених іграх; впливають лише на поточну компанію) +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Показати всі результати пошуку встановивши{}{SILVER}Категорію {BLACK}на {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Показати всі результати пошуку встановивши{}{SILVER}Тип {BLACK}на {WHITE}Всі типи налаштувань +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Показати всі результати пошуку встановивши{}{SILVER}Категорію {BLACK}на {WHITE}{STRING} {BLACK}і {SILVER}Тип {BLACK}на {WHITE}Всі типи налаштувань STR_CONFIG_SETTINGS_NONE :{WHITE}- немає - STR_CONFIG_SETTING_OFF :ні @@ -1268,9 +1287,12 @@ STR_CONFIG_SETTING_TRAIN_REVERSING :Заборон STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Якщо увімкнено, поїзди не будуть розвертатися на некінцевих станціях, навіть якщо є коротший шлях до їх наступного пункту призначення, який вимагає розвороту STR_CONFIG_SETTING_DISASTERS :Стихійні лиха: {STRING} STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Перемкнути стихійні лиха, які можуть випадково зруйнувати транспорт або інфраструктуру -STR_CONFIG_SETTING_CITY_APPROVAL :Ставлення ради міста до реструктуризації його території: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL :Ставлення ради міста до зміни його території: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Виберіть, який рівень шуму та руйнування довкілля компаніями впливає на їх рейтинг для міст та подальші будівельні дії в їх межах +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Максимальна висота карти: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Встановити максимально дозволену висоту гір на карті +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Неможливо встановити таку висоти карти. Як мінімум одна гора на карті є вищою STR_CONFIG_SETTING_AUTOSLOPE :Дозволити зміну схилів під будівлями, дорогами тощо: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Можливість змінювати ландшафт під будівлями та дорогами без необхідності їх зносу STR_CONFIG_SETTING_CATCHMENT :Більш реалістічні зони покриття станцій: {STRING} @@ -1299,6 +1321,8 @@ STR_CONFIG_SETTING_INFLATION :Інфляці STR_CONFIG_SETTING_INFLATION_HELPTEXT :Дозволяє інфляцію в економіці. При цьому витрати з часом зростають дещо швидше за прибутки STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Максимальна довжина мостів: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Максимально допустима довжина мостів +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Максимальна висота моста: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Максимальна висота при будівництві мостів STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Максимальна довжина тунелів: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Максимально допустима довжина тунелів STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Спосіб створення сировинних підприємств: {STRING} @@ -1356,7 +1380,7 @@ STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Дозволи STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Дозволяє встановлення зупинок на дорогах, якими володіють конкуренти. STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Цю настройку не можливо змінити при наявності транспорту у грі STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Витрати на утримання інфраструктури: {STRING} -STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :При включенні інфраструктура потребує коштів для утримання. Витрати збільшуються не пропорційно з ростом розміру мережі, більше впливаючи на великі компанії ніж на малі. +STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :При включенні інфраструктура потребує коштів для утримання. Витрати збільшуються не пропорційно з ростом розміру мережі, більше впливаючи на великі компанії ніж на малі STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Аеропорти не застарівають: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :При включенні кожен аеропорт буде доступним для будівництва безстроково після його впровадження. @@ -1384,38 +1408,43 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Тривалі STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Тривалість відображення повідомлень про помилки (червоне вікно повідомлень). Деякі (критичні) повідомлення необхідно закривати власноруч. STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} секунд{P а и ""} STR_CONFIG_SETTING_HOVER_DELAY :Відображати підказки: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Затримка перед відображенням підказок при наведенні курсором на елементи інтерфейса. Окрім того, відображення підказок можна призначити на праву кнопку миші. -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :При наведенні, через {COMMA} секунд{P у и ""} -STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :По правому кліку +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Затримка перед відображенням підказок при наведенні курсором на елементи інтерфейса. Окрім того, відображення підказок можна призначити на праву кнопку миші, якщо це значення поставити на 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :При наведенні, через {COMMA} мілісекунд{P у и ""} +STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :По правому клацу миші STR_CONFIG_SETTING_POPULATION_IN_LABEL :Показувати населення в назві міста: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Відображати кількість населення міста поряд з його назвою на карті STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Товщина ліній на графіках: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Товщина ліній на графіках. Тонкі лінії дають більш точне відображення, а товстіші - більш розбірливі. STR_CONFIG_SETTING_LANDSCAPE :Ландшафт: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Пейзажі визначають базові ігрові сценарії з різними вантажами, необхідними для зростання міст. NewGRF'и й ігрові скрипти дозволяють тонший контроль STR_CONFIG_SETTING_LAND_GENERATOR :Генератор ландшафту: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Стандартний залежить від базового набору графіки і створює стандартні форми ландшафту. TerraGenesis базується на генераторі шумів Перлина з тоншими налаштуваннями управління STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :стандартний STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Тип ландшафту: {STRING} STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Тільки TerraGenesis) Горбистість ландшафту STR_CONFIG_SETTING_INDUSTRY_DENSITY :Густота підприємств: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Встановіть кількість підприємств, що будуть створені і кількість підприємств, що існуватимуть впродовж гри STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Макс. відстань від краю карти до нафтопереробних заводів: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Нафтопереробні заводи завжди будуються не далеко від краю карти або узбережжя. STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Рівень снігової шапки: {STRING} -STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Сніг впливає на генерування підприємств та на умови росту міст +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Контроль висоти, вище якої лежить сніг в субарктичному ландшафті. Сніг впливає на генерування підприємств та на умови росту міст STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Грубість ландшафту: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :дуже плавний -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :плавний -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :грубий -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :дуже грубий +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Тільки для TerraGenesis) Оберіть частоту пагорбів: Плавний пейзаж має менше пагорбів, вони менш круті. Грубий ландшафт має багато пагорбів, що можуть повторюватись один за одним +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :дуже плавно +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :плавно +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :грубо +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :дуже грубо STR_CONFIG_SETTING_VARIETY :Розподіл різноманітності: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Тільки для TerraGenesis) Перевірка наявності на карті гір і рівнин. Оскільки це робить карту плоскішою, інші налаштування необхідно встановити гірськими STR_CONFIG_SETTING_RIVER_AMOUNT :Кількість річок: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Виберіть кількість річок STR_CONFIG_SETTING_TREE_PLACER :Алгоритм розміщення дерев: {STRING} -STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Виберіть модель розподілу дерев на карті: "Оригінальна" розподіляє дерева рівномірно, "Покращена" розташовує їх групами +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Виберіть модель розподілу дерев на карті: "Стандартно" розподіляє дерева рівномірно, "Покращено" розташовує їх групами STR_CONFIG_SETTING_TREE_PLACER_NONE :немає -STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :стандартний -STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :покращений +STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :стандартно +STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :покращено STR_CONFIG_SETTING_ROAD_SIDE :Автотранспорт: {STRING} STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Виберіть сторону, по якій рухається автотранспорт STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Поворот карти висот: {STRING} @@ -1439,10 +1468,10 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :фіолето STR_CONFIG_SETTING_REVERSE_SCROLLING :Змінити напрямок прокрутки: {STRING} STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Налаштування переміщення по карті правою кнопкою миші. При включенні переміщується карта. При виключенні - камера. STR_CONFIG_SETTING_SMOOTH_SCROLLING :Плавна прокрутка у вікні: {STRING} -STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Налаштування способу прокрутки основного екрану при кліках по зменшенній карті, або інших діях, що призводять до переміщення по карті (кнопки "Оглянути", тощо). При включенні опції переміщення карти відбувається плавно. При виключенні - відбувається моментальне переміщення в необхідну точку. +STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Налаштування способу прокрутки основного екрану при клацанні мишою по зменшенній карті, або інших діях, що призводять до переміщення по карті (кнопки "Оглянути", тощо). При включенні опції переміщення карти відбувається плавно. При виключенні - відбувається моментальне переміщення в необхідну точку STR_CONFIG_SETTING_MEASURE_TOOLTIP :Показувати підказки про розміри під час будівництва: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Відображати довжини та різниці висот в підказках в процесі будівництва. -STR_CONFIG_SETTING_LIVERIES :Індивідуальні кольорові схеми: {STRING} +STR_CONFIG_SETTING_LIVERIES :Показувати кольорові схеми видів транспорту: {STRING} STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Використовувати індивідуальні кольорові схеми різних типів транспорту замість загальної кольорової схеми компанії. STR_CONFIG_SETTING_LIVERIES_NONE :не використовувати STR_CONFIG_SETTING_LIVERIES_OWN :тільки для своєї компанії @@ -1459,20 +1488,21 @@ STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Налашту STR_CONFIG_SETTING_OSK_ACTIVATION :Екранна клавіатура: {STRING} STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Виберіть спосіб відкриття екранної клавіатури для введення тексту у поля тільки за допомогою вказівного пристрою. Це призначено для невеликих пристроїв без фактичної клавіатури STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Вимкнено -STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Подвійний клік -STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Одиночний клік (коли виділено) -STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Одиночний клік (негайно) +STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Подвійний клац мишою +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Одиночний клац мишою (коли виділено) +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Одиночний клац мишою (негайно) -STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Емуляція правого кліку: {STRING} -STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT :Задає спосіб емуляції правого кліку -STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND :Command+клік -STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+клік +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Емуляція правого клацу миші: {STRING} +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT :Задає спосіб емуляції правого клацу миші +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND :Команда+клац мишою +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+клац мишою STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :не емулювати -STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Прокрутка по лівому кліку: {STRING} +STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Прокрутка по лівому клацу миші: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Дозволяє "тягати" карту утримуючи ліву кнопку миші, що дає можливість використовувати сенсорні екрани природнім способом.. STR_CONFIG_SETTING_AUTOSAVE :Автозбереження: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Оберіть проміжок між автоматичними збереженнями гри STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Формат дати в іменах файлів збереження: {STRING} STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Формат дати в іменах файлів збереження @@ -1488,7 +1518,7 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Ніяких д STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Всі дії, крім будівництва STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Всі дії, крім зміни ландшафту STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Всі дії -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Відкривати розширенний список транспорту: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Використовувати групи у списку транспорту: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Вмикає використання розширенного інтерфейсу списків транспорту, що має інструменти групування транспортних засобів. STR_CONFIG_SETTING_LOADING_INDICATORS :Показувати індикатори завантаження: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Вмикає\вимикає відображення індикатора процесу завантаження над транспортними засобами. @@ -1503,7 +1533,7 @@ STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Тип колі STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :перший доступний STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :останній доступний STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :найбільш вживаний -STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Показувати зарезервовану колію: {STRING} +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Показувати зарезервований шлях для колій: {STRING} STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Вмикає відображення зарезервованної потягом ділянки колії, що може допомогти при наявності проблем з маршрутними сигналами. STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Залишати інструменти активними після використання: {STRING} STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Залишати інструменти будівництва активними після використання. @@ -1562,7 +1592,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Інтерва STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Налаштування способу визначення необхідності проведення техогляду: через вказаний проміжок часу після попереднього техогляду чи коли поточна надійність транспортного засобу стане нижчою від максимальної його надійності на вказаний процент. STR_CONFIG_SETTING_SERVINT_TRAINS :Інтервал техогляду залізничного транспорту: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Налаштування інтервалу техогляду для нового залізничного транспорту (встановлений інтервал може бути змінено окремо для кожного транспортного засобу в його інтерфейсі). -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} д{P ень ні нів}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}д{P 0 "ень" "ні" "нів"}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Відключено STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Інтервал техогляду дорожнього транспорту: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Налаштування інтервалу техогляду для нового дорожнього транспорту (встановлений інтервал може бути змінено окремо для кожного транспортного засобу в його інтерфейсі). @@ -1625,18 +1655,18 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :При прот STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Налаштування відстані між сигналами при будівництві сигналів протягуванням. STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} клітин{P ку ки ок} STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :При протягуванні дотримуватись фіксованої дистанціі між сигналами: {STRING} -STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Вибрати спосіб встановлення сигналів при протягуванні з утриманням Ctrl. Якщо опція відключена, то сигнали встановлюються на кінцях мостів та тунелів. При включенні опції заданий інтервал встановлювання сигналів витримується більш строго (з метою вирівнювання сигналів на паралельних коліях). +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Вибрати спосіб встановлення сигналів при протягуванні мишою з утриманням Ctrl. Якщо опція вимкнена, то сигнали встановлюються навколо мостів та тунелів аби не було великих відрізків шляху без сигналів. Якщо увімкнено, заданий інтервал встановлювання сигналів витримується більш строго - через кожні n клітинок (веде до легшого вирівнювання сигналів на паралельних коліях) STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Автоматично будувати семафори до {STRING} року STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Налаштування року впровадження світлофорів замість семафорів. До цього року будуть встановлюватись лише семафори. STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Використовувати меню сигналів: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :При включенні відображає допоміжну панель інструментів для вибору типу сигналу при їх встановленні. При відключенні доступна лише заміна типу вже встановлених сигналів за допомогою Ctrl+кліка. +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Показувати вікно для вибору типу сигналів для будівництва, замість безвіконної зміни сигнал-типу з Ctrl+клацанням мишою на побудованих сигналах STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Тип сигналів за умовчанням: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Тип сигналу, що встановлюється за замовчанням. STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :блок-сигнали STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBS :маршрутні STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBSOWAY :односторонні маршрутні STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Сигнали, доступні при циклічному переборі: {STRING} -STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Налаштування типів сигналів, що доступні при ротації за допомогою Ctrl+кліка. +STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Налаштування типу сигналів, що доступні при зміні типу за допомогою Ctrl+клацання мишою STR_CONFIG_SETTING_CYCLE_SIGNAL_NORMAL :тільки блок-сигнали STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :тільки маршрутні STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :всі @@ -1653,7 +1683,7 @@ STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Дозволя STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Міська влада може будувати переїзди: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Дозволяє містам самостійно будувати залізничні переїзди. STR_CONFIG_SETTING_NOISE_LEVEL :Міська влада може контролювати рівень шуму аеропортів: {STRING} -STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :При відключенні дозволяється будувати два аеропорти на місто. Інакше кількість аеропортів буде залежати від допустимого рівня шуму, що в свою чергу залежить від населення міста, розміру аеропорта та відстані між аеропортами. +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :При відключенні дозволяється будувати два аеропорти у кожному місті. При увімкненні кількість аеропортів залежить від допустимого рівня шуму, що в свою чергу залежить від кількості населення міста, розміру аеропорта та відстані STR_CONFIG_SETTING_TOWN_FOUNDING :Засновування нових міст під час гри: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Дозволяє заснування нових міст гравцями під час гри. STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Заборонено @@ -1702,9 +1732,10 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Жодного STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Множник розміру мегаполісів: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Середньостатистичне відношення початкового розміру мегаполісів порівняно зі звичайними містами. -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Оновлювати графік доставки раз на {STRING} д{P 0:2 "ень" "ні" "нів"} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Оновлювати графік доставки раз на {STRING}{NBSP}д{P 0:2 "ень" "ні" "нів"} STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Час між послідовними обрахунками зв'язків на графіку. Кожен обрахунок здійснюється для одного параметра графіку. Тобто значення Х у налаштуваннях не означає, що графік оновлюється кожні Х днів. Лише деякі складові. При виборі параметру "часто" ЦП потрібно більше часу для обрахунку. При виборі параметру "рідко" наступний обрахунок почнеться після запуску доставки за новим маршрутом. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Обраховувати графік доставки раз на {STRING} д{P 0:2 "ень" "ні" "нів"} +STR_CONFIG_SETTING_LINKGRAPH_TIME :Обраховувати графік доставки раз на {STRING}{NBSP}д{P 0:2 "ень" "ні" "нів"} +STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Час, який займає переобчислення кожного зв'язку з компонентом графу. При запуску переобчислення створюється потік, якому дозволяється працювати декілька днів. Чим менше ви поставите це, тим більш можливо, що потік не буде завершено вчасно. Тоді гра зупиниться на час "лагу". Чим довше ви поставите, тим довше займе розподіл доставки при зміні маршрутів. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :ручний STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :асиметричний STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :симетричний @@ -1713,13 +1744,15 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :В "симет STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Режим розподілу для пошти: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :В "симетричному" режимі від станції A до станції B надсилатиметься приблизно стільки ж пошти, як від B до A. В "асиметричному" режимі дозволяється надсилати довільну кількість пошти в обох напрямках. Ручний режим означає, що розподіл пошти не здійснюватиметься автоматично. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Режим розподілу для броньованого транспорту: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Вантажем для броньованого транспорту є: коштовності — в помірному кліматі, діаманти — в субтропічному та золото — в арктичному. Це можуть змінювати пакунки NewGRF. В "симетричному" режимі від станції A до станції B надсилатиметься приблизно стільки ж вантажів, як від B до A. В "асиметричному" режимі дозволяється надсилати довільну кількість вантажів в обох напрямках. Ручний режим означає, що розподіл цих вантажів не здійснюватиметься автоматично. Рекомендується встановити "асиметричний" або ручний режим, якщо гра відбувається в арктичному кліматі, тому що банки не надсилають золото назад до шахт. В помірному або субтропічному кліматі можна також вибрати симетричний режим, оскільки банки також надсилають коштовності до інших банків. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :БРОНЬОВАНИЙ клас вантажу містить: коштовності — в помірному ландшафті, діаманти — в субтропічному чи золото — в субарктичному. NewGRF може змінювати це. В "симетричному" режимі від станції A до станції B надсилатиметься приблизно стільки ж вантажів, як від B до A. В "асиметричному" режимі дозволяється надсилати довільну кількість вантажів в обох напрямках. "Ручний" режим означає, що розподіл цих вантажів не здійснюватиметься автоматично. Рекомендується встановити "асиметричний" або "ручний" режим, якщо гра відбувається в субарктичному ландшафті, тому що банки не надсилають золото назад до шахт. В помірному або субтропічному ландшафті можна також вибрати "симетричний" режим, оскільки банки будуть надсилають коштовності назад до оригінального банку у вигляді вантажу з якимись цінностями. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Режим розподілу для інших видів вантажу: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :В "симетричному" режимі від станції A до станції B надсилатиметься приблизно стільки ж вантажів, як від B до A. В "асиметричному" режимі дозволяється надсилати довільну кількість вантажів в обох напрямках. Ручний режим означає, що розподіл цих вантажів не здійснюватиметься автоматично. Рекомендується встановити "асиметричний" або ручний режим. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :«Асиметричний» означає можливість відправки довільної кількості вантажу в будь-якому напрямку. «Ручний» означає, неавтоматичний розподіл для цих вантажів. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Точність розподілу: {STRING} STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Чим більше значення буде встановлено, тим більше часу процесора буде витрачатися на розрахунок графа зв’язків. Якщо це буде тривати довго, ви можете зауважити гальмування. Якщо встановити тут мале значення, розподіл буде неточним і вантаж, можливо, надсилатиметься не в ті місця, куди ви очікуєте. STR_CONFIG_SETTING_DEMAND_DISTANCE :Сила впливу відстані на попит: {STRING} STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Якщо це значення встановити більшим за 0, відстань між відправною станцією A якогось вантажу та приймаючою станцією B впливатиме на кількість вантажу, який надсилатиметься від A до B. Чим більша відстань від A до B, тим менше вантажу надсилатиметься. Чим більшим буде це значення, тим менше вантажу буде надсилатися до дальніх станцій і тим більше — до ближніх. +STR_CONFIG_SETTING_DEMAND_SIZE :Кількість вантажу, що повертається у симетричному режимі: {STRING} +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Встановивши це на менше ніж 100% можна зробити симетричну доставку схожою на асиметричну. Менше вантажу буде примусово повертатися назад, якщо певна його кількість надсилається на станцію. При 0% - симетрична доставка поводить себе зовсім як асиметрична. STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Рівень заповнення коротких маршрутів перед переходом до містких: {STRING} STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Часто між двома заданими станціями є більше, ніж один шлях. Cargodist заповнить спочатку найкоротший маршрут, потім другий після найкоротшого і т. д. Рівень заповнення визначається за допомогою оцінки місткості та запланованого використання. Якщо всі маршрути буде заповнено, а джерело вантажу не вичерпається, алгоритм почне переповнювати маршрути, починаючи з наймісткіших. Ця настройка дозволяє задати рівень заповнення в процентах, якого треба досягнути на першому маршруті перед тим, як перейти до заповнення наступного. Варто встановити цей рівень меншим за 100%, щоб уникнути переповнення станцій в разі переоцінки місткості маршруту. @@ -1736,38 +1769,47 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Метричн STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :СІ (кВт) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Одиниці маси: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Показувати маси в таких одиницях +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Якщо вага відображається на інтерфейсі: показувати її в обраній системі виміру STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Імперські (короткі тонни) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Метричні (т) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :СІ (кг) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Одиниці об’єму: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Показувати об’єми в таких одиницях +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Якщо об'єм відображається на інтерфейсі: показувати його в обраній системі виміру STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Імперські (галони) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Метричні (л) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :СІ (м³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Одиниці тяглової сили: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Показувати тяглову силу в таких одиницях: +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Якщо тяглова сила відображається на інтерфейсі: показувати її в обраній одиниці виміру STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Імперські (фунт-сили) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Метричні (кгс) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :СІ (кН) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Одиниці висоти: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Показувати висоти в таких одиницях: +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Якщо висоти відображаються на інтерфейсі: показувати в обраній одиниці виміру STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Імперські (фути) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Метричні (м) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :СІ (м) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Локалізація +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Графіки STR_CONFIG_SETTING_SOUND :{ORANGE}Звук STR_CONFIG_SETTING_INTERFACE :{ORANGE}Інтерфейс +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Загальні +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Точки огляду STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Будівництво +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Новини / Поради +STR_CONFIG_SETTING_COMPANY :{ORANGE}Компанія +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Облік STR_CONFIG_SETTING_VEHICLES :{ORANGE}Транспорт STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Фізика STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Маршрути STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Обмеження STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Катастрофи +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Створення світу +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Довкілля +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Органи влади STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Міста STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Підприємства STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Розподіл вантажів @@ -1807,6 +1849,7 @@ STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ба STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... базовий набір звуків '{STRING}' не знайдено STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... базовий набір музики '{STRING}' не знайдено STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Не вистачає пам'яті +STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Не вдалося розподілити {BYTES} спрайт-кешу. Спрайт кеш було зменшено до {BYTES}. Це зменшить швидкість роботи OpenTTD. Аби зменшити використання пам'яті спробуйте заборонити 32-бітну графіку і/або ступені масшатабування екрану # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -1820,28 +1863,28 @@ STR_INTRO_MULTIPLAYER :{BLACK}Мере STR_INTRO_GAME_OPTIONS :{BLACK}Налаштування гри STR_INTRO_HIGHSCORE :{BLACK}Таблиця рекордів -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Розширені налаштування +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Налаштування STR_INTRO_NEWGRF_SETTINGS :{BLACK}Налаштування NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Додатковий контент STR_INTRO_SCRIPT_SETTINGS :{BLACK}Налаштування AI / GS STR_INTRO_QUIT :{BLACK}Вихід -STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Почати нову гру. Ctrl+клік пропускає конфігурацію карти +STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Почати нову гру. Ctrl+клац мишою пропускає конфігурацію карти STR_INTRO_TOOLTIP_LOAD_GAME :{BLACK}Продовжити збережену гру STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Почати нову гру з використанням готової карти висот (рельєфу) STR_INTRO_TOOLTIP_PLAY_SCENARIO :{BLACK}Почати нову гру з використанням готового сценарію STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Створити свій сценарій STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Почати мережеву гру -STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Вибрати 'помірний' клімат -STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Вибрати 'субарктичний' клімат -STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Вибрати 'тропічний' клімат -STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Вибрати 'іграшковий' варіант +STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Вибрати 'помірний' ландшафт +STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Вибрати 'субарктичний' ландшафт +STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Вибрати 'тропічний' ландшафт +STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Вибрати 'іграшковий' ландшафт STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Показати налаштування гри STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Показати таблицю рекордів -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Показати розширені налаштування -STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Показати настройки NewGRF +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Налаштування відображення +STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Показати налаштування NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Перевірити доступний для завантаження додатковий контент STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Показати налаштування AI / Ігрового Скрипта STR_INTRO_TOOLTIP_QUIT :{BLACK}Вийти з OpenTTD @@ -1867,8 +1910,8 @@ STR_OSNAME_OS2 :OS/2 STR_OSNAME_SUNOS :SunOS # Abandon game -STR_ABANDON_GAME_CAPTION :{WHITE}Залишити гру -STR_ABANDON_GAME_QUERY :{YELLOW}Ви дійсно хочете залишити гру? +STR_ABANDON_GAME_CAPTION :{WHITE}Покинути гру +STR_ABANDON_GAME_QUERY :{YELLOW}Ви дійсно хочете покинути гру? STR_ABANDON_SCENARIO_QUERY :{YELLOW}Ви дійсно бажаєте вийти з цього сценарію? # Cheat window @@ -1880,6 +1923,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Гра STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Супербульдозер (руйнує все): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Тунелі перетинаються: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Реактивні літаки не будуть (часто) розбиватися в малих аеропортах: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Змінити максимальну висоту карти: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Змінити максимальну висоту гір на карті STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Помірний ландшафт STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Субарктичний ландшафт STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Субтропічний ландшафт @@ -1896,9 +1941,9 @@ STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Пока STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Показати фарбування автотранспорта STR_LIVERY_SHIP_TOOLTIP :{BLACK}Показати фарбування кораблів STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Показати фарбування авіації -STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Оберіть основний колір для обраної схеми. Ctrl+клік встановить обраний колір для всіх схем. -STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Оберіть другорядний колір для обраної схеми. Ctrl+клік встановить обраний колір для всіх схем. -STR_LIVERY_PANEL_TOOLTIP :{BLACK}Оберіть кольорову схему для зміни, чи декілька з Ctrl+клік. Клікніть на прямокутнику, щоб ввімкнути/вимкнути використання схем +STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Оберіть основний колір для обраної схеми. Ctrl+клац мишою встановить обраний колір для всіх схем +STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Оберіть другорядний колір для обраної схеми. Ctrl+клац мишою встановить обраний колір для всіх схем +STR_LIVERY_PANEL_TOOLTIP :{BLACK}Оберіть кольорову схему для зміни, чи декілька з Ctrl+клац мишою. Клацніть на прямокутнику, щоб ввімкнути/вимкнути використання схем STR_LIVERY_DEFAULT :Стандартний колір STR_LIVERY_STEAM :Паровоз @@ -1984,7 +2029,7 @@ STR_FACE_TIE_EARRING_TOOLTIP :{BLACK}Змін # Network server list STR_NETWORK_SERVER_LIST_CAPTION :{WHITE}Мережева гра -STR_NETWORK_SERVER_LIST_ADVERTISED :{BLACK}Рекламована +STR_NETWORK_SERVER_LIST_ADVERTISED :{BLACK}Інтернет STR_NETWORK_SERVER_LIST_ADVERTISED_TOOLTIP :{BLACK}Вибір між рекламованою (інтернет) і не рекламованою (локальна мережа, LAN) грою STR_NETWORK_SERVER_LIST_ADVERTISED_NO :Ні STR_NETWORK_SERVER_LIST_ADVERTISED_YES :Так @@ -1998,7 +2043,7 @@ STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Кліє STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Клієнти в мережі/макс.клієнтів{}Компанії в мережі/макс.компаній STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Розмір карти -STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Розмір карти гри{}Клікніть для сортування за районом +STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Розмір карти гри{}Клацніть мишою для сортування за районом STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Дата STR_NETWORK_SERVER_LIST_DATE_CAPTION_TOOLTIP :{BLACK}Поточна дата STR_NETWORK_SERVER_LIST_YEARS_CAPTION :{BLACK}Роки @@ -2122,7 +2167,7 @@ STR_NETWORK_GAME_LOBBY_PLAYERS :{SILVER}Гра STR_NETWORK_GAME_LOBBY_NEW_COMPANY :{BLACK}Нова компанія STR_NETWORK_GAME_LOBBY_NEW_COMPANY_TOOLTIP :{BLACK}Створити нову компанію -STR_NETWORK_GAME_LOBBY_SPECTATE_GAME :{BLACK}Гра глядачем +STR_NETWORK_GAME_LOBBY_SPECTATE_GAME :{BLACK}Спостерігати гру STR_NETWORK_GAME_LOBBY_SPECTATE_GAME_TOOLTIP :{BLACK}Спостерігати за грою як глядач STR_NETWORK_GAME_LOBBY_JOIN_COMPANY :{BLACK}Приєднатись до компанії STR_NETWORK_GAME_LOBBY_JOIN_COMPANY_TOOLTIP :{BLACK}Допомогти керувати цією компанією @@ -2218,7 +2263,7 @@ STR_NETWORK_ERROR_CHEATER :{WHITE}На ц STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Ви посилали забагато команд серверу STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Ви занадто довго вводили пароль STR_NETWORK_ERROR_TIMEOUT_COMPUTER :{WHITE}Ви дуже довго приєднувалися -STR_NETWORK_ERROR_TIMEOUT_MAP :{WHITE}Ви дуже довго завантажували мапу +STR_NETWORK_ERROR_TIMEOUT_MAP :{WHITE}Ви дуже довго завантажували карту STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Ви дуже довго приєднувалися до серверу ############ Leave those lines in this order!! @@ -2240,8 +2285,8 @@ STR_NETWORK_ERROR_CLIENT_SERVER_FULL :сервер п STR_NETWORK_ERROR_CLIENT_TOO_MANY_COMMANDS :посилав забагато команд STR_NETWORK_ERROR_CLIENT_TIMEOUT_PASSWORD :пароль не отримано за відведений час STR_NETWORK_ERROR_CLIENT_TIMEOUT_COMPUTER :час вийшов -STR_NETWORK_ERROR_CLIENT_TIMEOUT_MAP :мапа дуже довго завантажувалась -STR_NETWORK_ERROR_CLIENT_TIMEOUT_JOIN :мапа дуже довго оброблювалась +STR_NETWORK_ERROR_CLIENT_TIMEOUT_MAP :карта дуже довго завантажувалась +STR_NETWORK_ERROR_CLIENT_TIMEOUT_JOIN :карта дуже довго оброблювалась ############ End of leave-in-this-order STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Можлива втрата з'єднання @@ -2280,14 +2325,17 @@ STR_CONTENT_TYPE_CAPTION :{BLACK}Тип STR_CONTENT_TYPE_CAPTION_TOOLTIP :{BLACK}Тип вмісту STR_CONTENT_NAME_CAPTION :{BLACK}Назва STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}Назва вмісту -STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Клікніть на рядку, щоб побачити деталі{}Клікніть позначку, щоб обрати його для завантаження +STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Клацніть мишою на рядку, щоб побачити деталі{}Клацніть позначку, щоб обрати його для завантаження STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Вибрати всі STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Позначити для завантаження весь вміст STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Вибрати оновлення STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Позначити весь вміст, що є оновленням існуючого, для завантаження STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Зняти позначки STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Не завантажувати нічого +STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Шукати на сторонніх веб-сайтах +STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Шукати додатки, недоступні на серверах OpenTTD на сторонніх веб-сайтах STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Ви виходите з OpenTTD! +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Умови використання додатків з зовнішніх веб-сайтів можуть відрізнятися.{}Інструкції по встановленню даних додатків у OpenTTD шукайте на відповідних веб-сайтах.{}Продовжити? STR_CONTENT_FILTER_TITLE :{BLACK}Фільтр за назвою: STR_CONTENT_OPEN_URL :{BLACK}Відвідати вебсайт STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Відвітати вебсайт цього контенту @@ -2358,10 +2406,14 @@ STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Змін STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Зробити об'єкти невидимими, а не прозорими # Linkgraph legend window +STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Легенда вантажопотоку +STR_LINKGRAPH_LEGEND_ALL :{BLACK}Усе STR_LINKGRAPH_LEGEND_NONE :{BLACK}Немає STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Виберіть компанії для відображення # Linkgraph legend window and linkgraph legend in smallmap +STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}не використовується +STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLACK}заповнений STR_LINKGRAPH_LEGEND_OVERLOADED :{G=m}{TINY_FONT}{BLACK}перевантажений STR_LINKGRAPH_LEGEND_OVERLOADED.r :{G=m}{TINY_FONT}{BLACK}перевантаженого STR_LINKGRAPH_LEGEND_OVERLOADED.d :{G=m}{TINY_FONT}{BLACK}перевантаженому @@ -2394,7 +2446,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Буду STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Будувати залізничне депо (для купівлі та обслуговування поїздів). Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Перетворити колію на точку маршруту. Ctrl дозволяє об'єднання точок маршруту. Утримуйте Shift для показу очікуваних витрат STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Будувати станцію. Ctrl дозволяє об'єднання станцій. Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати сигнали. Ctrl переключає семафори/світлові сигнали{}Протяжка будує сигнали вздовж прямої ділянки рейок. Ctrl будує сигнали до наступної розв'язки{}Ctrl+клік перемикає показ вікна вибору сигналів. Утримуйте Shift для показу витрат на будівництво +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати залізничні сигнали. Ctrl переключає семафори/світлові сигнали{}Протяжка мишою будує сигнали вздовж прямої ділянки рейок. Ctrl будує сигнали до наступної розв'язки чи сигналу{}Ctrl+клац мишою вмикає показ вікна вибору сигналів. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Будувати міст. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Будувати тунель. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Будувати/демонтувати колію, сигнали, точки маршруту і станції. Утримання Ctrl також демонтує колію з точок маршрутів і станцій @@ -2766,7 +2818,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ця ділян STR_ABOUT_OPENTTD :{WHITE}Про OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Авторське право {COPYRIGHT} 1995 Кріс Сойєр, Всі права захищені STR_ABOUT_VERSION :{BLACK}OpenTTD версія {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 команда OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 команда OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Зберегти гру @@ -2801,6 +2853,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Міста: STR_MAPGEN_DATE :{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}Понизити лінію снігу @@ -2830,6 +2885,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Назв STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Розмір: 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}Змінити рік початку гри @@ -2868,12 +2924,12 @@ STR_NEWGRF_SETTINGS_ACTIVE_LIST :{WHITE}Акти STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE}Неактивні файли NewGRF STR_NEWGRF_SETTINGS_SELECT_PRESET :{ORANGE}Обрати набір: STR_NEWGRF_FILTER_TITLE :{ORANGE}Фільтр за строкою: -STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Завантажити обрані настройки -STR_NEWGRF_SETTINGS_PRESET_SAVE :{BLACK}Записати настройки -STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Записати поточний список як настройки +STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Завантажити обрані налаштування +STR_NEWGRF_SETTINGS_PRESET_SAVE :{BLACK}Записати налаштування +STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Записати поточний список як профіль налаштування STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Введіть назву настройок -STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Видалити настройки -STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Видалити обрані настройки +STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Видалити налаштування +STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Видалити обрані налаштування STR_NEWGRF_SETTINGS_ADD :{BLACK}Додати STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Додати вибраний NewGRF файл до Вашої конфігурації STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK}Пересканувати файли @@ -2885,6 +2941,7 @@ STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Пере STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Нижче STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Перемістити вибрані файли вниз по списку STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Оновити +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Оновити новішими версіями файли встановлених NewGRF'ів STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Список встановлених файлів NewGRF STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Встановлення параметрів @@ -2910,8 +2967,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Вимкн STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Несумісне з поточною версією OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Зберегти шаблон +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Список доступних шаблонів, скопіюйте один для збереження імені нижче +STR_SAVE_PRESET_TITLE :{BLACK}Введіть ім'я для шаблону +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Обране поточне ім'я для збереження в шаблоні STR_SAVE_PRESET_CANCEL :{BLACK}Скасувати +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Не змінювати шаблон STR_SAVE_PRESET_SAVE :{BLACK}Зберегти +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Зберегти шаблон для поточного обраного імені # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Змінити параметри NewGRF @@ -2936,14 +2999,17 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Пара # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Вирівнювання спрайту {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Наступний спрайт -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Йти до наступного нормального спрайту, пропускаючи будь-які псевдоспрайти, спрайти зі зміненими кольорами та шрифтові спрайти, а також обгортки (wrap) навколо на початку +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Йти до наступного нормального спрайту, пропускаючи будь-які псевдо/перемальовані/шрифтові спрайти і загортаючи навколо (wrap) починаючи з останнього спрайту закінчуючи першим STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Йти до спрайту STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Йти до заданого спрайту. Якщо він не є нормальним, йти до наступного нормального STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Попередній спрайт -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Повернутися до попереднього нормального спрайту, пропускаючи будь-які псевдоспрайти, спрайти зі зміненими кольорами та шрифтові спрайти, а також обгортки (wrap) навколо на початку +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Повернутися до попереднього нормального спрайту, пропускаючи будь-які псевдо/перемальовані/шрифтові спрайти і обгортаючи (wrap) навколо починаючи з першого спрайту і закінчуючи останнім STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Відображення обраного спрайту (вирівнювання ігнорується) STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Рухайте спрайт навколо, змінюючи його зміщення за X та Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Зміщення за X: {NUM}, Зміщення за Y: {NUM} +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Відновити відносні +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Відновити поточні зсуви (відносні) +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Зсув по осі X: {NUM}, Зсув по осі Y: {NUM} (Абсолютно) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Зсув по осі X: {NUM}, Зсув по осі Y: {NUM} (Відносно) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Вибрати спрайт STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Оберіть будь-який спрайт на екрані @@ -3000,6 +3066,7 @@ STR_NEWGRF_LIST_MISSING :{RED}Відсу STR_NEWGRF_BROKEN :{WHITE}Поведінка NewGRF '{0:STRING}' може спричинити розсинхронізацію та/або аварійне завершення STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Це змінило стан локомотиву '{1:ENGINE}', коли він не у депо STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Це змінило довжину транспорту для '{1:ENGINE}', якщо він не в депо +STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Було змінено вантажомісткість транспорту для '{1:ENGINE}' поза гаражом чи рембазою STR_BROKEN_VEHICLE_LENGTH :{WHITE}Потяг '{VEHICLE}', який належить '{COMPANY}', має неправильну довжину. Можливо, це спричинено проблемами з NewGRFs. Гра може розсинхронізуватись або аварійно завершитись STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' надає невірну інформацію @@ -3039,7 +3106,7 @@ STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Введ STR_TOWN_DIRECTORY_CAPTION :{WHITE}Міста STR_TOWN_DIRECTORY_NONE :{ORANGE}- немає - STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) -STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Назви міст - натисніть на назву, щоб показати місто у центрі екрану. Утримання Ctrl відкриває нове вікно з видом на місто +STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Назви міст - натисніть на назву, щоб показати місто у центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на місто STR_TOWN_POPULATION :{BLACK}Населення світу: {COMMA} # Town view window @@ -3054,11 +3121,11 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} доставлено STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (потрібно ще) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (доставлено) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Місто зростає кожен {ORANGE}{COMMA}{BLACK} день -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Місто зростає кожен {ORANGE}{COMMA}{BLACK} день (профінансовано) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Місто зростає раз на {ORANGE}{COMMA}{BLACK} д{P ень ні нів} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Місто зростає раз на {ORANGE}{COMMA}{BLACK}{NBSP}д{P ень ні нів} (профінансовано) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Місто {RED}не{BLACK} зростає STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Ліміт шуму в місті: {ORANGE}{COMMA}{BLACK} макс: {ORANGE}{COMMA} -STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Показати місто у центрі екрану. Утримання Ctrl відкриє нове вікно з видом на місто +STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Показати місто у центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на місто STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Місцева влада STR_TOWN_VIEW_LOCAL_AUTHORITY_TOOLTIP :{BLACK}Інформація про місцеву владу STR_TOWN_VIEW_RENAME_TOOLTIP :{BLACK}Змінити назву міста @@ -3098,7 +3165,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Куп STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Підкупити місцеву владу для збільшення вашого рейтингу, при викритті загрожує суворим покаранням.{}Вартість: {CURRENCY_LONG} # Goal window -STR_GOALS_CAPTION :{WHITE}{COMPANY} Цілі +STR_GOALS_CAPTION :{WHITE}Цілі {COMPANY} STR_GOALS_SPECTATOR_CAPTION :{WHITE}Глобальні цілі: STR_GOALS_GLOBAL_TITLE :{BLACK}Глобальні цілі: STR_GOALS_TEXT :{ORANGE}{STRING} @@ -3107,7 +3174,7 @@ STR_GOALS_SPECTATOR_NONE :{ORANGE}- Не STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} STR_GOALS_COMPANY_TITLE :{BLACK}Цілі компанії: -STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Клік мишкою на цілі (меті) відобразить по центру виробництва/місто/клітинку у головному вікні. Ctrl+клік відкриє міні-вікно +STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Клац мишою на цілі (меті) відобразить по центру виробництва/місто/клітинку у головному вікні. Ctrl+клац мишою відкриє міні-вікно # Goal question window STR_GOAL_QUESTION_CAPTION_QUESTION :Питання @@ -3115,7 +3182,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Інформа STR_GOAL_QUESTION_CAPTION_WARNING :Попередження STR_GOAL_QUESTION_CAPTION_ERROR :Помилка -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Відмінити STR_GOAL_QUESTION_BUTTON_OK :Гаразд STR_GOAL_QUESTION_BUTTON_NO :Ні @@ -3134,6 +3201,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Перезап STR_GOAL_QUESTION_BUTTON_POSTPONE :Відкласти STR_GOAL_QUESTION_BUTTON_SURRENDER :Здатися STR_GOAL_QUESTION_BUTTON_CLOSE :Закрити +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Субсидії @@ -3142,9 +3210,11 @@ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}Пер STR_SUBSIDIES_NONE :{ORANGE}- немає - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Призначені субсидії: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}Перевезення {STRING.r} з {STRING} до {STRING}{YELLOW} ({COMPANY}{YELLOW}, по {DATE_SHORT}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Натисніть на субсидії, щоб показати підприємство/місто у центрі екрану. Утримання Ctrl відкриває нове вікно з видом на підприємство/місто +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Натисніть на субсидії, щоб показати підприємство/місто у центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на підприємство/місто # Story book window +STR_STORY_BOOK_CAPTION :{WHITE}Історія {COMPANY} +STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Світова історія STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Стор. {NUM} STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Перейти до сторінки, вибраної в цьому списку. @@ -3152,9 +3222,10 @@ STR_STORY_BOOK_PREV_PAGE :{BLACK}Попе STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}На попередню сторінку STR_STORY_BOOK_NEXT_PAGE :{BLACK}Далі STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Наступна сторінка +STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Невірне посилання на завдання # Station list window -STR_STATION_LIST_TOOLTIP :{BLACK}Назви станцій - натисніть на назву, щоб показати станцію в центрі екрану. Утримання Ctrl відкриває нове вікно з видом на станцію +STR_STATION_LIST_TOOLTIP :{BLACK}Назви станцій - натисніть на назву, щоб показати станцію в центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на станцію STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Утримуйте Ctrl для вибору декількох пунктів STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} станці{P я ї й} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} @@ -3168,6 +3239,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Звід STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG} STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} з {STATION}) +STR_STATION_VIEW_RESERVED :{YELLOW}({CARGO_SHORT} зарезервовано для завантаження) STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Приймає STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Показати список приймання вантажів @@ -3178,9 +3250,14 @@ STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPAN STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Рейтинг STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Показати рейтинг станції +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Щомісячна пропозиція і місцевий рейтинг: STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) STR_STATION_VIEW_GROUP :{BLACK}Групувати по +STR_STATION_VIEW_WAITING_STATION :Станція: Очікується +STR_STATION_VIEW_WAITING_AMOUNT :Кількість: Очікується +STR_STATION_VIEW_PLANNED_STATION :Станція: Заплановано +STR_STATION_VIEW_PLANNED_AMOUNT :Кількість: Заплановано STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} з {STATION} STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT} через {STATION} STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} до {STATION} @@ -3188,9 +3265,16 @@ STR_STATION_VIEW_FROM_ANY :{RED}{CARGO_SHO STR_STATION_VIEW_TO_ANY :{RED}{CARGO_SHORT} до будь-якої станції STR_STATION_VIEW_VIA_ANY :{RED}{CARGO_SHORT} через будь-яку станцію STR_STATION_VIEW_FROM_HERE :{GREEN}{CARGO_SHORT} з цієї станції +STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_SHORT} зупиняється на цій станції STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} до цієї станції STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} без зупинки +STR_STATION_VIEW_GROUP_S_V_D :Джерело-Через-Місце призначення +STR_STATION_VIEW_GROUP_S_D_V :Джерело-Місце призначення-Через +STR_STATION_VIEW_GROUP_V_S_D :Через-Джерело-Місце призначення +STR_STATION_VIEW_GROUP_V_D_S :Через-Місце призначення-Джерело +STR_STATION_VIEW_GROUP_D_S_V :Місце призначення-Джерело-Через +STR_STATION_VIEW_GROUP_D_V_S :Місце призначення-Через-Джерело ############ range for rating starts STR_CARGO_RATING_APPALLING :жахливо @@ -3203,7 +3287,7 @@ STR_CARGO_RATING_EXCELLENT :відмінн STR_CARGO_RATING_OUTSTANDING :найкраще ############ range for rating ends -STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Показати станцію в центрі екрану. Утримання Ctrl відкриє нове вікно з видом на станцію +STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Показати станцію в центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на станцію STR_STATION_VIEW_RENAME_TOOLTIP :{BLACK}Перейменувати станцію STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Показати всі поїзди, які заходять на цю станцію @@ -3218,15 +3302,15 @@ STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Забо # Waypoint/buoy view window STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} -STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Показати точку маршруту в центрі єкрану. Ctrl+клік відкриє нове вікно у місці розташування точки маршруту +STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Показати точку маршруту в центрі екрану. Ctrl+клац мишою відкриє нове вікно у місці розташування точки маршруту STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Перейменувати точку маршруту -STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Показати буй в центрі екрану. Ctrl+клік відкриє нове вікно у місці розташування буя +STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Показати буй в центрі екрану. Ctrl+клац мишою відкриє нове вікно у місці розташування буя STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Перейменувати буй STR_EDIT_WAYPOINT_NAME :{WHITE}Перейменуйте точку маршруту # Finances window -STR_FINANCES_CAPTION :{WHITE}{COMPANY} - фінанси {BLACK}{COMPANY_NUM} +STR_FINANCES_CAPTION :{WHITE}Фінанси {COMPANY} {BLACK}{COMPANY_NUM} STR_FINANCES_EXPENDITURE_INCOME_TITLE :{WHITE}Витрати/доходи STR_FINANCES_YEAR :{WHITE}{NUM} STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Будівництво @@ -3250,9 +3334,9 @@ STR_FINANCES_LOAN_TITLE :{WHITE}Пози STR_FINANCES_MAX_LOAN :{WHITE}Макс. позика: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}Позичити {CURRENCY_LONG} -STR_FINANCES_BORROW_TOOLTIP :{BLACK}Збільшити розмір позики. Ctrl+клік позичає якнайбільше +STR_FINANCES_BORROW_TOOLTIP :{BLACK}Збільшити розмір позики. Ctrl+клац мишою позичає якнайбільше STR_FINANCES_REPAY_BUTTON :{BLACK}Повернути {CURRENCY_LONG} -STR_FINANCES_REPAY_TOOLTIP :{BLACK}Повернути частину позики. Ctrl+клік повертає якнайбільше +STR_FINANCES_REPAY_TOOLTIP :{BLACK}Повернути частину позики. Ctrl+клац мишою повертає якнайбільше STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Інфраструктура # Company view @@ -3325,13 +3409,13 @@ STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- не STR_INDUSTRY_DIRECTORY_ITEM :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}){YELLOW} ({COMMA}% перевезено) STR_INDUSTRY_DIRECTORY_ITEM_TWO :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}/{CARGO_LONG}{STRING}){YELLOW} ({COMMA}%/{COMMA}% перевезено) STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY} -STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Назви підприємств - клікніть на назву, щоб показати підприємство у центрі екрану. Утримання Ctrl відкриває нове вікно з видом на підприємство +STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Назви підприємств - клацніть мишою на назву, щоб показати підприємство у центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на підприємство # Industry view STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY} STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Вироблено за місяць: STR_INDUSTRY_VIEW_TRANSPORTED :{YELLOW}{CARGO_LONG}{STRING}{BLACK} ({COMMA}% перевезено) -STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Показати підприємство у центрі екрану. Утримання Ctrl відкриє нове вікно з видом на підприємство +STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Показати підприємство у центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на підприємство STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Обсяг виробництва: {YELLOW}{COMMA}% STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Підприємство оголосило про близьке закриття! @@ -3357,7 +3441,7 @@ STR_VEHICLE_LIST_ROAD_VEHICLE_CAPTION :{WHITE}{STRING} STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} - {COMMA} кораб{P ель лі лів} STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} - {COMMA} літак{P "" и ів} -STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Поїзди - клікніть на поїзді для детальної інформації +STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Поїзди - клацніть на поїзд для детальної інформації STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Авто - натисніть на авто для інформації STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Кораблі - натисніть для інформації STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Літаки - натисніть на літак для інформації @@ -3396,12 +3480,13 @@ STR_GROUP_DEFAULT_ROAD_VEHICLES :Незгруп STR_GROUP_DEFAULT_SHIPS :Незгруповані кораблі STR_GROUP_DEFAULT_AIRCRAFTS :Незгруповані літаки -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Групи - клікніть на групі, щоб побачити список транспорту цієї групи. Перетягуйте групи, щоб змінити ієрархію. -STR_GROUP_CREATE_TOOLTIP :{BLACK}Клікніть, щоб створити групу +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Групи - клацніть мишою на групі, щоб побачити список транспорту цієї групи. Перетягуйте групи, щоб змінити ієрархію. +STR_GROUP_CREATE_TOOLTIP :{BLACK}Клацніть мишою, щоб створити групу STR_GROUP_DELETE_TOOLTIP :{BLACK}Стерти вибрану групу STR_GROUP_RENAME_TOOLTIP :{BLACK}Перейменувати вибрану групу -STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Клікніть, щоб захистити групу від глобальної автозаміни +STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Клацніть мишою, щоб захистити групу від глобальної автозаміни +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Видалити групу STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Ви впевнені, що хочете видалити цю групу та всі вкладені групи? STR_GROUP_ADD_SHARED_VEHICLE :Додати спільний транспорт @@ -3441,10 +3526,10 @@ STR_PURCHASE_INFO_ALL_BUT :Всі, крі STR_PURCHASE_INFO_MAX_TE :{BLACK}Максимальна тягова сила: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Дальність: {GOLD}{COMMA} клітинок -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів - клацніть на поїзді для інформації -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список авто - клацніть на авто для інформації -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список вибору кораблів - клацніть на корабель для інформації -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список вибору літаків - клацніть на літак для інформації +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів. Клацніть на поїзд для інформації. Ctrl+клац мишою вимикає показ типу транспорту +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автомобілів. Клацніть на авто для отримання інформації. Ctrl+клац мишою вимикає показ типу транспорту +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список кораблів. Клацніть на корабель для отримання інформації. Ctrl+клац мишою вимикає показ типу транспорту +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список літальних апаратів. Клацніть на літальному апараті для отримання інформації. Ctrl+клац мишою вимикає показ типу транспорту STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Купити STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Купити @@ -3466,6 +3551,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Пере STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Увімкнути/вимкнути відображення типів залізничного транспорту +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Увімкнути/вимкнути відображення типів автотранспорту +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Увімкнути/вимкнути відображення типів кораблів +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Увімкнути/вимкнути відображення типів авіації + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Перейменувати тип поїзда STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Перейменувати тип авто STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Перейменувати тип корабля @@ -3519,15 +3619,15 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Клон STR_DEPOT_CLONE_SHIP :{BLACK}Клонувати STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Клонувати -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Купити копію поїзда з усіма вагонами. Натисніть на цю кнопку і потім на поїзд в депо або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Купити копію поїзда, включно з усіма автомобілями. Натисніть на цю кнопку, а потім на поїзд в депо або ззовні. Ctrl+клац мишою дозволить поділитися спільними завданнями. Shift+клац мишою покаже орієнтовні витрати на придбання STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Купити копію авто. Натисніть на цю кнопку і потім на авто в депо або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Купити копію корабля. Натисніть на цю кнопку, і потім на корабель в депо або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Купити копію літака. Натисніть на цю кнопку і потім на літак в ангарі або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання -STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Показати залізничне депо у центрі екрану. Утримання Ctrl відкриє нове вікно з видом на залізничне депо -STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Показати гараж у центрі екрану. Утримання Ctrl вікдриває нове вікно з видом на гараж -STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Показати док у центрі екрану. Утримання Ctrl відкриє нове вікно з видом на док -STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Показати ангар в центрі екрану. Утримання Ctrl відкриє нове вікно з видом на ангар +STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Показати залізничне депо у центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на залізничне депо +STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Показати гараж у центрі екрану. Ctrl+клац мишою вікдриває нове вікно з видом на гараж +STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Показати док у центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на док +STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Показати ангар в центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на ангар STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Отримати список усіх поїздів, що заходять до цього депо STR_DEPOT_VEHICLE_ORDER_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Отримати список усіх автомобілів, що заходять до цього депо @@ -3570,6 +3670,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Авто STR_REPLACE_VEHICLE_SHIP :Корабель STR_REPLACE_VEHICLE_AIRCRAFT :Літак +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Транспорт, що використовується +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Стовпчик з наявними транспортними засобами +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Доступний транспорт +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Стовпчик з транспортними засобами, доступними для заміни + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Виберіть транспорт для оновлення STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Виберіть новий транспорт, яким ви бажаєте замінити старий @@ -3601,10 +3706,10 @@ STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Дозв # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} -STR_VEHICLE_VIEW_TRAIN_LOCATION_TOOLTIP :{BLACK}Показати поїзд у центрі екрану. Утримання Ctrl спричинить слідкування за ним у головному вікні -STR_VEHICLE_VIEW_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Показати автомобіль у центрі екрану. Утримання Ctrl спричинить слідкування за ним у головному вікні -STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Показати корабель у центрі екрану. Утримання Ctrl спричинить слідкування за ним у головному вікні -STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Показати літак у центрі екрану. Утримання Ctrl спричинить слідкування за ним у головному вікні +STR_VEHICLE_VIEW_TRAIN_LOCATION_TOOLTIP :{BLACK}Показати поїзд у центрі екрану. Ctrl+клац мишою спричинить слідкування за ним у головному вікні +STR_VEHICLE_VIEW_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Показати автомобіль у центрі екрану. Ctrl+клац мишою спричинить слідкування за ним у головному вікні +STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Показати корабель у центрі екрану. Ctrl+клац мишою спричинить слідкування за ним у головному вікні +STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Показати літак у центрі екрану. Ctrl+клац мишою спричинить слідкування за ним у головному вікні STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити поїзд у депо STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити авто в депо @@ -3694,10 +3799,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Міст STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Плата за трансфер: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Інтервал техогляду: {LTBLUE}{COMMA} днів{BLACK} Останній техогляд: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Інтервал техогляду: {LTBLUE}{COMMA}{NBSP}днів{BLACK} Останній техогляд: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Інтервал техогляду: {LTBLUE}{COMMA}%{BLACK} Останній техогляд: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Збільшити інтервал техогляду на 10. Ctrl+клік збільшує інтервал техогляду на 5 -STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Зменшити період техогляду на 10. Ctrl+клік зменшує інтервал техогляду на 5 +STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Збільшити інтервал техогляду на 10. Ctrl+клац мишою збільшує інтервал техогляду на 5 +STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Зменшити період техогляду на 10. Ctrl+клац мишою зменшує інтервал техогляду на 5 STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :Відлік інтервалу між техоглядами STR_VEHICLE_DETAILS_DEFAULT :Стандартно @@ -3739,7 +3844,7 @@ STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Нова STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Нова місткість: {GOLD}{CARGO_LONG}{}{BLACK}Прибуток від переобладнання: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Нова місткість: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Вартість переобладнання: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Нова місткість: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Прибуток від переобладнання: {GREEN}{CURRENCY_LONG} -STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Вибрати транспорт для переобладнання. Перетягування мишкою дозволяє виділити декілька одиниць транспорту. Клік на порожньому місці виділить усю одиницю транспорту. Ctrl+клік мишкою виділить транспорт та ланцюжок перевезень за ним +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Вибрати транспорт для переобладнання. Перетягування мишою дозволяє виділити декілька одиниць транспорту. Клац мишою на порожньому місці виділить усю одиницю транспорту. Ctrl+клац мишою виділить транспорт та ланцюжок перевезень за ним STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Виберіть вид вантажу для перевезення STR_REFIT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Оберіть тип вантажу для перевезення @@ -3761,7 +3866,7 @@ STR_ORDERS_CAPTION :{WHITE}{VEHICLE STR_ORDERS_TIMETABLE_VIEW :{BLACK}Розклад STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Переключитись на розклад -STR_ORDERS_LIST_TOOLTIP :{BLACK}Маршрутний лист - клацніть на завданні для його вибору. CTRL+клік мишкою показує станцію +STR_ORDERS_LIST_TOOLTIP :{BLACK}Маршрутний лист - клацніть на завданні для його вибору. Ctrl+клац мишою показує станцію призначення STR_ORDER_INDEX :{COMMA}:{NBSP} STR_ORDER_TEXT :{STRING} {STRING} {STRING} @@ -3791,9 +3896,9 @@ STR_ORDER_DROP_NO_UNLOADING :Не розва STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Змінити поведінку розвантаження виділеного пункту STR_ORDER_REFIT :{BLACK}Переобладнати -STR_ORDER_REFIT_TOOLTIP :{BLACK}Оберіть, на який тип вантажу переобладнати у цьому завданні. Ctrl+клік для видалення команди переобладнання -STR_ORDER_REFIT_AUTO :{BLACK}Авто-переобладнання -STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Вибирає тип вантажу, для якого треба автопереобладнати транспорт в цьому наказі. Ctrl+клік видаляє автопереобладнання. Автопереобладнання буде виконано, тільки якщо транспорт підтримує його +STR_ORDER_REFIT_TOOLTIP :{BLACK}Оберіть, на який тип вантажу переобладнати у цьому завданні. Ctrl+клац мишою для видалення команди переобладнання +STR_ORDER_REFIT_AUTO :{BLACK}Переобладнати на станції +STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Обрати тип вантажу, для якого треба переобладнати транспорт. Ctrl+клац мишою скасовує переобладнання. Переобладнання на станції відбудеться, тільки якщо транспорт допускає це STR_ORDER_DROP_REFIT_AUTO :Зазначений вантаж STR_ORDER_DROP_REFIT_AUTO_ANY :Доступний вантаж @@ -3828,20 +3933,20 @@ STR_ORDER_CONDITIONAL_VALUE_TOOLTIP :{BLACK}Знач STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Введіть значення для порівняння STR_ORDERS_SKIP_BUTTON :{BLACK}Пропуск -STR_ORDERS_SKIP_TOOLTIP :{BLACK}Пропустити поточний наказ, і виконувати наступний. CTRL + клік переходить до вибраного наказу +STR_ORDERS_SKIP_TOOLTIP :{BLACK}Пропустити поточний наказ, і виконувати наступний. Ctrl+клац мишою переходить до вибраного наказу STR_ORDERS_DELETE_BUTTON :{BLACK}Видалити STR_ORDERS_DELETE_TOOLTIP :{BLACK}Видалити виділене завдання STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Видалити всі накази STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Відмінити спільні накази -STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Перестати використовути спільні накази. Ctrl+клік мишкою видаляє всі накази для цього транспорту. +STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Перестати використовути спільні накази. Ctrl+клац мишою видаляє всі накази для цього транспорту STR_ORDERS_GO_TO_BUTTON :{BLACK}Прямувати STR_ORDER_GO_TO_NEAREST_DEPOT :Прямувати до найближчого депо STR_ORDER_GO_TO_NEAREST_HANGAR :Прямувати в найближчий ангар STR_ORDER_CONDITIONAL :Зміна наказу з умовою STR_ORDER_SHARE :Спільні накази -STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Вставити новий наказ перед вибраним, або додати в кінець списку. Утримуйте Ctrl аби створити наказ як "повне завантаження будь-якого вантажу", для точок маршруту - "без зупинок", і для депо - "обслуговування". Пункт "Спільні накази" або утримування Ctrl дозволяє поділитися спільними наказами з виділеним транспортом. Клік на транспорті копіює з нього накази +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Вставити новий наказ перед вибраним, або додати в кінець списку. Утримуйте Ctrl аби створити наказ як "повне завантаження будь-якого вантажу", для точок маршруту - "без зупинок", і для депо - "обслуговування". Пункт "Спільні накази" або утримування Ctrl дозволяє поділитися спільними наказами з виділеним транспортом. Клац мишою на транспорті копіює з нього накази STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Показати транспорт з таким самим маршрутом @@ -3884,17 +3989,17 @@ STR_ORDER_NO_UNLOAD_FULL_LOAD :(Не розв STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Не розвантажуватись і чекати повного завантаження будь-якого виду) STR_ORDER_NO_UNLOAD_NO_LOAD :(Не розвантажуватись і не завантажуватись) -STR_ORDER_AUTO_REFIT :(Автоматично переобладнати в {STRING}) -STR_ORDER_FULL_LOAD_REFIT :(Завантажити все з автопереобладнанням в {STRING}) -STR_ORDER_FULL_LOAD_ANY_REFIT :(Повністю завантажити будь-який вид вантажу з автопереобладнанням в {STRING}) -STR_ORDER_UNLOAD_REFIT :(Розвантажити і взяти вантаж з автопереобладнанням в {STRING}) -STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Розвантажити і чекати повного завантаження вантажу з автопереобладнанням в {STRING}) -STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Розвантажити і чекати повного завантаження будь-якого вантажу з автопереобладнанням в {STRING}) -STR_ORDER_TRANSFER_REFIT :(Передати і взяти вантаж з автопереобладнанням в {STRING}) -STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Передати і чекати повного завантаження з автопереобладнанням в {STRING}) -STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Передати і чекати повного завантаження будь-якого вантажу з автопереобладнанням в {STRING}) -STR_ORDER_NO_UNLOAD_REFIT :(Не розвантажуватись і взяти вантаж з автопереобладнанням в {STRING}) -STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Не розвантажуватись і чекати повного завантаження з автопереобладнанням в {STRING}) +STR_ORDER_AUTO_REFIT :(Переобладнати в {STRING}) +STR_ORDER_FULL_LOAD_REFIT :(Завантажити все з переобладнанням в {STRING}) +STR_ORDER_FULL_LOAD_ANY_REFIT :(Повністю завантажити будь-який вид вантажу з переобладнанням в {STRING}) +STR_ORDER_UNLOAD_REFIT :(Розвантажити і взяти вантаж з переобладнанням в {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Розвантажитись і чекати повного завантаження вантажу з переобладнанням в {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_ANY_REFIT :(Розвантажитись і чекати повного завантаження будь-якого вантажу з переобладнанням в {STRING}) +STR_ORDER_TRANSFER_REFIT :(Передати і взяти вантаж з переобладнанням в {STRING}) +STR_ORDER_TRANSFER_FULL_LOAD_REFIT :(Передати і чекати повного завантаження з переобладнанням в {STRING}) +STR_ORDER_TRANSFER_FULL_LOAD_ANY_REFIT :(Передати і чекати повного завантаження будь-якого вантажу з переобладнанням в {STRING}) +STR_ORDER_NO_UNLOAD_REFIT :(Не розвантажуватись і взяти вантаж з переобладнанням в {STRING}) +STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Не розвантажуватись і чекати повного завантаження з переобладнанням в {STRING}) STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Не розвантажуватись і чекати повного завантаження будь-якого вантажу з автопереобладнанням в {STRING}) STR_ORDER_AUTO_REFIT_ANY :доступний вантаж @@ -3916,7 +4021,7 @@ STR_TIMETABLE_TITLE :{WHITE}{VEHICLE STR_TIMETABLE_ORDER_VIEW :{BLACK}Завдання STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Переключитись до вікна завдань -STR_TIMETABLE_TOOLTIP :{BLACK}Розклад - клікніть на наказ, щоб виділити його +STR_TIMETABLE_TOOLTIP :{BLACK}Розклад - клацніть мишою на наказ, щоб виділити його STR_TIMETABLE_NO_TRAVEL :Не прямувати STR_TIMETABLE_NOT_TIMETABLEABLE :В дорозі (час руху враховано в наступному не автоматичному наказі) @@ -3924,13 +4029,14 @@ STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :В дорозі STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Прямувати (без розкладу) зі швидкістю, що не перевищує {2:VELOCITY} (час не вказано) STR_TIMETABLE_TRAVEL_FOR :В дорозі {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :В дорозі {STRING} зі швидкістю, що не перевищує {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Поїздка (для {STRING}, без розкладу) STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Їхати (протягом {STRING}, без розкладу) зі швидкістю не більше {VELOCITY} STR_TIMETABLE_STAY_FOR_ESTIMATED :(стояти протягом {STRING}, без розкладу) STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(їхати протягом {STRING}, без розкладу) STR_TIMETABLE_STAY_FOR :і стояти {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :і прямувати до {STRING} -STR_TIMETABLE_DAYS :{COMMA} д{P ень ні нів} -STR_TIMETABLE_TICKS :{COMMA} одиниц{P я і ь} +STR_TIMETABLE_DAYS :{COMMA}{NBSP}д{P ень ні нів} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}одиниц{P я і ь} STR_TIMETABLE_TOTAL_TIME :{BLACK}Цей розклад займе {STRING} STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Цей розклад займе якнайменше {STRING} (не все враховано) @@ -3942,6 +4048,7 @@ STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}Цей STR_TIMETABLE_STATUS_START_AT :{BLACK}Цей розклад почнеться о {STRING} STR_TIMETABLE_STARTING_DATE :{BLACK}Дата початку +STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}Оберіть дату як точку відліку даного розкладу. Ctrl+клац мишою встановлює точку відліку даного розкладу і рівномірно розподіляє весь транспорт, що виконує це завдання згідно його відносного порядку розміщення, якщо порядок повністю розписаний у розкладі STR_TIMETABLE_CHANGE_TIME :{BLACK}Змінити час STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Змінити час, впродовж якого має виконуватись наказ @@ -4030,7 +4137,7 @@ STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Наст STR_AI_LIST_CAPTION :{WHITE}Доступні {STRING} STR_AI_LIST_CAPTION_AI :Модулі АІ STR_AI_LIST_CAPTION_GAMESCRIPT :Ігрові Скрипти -STR_AI_LIST_TOOLTIP :{BLACK}Клікніть, щоб вибрати скрипт +STR_AI_LIST_TOOLTIP :{BLACK}Клацніть мишою, щоб вибрати скрипт STR_AI_LIST_AUTHOR :{LTBLUE}Автор: {ORANGE}{STRING} STR_AI_LIST_VERSION :{LTBLUE}Версія: {ORANGE}{NUM} @@ -4079,6 +4186,10 @@ STR_INCOME_FLOAT_INCOME_SMALL :{TINY_FONT}{GRE STR_INCOME_FLOAT_INCOME :{GREEN}Прибуток: {CURRENCY_LONG} STR_FEEDER_TINY :{TINY_FONT}{YELLOW}Пересадка: {CURRENCY_LONG} STR_FEEDER :{YELLOW}Пересадка: {CURRENCY_LONG} +STR_FEEDER_INCOME_TINY :{TINY_FONT}{YELLOW}Перерахувати: {CURRENCY_LONG}{WHITE} / {GREEN}Дохід: {CURRENCY_LONG} +STR_FEEDER_INCOME :{YELLOW}Перерахувати: {CURRENCY_LONG}{WHITE} / {GREEN}Дохід: {CURRENCY_LONG} +STR_FEEDER_COST_TINY :{TINY_FONT}{YELLOW}Перерахувати: {CURRENCY_LONG}{WHITE} / {RED}Вартість: {CURRENCY_LONG} +STR_FEEDER_COST :{YELLOW}Перерахувати: {CURRENCY_LONG}{WHITE} / {RED}Вартість: {CURRENCY_LONG} STR_MESSAGE_ESTIMATED_COST :{WHITE}Приблизні витрати: {CURRENCY_LONG} STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Приблизний прибуток: {CURRENCY_LONG} @@ -4163,6 +4274,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Робо STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}Вже понижено до рівня моря STR_ERROR_TOO_HIGH :{WHITE}Дуже високо STR_ERROR_ALREADY_LEVELLED :{WHITE}... вже рівна +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Пізніше, міст над цим місцем буде занадто високо. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Неможливо змінити назву компанії... @@ -4189,7 +4301,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... на STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... надто близько до іншого міста STR_ERROR_TOO_MANY_TOWNS :{WHITE}... забагато міст STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... на карті немає вільного місця -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Місто не буде будувати дороги. Ви можете дозволити будівництво доріг у вікні Розширені налаштування->Економіка->Міста +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Місто не будуватиме дороги. Ви можете дозволити будівництво доріг через налаштування->Довкілля->Міста STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Дорога ремонтується STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Не можна видалити це місто...{}Станція або депо, що відносяться до міста або знаходяться на землі у власності міста, не можуть бути видалені STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... немає придатного місця для статуї в центрі цього міста @@ -4213,6 +4325,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... са STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... можна будувати тільки вище рівня снігу STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... можна будувати тільки нижче рівня снігу +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Відсутні місця, придатні для '{STRING}' виробництва +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Змініть параметри генерування карти, щоб отримати кращу карту + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Неможливо будувати станцію тут... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Неможливо будувати зупинку тут... @@ -4349,6 +4464,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Споч STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Початок та кінець не можуть бути в одному місці STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Кінці мостів на різних рівнях STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Міст дуже низький для цього місця +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Висота мосту є занадто великою для даного ландшафту STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Початок та кінець мають бути на одній лінії STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... обидва кінці мосту мають бути на землі STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... міст надто довгий @@ -4375,6 +4491,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... це STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Не можна створити групу... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Не можна стерти групу... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Не можна перейменувати групу... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Неможливо встановити головну групу... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Не можна позбутися всього транспорту цієї групи... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Не можна додати цей транспорт у групу... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Не можна додати спільний транспорт у групу... @@ -4949,6 +5066,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (приховано) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4984,8 +5102,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/chuvash.txt b/src/lang/unfinished/chuvash.txt index 99b21df0e8..a76dd73c35 100644 --- a/src/lang/unfinished/chuvash.txt +++ b/src/lang/unfinished/chuvash.txt @@ -171,6 +171,9 @@ STR_BUTTON_RENAME :{BLACK}Ята STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Чӳречене хуп +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Пӳрнӗ пек STR_BUTTON_CANCEL :{BLACK}Улӑштар @@ -475,10 +478,6 @@ STR_GAME_OPTIONS_CURRENCY_RUR :Вырӑсла ############ end of currency region -############ start of measuring units region -############ end of measuring units region - - ############ start of townname region STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Акӑлчан @@ -519,6 +518,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :расна + + # Custom currency window @@ -551,7 +552,7 @@ STR_SUBSIDY_X4 :x4 -# Advanced settings window +# Settings tree window @@ -1054,7 +1055,8 @@ STR_GOALS_TEXT :{ORANGE}{STRING # Goal question window -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_NONE :{ORANGE}- Ҫук - @@ -1140,6 +1142,9 @@ STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- Ҫу + + + # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -1172,6 +1177,7 @@ STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} + # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} @@ -1327,6 +1333,7 @@ STR_ERROR_MESSAGE_CAPTION :{YELLOW}Пӗл # Industry related errors + # Station construction related errors @@ -1485,8 +1492,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/frisian.txt b/src/lang/unfinished/frisian.txt index 75503fae4f..b99af4e20d 100644 --- a/src/lang/unfinished/frisian.txt +++ b/src/lang/unfinished/frisian.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Frisdrinken # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} passazjier{P "" s} +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}passazjier{P "" s} STR_QUANTITY_COAL :{WEIGHT_LONG} fan stienkoal -STR_QUANTITY_MAIL :{COMMA} tas{P "" sen} mei post +STR_QUANTITY_MAIL :{COMMA}{NBSP}tas{P "" sen} mei post STR_QUANTITY_OIL :{VOLUME_LONG} fan oalje -STR_QUANTITY_LIVESTOCK :{COMMA} In stikmennich bist{P "" en} -STR_QUANTITY_GOODS :{COMMA} krat{P "" ten} guod +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}Bist{P "" en} +STR_QUANTITY_GOODS :{COMMA}{NBSP}kret{P "" ten} guod STR_QUANTITY_GRAIN :{WEIGHT_LONG} fan nôt STR_QUANTITY_WOOD :{WEIGHT_LONG} fan hout STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} fan izererts STR_QUANTITY_STEEL :{WEIGHT_LONG} fan stiel -STR_QUANTITY_VALUABLES :{COMMA} sek{P "" ken} kostberheden +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}sek{P "" ken} kostberheden STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} fan kopererts STR_QUANTITY_MAIZE :{WEIGHT_LONG} stynske weet STR_QUANTITY_FRUIT :{WEIGHT_LONG} fan fruit -STR_QUANTITY_DIAMONDS :{COMMA} sek{P "" ken} diamanten +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}sek{P "" ken} diamanten STR_QUANTITY_FOOD :{WEIGHT_LONG} fan iten STR_QUANTITY_PAPER :{WEIGHT_LONG} fan papier -STR_QUANTITY_GOLD :{COMMA} sek{P "" ken} goud +STR_QUANTITY_GOLD :{COMMA}{NBSP}sek{P "" ken} goud STR_QUANTITY_WATER :{VOLUME_LONG} fan wetter STR_QUANTITY_WHEAT :{WEIGHT_LONG} fan weet STR_QUANTITY_RUBBER :{VOLUME_LONG} fan rubber STR_QUANTITY_SUGAR :{WEIGHT_LONG} fan sûker -STR_QUANTITY_TOYS :{COMMA} boartersguod -STR_QUANTITY_SWEETS :{COMMA} sek{P "" ken} snobbersguod +STR_QUANTITY_TOYS :{COMMA}{NBSP}kret{P "" ten} boartersguod +STR_QUANTITY_SWEETS :{COMMA}{NBSP}sek{P "" ken} snobbersguod STR_QUANTITY_COLA :{VOLUME_LONG} fan kola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} fan sûkerspin STR_QUANTITY_BUBBLES :{COMMA} bûle{P "" n} @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}NE STR_ABBREV_ALL :{TINY_FONT}AL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} passazjier{P "" s} -STR_BAGS :{COMMA} sek{P "" ken} -STR_TONS :{COMMA} Ton -STR_LITERS :{COMMA} liter{P "" s} -STR_ITEMS :{COMMA} foarwerp{P "" en} -STR_CRATES :{COMMA} kret{P "" ten} +STR_PASSENGERS :{COMMA}{NBSP}passazjier{P "" s} +STR_BAGS :{COMMA}{NBSP}sek{P "" ken} +STR_TONS :{COMMA}{NBSP}Ton +STR_LITERS :{COMMA}{NBSP}liter{P "" s} +STR_ITEMS :{COMMA}{NBSP}foarwerp{P "" en} +STR_CRATES :{COMMA}{NBSP}kret{P "" ten} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Donkerblau @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Griis STR_COLOUR_WHITE :Wyt # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mpo -STR_UNITS_VELOCITY_METRIC :{COMMA} km/o -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mpo +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/o +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hk -STR_UNITS_POWER_METRIC :{COMMA}hk -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P "" nen} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P "" nen} +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter{P "" s} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtertekst: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Skowbalk STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Skowbalke - skow list links/rjochts STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Brek gebouen ensafierder ôf op in stikje lân. Ctrl selektearet it gebiet diagonaal. Shift skeakelt tusken bouwe/taksearje fan de kosten +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Ferburgen treinen sjen litte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Ferburgen weinen sjen litte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Ferburgen skepen sjen litte +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Ferburgen fleanmasines sjen litte + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Mei it ynskeakelje fan dizze knop wurde ek ferburgen treinen toand +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Mei it ynskeakelje fan dizze knop wurde ek ferburgen weinen toand +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Mei it ynskeakelje fan dizze knop wurde ek ferburgen skepen toand +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Mei it ynskeakelje fan dizze knop wurde ek ferburgen fleantúgen toand + # Query window STR_BUTTON_DEFAULT :{BLACK}Standert STR_BUTTON_CANCEL :{BLACK}Annulearje @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Ofslute ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Spulopsjes -STR_SETTINGS_MENU_CONFIG_SETTINGS :Wiidweidiche ynstellings +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ynstellings STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Spulskriptynstellings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-ynstellings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Trochsichtigensopsjes @@ -833,6 +844,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} hat in leeche opdracht STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} hat dûbele opdrachten STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} hat in in ûnjildich stasjon yn syn opdrachten +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE}Hat in fleanfjild in syn tjinstregeling wêrfan de lâningsbaan te koart is STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} begjint âld te wurden STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} begjint tige âld te wurden @@ -915,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgyske Lari STR_GAME_OPTIONS_CURRENCY_IRR :Iraanske Rial (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Weinen STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selektearje de kant fan de dyk dêr't weinen ride moatte STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Lofts ride @@ -972,6 +980,12 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skermres STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Selektearje de skermresolutje om te brûken STR_GAME_OPTIONS_RESOLUTION_OTHER :oars +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interfacegrutte + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normaal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dûbele grutte +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Fjouwerdûbele grutte + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Basisset for ôfbyldings STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selektearje de basis ôfbyldingsset om te brûken STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} ûntbrekke{P "" nde}/korrupt{P "" e} bestân @@ -986,6 +1000,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Selektea STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} korrupt{P "" e} bestân{P "" en} STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Oanfoljende ynformaasje oer de basisset foar musyk +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Koe gjin list mei brûkbere resolúsjes ophelje STR_ERROR_FULLSCREEN_FAILED :{WHITE}Folslein skermmodus mislearre # Custom currency window @@ -1064,6 +1079,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Hiel Sljocht STR_TERRAIN_TYPE_FLAT :Sljocht STR_TERRAIN_TYPE_HILLY :Heuvelich STR_TERRAIN_TYPE_MOUNTAINOUS :Bergich +STR_TERRAIN_TYPE_ALPINIST :Alpinist STR_CITY_APPROVAL_PERMISSIVE :Tajouwend STR_CITY_APPROVAL_TOLERANT :Tolerant @@ -1071,8 +1087,8 @@ STR_CITY_APPROVAL_HOSTILE :Fijannich STR_WARNING_NO_SUITABLE_AI :{WHITE}Gjin brûkbere AIs beskikber...{}jo kinne ferskillende AIs downloade fia it 'Online Content' systeem -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Avansearre ynstellings +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Ynstellings STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Filtertekst: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Alles útklappe STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Alles ynklappe @@ -1088,9 +1104,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Bedriuwynstelli STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategory: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Type: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Behein de ûndersteande list ta feroare ynstellings -STR_CONFIG_SETTING_RESTRICT_BASIC :Basisynstellings -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Wiidweidige ynstellings -STR_CONFIG_SETTING_RESTRICT_ALL :Ekspêrynstelltings / alle ynstellings +STR_CONFIG_SETTING_RESTRICT_BASIC :Basisynstellings (allinich wichtige ynstellings sjen litte) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Wiidweidige ynstellings (measte ynstellings sjen litte) +STR_CONFIG_SETTING_RESTRICT_ALL :Ekspêrynstelltings (alle ynstellings sjen litte, wêrûnder fremde) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Ynstellings dy't net op de standerdwaarde stean STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Ynstellings dy't in oare waarde hawwe as dy foar it nije spul @@ -1145,7 +1161,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Skeakel rampen STR_CONFIG_SETTING_CITY_APPROVAL :Hâlding gemeenten tsjinoer werstrukturearring: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Kies hoe grut ympact fan lûdsoerlêst en omwrâldskea toch bedriuwen is op har reputaasje by de lokale bestjoeren en takomstige konstruksje yn harren mêd -STR_CONFIG_SETTING_AUTOSLOPE :Omkriten oanpasse under gebouen, spoaren, ensafuorthinne tastean (autoslope): {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimale kaarthichte: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Maksimale tastiene hichte fan bergen op 'e kaart ynstelle +STR_CONFIG_SETTING_AUTOSLOPE :Omkriten oanpasse under gebouen, spoaren, ensafuorthinne tastean: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Stean lânskipsbewurkings ûnder gebouwen en spoarbanen ta sûnder dat dizze ferwidere wurde STR_CONFIG_SETTING_CATCHMENT :Gebrûk meer realistyske hannelsgebieten: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Brûk ferskillende opheinbewâlden foar ferskillende typen stasjons en fleanfjilden @@ -1173,6 +1191,8 @@ STR_CONFIG_SETTING_INFLATION :Ynflaasje: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Skeakel ynflaasje foar de ekonomy yn, hjirby gean de kosten justjes hurder omheech as de ynkomsten STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Maksimale brêgelingte: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Maksimumlingte wêroerst brêgen oanlizze kinst +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimale brêgehichte: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimale hichte foar brêgen STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Maksimale tunnellingte: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Maksimumlingte wêroerst tunnels oanlizze kinst STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Mei de hân te betsjinjen boumetoade foar primêre yndustryen: {STRING} @@ -1248,7 +1268,7 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Fiertugen ferin STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :By ynskeakeljen bliuwe alle fiertugen foar ivich beskikber STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Ferfang âlde fiertugen automatysk: {STRING} STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :By ynskeakeljen wurden fiertugen dy't hast op harren ein binne automatyske ferfongen -STR_CONFIG_SETTING_AUTORENEW_MONTHS :Ferfang in fiertúch at dizze {STRING} +STR_CONFIG_SETTING_AUTORENEW_MONTHS :Ferfang in fiertúch automatysk nei {STRING} maksimale âldens STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Leeftiid wêrop in fiertúch yn oanmerking komt foar automatysk fernije STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} moanne fan te foaren STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} moannen letter @@ -1258,29 +1278,37 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Doer flatermeld STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Doer fan reade flatermeldings. Guon krityske flater wurde net automatysk ôfsluten STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} seconde{P "" s} STR_CONFIG_SETTING_HOVER_DELAY :Arktips sjen litte: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tiid wernei arktips sjen litten wurde at jo de mûs de boppe hâlde. Arktips kinne ek oan de rjochtermûsknop bûn wurde -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Sweve foar {COMMA} seconde {P "" s} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tiid wernei arktips sjen litten wurde at jo de mûs de boppe hâlde. Arktips kinne ek oan de rjochtermûsknop bûn wurde asto dizze wearde op 0 set +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Sweve foar {COMMA} milliseconde{P "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Rjochtsklikje STR_CONFIG_SETTING_POPULATION_IN_LABEL :Ynwennertal sjen litte by steden: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Lit it ynwennteral fan steden in harren labels sjen STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Groute fan grafyklijnen: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Widens dan de linen yn de grafiken. Tinne linen binne presyser, groutere linen binne makliker te sjen +STR_CONFIG_SETTING_LANDSCAPE :Lânskip: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR :Lângenerator: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Orizjineel STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Terreintype: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Allinich TerraGenesis) Heuvelichhied fan it lânskip +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Yndustry tichtens: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimale ôfstan fanôf de râne fan 'e kaart foar oaljeraffinaderijen: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Oaljeraffinaderijen wurde allinnich tichtoan de râne fan 'e kaart bout STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Sniehichte: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rûgens fan it terrein (allinnich TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rûgens fan it terrein: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Tige glêd STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Glêd STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Rûch STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Tige rûch +STR_CONFIG_SETTING_VARIETY :Fariaasjedistribusje: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT :Tal rivieren: {STRING} STR_CONFIG_SETTING_TREE_PLACER :Algoritme foar pleatsing beamen: {STRING} STR_CONFIG_SETTING_TREE_PLACER_NONE :Gjin STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Orizjineel STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Ferbettere +STR_CONFIG_SETTING_ROAD_SIDE :Weinen: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Kies riidkant STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Hichtekaartrotaasje: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Tsjin de klok yn STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Mei de klok mei @@ -1335,6 +1363,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Ut STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Scrolle mei lofter mûsknop: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Skeakel scrollen mei de lofter mûsknop oan. Dit is brûksum foar scollen op oanreitsskermen +STR_CONFIG_SETTING_AUTOSAVE :Automatysk bewarje: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Selektearje de tiid tusken automatysk bewarje fan it spul STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Brûk it {STRING} datumformaat yn de nammen fan opsleine splullen STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Datumformaat foar de bestânsnammen fan opsleine spullen @@ -1350,7 +1380,7 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Gjin aksjes STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Alle net-konstruksje-aksjes STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Alles útsein lânskipsoanpassings STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Alle aksjes -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Brûk de avansearre fiertugenlist: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Brûk groepen yn fiertugenlist: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Skeakelje de avansearre fiertugenlist yn foar it groepearren fan fiertugen STR_CONFIG_SETTING_LOADING_INDICATORS :Brûk laadyndikators: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :By ynskeakeljen sille ydikators sjen litten wurde boppe fiertugen dy't oan it yn- as útladen binne @@ -1393,7 +1423,7 @@ STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Stean bouwen fa STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :By ynkeakeljen kinst allinnich ynfrastruktuer bouwe foar typen ynfrastruktuer dêr't ek fiertúgen foar beskikber binne. STR_CONFIG_SETTING_MAX_TRAINS :Maksimaal oantal treinen per bedriuw: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Maksimaal oantal treinen dat in bedriuw hawwe mei -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maksimaal oantal auto's per bedriuw: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maksimaal oantal weinen per bedriuw: {STRING} STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Maksimaal oantal auto's dat in bedriuw hawwe kin STR_CONFIG_SETTING_MAX_AIRCRAFT :Maksimaal oantal fleanmasines per bedriuw: {STRING} STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Maksimaal oantal fleanmasines dat in bedriuw hawwe kin @@ -1418,6 +1448,14 @@ STR_CONFIG_SETTING_AI_PROFILE_HARD :Dreech STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Stea AIs ta yn multiplayer: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT :reperaasje skemas binne yn procenten: {STRING} +STR_CONFIG_SETTING_SERVINT_TRAINS :Standert reparaasjeskema foar treinen: {STRING} +STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Stel it standert reparaasjeskema yn foar nije treinen dy't gjin eigen reparaasjeskema kenne +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}{P 0 dei dagen}/% +STR_CONFIG_SETTING_SERVINT_DISABLED :Útskeakele +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Standert reparaasjeskema foar weinen: {STRING} +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Stel it standert reparaasjeskema yn foar nije weinen dy't gjin eigen reparaasjeskema kenne +STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Standert reparaasjeskema foar fleantúgen: {STRING} +STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Stel it standert reparaasjeskema yn foar nije fleantugen dy't gjin eigen reparaasjeskema kenne STR_CONFIG_SETTING_SERVINT_SHIPS :Standerd reparaasjeskema foar skippen: {STRING} STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Stel it standerd reparaasjeskema yn foar nije skippen dy't gjin eigen reparaasjeskema kenne STR_CONFIG_SETTING_NOSERVICE :Gjin ûnderhald as stikken gean út steat: {STRING} @@ -1467,6 +1505,9 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :It jier wêrop STR_CONFIG_SETTING_STARTING_YEAR :Begjin jier: {STRING} STR_CONFIG_SETTING_SMOOTH_ECONOMY :Jou de ekonomy mear lytse veroarings: {STRING} STR_CONFIG_SETTING_ALLOW_SHARES :Stea it keapjen fan oandielen ta: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :By slepe, pleats seinen eltse: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} tegel{P 0 "" s} +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :By slepe, fêste ôfstân hâlde tusken seinen: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Bou semafoor seinen foar it jier: {STRING} STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Brûk sein wurkbalk: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Type sein dat standaard boud wurdt: {STRING} @@ -1499,7 +1540,13 @@ STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :Oerol STR_CONFIG_SETTING_TOOLBAR_POS :Plak fan de haad wurkbalk: {STRING} STR_CONFIG_SETTING_STATUSBAR_POS :Posysje fan statusbalke: {STRING} -STR_CONFIG_SETTING_SOFT_LIMIT :Maximum oantal non-sticky finsters: {STRING} +STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} pixel{P 0 "" s} +STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Útskeakele +STR_CONFIG_SETTING_SOFT_LIMIT :Maksimaal oantal non-sticky finsters: {STRING} +STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} +STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :útskeakele +STR_CONFIG_SETTING_ZOOM_MIN :Maksimum zoom in nivo: {STRING} +STR_CONFIG_SETTING_ZOOM_MAX :Maksimum zoom out nivo: {STRING} STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normaal @@ -1507,11 +1554,13 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x STR_CONFIG_SETTING_TOWN_GROWTH :Tempo fan stêdsútwreiding: {STRING} +STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Tempo fan stêdsútwreiding STR_CONFIG_SETTING_TOWN_GROWTH_NONE :gjin STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :langsaam STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :gewoan STR_CONFIG_SETTING_TOWN_GROWTH_FAST :snel STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :Hiel snel +STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Gjin STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Begjin stêdgrutte fermenigfuldiger: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :hânmjittich @@ -1548,6 +1597,8 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Folume-ienheid: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Wannear't der folumes sichtber binne yn de interface de selektearre ienheiden brûke STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Ymperiaal (gal) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrysk (l) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Ymperiaal (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrysk (kgf) @@ -1560,10 +1611,21 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrysk (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Lokalisaasje +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Ôfbyldings +STR_CONFIG_SETTING_SOUND :{ORANGE}Lûd STR_CONFIG_SETTING_INTERFACE :{ORANGE}Interface +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Algemien STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}konstruksje +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Nijs / Adviseurs +STR_CONFIG_SETTING_COMPANY :{ORANGE}Bedriuw STR_CONFIG_SETTING_VEHICLES :{ORANGE}Auto's +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Natuerkundig model STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Route +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Beheinings +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Rampen / Ûngelokken +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Wrâldgeneraasje +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Omwrâld +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Autoriteiten STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Stêd STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}yndustryen STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Frachtdistribusje @@ -1579,9 +1641,13 @@ STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES :Pathfinder foar STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Pathfinder foar skippen: {STRING} STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Omkeare fan treinen by seinen: {STRING} -STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}veroarje wearde +STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Feroarje wearde # Config errors +STR_CONFIG_ERROR_ARRAY :{WHITE}... flater in reeks '{STRING}' +STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... ûnjildige wearde '{STRING}' foar '{STRING}' +STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :Dat strykt net mei dizze ferzje fan OpenTTD +STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :ûnbekind # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -1594,9 +1660,11 @@ STR_INTRO_SCENARIO_EDITOR :{BLACK}Lânskip STR_INTRO_MULTIPLAYER :{BLACK}Multispiler STR_INTRO_GAME_OPTIONS :{BLACK}Spul Opsjes -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Avansearre ynstellings +STR_INTRO_HIGHSCORE :{BLACK}Topskoretabel +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ynstellings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF ynstellings STR_INTRO_ONLINE_CONTENT :{BLACK}Sikje online ynhâld +STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spulskriptynstellings STR_INTRO_QUIT :{BLACK}Ôfslúte STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Begjin in nei spul. Ctrl + klik slaat kaartynstelling oer @@ -1612,9 +1680,11 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Selektea STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Selektear 'boartersguodlân' lânskip STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Lit spul opsjes sjen -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Lit avansearre ynstellings sjen +STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Topskoretabel sjen litte +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ynstellings sjen litte STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Lit NewGRF ynstellings sjen STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Strún ynternet ôf om nije ynhâld del te heljen +STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}AI/Spulskriptynstellings sjen litte STR_INTRO_TOOLTIP_QUIT :{BLACK}Slút 'OpenTTD' ôf @@ -1649,6 +1719,7 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Spielje STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Gigantyske sloopmodus: {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunnels Meie inoar krúse: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Grutte fleantúgen stoarte net faak del op lytse fleanfjilden: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Feroarje de maksimale kaarthichte: {ORANGE}{NUM} STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Gêrs lânskip STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Snie lânskip STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Sub-tropysk lânskip @@ -1695,18 +1766,23 @@ STR_LIVERY_FREIGHT_TRAM :Fracht Tram STR_FACE_CAPTION :{WHITE}Gesicthseleksje STR_FACE_CANCEL_TOOLTIP :{BLACK}Nije gesichtseleksje annulearje STR_FACE_OK_TOOLTIP :{BLACK}Akseptear nije gesichtseleksje +STR_FACE_RANDOM :{BLACK}Samar wat STR_FACE_MALE_BUTTON :{BLACK}Man STR_FACE_MALE_TOOLTIP :{BLACK}Selektear manlike gesichten STR_FACE_FEMALE_BUTTON :{BLACK}Frou STR_FACE_FEMALE_TOOLTIP :{BLACK}Selektear froulike gesichten STR_FACE_NEW_FACE_BUTTON :{BLACK}Nei Gesicht -STR_FACE_NEW_FACE_TOOLTIP :{BLACK}Meistje willekeurich nij gesicht +STR_FACE_NEW_FACE_TOOLTIP :{BLACK}Meitsje samar in nij gesicht STR_FACE_ADVANCED :{BLACK}Afansjearre +STR_FACE_ADVANCED_TOOLTIP :{BLACK}Wiidweidige gesichtseleksje +STR_FACE_SIMPLE :{BLACK}Simpel +STR_FACE_SIMPLE_TOOLTIP :{BLACK}Ienfâldige gesichtseleksje STR_FACE_LOAD :{BLACK}Laad STR_FACE_LOAD_TOOLTIP :{BLACK}Laad standaard gesicht STR_FACE_FACECODE :{BLACK}Spielers gesicht noemer STR_FACE_SAVE :{BLACK}Opslaan +STR_FACE_SAVE_TOOLTIP :{BLACK}Favorite gesicht opslaan STR_FACE_EUROPEAN :{BLACK}Jeropeesk STR_FACE_SELECT_EUROPEAN :{BLACK}Selektearje jeropeeske gesichten STR_FACE_AFRICAN :{BLACK}Afrikaans @@ -1716,8 +1792,27 @@ STR_FACE_NO :# STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Snorren en earbellen STR_FACE_HAIR :Hier: STR_FACE_HAIR_TOOLTIP :{BLACK}Veroarje hier +STR_FACE_EYEBROWS :Wynbrauwen: +STR_FACE_EYEBROWS_TOOLTIP :{BLACK}Wynbrauwen feroarje STR_FACE_EYECOLOUR :Kleur eagen: +STR_FACE_EYECOLOUR_TOOLTIP :{BLACK}Feroarje eechkleur STR_FACE_GLASSES :Bril: +STR_FACE_GLASSES_TOOLTIP :{BLACK}Bril oansette +STR_FACE_GLASSES_TOOLTIP_2 :{BLACK}Bril feroarje +STR_FACE_NOSE :Noas: +STR_FACE_NOSE_TOOLTIP :{BLACK}Noas feroarje +STR_FACE_LIPS :Lippen: +STR_FACE_MOUSTACHE :Snor: +STR_FACE_LIPS_MOUSTACHE_TOOLTIP :{BLACK}Feroarje lippen of snor +STR_FACE_CHIN :Kin: +STR_FACE_CHIN_TOOLTIP :{BLACK}Feroarje kin +STR_FACE_JACKET :Jas: +STR_FACE_JACKET_TOOLTIP :{BLACK}Feroarje jas +STR_FACE_COLLAR :Kraach: +STR_FACE_COLLAR_TOOLTIP :{BLACK}Feroarje kraach +STR_FACE_TIE :Strik: +STR_FACE_EARRING :Earbel: +STR_FACE_TIE_EARRING_TOOLTIP :{BLACK}Feroarje strik of earbel # Network server list STR_NETWORK_SERVER_LIST_CAPTION :{WHITE}Multiplayer @@ -1742,28 +1837,36 @@ STR_NETWORK_SERVER_LIST_LANGUAGE :{SILVER}Taal: { STR_NETWORK_SERVER_LIST_LANDSCAPE :{SILVER}Lânskip: {WHITE}{STRING} STR_NETWORK_SERVER_LIST_MAP_SIZE :{SILVER}Lângrutte: {WHITE}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_SERVER_VERSION :{SILVER}Tsjinnerferzje: {WHITE}{STRING} -STR_NETWORK_SERVER_LIST_SERVER_ADDRESS :{SILVER}Server adres: {WHITE}{STRING} +STR_NETWORK_SERVER_LIST_SERVER_ADDRESS :{SILVER}Tsjinneradres: {WHITE}{STRING} STR_NETWORK_SERVER_LIST_START_DATE :{SILVER}Start datum: {WHITE}{DATE_SHORT} STR_NETWORK_SERVER_LIST_SERVER_OFFLINE :{SILVER}SERVER NET BESKIKBER STR_NETWORK_SERVER_LIST_SERVER_FULL :{SILVER}SERVER VOL STR_NETWORK_SERVER_LIST_VERSION_MISMATCH :{SILVER}FERKEARDE FERZJE +STR_NETWORK_SERVER_LIST_GRF_MISMATCH :{SILVER}FERKEARDE NEWGRF +STR_NETWORK_SERVER_LIST_FIND_SERVER :{BLACK}Server sykje STR_NETWORK_SERVER_LIST_ADD_SERVER :{BLACK}Tsjinner tafoegje STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Start tsjinner STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP :{BLACK}Start dien eigen tsjinner +STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE :{BLACK}Fier dyn namme in # Start new multiplayer server STR_NETWORK_START_SERVER_CAPTION :{WHITE}Start in spul foar multispilers STR_NETWORK_START_SERVER_NEW_GAME_NAME :{BLACK}Spulnamme: +STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Wachtwurd ynstelle STR_NETWORK_START_SERVER_UNADVERTISED :Nee STR_NETWORK_START_SERVER_ADVERTISED :Ja +STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} bedriuw{P "" en} +STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Maksimaal tal bedriuwen: STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} taskôger{P "" s} STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Maksimaal tal taskôgers: +STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Sprutsen taal: +STR_NETWORK_START_SERVER_NEW_GAME_NAME_OSKTITLE :{BLACK}Fier in namme yn foar it networkspul # Network game languages ############ Leave those lines in this order!! @@ -1808,25 +1911,41 @@ STR_NETWORK_LANG_LATVIAN :Letsk # Network game lobby +STR_NETWORK_GAME_LOBBY_COMPANY_INFO :{SILVER}BEDRIUWSYNFORMAASJE +STR_NETWORK_GAME_LOBBY_COMPANY_NAME :{SILVER}Bedriuwsnamme: {WHITE}{STRING} +STR_NETWORK_GAME_LOBBY_VALUE :{SILVER}Bedriuwswearde: {WHITE}{CURRENCY_LONG} STR_NETWORK_GAME_LOBBY_PERFORMANCE :{SILVER}Prestaasje: {WHITE}{NUM} STR_NETWORK_GAME_LOBBY_VEHICLES :{SILVER}Auto's: {WHITE}{NUM} {TRAIN}, {NUM} {LORRY}, {NUM} {BUS}, {NUM} {SHIP}, {NUM} {PLANE} STR_NETWORK_GAME_LOBBY_STATIONS :{SILVER}Stasjons: {WHITE}{NUM} {TRAIN}, {NUM} {LORRY}, {NUM} {BUS}, {NUM} {SHIP}, {NUM} {PLANE} STR_NETWORK_GAME_LOBBY_PLAYERS :{SILVER}Spilers: {WHITE}{STRING} +STR_NETWORK_GAME_LOBBY_NEW_COMPANY :{BLACK}Nei Bedriuw +STR_NETWORK_GAME_LOBBY_NEW_COMPANY_TOOLTIP :{BLACK}Nei bedriuw oprjochtsje +STR_NETWORK_GAME_LOBBY_SPECTATE_GAME :{BLACK}Spul taskôgje +STR_NETWORK_GAME_LOBBY_SPECTATE_GAME_TOOLTIP :{BLACK}Spul besjen as taskôger # Network connecting window STR_NETWORK_CONNECTING_CAPTION :{WHITE}Ferbyning meitsje... ############ Leave those lines in this order!! STR_NETWORK_CONNECTING_1 :{BLACK}(1/6) Ferbyning meitsje... +STR_NETWORK_CONNECTING_2 :{BLACK}(2/6) Autorisearje... +STR_NETWORK_CONNECTING_3 :{BLACK}(3/6) Wachtsje... STR_NETWORK_CONNECTING_4 :{BLACK}(4/6) Lân delhelje... +STR_NETWORK_CONNECTING_5 :{BLACK}(5/6) Data ferwurkje... +STR_NETWORK_CONNECTING_6 :{BLACK}(6/6) Registrearje... +STR_NETWORK_CONNECTING_SPECIAL_1 :{BLACK}Spulynformaasje ophelje... +STR_NETWORK_CONNECTING_SPECIAL_2 :{BLACK}Bedriuwsynformaasje ophelje... ############ End of leave-in-this-order STR_NETWORK_CONNECTING_DOWNLOADING_1 :{BLACK}{BYTES} Delhelle oant STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} / {BYTES} delhelle +STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}Ferbining ferbrekke +STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Tsjinner is beskerme. Fier wachtwurd yn +STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Bedriuw is beskerme. Fier wachtwurd yn # Network company list added strings STR_NETWORK_COMPANY_LIST_SPECTATE :{WHITE}Taskôgje @@ -1835,15 +1954,20 @@ STR_NETWORK_COMPANY_LIST_NEW_COMPANY :{WHITE}Nei Bedr # Network client list STR_NETWORK_CLIENTLIST_KICK :Skoppe STR_NETWORK_CLIENTLIST_GIVE_MONEY :Jouw jild +STR_NETWORK_CLIENTLIST_SPEAK_TO_CLIENT :Priveeberjocht STR_NETWORK_SERVER :Tsjinner +STR_NETWORK_SPECTATORS :Taskôgers STR_NETWORK_TOOLBAR_LIST_SPECTATOR :{BLACK}Taskôger # Network set password +STR_COMPANY_PASSWORD_CAPTION :{WHITE}Bedriuwswachtwurd # Network company info join/password STR_COMPANY_VIEW_JOIN :{BLACK}Mei spielje +STR_COMPANY_VIEW_PASSWORD :{BLACK}Wachtwurd +STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}Bedriuwswachtwurd ynstelle # Network chat STR_NETWORK_CHAT_SEND :{BLACK}Stjoer @@ -1858,30 +1982,53 @@ STR_NETWORK_CHAT_TO_CLIENT :[Privee] Nei {S STR_NETWORK_CHAT_ALL :[Yderiin] {STRING}: {WHITE}{STRING} # Network messages +STR_NETWORK_ERROR_NOSERVER :{WHITE}Koe gjin networkspullen fine +STR_NETWORK_ERROR_LOSTCONNECTION :{WHITE}Networkspul ferbining kwyt +STR_NETWORK_ERROR_SAVEGAMEERROR :{WHITE}Koe opslein spul net laden STR_NETWORK_ERROR_SERVER_START :{WHITE}Koe de tsjinner net starte STR_NETWORK_ERROR_CLIENT_START :{WHITE}Koe gjin ferbyning meitsje +STR_NETWORK_ERROR_TIMEOUT :{WHITE}Ferbining #{NUM} ferrûn +STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Ferkeard wachtwurd +STR_NETWORK_ERROR_SERVER_FULL :{WHITE}De tsjinner is vol STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Do stjoerst tevolle opdrachten ny de server ############ Leave those lines in this order!! STR_NETWORK_ERROR_CLIENT_GENERAL :algemiene flater STR_NETWORK_ERROR_CLIENT_SAVEGAME :koe it lân net lade +STR_NETWORK_ERROR_CLIENT_CONNECTION_LOST :ferbining kwyt +STR_NETWORK_ERROR_CLIENT_NEWGRF_MISMATCH :Ferkearde NewGRF +STR_NETWORK_ERROR_CLIENT_NOT_AUTHORIZED :net autorisearre +STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :ûnjildich of ûnferwacht pakket ûnfange +STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :ferkearde revyzje +STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :namme is al beset +STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :ferkeard wachtwurd STR_NETWORK_ERROR_CLIENT_TOO_MANY_COMMANDS :joech tevolle opdrachten +STR_NETWORK_ERROR_CLIENT_TIMEOUT_MAP :kaart delheljen duorret te lang +STR_NETWORK_ERROR_CLIENT_TIMEOUT_JOIN :kaart ferwurkje duorret te lang ############ End of leave-in-this-order STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mooglik ferbinning kwyt -STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}De lêste{NUM} secondes {P "" s} is gjin data oankom fan e server +STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}De lêste{NUM} seconde{P "" s} is gjin data oankom fan e server # Network related errors STR_NETWORK_SERVER_MESSAGE :*** {1:STRING} ############ Leave those lines in this order!! +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :hânmjittich +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :spulskript ############ End of leave-in-this-order STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} der is ien bykommen(Client #{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} is in neie taskôger STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} hat syn/har namme oanpast nei {STRING} +STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Tsjinner hat de ferbining sluten # Content downloading window +STR_CONTENT_TITLE :{WHITE}Ynhâld delheljen STR_CONTENT_TYPE_CAPTION :{BLACK}Type STR_CONTENT_NAME_CAPTION :{BLACK}Namme +STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Alles selektearje +STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Alles deselektearje +STR_CONTENT_OPEN_URL :{BLACK}Webside besykje +STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Webside foar dizze ynhâld besykje STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Delhelje STR_CONTENT_DETAIL_NAME :{SILVER}Namme: {WHITE}{STRING} STR_CONTENT_DETAIL_VERSION :{SILVER}Ferzje: {WHITE}{STRING} @@ -1889,14 +2036,17 @@ STR_CONTENT_DETAIL_DESCRIPTION :{SILVER}Beskriu STR_CONTENT_DETAIL_URL :{SILVER}URL: {WHITE}{STRING} STR_CONTENT_DETAIL_TYPE :{SILVER}Type: {WHITE}{STRING} STR_CONTENT_DETAIL_FILESIZE :{SILVER}Bestângrutte: {WHITE}{BYTES} +STR_CONTENT_NO_ZLIB_SUB :{WHITE}... delheljen fan dizze ynhâld is net mooglik # Order of these is important! STR_CONTENT_TYPE_NEWGRF :NewGRF STR_CONTENT_TYPE_AI :AI STR_CONTENT_TYPE_SCENARIO :Lânskip STR_CONTENT_TYPE_HEIGHTMAP :Hichtemap +STR_CONTENT_TYPE_GAME_SCRIPT :Spulskript # Content downloading progress window +STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Ynhâld delheljen... STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Freechet bestânen an... STR_CONTENT_DOWNLOAD_FILE :{WHITE}Besich met delheljen fan {STRING} ({NUM} fan {NUM}) STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Delheljen dien @@ -1908,8 +2058,12 @@ STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... ferb STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... bestân koe net opslein wurde STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Kin it delhelle bestân net útpakke +STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Missende ôfbyldings +STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Ja, ôfbyldings delheljen +STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nee, OpenTTD ôfslute # Transparency settings window +STR_TRANSPARENCY_CAPTION :{WHITE}Trochsichtigenopsjes # Linkgraph legend window STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Frachtstreamleginda @@ -1929,12 +2083,15 @@ STR_STATION_BUILD_ACCEPTS_CARGO :{BLACK}Akseptea STR_STATION_BUILD_SUPPLIES_CARGO :{BLACK}Levert: {GOLD}{CARGO_LIST} # Join station window +STR_JOIN_STATION_CAPTION :{WHITE}Stasjon gearfoegje +STR_JOIN_STATION_CREATE_SPLITTED_STATION :{YELLOW}In apart stasjon bouwe STR_JOIN_WAYPOINT_CAPTION :{WHITE}Kontrôlepost gearfoegje STR_JOIN_WAYPOINT_CREATE_SPLITTED_WAYPOINT :{YELLOW}In apart kontrôlepost bouwe # Rail construction toolbar STR_RAIL_TOOLBAR_RAILROAD_CONSTRUCTION_CAPTION :Spoarwei Konstruksje +STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Elektrifisearre Spoarwei Bouwe STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Monorail Konstruksje STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Maglev Konstruksje @@ -1947,6 +2104,10 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Bou in s STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Bou in spoartunnel STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Set bouen/fuortheljen foar spoaren en stopljochten oan/út +STR_RAIL_NAME_RAILROAD :Spoarwei +STR_RAIL_NAME_ELRAIL :Elektrifisearre spoarwei +STR_RAIL_NAME_MONORAIL :Monorail +STR_RAIL_NAME_MAGLEV :Maglev # Rail depot construction window STR_BUILD_DEPOT_TRAIN_ORIENTATION_CAPTION :{WHITE}Treindepot Rjochting @@ -1959,15 +2120,20 @@ STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}Selectea # Rail station construction window STR_STATION_BUILD_RAIL_CAPTION :{WHITE}Treinstasjon Seleksje STR_STATION_BUILD_ORIENTATION :{BLACK}Rjochting +STR_STATION_BUILD_RAILROAD_ORIENTATION_TOOLTIP :{BLACK}Selektearje oriïntaasje fan treinstasjon STR_STATION_BUILD_NUMBER_OF_TRACKS :{BLACK}Oantal banen STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Selektear oantal banen foar treinstasjon STR_STATION_BUILD_PLATFORM_LENGTH :{BLACK}Stasjon lengte STR_STATION_BUILD_PLATFORM_LENGTH_TOOLTIP :{BLACK}Selektear lengte fan treinstasjon +STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Selektearje type stasjon om te bouwe +STR_STATION_CLASS_DFLT :Standert stasjon STR_STATION_CLASS_WAYP :Kontrôleposten # Signal window +STR_BUILD_SIGNAL_CAPTION :{WHITE}Seinseleksje +STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Bloksein (semafoar){}Dit is it ienfâldigste type sein wat mar ien trein in in blok tasteat # Bridge selection window STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Selektear Spoarbrêge @@ -1986,6 +2152,7 @@ STR_BRIDGE_NAME_TUBULAR_STEEL :Buis, Stiel # Road construction toolbar STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Wegenbou +STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Tramwei Konstruksje STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Bou wei STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Bou autodepot (om auto's te bouen en te únderhâlden) STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Bou busstasjon @@ -1997,10 +2164,20 @@ STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Wikselje # Road depot construction window STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Autodepot rjochting STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP :{BLACK}Kies rjochting foar autodepot +STR_BUILD_DEPOT_TRAM_ORIENTATION_CAPTION :{WHITE}Tramdepot Rjochting +STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Kies rjochting foar tramdepot # Road vehicle station construction window +STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Busstation Rjochting +STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Selektearje rjochting fan busstasjon +STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Frachtstasjon Rjochting +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Rjochting fan Tramstasjon +STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Kies rjochting fan frachttramstasjon # Waterways toolbar (last two for SE only) +STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Wetterwei Konstruksje +STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Wetterwei +STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Bou akwadukt. Shift skeakelt tusken bouwe/taksearje fan de kosten STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Tsjut wettergebied oan.{}Meitsje in kanaal, of ast' Ctrl op seenivo yndrukst, dan oerstreamt it gebied deromhinne STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Rivier pleatse. @@ -2010,9 +2187,11 @@ STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Rivier p STR_STATION_BUILD_DOCK_CAPTION :{WHITE}Haven # Airport toolbar +STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Fleanfjilden # Airport construction window STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Fleanfjild Seleksje +STR_STATION_BUILD_AIRPORT_TOOLTIP :{BLACK}Kies grutte/type fleanfjild STR_STATION_BUILD_AIRPORT_LAYOUT_NAME :{BLACK}Patroan {NUM} STR_AIRPORT_SMALL :Lyts @@ -2058,6 +2237,7 @@ STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Definiea STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Fergrutsje gebiet om te ferheegjen/ferleegjen STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Ferlyts gebiet om te ferheegjen/ferleegjen STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Meitsje samar wat lân +STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Nij senario meitsje STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Set it lânskip werom STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Alle spilerbesittings fan'e kaart fuortsmite @@ -2097,6 +2277,8 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Samar # Fund new industry window STR_FUND_INDUSTRY_CAPTION :{WHITE}Betelje nije yndustry STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Kostet: {YELLOW}{CURRENCY_LONG} +STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Bouwe +STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Finansierje # Industry cargoes window STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}Yndustry aksepteare @@ -2104,6 +2286,10 @@ STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Hûzen STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Lit produksjeketting sjen STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Lit it oanbod en akseptaasje fan yndustrie sjen STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Link ny de lytse map +STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Fracht selektearje +STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Selektearje de fracht om sjen te litte +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Selektearje yndustry +STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Selektearje de yndustry om sjen te litte # Land area window STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}Lân Gebiet Ynformaasje @@ -2117,9 +2303,11 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tramdyke STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Treinsporteigener: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Gemiente: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Neat +STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Boud: {LTBLUE}{DATE_LONG} STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Fleanfjild klasse: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_AIRPORT_NAME :{BLACK}Fleanfjild namme: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Fleanfjild tile namme: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Akseptearre fracht: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Faasjelimyt spoar: {LTBLUE}{VELOCITY} @@ -2220,7 +2408,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Lân fan bedriu STR_ABOUT_OPENTTD :{WHITE}Oer OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Orizjineel copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD-ferzje {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 It OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 It OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spul Opslaan @@ -2238,7 +2426,8 @@ STR_SAVELOAD_DELETE_TOOLTIP :{BLACK}It no se STR_SAVELOAD_SAVE_BUTTON :{BLACK}Opslaan STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}It hjoeddeisk spul opslaan ûnder de selektearre namme STR_SAVELOAD_LOAD_BUTTON :{BLACK}Laad -STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Laad selektjeare spul +STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Laad selektearre spul +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Laad de selektearre hichtekaart STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Spul Details STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Gjin ynformaasje beskikber STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2254,6 +2443,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Oantal stêden: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Oantal yndustrien: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimale kaarthichte: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Ferheegje de maksimale hichte fan bergen op de kaart mei 1 +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Ferleegje de maksimale hichte fan bergen op de kaart mei 1 STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hichte sniegrins: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Sniegrins ien omheech ferpleatsje: STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Sniegrins ien nei beneden ferpleatsje: @@ -2283,6 +2475,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Namme hi STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Grutte: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Maksimale kaarthichte oanpasse STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{BLACK}Sniehichte oanpasse STR_MAPGEN_START_DATE_QUERY_CAPT :{BLACK}Startjier oanpasse @@ -2325,18 +2518,19 @@ STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Selektea STR_NEWGRF_SETTINGS_PRESET_SAVE :{BLACK}Sla ynstellings op STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Sla dizze list op as foarynstelling STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Jou dizze ynstellings in namme -STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Verwiderje ynstellings -STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Verwiderje de selektjere ynstellings +STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Ferwiderje ynstellings +STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Ferwiderje de selektearre ynstellings STR_NEWGRF_SETTINGS_ADD :{BLACK}Tafoeging STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Foeg de selektjere NewGRF ta oan dyn ynstellings STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK}Lit sykje ny nije bestanden STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK}Fernij list my beskikbere NewGRF bestanden -STR_NEWGRF_SETTINGS_REMOVE :{BLACK}Fourthelje +STR_NEWGRF_SETTINGS_REMOVE :{BLACK}Fuorthelje STR_NEWGRF_SETTINGS_REMOVE_TOOLTIP :{BLACK}Smyt de selektearre NewGRF út de list STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Pleats heger STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Set selektjere NewGRF boppe oan de list STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Pleats leger STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Set selektjere NewGRF ûnderoan de list +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Upwurdearje STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}In list fan ynstalearre NewGRF bestânen STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Parameters ynstelle @@ -2362,6 +2556,11 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Útskeakel STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Dat strykt net mei dizze ferzje fan OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Sla ynstellings op +STR_SAVE_PRESET_TITLE :{BLACK}Jou dizze ynstellings in namme +STR_SAVE_PRESET_CANCEL :{BLACK}Annulearje +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Ynstellings net feroarje +STR_SAVE_PRESET_SAVE :{BLACK}Opslaan # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Feroarje NewGRF-parameters @@ -2393,7 +2592,8 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Foarig f STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Gean tebek nei de foarige ôfbylding, sla pseudo/werkleure/lettertype ôfbyldings oer en begjin wer oernei at it begjin berikke is STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Represintaasje fan de no selektearre ôfbylding. Dizze wurdt net rjochte by it tekenjen STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Ferweech de ôfbylding, feroarje de X en Y útslach -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Utslach X: {NUM}, Utslach Y: {NUM} +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X útslach: {NUM}, Y útslach: {NUM} (Absolút) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X útslach: {NUM}, Y útslach: {NUM} (Relatyf) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Kies ôfbylding STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pak in ôfbylding fan alle lokaasjes op it skerm ôf @@ -2492,8 +2692,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} ôflevere STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (noch nedich) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (ôflevere) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Stêd groeit eltse {ORANGE}{COMMA}{BLACK} {P dei dagen} -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Stêd groeit eltse {ORANGE}{COMMA}{BLACK} {P dei dagen} (subsidearre) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Stêd groeit eltse {ORANGE}{COMMA}{BLACK}{NBSP}{P dei dagen} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Stêd groeit eltse {ORANGE}{COMMA}{BLACK}{NBSP}{P dei dagen} (subsidearre) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Stêd groeit{RED}net{BLACK} STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Lûdslimyt yn dizze stêd: {ORANGE}{COMMA}{BLACK} maks: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Sintrearje it byld op de lokaasje fan dizze stêd @@ -2536,13 +2736,36 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Subside # Goal window STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globalde doelen STR_GOALS_TEXT :{ORANGE}{STRING} +STR_GOALS_NONE :{ORANGE}- Gjin - STR_GOALS_SPECTATOR_NONE :{ORANGE}- Net fan tapassing - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} # Goal question window +STR_GOAL_QUESTION_CAPTION_QUESTION :Fraach +STR_GOAL_QUESTION_CAPTION_INFORMATION :Ynformaasje +STR_GOAL_QUESTION_CAPTION_WARNING :Warskôging +STR_GOAL_QUESTION_CAPTION_ERROR :Flater -### Start of Goal Question button list +############ Start of Goal Question button list +STR_GOAL_QUESTION_BUTTON_CANCEL :Annulearje +STR_GOAL_QUESTION_BUTTON_OK :Okee +STR_GOAL_QUESTION_BUTTON_NO :Nee +STR_GOAL_QUESTION_BUTTON_YES :Ja +STR_GOAL_QUESTION_BUTTON_DECLINE :Ofwize +STR_GOAL_QUESTION_BUTTON_ACCEPT :Akseptearje +STR_GOAL_QUESTION_BUTTON_IGNORE :Negearje +STR_GOAL_QUESTION_BUTTON_RETRY :Opnij +STR_GOAL_QUESTION_BUTTON_PREVIOUS :Foarrige +STR_GOAL_QUESTION_BUTTON_NEXT :Folgjende +STR_GOAL_QUESTION_BUTTON_STOP :Stopje +STR_GOAL_QUESTION_BUTTON_START :Start +STR_GOAL_QUESTION_BUTTON_GO :Gean +STR_GOAL_QUESTION_BUTTON_CONTINUE :Trjochgean +STR_GOAL_QUESTION_BUTTON_POSTPONE :Utstelle +STR_GOAL_QUESTION_BUTTON_SURRENDER :Oerjaan +STR_GOAL_QUESTION_BUTTON_CLOSE :Slute +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsydzjes @@ -2565,6 +2788,8 @@ STR_STORY_BOOK_NEXT_PAGE :{BLACK}Folgjend STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Gean nei de folgjende pagina # Station list window +STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Hâld CTRL yndrukt om meardere objekten te selektearje +STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} Stasjon{P "" s} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} STR_STATION_LIST_NONE :{YELLOW}- Gjin - @@ -2573,11 +2798,16 @@ STR_STATION_LIST_NONE :{YELLOW}- Gjin STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG} STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} ûnderweis fan {STATION} ôf) +STR_STATION_VIEW_RESERVED :{YELLOW}({CARGO_SHORT} reservearre foar laden) STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK} +STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Akseptearre fracht sjen litte STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Aksepteart: {WHITE}{CARGO_LIST} +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Dit stasjon hat eksklusyfe transportrjochten in dizze plak. +STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Stasjonwurdearing sjen litte +STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) STR_STATION_VIEW_GROUP :{BLACK}Groepearje by STR_STATION_VIEW_WAITING_STATION :Stasjon: Wachtsjend @@ -2606,15 +2836,20 @@ STR_STATION_VIEW_GROUP_D_V_S :Bestimming-Fia- STR_CARGO_RATING_APPALLING :Ferskriklik STR_CARGO_RATING_VERY_POOR :Hiel Min STR_CARGO_RATING_POOR :Min +STR_CARGO_RATING_MEDIOCRE :Midsmjittich STR_CARGO_RATING_GOOD :Goed STR_CARGO_RATING_VERY_GOOD :Hiel Goed +STR_CARGO_RATING_EXCELLENT :Geweldich +STR_CARGO_RATING_OUTSTANDING :Poerbêst ############ range for rating ends STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Sintrearje it byld op de lokaasje fan dit stasjon +STR_STATION_VIEW_RENAME_TOOLTIP :{BLACK}Feroarje stasjonsnamme STR_STATION_VIEW_RENAME_STATION_CAPTION :Jow stasjon in nije namme +STR_STATION_VIEW_CLOSE_AIRPORT :{BLACK}Fleanfjild slute # Waypoint/buoy view window STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} @@ -2647,11 +2882,13 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN STR_FINANCES_TOTAL_CAPTION :{WHITE}Totaal: STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Jild STR_FINANCES_LOAN_TITLE :{WHITE}Liening +STR_FINANCES_MAX_LOAN :{WHITE}Maksimale Liening: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}Lien {CURRENCY_LONG} STR_FINANCES_BORROW_TOOLTIP :{BLACK}Lien mear jild. Ctrl+Klik om it maksimale te lienen STR_FINANCES_REPAY_BUTTON :{BLACK}Betelje {CURRENCY_LONG} werom STR_FINANCES_REPAY_TOOLTIP :{BLACK}Betelje in diel fan de liening werom. Ctrl+Klik om it maksimale werom te beteljen +STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Ynfrastruktuer # Company view STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM} @@ -2660,12 +2897,22 @@ STR_COMPANY_VIEW_PRESIDENT_MANAGER_TITLE :{WHITE}{PRESIDE STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Oprjochte: {WHITE}{NUM} STR_COMPANY_VIEW_COLOUR_SCHEME_TITLE :{GOLD}Kleurenskema: STR_COMPANY_VIEW_VEHICLES_TITLE :{GOLD}Fiertúchen: +STR_COMPANY_VIEW_TRAINS :{WHITE}{COMMA} trein{P "" en} +STR_COMPANY_VIEW_ROAD_VEHICLES :{WHITE}{COMMA} Wein{P "" en} +STR_COMPANY_VIEW_AIRCRAFT :{WHITE}{COMMA} fleantugen STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}Gjin STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Bedriuwswearde: {WHITE}{CURRENCY_LONG} STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}({COMMA}% besit fan {COMPANY}) +STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}Ynfrastruktuer: +STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} fleanfjild{P "" en} +STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Gjin STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Bou haadkantoar +STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Haadkantoar bouwe STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Sjoch haadkantoar +STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Haadkantoar besjen +STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Haadkantoar ferpleatse +STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Details STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nei Gesicht STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Selektear nei gesicht foar de bedriuwslieder @@ -2687,8 +2934,19 @@ STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Namme fan Direk STR_BUY_COMPANY_MESSAGE :{WHITE}Wy sykje in transportbedriuw om ús bedriuw oer te nimmen.{}{}Wolsto {COMPANY} foar {CURRENCY_LONG} keapje? # Company infrastructure window +STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Ynfrastruktuer fan {COMPANY} +STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}Seinen +STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD :{WHITE}Dyk +STR_COMPANY_INFRASTRUCTURE_VIEW_TRAMWAY :{WHITE}Tramwei +STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Stasjons: +STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}Fleanfjilden +STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENCY_LONG}/jr # Industry directory +STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}Yndustryen +STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- Gjin - +STR_INDUSTRY_DIRECTORY_ITEM :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}){YELLOW} ({COMMA}% transportearre) +STR_INDUSTRY_DIRECTORY_ITEM_TWO :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}/{CARGO_LONG}{STRING}){YELLOW} ({COMMA}%/{COMMA}% transportearre) STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY} # Industry view @@ -2714,11 +2972,24 @@ STR_INDUSTRY_VIEW_PRODUCES_CARGO_CARGO :{BLACK}Produsea STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Feroaring produksje nivo (percentage, up to 800%) # Vehicle lists +STR_VEHICLE_LIST_TRAIN_CAPTION :{WHITE}{STRING} - {COMMA} Trein{P "" en} +STR_VEHICLE_LIST_ROAD_VEHICLE_CAPTION :{WHITE}{STRING} - {COMMA} Wein{P "" en} +STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} - {COMMA} {P Skip Skepen} +STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} - {COMMA} Fleantúch +STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Treinen - klik op trein foar ynformaasje +STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Weinen - klik op wein foar ynformaasje +STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Skepen - klik op skip foar ynformaasje +STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Fleantúgen - klik op fleantúch foar ynformaasje STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Fertsjinste dit jier: {CURRENCY_LONG} (ferline jier: {CURRENCY_LONG}) +STR_VEHICLE_LIST_AVAILABLE_TRAINS :Beskikbere Treinen +STR_VEHICLE_LIST_AVAILABLE_ROAD_VEHICLES :Beskikbere Weinen +STR_VEHICLE_LIST_AVAILABLE_SHIPS :Beskikbere Skepen +STR_VEHICLE_LIST_AVAILABLE_AIRCRAFT :Beskikbere Fleantúgen +STR_VEHICLE_LIST_REPLACE_VEHICLES :Fiertugen ferfange STR_VEHICLE_LIST_SEND_FOR_SERVICING :Stjoer foar ûnderhâldsbeurt STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :Stjoer nei depot @@ -2729,15 +3000,40 @@ STR_VEHICLE_LIST_SEND_AIRCRAFT_TO_HANGAR :Stjoer nei hang # Group window +STR_GROUP_ALL_TRAINS :Alle treinen +STR_GROUP_ALL_ROAD_VEHICLES :Alle weinen +STR_GROUP_ALL_SHIPS :Alle skepen +STR_GROUP_ALL_AIRCRAFTS :Alle fleantugen +STR_GROUP_CREATE_TOOLTIP :{BLACK}Klik om in groep oan te meitsje +STR_GROUP_DELETE_TOOLTIP :{BLACK}Smit de selektearre groep fuort +STR_GROUP_RENAME_TOOLTIP :{BLACK}Feroarje de namme fan de selektearre groep +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Ferwiderje groep +STR_GROUP_REMOVE_ALL_VEHICLES :Alle fiertugen weihelje # Build vehicle window +STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Nije Weinen +STR_BUY_VEHICLE_SHIP_CAPTION :Nije Skepen +STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Nije fleantugen +STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Snelheid: {GOLD}{VELOCITY}{BLACK} Kracht: {GOLD}{POWER} +STR_PURCHASE_INFO_SPEED :{BLACK}Snelheid: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Underhâldskosten: {GOLD}{CURRENCY_LONG}/jr +STR_PURCHASE_INFO_CAPACITY :{BLACK}Kapasiteit: {GOLD}{CARGO_LONG} {STRING} +STR_PURCHASE_INFO_REFITTABLE :(kin omboud wurde) +STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Ûntwurpen: {GOLD}{NUM}{BLACK} Libbensdoer: {GOLD}{COMMA} jier +STR_PURCHASE_INFO_RELIABILITY :{BLACK}Maks. Betrouberens: {GOLD}{COMMA}% +STR_PURCHASE_INFO_COST :{BLACK}Kosten: {GOLD}{CURRENCY_LONG} +STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}Gewicht: {GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT}) +STR_PURCHASE_INFO_COST_SPEED :{BLACK}Kosten: {GOLD}{CURRENCY_LONG}{BLACK} Snelheid: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}Kapasiteit: {GOLD}{CARGO_LONG}, {CARGO_LONG} +STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Kin omboud wurde nei: {GOLD}{STRING} +STR_PURCHASE_INFO_ALL_TYPES :Alle frachttypen STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Keapje auto @@ -2760,6 +3056,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Jow auto STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Jow boat type in nije namme STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Jow fleantúg type in nije namme +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ferbergje +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ferbergje +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Ferbergje +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Ferbergje + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Sjen litte +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Sjen litte +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Sjen litte +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Sjen litte + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wikselje tusken it ferbergje/sjen litte fan it soart trein +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wikselje tusken it ferbergje/sjen litte fan it soart wein +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wikselje tusken it ferbergje/sjen litte fan it soart skip +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wikselje tusken it ferbergje/sjen litte fan it soart fleanmasine + # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -2776,7 +3087,14 @@ STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} +STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Nije fiertugen +STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_BUTTON :{BLACK}Nije Weinen +STR_DEPOT_SHIP_NEW_VEHICLES_BUTTON :{BLACK}Nije Skepen +STR_DEPOT_AIRCRAFT_NEW_VEHICLES_BUTTON :{BLACK}Nije Fleantugen +STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_TOOLTIP :{BLACK}Nije wein keapje +STR_DEPOT_SHIP_NEW_VEHICLES_TOOLTIP :{BLACK}Nij skip keapje +STR_DEPOT_AIRCRAFT_NEW_VEHICLES_TOOLTIP :{BLACK}Nij fleantúch keapje @@ -2786,7 +3104,16 @@ STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} # Engine preview window +STR_ENGINE_PREVIEW_CAPTION :{WHITE}Berjocht fan fiertúgenfabrikant +STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Wy hawwe sakrekt in nije {STRING} ûntwurpen - bisto ynteressearre yn in jier lang eksklusyf gebrûk fan dit fiertúch, sadat wy kinne sjen oft it goed wurket foardat wy it wrâldwiid beskikber meitsjen? +STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :lokomotyf +STR_ENGINE_PREVIEW_ROAD_VEHICLE :wein +STR_ENGINE_PREVIEW_AIRCRAFT :fleantúch +STR_ENGINE_PREVIEW_SHIP :skip +STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :monorail lokomotyf +STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :maglevlokomotyf +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Kosten: {CURRENCY_LONG} Gewicht: {WEIGHT_SHORT}{}Snelheid: {VELOCITY} Kracht: {POWER}{}Underhâldskosten: {CURRENCY_LONG}/jr{}Kapasiteit: {CARGO_LONG} # Autoreplace window STR_REPLACE_VEHICLE_TRAIN :Trein @@ -2794,6 +3121,9 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Auto STR_REPLACE_VEHICLE_SHIP :Skip STR_REPLACE_VEHICLE_AIRCRAFT :Fleanmasine +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Fiertúgen dy't yn gebrûk binne +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Beskikbere fiertugen + @@ -2802,6 +3132,7 @@ STR_REPLACE_VEHICLE_AIRCRAFT :Fleanmasine # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} +STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Sintrearje it byld op de lokaasje fan dit fleantúch @@ -2812,14 +3143,24 @@ STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE # Messages in the start stop button in the vehicle view +STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Laden / Losse +STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Stikken +STR_VEHICLE_STATUS_STOPPED :{RED}Stoppe +STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Stoppet, {VELOCITY} +STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Gjin enerzjy +STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Te fier nei folgjende bestimming +STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Ûnderweis nei {STATION}, {VELOCITY} STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}Ûnderweis nei {WAYPOINT}, {VELOCITY} STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}Ûnderweis nei{DEPOT}, {VELOCITY} STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}ûnderhâld yn {DEPOT}, {VELOCITY} # Vehicle stopped/started animations +STR_VEHICLE_COMMAND_STOPPED_SMALL :{TINY_FONT}{RED}Stoppe +STR_VEHICLE_COMMAND_STOPPED :{RED}Stoppe # Vehicle details +STR_VEHICLE_DETAILS_CAPTION :{WHITE}{VEHICLE} (Details) STR_VEHICLE_NAME_BUTTON :{BLACK}Namme @@ -2827,12 +3168,28 @@ STR_VEHICLE_NAME_BUTTON :{BLACK}Namme STR_VEHICLE_INFO_AGE :{COMMA} jier{P "" ren} ({COMMA}) STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} jier{P "" ren} ({COMMA}) +STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Maks. snelheid: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_NO_CAPACITY :{BLACK}Kapasiteit: {LTBLUE}Gjin{STRING} +STR_VEHICLE_INFO_CAPACITY :{BLACK}Kapasiteit: {LTBLUE}{CARGO_LONG}{3:STRING} +STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Kapasiteit: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM}) +STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasiteit: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Underhâldsinterval: {LTBLUE}{COMMA}{NBSP}dagen{BLACK} Lêste underhâld: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Underhâldsinterval: {LTBLUE}{COMMA}%{BLACK} Lêste underhâld: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Underhâldsinterval ferheegje mei 10. Ctrl+Klik ferheegt underhâldsinterval mei 5 +STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Tiid tusken ûnderhâldsbeurten ferleegje mei 10. Ctrl+Klik ferleegt de tiid tusken ûnderhâldsbeurten mei 5. +STR_VEHICLE_DETAILS_DEFAULT :Standert +STR_VEHICLE_DETAILS_DAYS :Dagen +STR_VEHICLE_DETAILS_PERCENT :Persintaazje +STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Treinnamme feroarje +STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Namme fan wein feroarje +STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Namme fan skip feroarje +STR_QUERY_RENAME_AIRCRAFT_CAPTION :{WHITE}Namme fan fleantúch feroarje # Extra buttons for train details windows @@ -2840,18 +3197,26 @@ STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT :{BLACK}Totale k STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_MULT :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) (x{NUM}) +STR_VEHICLE_DETAILS_CARGO_EMPTY :{LTBLUE}Leech +STR_VEHICLE_DETAILS_CARGO_FROM :{LTBLUE}{CARGO_LONG} fan {STATION} +STR_VEHICLE_DETAILS_CARGO_FROM_MULT :{LTBLUE}{CARGO_LONG} fan {STATION} (x{NUM}) STR_VEHICLE_DETAIL_TAB_CARGO :{BLACK}Fracht STR_VEHICLE_DETAIL_TAB_INFORMATION :{BLACK}Ynformaasje STR_VEHICLE_DETAIL_TAB_CAPACITIES :{BLACK}Kapasiteit STR_VEHICLE_DETAIL_TAB_TOTAL_CARGO :{BLACK}Totale Fracht +STR_VEHICLE_DETAILS_TRAIN_ARTICULATED_RV_CAPACITY :{BLACK}Kapasiteit: {LTBLUE} # Vehicle refit STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Nije kapasiteit: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}kosten fan werfolje: {RED}{CURRENCY_LONG} STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Selektearje in ferfiermiddel foar reparaasje. sleep mei de mûs om meardere ferfiermiddels te selekttearjen. Ctrl+klick sil in ferfiermiddel selektearje en de neikommende rige +STR_REFIT_TRAIN_REFIT_BUTTON :{BLACK}Trein ombouwe +STR_REFIT_ROAD_VEHICLE_REFIT_BUTTON :{BLACK}Wein ombouwe +STR_REFIT_SHIP_REFIT_BUTTON :{BLACK}Skip ombouwe +STR_REFIT_AIRCRAFT_REFIT_BUTTON :{BLACK}Fleantúch ombouwe # Order view @@ -2861,21 +3226,42 @@ STR_ORDER_TEXT :{STRING} {STRIN # Order bottom buttons +STR_ORDER_GO_TO :Gean nei +STR_ORDER_GO_NON_STOP_TO :Gean non-stop nei +STR_ORDER_GO_VIA :Gean via +STR_ORDER_GO_NON_STOP_VIA :Gean non-stop fia +STR_ORDER_DROP_NO_LOADING :Net laden +STR_ORDER_TOGGLE_UNLOAD :{BLACK}Alles losse +STR_ORDER_DROP_UNLOAD :Alles losse +STR_ORDER_DROP_TRANSFER :Oerlade +STR_ORDER_DROP_NO_UNLOADING :Net losse +STR_ORDER_REFIT :{BLACK}Ombouwe +STR_ORDER_DROP_REFIT_AUTO_ANY :Beskikbere fracht +STR_ORDER_SERVICE :{BLACK}Tsjinst +STR_ORDER_DROP_GO_ALWAYS_DEPOT :Gean altyd +STR_ORDER_DROP_HALT_DEPOT :Stop # Conditional order variables, must follow order of OrderConditionVariable enum +STR_ORDER_CONDITIONAL_RELIABILITY :Betrouberens +STR_ORDER_CONDITIONAL_MAX_SPEED :Maksimale snelheid +STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Altyd +STR_ORDERS_SKIP_BUTTON :{BLACK}Oerslaan -STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Verwiderje alle bestimmingen +STR_ORDERS_DELETE_BUTTON :{BLACK}Fuortsmite +STR_ORDERS_DELETE_TOOLTIP :{BLACK}Selektearre oarder fuortsmite +STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Ferwiderje alle bestimmingen STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Stop dielde bestimmingen STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Stopje mei dielde bestimmingen +STR_ORDERS_GO_TO_BUTTON :{BLACK}Gean Nei STR_ORDER_SHARE :Dielde Bestimmingen @@ -2887,6 +3273,7 @@ STR_ORDER_GO_NON_STOP_TO_WAYPOINT :Oanienwei lâns STR_ORDER_GO_TO_NEAREST_DEPOT_FORMAT :{STRING} {STRING} {STRING} STR_ORDER_GO_TO_DEPOT_FORMAT :{STRING} {DEPOT} +STR_ORDER_STOP_ORDER :(Stop) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} @@ -2899,24 +3286,39 @@ STR_ORDER_UNLOAD :(Afladen en nim STR_ORDER_UNLOAD_FULL_LOAD :(Afladen en wacht foar folle fracht) STR_ORDER_UNLOAD_FULL_LOAD_ANY :(Afladen en wacht foar elke folle fracht) STR_ORDER_UNLOAD_NO_LOAD :(Oflade en lit leech) +STR_ORDER_TRANSFER :(Oerladen en fracht meinimme) +STR_ORDER_TRANSFER_NO_LOAD :(Oerladen en lit leech) +STR_ORDER_NO_UNLOAD :(Net losse en fracht meinimme) +STR_ORDER_NO_UNLOAD_FULL_LOAD :(Net losse en wacht foar folle fracht) STR_ORDER_NO_UNLOAD_NO_LOAD :(net lade of losse) +STR_ORDER_AUTO_REFIT :(Ombouwe nei {STRING}) +STR_ORDER_AUTO_REFIT_ANY :beskikbere fracht # Time table window +STR_TIMETABLE_ORDER_VIEW :{BLACK}Opdrachten STR_TIMETABLE_NOT_TIMETABLEABLE :Reizgje (automatic; timetabled by next manual order) STR_TIMETABLE_TRAVEL_FOR_SPEED :Reis {STRING} mei maksimum {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Reizgje (foar {STRING}, sûnder tsjinstregeling) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Reizgje (foar {STRING}, sûnder tjinstregeling) mei maksimaal {VELOCITY} +STR_TIMETABLE_STAY_FOR_ESTIMATED :(bliuw foar {STRING}, sûnder tjinstregeling) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(reizgje foar {STRING}, sûnder tjinstregeling) +STR_TIMETABLE_DAYS :{COMMA}{NBSP}{P dei dagen} +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tik{P "" ken} +STR_TIMETABLE_CHANGE_TIME :{BLACK}Tiid Feroarje +STR_TIMETABLE_CLEAR_TIME :{BLACK}Tiid Weihelje STR_TIMETABLE_CHANGE_SPEED :{BLACK}Feroarje maksimumfaasje STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Feroarje de maksimum reissnelheid fan de opljochte oarder @@ -2926,44 +3328,71 @@ STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Helje de +STR_TIMETABLE_EXPECTED :{BLACK}Ferwachte +STR_TIMETABLE_SCHEDULED :{BLACK}Pland +STR_TIMETABLE_ARRIVAL_ABBREVIATION :A: +STR_TIMETABLE_DEPARTURE_ABBREVIATION :F: # Date window (for timetable) +STR_DATE_CAPTION :{WHITE}Datum ynstelle +STR_DATE_SET_DATE :{BLACK}Datum ynstelle +STR_DATE_DAY_TOOLTIP :{BLACK}Dag selektearje +STR_DATE_MONTH_TOOLTIP :{BLACK}Moanne selektearje +STR_DATE_YEAR_TOOLTIP :{BLACK}Jier selektearje # AI debug window STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} (v{NUM}) +STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Skriptnamme STR_AI_DEBUG_SETTINGS :{BLACK}Ynstellings +STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Ynstellings fan it skript feroarje STR_AI_DEBUG_CONTINUE :{BLACK}Trjochgean STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Lit debug output fan dizze AI sjen +STR_AI_GAME_SCRIPT :{BLACK}Spulskript STR_ERROR_AI_NO_AI_FOUND :Gjin geskikte compjûterspiler fûn.{}Disse compjûterspiler is in dummy en docht neat.{}Jo kinne compjûterspilers delhelje fan 'Online Inhâld' ôf. +STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Spulskript debugskerm is allinich beskikber foar de tsjinner # AI configuration window +STR_AI_CONFIG_CAPTION :{WHITE}AI/Spulskript konfiguraasje +STR_AI_CONFIG_HUMAN_PLAYER :Minslike spiler +STR_AI_CONFIG_RANDOM_AI :Samar in AI +STR_AI_CONFIG_NONE :(gjin) +STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spulskript STR_AI_CONFIG_AI :{SILVER}AIs STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI +STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spulskript # Available AIs window +STR_AI_LIST_CAPTION :{WHITE}Beskikber {STRING} STR_AI_LIST_CAPTION_AI :AIs +STR_AI_LIST_CAPTION_GAMESCRIPT :Spulskripten STR_AI_LIST_VERSION :{LTBLUE}Ferzje: {ORANGE}{NUM} STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING} STR_AI_LIST_ACCEPT :{BLACK}Akseptearje STR_AI_LIST_CANCEL :{BLACK}Annulearje +STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Skript net feroare # AI Parameters +STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters STR_AI_SETTINGS_CAPTION_AI :AI +STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spulskript STR_AI_SETTINGS_CLOSE :{BLACK}Slúte +STR_AI_SETTINGS_RESET :{BLACK}Weromsette STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} # Textfile window +STR_TEXTFILE_LICENCE_CAPTION :{WHITE}{STRING} lisinsje fan {STRING} +STR_TEXTFILE_VIEW_LICENCE :{BLACK}Lisinsje # Vehicle loading indicators @@ -2973,6 +3402,8 @@ STR_PERCENT_DOWN_SMALL :{TINY_FONT}{WHI STR_PERCENT_DOWN :{WHITE}{NUM}%{DOWN_ARROW} STR_PERCENT_UP_DOWN_SMALL :{TINY_FONT}{WHITE}{NUM}%{UP_ARROW}{DOWN_ARROW} STR_PERCENT_UP_DOWN :{WHITE}{NUM}%{UP_ARROW}{DOWN_ARROW} +STR_PERCENT_NONE_SMALL :{TINY_FONT}{WHITE}{NUM}% +STR_PERCENT_NONE :{WHITE}{NUM}% # Income 'floats' STR_INCOME_FLOAT_COST_SMALL :{TINY_FONT}{RED}Kostet: {CURRENCY_LONG} @@ -2983,14 +3414,17 @@ STR_MESSAGE_ESTIMATED_COST :{WHITE}Dit gjit STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Dit gjit {CURRENCY_LONG} opbringen. # Saveload messages +STR_ERROR_AUTOSAVE_FAILED :{WHITE}Automatysk opslaan net slagge STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Koe net fan 'e skiif lêze STR_ERROR_GAME_SAVE_FAILED :{WHITE}Opslaan Mislearre{}{STRING} STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}Kin bestân net fuortsmite STR_ERROR_GAME_LOAD_FAILED :{WHITE}Laden Mislearre{}{STRING} +STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Interne flater: {STRING} STR_GAME_SAVELOAD_NOT_AVAILABLE : # Map generation messages +STR_ERROR_PNGMAP_FILE_NOT_FOUND :{WHITE}... bestând koe net fûn wurde @@ -3021,6 +3455,7 @@ STR_ERROR_OWNED_BY :{WHITE}... is f STR_ERROR_AREA_IS_OWNED_BY_ANOTHER :{WHITE}... gebiet is fan in oar bedriuw STR_ERROR_TERRAFORM_LIMIT_REACHED :{WHITE}... lânskip kreëar limyt berikt STR_ERROR_CLEARING_LIMIT_REACHED :{WHITE}... tegel oprom limyt berikt +STR_ERROR_NAME_MUST_BE_UNIQUE :{WHITE}Namme moat unyk wêze STR_ERROR_GENERIC_OBJECT_IN_THE_WAY :{WHITE}{1:STRING} yn it paad STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Net tastean. Pausearre @@ -3064,6 +3499,7 @@ STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... Gjin STR_ERROR_TOO_MANY_INDUSTRIES :{WHITE}... te folle yndustryen STR_ERROR_CAN_T_BUILD_HERE :{WHITE}Kin hjir gjin {STRING} boue... STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY :{WHITE}Kin dit type yndustry hjir net boue... +STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... te ticht by in oare yndustry STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... stêd moat earst bout wurde STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}.. mei mar ien per stêd wêze STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... kin allinnich bout wurde yn stêden mei 1200 ynwenners of mear @@ -3073,11 +3509,18 @@ STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... kin STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... kin allinnich yn lege plakken bout wurde STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... kin allinich pleatse wurde by de rân fan'e kaart STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... bosk kin allinich boppe snieline boud wurde +STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... kin allinich boppe snieline boud wurde +STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... kin allinich ûnder snieline boud wurde + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Kin hjir gjin treinstasjon boue... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Kin hjir gjin busstasjon boue... STR_ERROR_CAN_T_BUILD_TRUCK_STATION :{WHITE}Kin hjir gjin frachtweinstasjon boue... +STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION :{WHITE}Kin gjin passazjiertramstasjon boue... +STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION :{WHITE}Kin hjir gjin frachttramstasjon boue... +STR_ERROR_CAN_T_BUILD_DOCK_HERE :(WHITE}Kin hjir gjin haven boue... +STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Kin hjir gjin fleanfjild boue... STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Ferbynt mear dan ien stasjon STR_ERROR_STATION_TOO_SPREAD_OUT :{WHITE}... stasjon is te grut @@ -3090,12 +3533,18 @@ STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Te ticht STR_ERROR_CAN_T_RENAME_STATION :{WHITE}Kin namme fan stasjon net feroarje # Station destruction related errors +STR_ERROR_MUST_REMOVE_RAILWAY_STATION_FIRST :{WHITE}Treinstasjon moat earst fuorthelle wurde +STR_ERROR_CAN_T_REMOVE_BUS_STATION :{WHITE}Kin busstasjon net fuorthelje... +STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Kin frachtstasjon net fuorthelje... +STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Kin passazjiertramstasjon net fuorthelje... +STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Kin frachttramstasjon net fuorthelje... STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Weistop moat earst fuorthelle wurde STR_ERROR_THERE_IS_NO_STATION :{WHITE}... Dêr is gjin statsjon STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}Treinspoar moat earst fuorthelle wurde STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}Bushalte moat earst fuorthelle wurde STR_ERROR_MUST_DEMOLISH_TRUCK_STATION_FIRST :{WHITE}Frachtstasjon moat earst fuorthelle wurde +STR_ERROR_MUST_DEMOLISH_PASSENGER_TRAM_STATION_FIRST :{WHITE}Passazjiertramstasjon moat earst fuorthelle wurde STR_ERROR_MUST_DEMOLISH_CARGO_TRAM_STATION_FIRST :{WHITE}Frachttramstasjon moat earst fuorthelle wurde STR_ERROR_MUST_DEMOLISH_DOCK_FIRST :{WHITE}Haven moat earst fuorthelle wurde STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Fleanfjild moat earst fuorthelle wurde @@ -3116,15 +3565,19 @@ STR_ERROR_BUOY_IS_IN_USE :{WHITE}... boei # Depot related errors STR_ERROR_CAN_T_BUILD_TRAIN_DEPOT :{WHITE}Kin hjir gjin trein depot boue... STR_ERROR_CAN_T_BUILD_ROAD_DEPOT :{WHITE}Kin hjir gjin auto depot boue... +STR_ERROR_CAN_T_BUILD_TRAM_DEPOT :{WHITE}Kin hjir gjin tramdepot boue... STR_ERROR_CAN_T_BUILD_SHIP_DEPOT :{WHITE}Kin hjir gjin skipdepot boue... STR_ERROR_CAN_T_RENAME_DEPOT :{WHITE}kin depot gjin nije namme jaan... STR_ERROR_TRAIN_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... Trein moat stopt wêze yn depot +STR_ERROR_ROAD_VEHICLE_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... moat stopt wêze yn in depot STR_ERROR_SHIP_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... moat stopt wêze yn depot STR_ERROR_AIRCRAFT_MUST_BE_STOPPED_INSIDE_HANGAR :{WHITE}... moat stopt wêze yn hangar +STR_ERROR_TRAINS_CAN_ONLY_BE_ALTERED_INSIDE_A_DEPOT :{WHITE}Treinen kinne allinich oanpast wurde wannear't ze yn in depot stean STR_ERROR_TRAIN_TOO_LONG :{WHITE}Trein te lang +STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE :{WHITE}Kin rydrjochting fan de trein net omkeare... STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}... bestiet út meardere weinen STR_ERROR_INCOMPATIBLE_RAIL_TYPES :Net te ferienigjen spoartypes @@ -3190,6 +3643,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Brêge m STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Begjin en ein kin net op itselde plak wêze STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Útein fan de brêge is net op deselde hichte STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Brêge is te leech foar it terrein +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Brêge is te heech foar dit terrein STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Begjin en ein moatte op ien lijn wêze STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... beide úteinden fan'e brêge moatte op lân lizze STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... brêge te lang @@ -3216,6 +3670,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... it i STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Kin gjin groep oanmeitsje... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Kin dizze groep net fuortsmite STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Kin de namme net feroarje... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Kin haadgroep net ynstelle... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Kin net alle fiertugen út dizze groep fuortsmite... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Kin dit fiertúch net oan dizze groep taheakje... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Kin dielde auto's oan groep ta foege... @@ -3319,6 +3774,9 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Kin stop STR_DESKTOP_SHORTCUT_COMMENT :Spul basjeare op Transport Tycoon Deluxe # Translatable descriptions in media/baseset/*.ob* files +STR_BASEGRAPHICS_DOS_DESCRIPTION :Orizjinele ôfbyldings fan de Transport Tycoon Deluxe Windows-edysje +STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Orizjinele ôfbyldings fan de Transport Tycoon Deluxe (dútse) DOS-edysje +STR_BASEGRAPHICS_WIN_DESCRIPTION :Orizjinele ôfbyldings fan de Transport Tycoon Deluxe Windows-edysje. STR_BASESOUNDS_DOS_DESCRIPTION :Orizjinele musyk fan de Transport Tycoon Deluxe DOS-edysje. STR_BASESOUNDS_WIN_DESCRIPTION :Orizjinele lûden fan de Transport Tycoon Deluxe Windows-edysje. STR_BASESOUNDS_NONE_DESCRIPTION :In lûdspakket sûnder lûden. @@ -3750,6 +4208,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (ferburgen) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -3785,8 +4244,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/ido.txt b/src/lang/unfinished/ido.txt index e9230fb41f..3ec243f079 100644 --- a/src/lang/unfinished/ido.txt +++ b/src/lang/unfinished/ido.txt @@ -224,6 +224,9 @@ STR_BUTTON_RENAME :{BLACK}Rinomiza STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Klozas fenestro STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Baskulas granda/mikra fenestro grandeso +# Show engines button + + # Query window STR_BUTTON_CANCEL :{BLACK}Anular STR_BUTTON_OK :{BLACK}OK @@ -461,10 +464,6 @@ STR_GAME_OPTIONS_CAPTION :{WHITE}Ludo Sel ############ end of currency region -############ start of measuring units region -############ end of measuring units region - - ############ start of townname region ############ end of townname region @@ -481,6 +480,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :altra + + # Custom currency window @@ -517,7 +518,7 @@ STR_SEA_LEVEL_CUSTOM_PERCENTAGE :Kustumigita ({N -# Advanced settings window +# Settings tree window @@ -775,7 +776,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS :Stabeyo di komp # About OpenTTD window STR_ABOUT_VERSION :{BLACK}OpenTTD versiono {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 La kruo OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 La kruo OpenTTD # Save/load game/scenario STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Ludo Detali @@ -864,7 +865,8 @@ STR_GOALS_TEXT :{ORANGE}{STRING # Goal question window -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window @@ -974,6 +976,9 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Negrupigita aer + + + # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -1012,6 +1017,7 @@ STR_REPLACE_VEHICLE_AIRCRAFT :Aeronavo + # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} @@ -1183,6 +1189,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... tro # Industry related errors STR_ERROR_TOO_MANY_INDUSTRIES :{WHITE}... tro multa industrii + # Station construction related errors @@ -1346,8 +1353,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/macedonian.txt b/src/lang/unfinished/macedonian.txt index 2e89b7a8ff..7df355626d 100644 --- a/src/lang/unfinished/macedonian.txt +++ b/src/lang/unfinished/macedonian.txt @@ -238,6 +238,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Поме STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Лизгач - свитоци листата лево / десно STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Уривање згради итн. на квадратна област +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Зададено STR_BUTTON_CANCEL :{BLACK}Откажи @@ -347,7 +350,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :Напушти ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :игра опции -STR_SETTINGS_MENU_CONFIG_SETTINGS :напредни поставувања STR_SETTINGS_MENU_SCRIPT_SETTINGS :АИ / игри поставувања STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF подесувања STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :транспарентност опции @@ -788,10 +790,6 @@ STR_GAME_OPTIONS_CAPTION :{WHITE}Опци ############ end of currency region -############ start of measuring units region -############ end of measuring units region - - ############ start of townname region ############ end of townname region @@ -808,6 +806,8 @@ STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_1_MONTH :Секој ме + + # Custom currency window @@ -829,7 +829,7 @@ STR_SEA_LEVEL_CUSTOM_PERCENTAGE :Прилаго -# Advanced settings window +# Settings tree window STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Сите подесувања @@ -1202,7 +1202,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Компани STR_ABOUT_OPENTTD :{WHITE}За OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Оригинален copyright {COPYRIGHT} 1995 Chris Sawyer, Сите права се задржани STR_ABOUT_VERSION :{BLACK}OpenTTD верзија {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 OpenTTD тимот +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD тимот # Save/load game/scenario STR_SAVELOAD_LOAD_BUTTON :{BLACK}Оптоварување @@ -1330,7 +1330,8 @@ STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Клик # Goal question window -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Кликни на сервис за да се центрира погледот на индустријата/градот @@ -1464,6 +1465,9 @@ STR_BUY_VEHICLE_AIRCRAFT_RENAME_BUTTON :{BLACK}Преи STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Преименувај го типот на авиони + + + STR_QUERY_RENAME_AIRCRAFT_TYPE_CAPTION :{WHITE}Преименувај го типот на авиони # Depot window @@ -1511,6 +1515,7 @@ STR_REPLACE_VEHICLE_AIRCRAFT :Летало + # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} @@ -1732,6 +1737,7 @@ STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... не # Industry related errors + # Station construction related errors STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Не може да се изгради аеродром на оваа локација... @@ -1921,8 +1927,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/maltese.txt b/src/lang/unfinished/maltese.txt index 7f5a6d6a05..8796505385 100644 --- a/src/lang/unfinished/maltese.txt +++ b/src/lang/unfinished/maltese.txt @@ -191,6 +191,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Faxxa bi STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Faxxa biex tiskrolja - iskrolja l-lista lejn ix-xellug jew lemin STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Waqqa bini, etc.., Ctrl tagħzel zona dijagonali. Shift taqleb bejn bini/turija ta' stima ta' l-ispiza +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}Default STR_BUTTON_CANCEL :{BLACK}Ikkanċella @@ -394,10 +397,6 @@ STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE ############ end of currency region -############ start of measuring units region -############ end of measuring units region - - ############ start of townname region ############ end of townname region @@ -414,6 +413,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :oħrajn + + # Custom currency window @@ -432,7 +433,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :oħrajn -# Advanced settings window +# Settings tree window @@ -764,7 +765,8 @@ STR_GOALS_TEXT :{ORANGE}{STRING # Goal question window -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window @@ -846,6 +848,9 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN + + + # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -880,6 +885,7 @@ STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} + # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} @@ -1044,6 +1050,7 @@ STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}L-istam # Industry related errors + # Station construction related errors @@ -1388,8 +1395,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/marathi.txt b/src/lang/unfinished/marathi.txt index a25f8a3e3c..3125899304 100644 --- a/src/lang/unfinished/marathi.txt +++ b/src/lang/unfinished/marathi.txt @@ -238,6 +238,9 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}स् STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}स्क्रोल पट्टी - स्क्रोल यादी डाव्या/उजव्या STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}जमिनीच्या एका चौकोनावरील इमारत नष्ट करणे इ. Ctrl ने तिरका प्रदेश निवडता येतो. Shift नं इमारती किंवा किंमतीचा अंदाज दिसणं चालू/बंद होतं. +# Show engines button + + # Query window STR_BUTTON_DEFAULT :{BLACK}स्थिर STR_BUTTON_CANCEL :{BLACK}रद्द करा @@ -341,7 +344,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :बंद क ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :खेळाचे पर्याय -STR_SETTINGS_MENU_CONFIG_SETTINGS :प्रगत सेटिंग STR_SETTINGS_MENU_SCRIPT_SETTINGS :ए.आय. / गेम स्क्रिप्ट सेटिंग्ज STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF पर्याय STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :पारदर्शकता पर्याय @@ -721,10 +723,6 @@ STR_GAME_OPTIONS_CURRENCY_SKK :स्लोव ############ end of currency region -############ start of measuring units region -############ end of measuring units region - - ############ start of townname region STR_GAME_OPTIONS_TOWN_NAME_FRENCH :फ्रेंच @@ -762,6 +760,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :अन्य + + # Custom currency window @@ -784,7 +784,7 @@ STR_SUBSIDY_X4 :x४ -# Advanced settings window +# Settings tree window @@ -1196,7 +1196,8 @@ STR_GOALS_TEXT :{ORANGE}{STRING # Goal question window -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window @@ -1328,6 +1329,9 @@ STR_PURCHASE_INFO_COST_SPEED :{BLACK}कि + + + # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -1364,6 +1368,7 @@ STR_REPLACE_VEHICLE_AIRCRAFT :विमान + # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} @@ -1529,6 +1534,7 @@ STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE} स् # Industry related errors + # Station construction related errors @@ -1811,8 +1817,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/persian.txt b/src/lang/unfinished/persian.txt index 56e37cfae5..b8f10533e3 100644 --- a/src/lang/unfinished/persian.txt +++ b/src/lang/unfinished/persian.txt @@ -65,8 +65,8 @@ STR_CARGO_SINGULAR_PASSENGER :مسافر STR_CARGO_SINGULAR_COAL :ذغال STR_CARGO_SINGULAR_MAIL :نامه STR_CARGO_SINGULAR_OIL :نفت -STR_CARGO_SINGULAR_LIVESTOCK :چارپایان -STR_CARGO_SINGULAR_GOODS :محصولات مصرفی +STR_CARGO_SINGULAR_LIVESTOCK :دام +STR_CARGO_SINGULAR_GOODS :کالا STR_CARGO_SINGULAR_GRAIN :غله STR_CARGO_SINGULAR_WOOD :چوب STR_CARGO_SINGULAR_IRON_ORE :سنگ آهن @@ -97,28 +97,28 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :نوشابه گ STR_QUANTITY_NOTHING : STR_QUANTITY_PASSENGERS :{COMMA} مسافر{P "" ان} STR_QUANTITY_COAL :{WEIGHT_LONG} از زغال سنگ -STR_QUANTITY_MAIL :{COMMA}بسته نامه +STR_QUANTITY_MAIL :{COMMA}بسته پستی STR_QUANTITY_OIL :{VOLUME_LONG} نفت -STR_QUANTITY_LIVESTOCK :{COMMA} فقره از جارپایان -STR_QUANTITY_GOODS :{COMMA} جعبه{P ی های} محموله تجاری -STR_QUANTITY_GRAIN :{WEIGHT_LONG}حبوبات +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}راس دام +STR_QUANTITY_GOODS :{COMMA}{NBSP}صندوق کالا +STR_QUANTITY_GRAIN :{WEIGHT_LONG} غله STR_QUANTITY_WOOD :{WEIGHT_LONG} چوب STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} سنگ آهن STR_QUANTITY_STEEL :{WEIGHT_LONG} فولاد -STR_QUANTITY_VALUABLES :{COMMA} بسته{P "" های} اشیای قیمتی +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}کیسه ارقام گرانبها STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} سنگ مس STR_QUANTITY_MAIZE :{WEIGHT_LONG} ذرت STR_QUANTITY_FRUIT :{WEIGHT_LONG} میوه -STR_QUANTITY_DIAMONDS :{COMMA} بسته{P "" های} الماس +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}کیسه الماس STR_QUANTITY_FOOD :{WEIGHT_LONG} غذا -STR_QUANTITY_PAPER :{WEIGHT_LONG}از کاغذ -STR_QUANTITY_GOLD :{COMMA} بسته‌ی طلا +STR_QUANTITY_PAPER :{WEIGHT_LONG} کاغذ +STR_QUANTITY_GOLD :{COMMA}{NBSP}کیسه طلا STR_QUANTITY_WATER :{VOLUME_LONG}از آب STR_QUANTITY_WHEAT :{WEIGHT_LONG} گندم STR_QUANTITY_RUBBER :{VOLUME_LONG} کائوچو STR_QUANTITY_SUGAR :{WEIGHT_LONG} شکر -STR_QUANTITY_TOYS :{COMMA} اسباب بازی -STR_QUANTITY_SWEETS :{COMMA} {P "" s}بسته شیرینی +STR_QUANTITY_TOYS :{COMMA}{NBSP}اسباب بازی +STR_QUANTITY_SWEETS :{COMMA}{NBSP}کیسه شیرینی STR_QUANTITY_COLA :{VOLUME_LONG} نوشابه STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} پشمک STR_QUANTITY_BUBBLES :{COMMA} حباب @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}NO STR_ABBREV_ALL :{TINY_FONT}همه # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} مسافر -STR_BAGS :{COMMA} کیف -STR_TONS :{COMMA} تن -STR_LITERS :{COMMA} لیتر -STR_ITEMS :{COMMA} فقره -STR_CRATES :{COMMA} جعبه +STR_PASSENGERS :{COMMA}{NBSP}مسافر{P "" s} +STR_BAGS :{COMMA}{NBSP}کیسه +STR_TONS :{COMMA}{NBSP}تن +STR_LITERS :{COMMA}{NBSP}لیتر +STR_ITEMS :{COMMA}{NBSP}عدد{P "" s} +STR_CRATES :{COMMA}{NBSP}صندوق} # Colours, do not shuffle STR_COLOUR_DARK_BLUE :آبی تیره @@ -191,30 +191,30 @@ STR_COLOUR_GREY :خاکستری STR_COLOUR_WHITE :سفید # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} مایل در ساعت -STR_UNITS_VELOCITY_METRIC :{COMMA} کیلومتر/ساعت -STR_UNITS_VELOCITY_SI :{COMMA} متر/ثانیه +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}مایل بر ساعت +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}کیلومتر بر ساعت +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}متر بر ثانیه -STR_UNITS_POWER_IMPERIAL :{COMMA}اسب بخار -STR_UNITS_POWER_METRIC :{COMMA}اسب بخار -STR_UNITS_POWER_SI :{COMMA}کیلو وات +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}اسب بخار +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}اسب بخار +STR_UNITS_POWER_SI :{COMMA}{NBSP}کیلووات -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}تن -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}کیلوگرم +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}تن +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}کیلوگرم -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} تن -STR_UNITS_WEIGHT_LONG_SI :{COMMA} کیلو گرم +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}تن +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}کیلوگرم -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}لیتر -STR_UNITS_VOLUME_SHORT_SI :{COMMA}متر مکعب +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}لیتر +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}متر مکعب -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} لیتر -STR_UNITS_VOLUME_LONG_SI :{COMMA} متر مکعب +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}لیتر{P "" s} +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}متر مکعب -STR_UNITS_FORCE_SI :{COMMA} کیلو نیوتن +STR_UNITS_FORCE_SI :{COMMA}{NBSP}کیلو نیوتن -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} پا -STR_UNITS_HEIGHT_SI :{COMMA} متر +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}پا +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}متر # Common window strings STR_LIST_FILTER_TITLE :{BLACK}متن فیلتر: @@ -240,6 +240,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}نوار STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}نوار اسکرول - لیست را چپ و راست می کند STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}تخریب ساختمان و ... در بخشی از زمین.با فشردن همزمان دکمه Ctrl به طور مورب می توانید تخریب کنید.فشردن همزمان دکمه Shift برآورد هزینه را نمایش می دهد. +# 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 STR_BUTTON_DEFAULT :{BLACK}حالت قراردادی STR_BUTTON_CANCEL :{BLACK}لغو @@ -292,7 +303,7 @@ STR_SORT_BY_POPULATION :جمعیت STR_SORT_BY_RATING :نرخ # Tooltips for the main toolbar -STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}متوقف کردن بازی +STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}وقفه موقت بازی STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}بالا بردن سرعت بازی STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}تنضیمات STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}ذخیره بازی، ترک بازی، خروج از بازی @@ -304,7 +315,7 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}اطلا STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}توضیحات کلی راجع به شرکت را نشان می دهد STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}نمایش کتابچه راهنما STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}نمایش لیست اهداف -STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}نمودار ها را نشان می دهد +STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}نمایش نمودارها STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}جدول رده بندی شرکت ها را نشان می دهد STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}ساخت صنایع جدید یا لیست همه صنایع موجود STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}نمایش لیست قطار های شرکت، Ctrl+Click نمابش را بین گروه ها و قطار ها تغییر می دهد @@ -351,7 +362,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :خروج ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :تنظیمات بازی -STR_SETTINGS_MENU_CONFIG_SETTINGS :تنظیمات پیشرفته STR_SETTINGS_MENU_SCRIPT_SETTINGS :هوش مصنوعی / تنظیمات بازی STR_SETTINGS_MENU_NEWGRF_SETTINGS :تنظیمات NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :گزینه های شفافیت @@ -542,7 +552,7 @@ STR_MONTH_DEC :دسامبر # Graph window STR_GRAPH_KEY_BUTTON :{BLACK}کلید -STR_GRAPH_KEY_TOOLTIP :{BLACK}نمایش کلید نمودار +STR_GRAPH_KEY_TOOLTIP :{BLACK}نمایش راهنمای نمودار STR_GRAPH_X_LABEL_MONTH :{TINY_FONT}{STRING}{} {STRING} STR_GRAPH_X_LABEL_MONTH_YEAR :{TINY_FONT}{STRING}{} {STRING}{}{NUM} STR_GRAPH_Y_LABEL :{TINY_FONT}{STRING} @@ -823,6 +833,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :تعداد دس STR_NEWS_VEHICLE_HAS_VOID_ORDER :برنامه حرکت {WHITE}{VEHICLE} باطل شده است STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :برنامه جابجایی {WHITE}{VEHICLE} دستور تکراری دارد STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} یک ایستگاه نا معتبر در برنامه جابجایی خود دارد +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} در دستور کارش فرودگاهی با طول باند کوتاه تر از حد لازم دارد. STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} قدیمی شده است STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} بسیار قدیمی شده است @@ -905,10 +916,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :لیره گرج STR_GAME_OPTIONS_CURRENCY_IRR :ریال ایران (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK} خودروی جاده ای STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}انتخاب جهت فرمان ماشین ها STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :چپ فرمان @@ -962,6 +969,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}وضوح STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}وضوح تصویر دلخواه را انتخاب کنید STR_GAME_OPTIONS_RESOLUTION_OTHER :دیگر + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}بسته گرافیک پایه STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}بسته گرافیک پایه را انتخاب کنید STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} فایل وجود ندارد یا خراب است @@ -976,6 +985,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}بسته STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} فایل خراب است STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}اطلاعات اضافه درباره بسته ی موسیقی پایه +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}ناتوان در گرفتن تنظیمات نمایش STR_ERROR_FULLSCREEN_FAILED :{WHITE}حالت تمام صفحه با شکست مواجه شد # Custom currency window @@ -1061,8 +1071,7 @@ STR_CITY_APPROVAL_HOSTILE :دشمنانه STR_WARNING_NO_SUITABLE_AI :{WHITE}هیچ بسته هوش مصنوعی موجود نیست...{}شما می توانید چندین بسته هوش مصنوعی(AI) را از قسمت محتویات برخط بارگیری کنید -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}تنظیمات پیشرفته +# Settings tree window STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}متن فیلتر: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}نمایش همه STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}جمع کردن همه @@ -1174,19 +1183,31 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :کمترین ا STR_CONFIG_SETTING_POPULATION_IN_LABEL :نمایش جمعیت شهر در عنوان شهر: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :صخامت خط ها در گراف: {STRING} +STR_CONFIG_SETTING_LANDSCAPE :چشم انداز: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :چشم اندازها سناریوهای پایه بازی را تعریف میکنند که شامل انواع مختلف محموله و نیز ضروریات رشد شهر میباشند.اما NewGRF و اسکریپت ها اجازه کنترل بر جزئیات بیشتری را میدهند. STR_CONFIG_SETTING_LAND_GENERATOR :طراح زمین: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :نقشه ساز اوریجینال وابسته به ست پایه گرافیک بازی است و شامل اشکال ثابت چشم انداز میباشد. تراجنسیس نقشه سازی برپایه نویز پرلین است که امکانات کنترل جزئیات بیشتری در اختیار میگذارد. STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :اصلی STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :پیدایش زمین +STR_CONFIG_SETTING_TERRAIN_TYPE :نوع زمین: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(فقط تراجنسیس) تپه دار بودن چشم انداز +STR_CONFIG_SETTING_INDUSTRY_DENSITY :تراکم مراکز تولید: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :چند کارخانه باید ایجاد شود و در چه درجه ای باید در بازی نگهداری شود STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :تمام پالایشگاه ها در لبه های تقشه ساخته می شوند که ساحل جزیره است STR_CONFIG_SETTING_SNOWLINE_HEIGHT :ارتفاع خط برف: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :ارتفاع خط برف را در مناطق نیمه قطبی کنترل کنید. وجود برف بر ایجاد صنایع و اقلام ضروری رشد شهر تاثیر میگذارد. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :پستی و بلندی های زمین: {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(فقط ترا جنسیس) چگونگی تکرار تپه ها را انتخاب کنید: چشم انداز آرام تعداد کمتری تپه با پراکندگی بیشتر دارد. چشم انداز خشن تپه های فراوانی دارد که ممکن است تکرار شده باشند. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :بسیار هموار STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :هموار STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :ناهموار STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :بسیار ناهموار +STR_CONFIG_SETTING_VARIETY :توضیع انواع : {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(فقط TerraGenesis) کنترل آب و هوای نقشه شامل کوه و مناطق هموار می باشد. این فقط نقشه را هموارتر می سازد.تغییرات دیگر مربوط به کوه ها است STR_CONFIG_SETTING_RIVER_AMOUNT :تعداد رودخانه ها: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :تعداد رودخانه ها برای ساخت را مشخص نمایید STR_CONFIG_SETTING_TREE_PLACER :الگوریتم قرار دهنده مکان درخت‌ها: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :نحوه توزیع درختان در نقشه را انتخاب کنید: "اوریجینال" درختان را به صورت یکسان پخش میکند. "بهبود یافته" درختان را به صورت گروهی میکارد STR_CONFIG_SETTING_TREE_PLACER_NONE :هیچکدام STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :اصلی STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :بهبودیافته @@ -1386,6 +1407,8 @@ STR_CONFIG_SETTING_INTERFACE :{ORANGE}واس STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}ساخت و ساز STR_CONFIG_SETTING_VEHICLES :{ORANGE}وسایل نقلیه STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}مسیریابی +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}محیط زیست +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}مقامات STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}شهرها STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}صنایع STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}توزیع محموله @@ -1422,14 +1445,13 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... قا STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} STR_INTRO_NEW_GAME :{BLACK}بازی جدید -STR_INTRO_LOAD_GAME :{BLACK}ادامه بازی های قبلی +STR_INTRO_LOAD_GAME :{BLACK}بارگذاری بازی های ذخیره شده STR_INTRO_PLAY_SCENARIO :{BLACK}بازی سناریو STR_INTRO_PLAY_HEIGHTMAP :{BLACK}بازی نقشه پستی/بلندی STR_INTRO_SCENARIO_EDITOR :{BLACK}ساخت سناریو STR_INTRO_MULTIPLAYER :{BLACK}بازی چند نفره STR_INTRO_GAME_OPTIONS :{BLACK}تنضیمات بازی -STR_INTRO_ADVANCED_SETTINGS :{BLACK}تنظیمات پیشرفته STR_INTRO_NEWGRF_SETTINGS :{BLACK}تنظیمات NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}چک کردن محتوی آنلاین STR_INTRO_SCRIPT_SETTINGS :{BLACK} تنظیمات هوش مصنوعی / اسکریپت @@ -1448,7 +1470,6 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}انتخ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}انتخاب «سرزمین اسباب بازی‌ها» برای سبک بازی STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}نشان دادن تنظیمات بازی -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}نمایش تنظیمات پیشرفته STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}نمایش تنظیمات NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}بررسی وجود مجموعه ها و به روز رسانی های جدید در اینترنت STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}نمایش تنظیمات هوش مصنوعی و اسکریپت های بازی @@ -1630,7 +1651,7 @@ STR_NETWORK_SERVER_LIST_SERVER_FULL :{SILVER}سرو STR_NETWORK_SERVER_LIST_VERSION_MISMATCH :{SILVER}عدم مطابقت ویرایش STR_NETWORK_SERVER_LIST_GRF_MISMATCH :{SILVER}عدم مطابقت NewGRF -STR_NETWORK_SERVER_LIST_JOIN_GAME :{BLACK}ورود به بازی +STR_NETWORK_SERVER_LIST_JOIN_GAME :{BLACK}الحاق به بازی STR_NETWORK_SERVER_LIST_REFRESH :{BLACK}تازه سازی سرویس دهنده STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP :{BLACK}تازه سازی اطلاعات سرویس دهنده @@ -1978,8 +1999,8 @@ STR_STATION_BUILD_COVERAGE_OFF :{BLACK}خامو STR_STATION_BUILD_COVERAGE_ON :{BLACK}روشن STR_STATION_BUILD_COVERAGE_AREA_OFF_TOOLTIP :{BLACK}منطقه تحت پوشش از سایت پیشنهادی را نشان نده STR_STATION_BUILD_COVERAGE_AREA_ON_TOOLTIP :{BLACK}منطقه تحت پوشش از سایت پیشنهادی را نشان بده -STR_STATION_BUILD_ACCEPTS_CARGO :{GOLD}{CARGO_LIST}{BLACK}قبول می کند: -STR_STATION_BUILD_SUPPLIES_CARGO :{GOLD}{CARGO_LIST}{BLACK}تدارکات: +STR_STATION_BUILD_ACCEPTS_CARGO :{BLACK}قبول میکند: {GOLD}{CARGO_LIST} +STR_STATION_BUILD_SUPPLIES_CARGO :{BLACK}تدارکات: {GOLD}{CARGO_LIST} # Join station window STR_JOIN_STATION_CAPTION :{WHITE}پیوستن ایستگاه @@ -2367,7 +2388,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :زمین خری STR_ABOUT_OPENTTD :{WHITE}OpenTTD در باره ی STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD ویرایش {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}ذخیره ی بازی @@ -2394,7 +2415,7 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: STR_SAVELOAD_OSKTITLE :{BLACK}نام فایل ذخیره بازی را وارد کنید # World generation -STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}سازنده دنیا +STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}ساخت دنیا STR_MAPGEN_MAPSIZE :{BLACK}اندازه نقشه: STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}تعداد شهرها: @@ -2450,7 +2471,7 @@ STR_GENERATION_ABORT_CAPTION :{WHITE}لغو STR_GENERATION_ABORT_MESSAGE :{YELLOW}آیا مطمئنید که می خواهید روند ساخت را متوقف کنید؟ STR_GENERATION_PROGRESS :{WHITE}{NUM}% کامل شده STR_GENERATION_PROGRESS_NUM :{BLACK}{NUM} / {NUM} -STR_GENERATION_WORLD_GENERATION :{BLACK}ساختن دنیا +STR_GENERATION_WORLD_GENERATION :{BLACK}ساخت دنیا STR_GENERATION_RIVER_GENERATION :{BLACK}ساخت رودخانه STR_GENERATION_TREE_GENERATION :{BLACK}ساختن درخت STR_GENERATION_OBJECT_GENERATION :{BLACK}ساختن اشیاء @@ -2546,10 +2567,9 @@ STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}نمای STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}رفتن به تصویر STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}رفتن به تصویر بعد. اگر تصویر معمولی نیست به تصویر معمولی بعدی می رود STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}تصویر قبلی -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}نمایش تصویر عادی قبلی، بدون انجام دادن هر گونه تغییرات بر آخر +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}نمایش تصویر عادی قبلی، بدون انجام دادن هر گونه تغییرات STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}نمایش تصویر انتخاب شده. تغییر مکان تصویر در زمان بارگزاری اعمال نمی شود STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}تغییر مکان تصویر، تغییر مقدار اضافه شونده به X و Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}مقدار اضافه شونده به X: {NUM}, مقدار اضافه شونده به Y: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}برداشتن تصویر STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}برداشتن یک تصویر از یک نقطه از صفحه نمایش @@ -2652,7 +2672,7 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (هنوز نیاز است) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (دریافت گردیده) STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}رشد شهر هر {ORANGE}{COMMA}{BLACK} روز -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}رشد شهر هر {ORANGE}{COMMA}{BLACK} روز (ساخته شده) +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}رشد شهر هر {ORANGE}{COMMA}{BLACK} روز (بنیان شده) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}شهر رشد {RED}نمی {BLACK} کند STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}حد سروصدا در شهر: {ORANGE}{COMMA}{BLACK} بیشینه: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}نمایش شهر در وسط صفحه نمایش. کنترل+کلیک یک نمای اضافه از شهر باز می کند @@ -2709,7 +2729,7 @@ STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}روی # Goal question window STR_GOAL_QUESTION_CAPTION_QUESTION :سوال -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :لغو STR_GOAL_QUESTION_BUTTON_OK :باشد STR_GOAL_QUESTION_BUTTON_NO :خیر @@ -2728,6 +2748,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :راه‌اند STR_GOAL_QUESTION_BUTTON_POSTPONE :به تاخیر انداختن STR_GOAL_QUESTION_BUTTON_SURRENDER :تسلیم STR_GOAL_QUESTION_BUTTON_CLOSE :بستن +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}یارانه ها @@ -2941,8 +2962,8 @@ STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}سرعت STR_PURCHASE_INFO_REFITTABLE :(قابل تعمیر) STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}برد: {GOLD}{COMMA} قطعه -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}لیست انتخاب قطار - برای اطلاعات بیشتر روی وسیله کلیک کنید -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}لیست انتخاب کشتی - برای اطلاعات بیشتر روی کشتی کلیک کنید +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}لیست انتخاب قطار - برای اطلاعات بیشتر روی وسیله کلیک کنید. برای مخفی یا پدیدار کردن انواع قطار کنترل+کلیک کنید +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}لیست انتخاب کشتی - برای اطلاعات بیشتر روی کشتی کلیک کنید. برای مخفی یا دوباره پدیدار کردن نوع کشتی ها، کنترل+کلیک کنید STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}لیست انتخاب هواپیما - برای اطلاعات بیشتر روی هواپیما کلیک کنید STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}ساخت وسیله نقلیه @@ -2963,6 +2984,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}تغیی STR_BUY_VEHICLE_SHIP_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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}میخ مخفی کردن/ نمایش دادن مدل قطار ها +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}میخ مخفی کردن/ نمایش دادن مدل خودرو ها +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}میخ مخفی کردن/ نمایش دادن مدل کشتی ها +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :میخ مخفی کردن/نمایش دادن مدل های هواپیما + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}تغییر نام انواع قطار ها STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}تغییر نام انواع ماشین ها STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}نام گذاری مجدد نوع کشتی @@ -3024,6 +3060,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :ماشین STR_REPLACE_VEHICLE_SHIP :کشتی STR_REPLACE_VEHICLE_AIRCRAFT :هواپیما +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}وسیله در حال استفاده است +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}ستون وسیله های شما +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}وسیله های موجود +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK} ستون با وسیله نقلیه آماده جایگزینی می باشد + @@ -3088,7 +3129,7 @@ STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}بیشی STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}ظرفیت: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}فاصله ی زمانی بین تعمیرات دوره ای: {LTBLUE}{COMMA}روز {BLACK} آخیرین تعمسرات: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}فاصله ی زمانی بین تعمیرات دوره ای: {LTBLUE}{COMMA}روز {BLACK} آخیرین تعمیرات: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}افزایش مدت سرویس به مقدار 10. برای افزایش به مقدار 5 باید Ctrl+Click کنید STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}کاهش مدت سرویس به مقدار 10، برای کاهش به مقدار 5 باید Ctrl+Click کنید @@ -3186,6 +3227,10 @@ STR_ORDER_OUT_OF_RANGE :{RED} (مقصد # Time table window +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :حرکت ({STRING}, برنامه ریزی نشده است) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :حرکت ({STRING}, برنامه ریزی نشده است) با حداکثر {VELOCITY} +STR_TIMETABLE_STAY_FOR_ESTIMATED :(توقف برای {STRING}, برنامه ریزی نشده است) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(دستور کار {STRING}, برنامه ریزی نشده است) @@ -3350,6 +3395,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... جن STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... فقط روی خط برف می توان ساخت STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... فقط زیر خط برف می توان ساخت +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}این منطقه مکان خوبی برای ایجاد '{STRING}' نمی باشد +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}تنظیمات نقشه را برای بهتر کردن آن تغییر دهید + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}اینجا نمی شود ایستگاه راه آهن ساخت STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}اینجا ایستگاه اتوبوس نمی شود ساخت @@ -3719,8 +3767,8 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PASSENGER_CAR :واگن مسا STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_MAIL_VAN :واگن نامه STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COAL_CAR :واگن ذغال STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_OIL_TANKER :تانکر نفت -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_LIVESTOCK_VAN :واگن فرآورده های حیوانی -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GOODS_VAN :واگن محصولات +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_LIVESTOCK_VAN :کامیون حمل دام +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GOODS_VAN :کامیون حمل کالا STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_GRAIN_HOPPER :واگن حمل حبوبات STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WOOD_TRUCK :واگن چوب بری STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_IRON_ORE_HOPPER :واگن سنگ آهن @@ -3823,7 +3871,7 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_MAIL_TRUCK :کامیون ح STR_VEHICLE_NAME_ROAD_VEHICLE_WITCOMBE_OIL_TANKER :تانکر نفت Witcombe STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_OIL_TANKER :تانکر نفت Foster STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_OIL_TANKER :تانکر نفت Perry -STR_VEHICLE_NAME_ROAD_VEHICLE_TALBOTT_LIVESTOCK_VAN :واگن حمل فرآورده های حیوانی Talbott +STR_VEHICLE_NAME_ROAD_VEHICLE_TALBOTT_LIVESTOCK_VAN :واگن حمل دام تالبوت STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_LIVESTOCK_VAN :واگن حمل فرآورده های حیوانی Uhl STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_LIVESTOCK_VAN :واگن حمل فرآورده های حیوانی Foster STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_GOODS_TRUCK :کامیون محصولات Balogh @@ -3995,6 +4043,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (مخفی) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4030,8 +4079,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/unfinished/urdu.txt b/src/lang/unfinished/urdu.txt index 5043cb06d7..6c06797e66 100644 --- a/src/lang/unfinished/urdu.txt +++ b/src/lang/unfinished/urdu.txt @@ -206,16 +206,16 @@ STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} من STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :I{NBSP}{COMMA} +STR_UNITS_VOLUME_SHORT_SI :{NBSP}{COMMA}کیوبک میٹر -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} لیٹر -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{NBSP}{COMMA} لیٹر +STR_UNITS_VOLUME_LONG_SI :{NBSP}{COMMA}کیوبک میٹر -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{NBSP}{COMMA}کلو نیوٹن -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} فٹ -STR_UNITS_HEIGHT_SI :{COMMA} میٹر +STR_UNITS_HEIGHT_IMPERIAL :{NBSP}{COMMA} فٹ +STR_UNITS_HEIGHT_SI :{NBSP}{COMMA} میٹر # Common window strings STR_LIST_FILTER_OSKTITLE :{BLACK} چھان کے الفاظ درج کیجیئے @@ -239,6 +239,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK} فھر STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK} فھرستی پٹی - فھرست کو دایئں بایئں کرنے کے لیے STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}زمین کے ایک مربے پر عمارتیں وغیرہ گرائیں. Ctrl ترچھے انداز میں علاقے کا انتخاب کرتا ہے. عمارتیں یا انکی لاگت تخمینہ دیکھنے کے لئے Shift کا استعمال کیجیے. +# 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 STR_BUTTON_DEFAULT :{BLACK}طے شدہ STR_BUTTON_CANCEL :{BLACK} ترک کیجیئے @@ -311,9 +322,9 @@ STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}بڑا STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}چھوٹا کر کے دکھاو STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}ریل کی پٹری بچھاو STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}سڑکیں بناو -STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}بندرگاہیں بناو -STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}ہوای اڈے بناو -STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK} منظر کشی ٹول بآر کھولیئے اور زمین اوپر نیچے، درخت لگایئے، وغیرھ +STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}بندرگاہیں بنایں +STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}ہوای اڈے بنایں +STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}منظر کشی ٹول بآر کھولیئے اور زمین اوپر نیچےکریں، درخت لگایئے، وغیره STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK} آواز/موسیقی ونڈو دکھایئے STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK} آخری پیغام/ خبر دکھایئے، پیغام کے اختیارات کھولیئے STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}زمینی رقبہ کی معلومات، کانسول،AI debug ،اسکرین شاٹس، Open TTD کے بارے میں @@ -347,7 +358,6 @@ STR_SCENEDIT_FILE_MENU_QUIT :باہر نکل ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :کھیل کے اختیارات -STR_SETTINGS_MENU_CONFIG_SETTINGS :اعلی اختیارات STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / کھیل کے اختیارات STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF اختیارات STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency کے اختیارات @@ -884,10 +894,6 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :جنوبی اف STR_GAME_OPTIONS_CURRENCY_CUSTOM :اپنی مرضی کی ۔۔۔ ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}گاڑیاں STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}اختیار کریں کہ گاڑی سڑک کی کس طرف چلے STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :بائیں طرف چلے @@ -941,6 +947,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}اسکر STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}اسکرین کی resolution اختیار کریں STR_GAME_OPTIONS_RESOLUTION_OTHER :دیگر + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}بُنیادی گرافک سیٹ STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}بُنیادی گرافک سیٹ اختیار کریں STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s} @@ -1039,8 +1047,7 @@ STR_CITY_APPROVAL_TOLERANT :برداشت ک STR_CITY_APPROVAL_HOSTILE :مخالفانہ -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}ایڈوانسڈ سیٹنگ +# Settings tree window STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(کوئی وضاحت موجود نہیں) @@ -1166,6 +1173,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+Click STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :آف +STR_CONFIG_SETTING_AUTOSAVE :Autosave: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :گیم بچانے کا وقفا چنیں STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :کھیل کو محفوظ کرنے کے لئے تاریخ کا {STRING} طریقہ استعمال کریں STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG :long (31st Dec 2008) @@ -1337,7 +1346,6 @@ STR_INTRO_SCENARIO_EDITOR :{BLACK}منظر STR_INTRO_MULTIPLAYER :{BLACK}زیادہ کھلاڑی STR_INTRO_GAME_OPTIONS :{BLACK}کھیل کے اختیارات -STR_INTRO_ADVANCED_SETTINGS :{BLACK}ایڈوانسڈ سیٹنگ STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF چنئے STR_INTRO_ONLINE_CONTENT :{BLACK}آن لائن مواد دیکھیں STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / کھیل کے اختیارات @@ -1356,7 +1364,6 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}منظر STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}منظر کشی کا 'toyland' طریقہ چُنئیے STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}کھیل کے اختیارات دکھائیں -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}ایڈوانسڈ سیتنگز دیکھیئے STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF سیٹنگز دیکھیئے STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}نئے اور ترمیم شدہ مواد کو ڈاون لوڈ کرنے کے لئے چیک کریں STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK} AI اور کھیل کے اختیارات دکھائیں @@ -2141,12 +2148,16 @@ STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE} غیر STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK} منتخب NewGRF فائل اپنے configuration میں شامل کیجئے STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK} فائلوں کو دوبارھ اسکین کیجئے STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK} نئی دستیاب NewGRF فائلوں کی فھرست حاصل کیجئے +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}اپگریڈ # NewGRF save preset window +STR_SAVE_PRESET_CANCEL :{BLACK}منسوخ +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}پریسیٹ تبدیل نہ کریں +STR_SAVE_PRESET_SAVE :{BLACK}بچایں # NewGRF parameters window @@ -2227,7 +2238,8 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :معلومات STR_GOAL_QUESTION_CAPTION_WARNING :انتباہ STR_GOAL_QUESTION_CAPTION_ERROR :خرابی -### Start of Goal Question button list +############ Start of Goal Question button list +############ End of Goal Question button list # Subsidies window @@ -2269,9 +2281,9 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN # Company view -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_RAIL :{WHITE}{COMMA}پٹڑی { "کا" "کے" P} { "ٹکڑا" "ٹکڑے" P} +STR_COMPANY_VIEW_INFRASTRUCTURE_ROAD :{WHITE}{COMMA} سڑک { "کا" "کے" P} { "ٹکڑا" "ٹکڑے" P} +STR_COMPANY_VIEW_INFRASTRUCTURE_WATER :{WHITE}{COMMA} پانی { "کا" "کے" P} { "ٹکڑا" "ٹکڑے" P} STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} اسٹیشن کی ٹائلیں STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{COMMA}{WHITE} ہوائی اڈے STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}کوئی نہیں @@ -2338,6 +2350,24 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{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_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}ٹرین کا قسم دکهایں یه نا +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}گاڑی کا قسم دکهایں یه نا +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}سمندری جہاز کا قسم دکهایں یه نا +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}ہوائی جہاز کا قسم دکهایں یه نا + +STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}ٹرین کےقسم کا نام تبدیل کریں +STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}گاڑی کےقسم کا نام تبدیل کریں +STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}بہری جہاز کےقسم کا نام تبدیل کریں # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -2370,6 +2400,9 @@ STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_RUNCOST :{BLACK}قیمت # Autoreplace window +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}استعمالکردہ گاڑیاں +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}میسر گاڑیاں + @@ -2562,6 +2595,7 @@ STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}{TOWN} # Industry related errors STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{G=m}{WHITE}... صرف ان شہروں میں بن سکتا ہے جن کی آبادی ۱۲۰۰ سے زیادہ ہے + # Station construction related errors @@ -2701,17 +2735,57 @@ STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_CHOO_CHOO :Powernaut Choo- STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MIGHTYMOVER_CHOO_CHOO :MightyMover Choo-Choo STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_WIZZOWOW_Z99 :Wizzowow Z99 STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_WIZZOWOW_ROCKETEER :Wizzowow Rocketeer +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_COAL_TRUCK :Balogh کوئلے کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_COAL_TRUCK :Uhl کوئلے کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_DW_COAL_TRUCK :DW کوئلے کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_MAIL_TRUCK :MPS ڈاک کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_REYNARD_MAIL_TRUCK :Reynard ڈاک کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_MAIL_TRUCK :Perry ڈاک کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_MAIL_TRUCK :MightyMover ڈاک کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_MAIL_TRUCK :Powernaught ڈاک کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_MAIL_TRUCK :Wizzowow ڈاک کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_WITCOMBE_OIL_TANKER :Witcombe تیل کا ٹینکر +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_OIL_TANKER :Foster تیل کا ٹینکر +STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_OIL_TANKER :Perry تیل کا ٹینکر +STR_VEHICLE_NAME_ROAD_VEHICLE_TALBOTT_LIVESTOCK_VAN :Talbott مویشی وین +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_LIVESTOCK_VAN :Uhl مویشی وین +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_LIVESTOCK_VAN :Foster مویشی وین +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_GOODS_TRUCK :Balogh عام اشیاء کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_CRAIGHEAD_GOODS_TRUCK :Craighead عام اشیاء کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_GOODS_TRUCK :Goss عام اشیاء کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_HEREFORD_GRAIN_TRUCK :Hereford اناج کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_THOMAS_GRAIN_TRUCK :Thomas اناج کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_GRAIN_TRUCK :Goss اناج کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_WITCOMBE_WOOD_TRUCK :Witcombe لکڑی کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_WOOD_TRUCK :Foster لکڑی کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_MORELAND_WOOD_TRUCK :Moreland لکڑی کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_IRON_ORE_TRUCK :MPS لوہے کی دھات کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_IRON_ORE_TRUCK :Uhl لوہے کی دھات کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_CHIPPY_IRON_ORE_TRUCK :Chippy لوہے کی دھات کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_STEEL_TRUCK :Balogh فولاد کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_STEEL_TRUCK :Uhl فولاد کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_KELLING_STEEL_TRUCK :Kelling فولاد کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_ARMORED_TRUCK :Balogh بکتربند ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_ARMORED_TRUCK :Uhl بکتربند ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_ARMORED_TRUCK :Foster بکتربند ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_FOSTER_FOOD_VAN :Foster خوراک کی ویگن STR_VEHICLE_NAME_ROAD_VEHICLE_PERRY_FOOD_VAN :Perry خوراک کی ویگن STR_VEHICLE_NAME_ROAD_VEHICLE_CHIPPY_FOOD_VAN :Chippy خوراک کی ویگن STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_PAPER_TRUCK :Uhl کاغذ کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_PAPER_TRUCK :Balogh کاغذ کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_PAPER_TRUCK :MPS کاغذ کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_COPPER_ORE_TRUCK :MPS تانبے کی دهات کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_COPPER_ORE_TRUCK :Uhl تانبے کی دهات کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_GOSS_COPPER_ORE_TRUCK :Goss تانبے کی دهات کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_WATER_TANKER :Uhl پانی کا ٹینکر +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_WATER_TANKER :Balogh پانی کا ٹینکر +STR_VEHICLE_NAME_ROAD_VEHICLE_MPS_WATER_TANKER :MPS پانی کا ٹینکر +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_FRUIT_TRUCK :Balogh پھلوں کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_FRUIT_TRUCK :Uhl پھلوں کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_KELLING_FRUIT_TRUCK :Kelling پھلوں کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_BALOGH_RUBBER_TRUCK :Balogh کہریا(ربر) کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_UHL_RUBBER_TRUCK :Uhl کہریا(ربر) کا ٹرک +STR_VEHICLE_NAME_ROAD_VEHICLE_RMT_RUBBER_TRUCK :RMT کہریا(ربر) کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_SUGAR_TRUCK :MightyMover چینی کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_SUGAR_TRUCK :Powernaught چینی کا ٹرک STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_SUGAR_TRUCK :Wizzowow چینی کا ٹرک @@ -2843,6 +2917,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE}(پوشیدہ) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -2877,8 +2952,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} @@ -2912,4 +2985,4 @@ STR_LORRY :{BLACK}{LORRY} STR_PLANE :{BLACK}{PLANE} STR_SHIP :{BLACK}{SHIP} -STR_TOOLBAR_RAILTYPE_VELOCITY :{STRING} ({VELOCITY}) +STR_TOOLBAR_RAILTYPE_VELOCITY :({STRING} ({VELOCITY} diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index a13a8a21a9..534f9accd5 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Đồ uống c # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} hành khách +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}hành khách STR_QUANTITY_COAL :{WEIGHT_LONG} than đá -STR_QUANTITY_MAIL :{COMMA} túi bưu kiện +STR_QUANTITY_MAIL :{COMMA}{NBSP}túi bưu kiện STR_QUANTITY_OIL :{VOLUME_LONG} dầu thô -STR_QUANTITY_LIVESTOCK :{COMMA} đầu gia súc -STR_QUANTITY_GOODS :{COMMA} thùng hàng tiêu dùng +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}đầu gia súc +STR_QUANTITY_GOODS :{COMMA}{NBSP}thùng hàng tiêu dùng STR_QUANTITY_GRAIN :{WEIGHT_LONG} ngũ cốc STR_QUANTITY_WOOD :{WEIGHT_LONG} gỗ STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} quặng sắt STR_QUANTITY_STEEL :{WEIGHT_LONG} thép -STR_QUANTITY_VALUABLES :{COMMA} túi đồ quý giá +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}túi đồ quý giá STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} quặng đồng STR_QUANTITY_MAIZE :{WEIGHT_LONG} ngô STR_QUANTITY_FRUIT :{WEIGHT_LONG} hoa quả -STR_QUANTITY_DIAMONDS :{COMMA} túi kim cương +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}túi kim cương STR_QUANTITY_FOOD :{WEIGHT_LONG} thực phẩm STR_QUANTITY_PAPER :{WEIGHT_LONG} giấy -STR_QUANTITY_GOLD :{COMMA} túi vàng +STR_QUANTITY_GOLD :{COMMA}{NBSP}túi vàng STR_QUANTITY_WATER :{VOLUME_LONG} nước STR_QUANTITY_WHEAT :{WEIGHT_LONG} bột mì STR_QUANTITY_RUBBER :{VOLUME_LONG} cao su STR_QUANTITY_SUGAR :{WEIGHT_LONG} đường -STR_QUANTITY_TOYS :{COMMA} đồ chơi -STR_QUANTITY_SWEETS :{COMMA} túi kẹo +STR_QUANTITY_TOYS :{COMMA}{NBSP}đồ chơi +STR_QUANTITY_SWEETS :{COMMA}{NBSP}túi kẹo STR_QUANTITY_COLA :{VOLUME_LONG} nước cola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} kẹo bông STR_QUANTITY_BUBBLES :{COMMA} bong bóng @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}K0 STR_ABBREV_ALL :{TINY_FONT}Tất # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} hành khách -STR_BAGS :{COMMA} túi -STR_TONS :{COMMA} tấn -STR_LITERS :{COMMA} lít -STR_ITEMS :{COMMA} cái -STR_CRATES :{COMMA} thùng +STR_PASSENGERS :{COMMA}{NBSP}hành khách +STR_BAGS :{COMMA}{NBSP}túi +STR_TONS :{COMMA}{NBSP}tấn +STR_LITERS :{COMMA}{NBSP}lít +STR_ITEMS :{COMMA}{NBSP}cái +STR_CRATES :{COMMA}{NBSP}thùng # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Xanh da trời đậm @@ -191,37 +191,37 @@ STR_COLOUR_GREY :Xám STR_COLOUR_WHITE :Trắng # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tấn -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tấn +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lít -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}lít +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Lọc chuỗi: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Thanh cu STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Thanh cuộn sang trái/phải STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Phá hủy các tòa nhà v.v... trên 1 lô đất. Ctrl để chọn vùng theo đường chéo. Shift để chọn hiển thị chi phí xây dựng/phá hủy +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Hiện ẩn +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Hiện ẩn +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Hiện ẩn +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Hiện ẩn + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Khi bật nút này, những tàu hỏa bị ẩn cũng được hiển thị +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Khi bật nút này, những xe bị ẩn cũng được hiển thị +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Khi bật nút này, những tàu thủy bị ẩn cũng được hiển thị +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Khi bật nút này, những máy bay bị ẩn cũng được hiển thị + # Query window STR_BUTTON_DEFAULT :{BLACK}Mặc định STR_BUTTON_CANCEL :{BLACK}Thôi @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Thoát ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Cấu hình trò chơi -STR_SETTINGS_MENU_CONFIG_SETTINGS :Thiết lập nâng cao +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Thiết lập STR_SETTINGS_MENU_SCRIPT_SETTINGS :Thiết lập AI / Game script STR_SETTINGS_MENU_NEWGRF_SETTINGS :Thông số NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Thiết lập hiệu ứng trong suốt @@ -489,6 +500,26 @@ STR_ORDINAL_NUMBER_15TH :15 ############ range for ordinal numbers ends ############ range for days starts +STR_DAY_NUMBER_1ST :1 +STR_DAY_NUMBER_2ND :2 +STR_DAY_NUMBER_3RD :3 +STR_DAY_NUMBER_4TH :4 +STR_DAY_NUMBER_5TH :5 +STR_DAY_NUMBER_6TH :6 +STR_DAY_NUMBER_7TH :7 +STR_DAY_NUMBER_8TH :8 +STR_DAY_NUMBER_9TH :9 +STR_DAY_NUMBER_10TH :10 +STR_DAY_NUMBER_11TH :11 +STR_DAY_NUMBER_12TH :12 +STR_DAY_NUMBER_13TH :13 +STR_DAY_NUMBER_14TH :14 +STR_DAY_NUMBER_15TH :15 +STR_DAY_NUMBER_16TH :16 +STR_DAY_NUMBER_17TH :17 +STR_DAY_NUMBER_18TH :18 +STR_DAY_NUMBER_19TH :19 +STR_DAY_NUMBER_20TH :20 STR_DAY_NUMBER_21ST :21 STR_DAY_NUMBER_22ND :22 STR_DAY_NUMBER_23RD :23 @@ -895,10 +926,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgia (G STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iran (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Xe cộ STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Chọn phía đường lái xe STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Lái bên trái @@ -952,6 +979,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Độ ph STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Chọn độ phân giải màn hình để sử dụng STR_GAME_OPTIONS_RESOLUTION_OTHER :khác +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Kích thước giao diện +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Chọn kích thước của các đối tượng trên giao diện + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Bình thường +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Gấp 2 lần +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Gấp 4 lần + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Gói đồ họa STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Chọn gói đồ họa để sử dụng STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} thiếu/hỏng file @@ -1045,6 +1079,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Rất Phẳng STR_TERRAIN_TYPE_FLAT :Phẳng STR_TERRAIN_TYPE_HILLY :Núi STR_TERRAIN_TYPE_MOUNTAINOUS :Núi Cao +STR_TERRAIN_TYPE_ALPINIST :Đồi núi STR_CITY_APPROVAL_PERMISSIVE :Dễ dãi STR_CITY_APPROVAL_TOLERANT :Vừa phải @@ -1052,8 +1087,8 @@ STR_CITY_APPROVAL_HOSTILE :Khó khăn STR_WARNING_NO_SUITABLE_AI :{WHITE}Không có AI nào phù hợp...{}Bạn có thể tải các AI từ mục 'Online Content' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Thiết Lập Nâng Cao +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Thiết lập STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Lọc chuỗi: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Mở xuống tất cả STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Đóng lại tất cả @@ -1126,6 +1161,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Thay đổi tù STR_CONFIG_SETTING_CITY_APPROVAL :Thái độ của hội đồng thành phố với việc xây dựng lại địa phương: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Lựa chọn mức độ ảnh hưởng môi trường và tiếng ồn gây ra bởi các công ty sẽ ảnh hưởng uy tín của công ty đối với chính quyền địa phương và các hoạt động xây dựng của họ trong địa bàn +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Chiều cao tối đa của bản đồ: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Thay đổi chiều cao tối đa cho phép cho các núi đồi trên bản đồ +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Bạn không thể đặt giá trị chiều cao tối đa này cho bản đổ. Phải có ít nhất 1 ngọn núi cao hơn bản đồ STR_CONFIG_SETTING_AUTOSLOPE :Cho phép thay đổi nền đất dưới công trình, đường.. (tự làm dốc): {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Cho phép thay đổi nền đất dưới công trình và đường mà không cần phá hủy chúng STR_CONFIG_SETTING_CATCHMENT :Mô phỏng thực tế diện tích khu vực đón hàng: {STRING} @@ -1154,6 +1192,8 @@ STR_CONFIG_SETTING_INFLATION :Lạm phát: {S STR_CONFIG_SETTING_INFLATION_HELPTEXT :Cho phép lạm phát đối với kinh tế, khi mà chi phí tăng nhanh hơn một chút so với khoản thu STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Độ dài tối đa của cầu: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Độ dài tối đa khi xây cầu +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Chiều cao tối đa của cầu: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Chiều cao tối đa khi xây cầu STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Độ dài tối đa của hầm: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Độ dài tối đa khi xây hầm STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Tuỳ chỉnh phương thức xây dựng nhà máy: {STRING} @@ -1239,8 +1279,8 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Khoảng thời STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Khoảng thời gian hiện thị thông báo trong cửa sổ màu đỏ. Lưu ý rằng cửa sổ thông báo sẽ tự đóng khi sau khoảng thời gian này, hoặc là được đóng bằng tay STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} giây STR_CONFIG_SETTING_HOVER_DELAY :Hiện thông báo: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Khoảng thời gian trễ mà hướng dẫn hiện lên khi di chuột tới đối tượng, có thể hiện hướng dẫn bằng bấm nút phải chuột -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Thời gian để con trỏ lên đối tượng {COMMA} giây +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Khoảng thời gian trễ mà hướng dẫn hiện lên khi di chuột tới đối tượng, có thể hiện hướng dẫn bằng bấm nút phải chuột khi giá trị này bằng 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Thời gian để con trỏ lên đối tượng {COMMA} mili giây STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Bấm phải chuột STR_CONFIG_SETTING_POPULATION_IN_LABEL :Hiện dân số đô thị trong nhãn tên của đô thị: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Hiển thị dân số của đô thị trên nhãn của nó trên bản đồ @@ -1258,10 +1298,15 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Rất Phẳng STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Phẳng STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Gồ Ghề STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Rất Gồ Ghề +STR_CONFIG_SETTING_RIVER_AMOUNT :Số lượng sông ngòi: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Chọn số lượng sông ngòi được khởi tạo STR_CONFIG_SETTING_TREE_PLACER :Thuật toán đặt cây: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Chọn cách phân bổ cây cối trên bản đồ: chế độ 'Nguyên bản' trồng một cách rải rác đồng đều, chế độ 'Cải tiến' trồng theo nhóm STR_CONFIG_SETTING_TREE_PLACER_NONE :Không STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Nguyên bản STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Tối Ưu Hóa +STR_CONFIG_SETTING_ROAD_SIDE :Xe cộ: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Chọn phía xe chạy STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Xoay bản đồ địa hình: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Ngược chiều đồng hồ STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Xuôi chiều đồng hồ @@ -1407,7 +1452,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Tần suất b STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Lựa chọn liệu rằng việc bảo trì phương tiện sẽ được tiến hành sau một khoảng thời gian nhất định hay là độ tin cậy bị giảm xuống bao nhiều phần trăm so với mức tối đa STR_CONFIG_SETTING_SERVINT_TRAINS :Tần suất bảo trì mặc định đối với tàu hỏa: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Thiết lập khoảng thời gian bảo trì tùy chọn đối với các tàu hỏa, nếu phương tiện không có riêng thời gian bảo trì này -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} ngày/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}ngày/% STR_CONFIG_SETTING_SERVINT_DISABLED :tắt STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Tần suất bảo trì mặc định đối với ôtô: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Thiết lập khoảng thời gian bảo trì tùy chọn đối với các ôtô, nếu phương tiện không có riêng thời gian bảo trì này @@ -1547,9 +1592,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Không STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Hệ số quy mô đô thị coi là thành phố: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Kích thước trung bình của thành phố tỉ lệ với đô thị lúc bắt đầu trò chơi -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Cập nhật đồ thị phân phối mỗi {STRING} ngày +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Cập nhật đồ thị phân phối mỗi {STRING}{NBSP}ngày STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Thời gian giữa các lần tính toán đồ thị. Mỗi lần tính sẽ tính một phần của đồ thị. Nhưng không có nghĩa là giá trị X này sẽ khiến việc tính toán toàn bộ xảy ra sau X ngày, chỉ có một phần thôi. Nếu nhỏ thì CPU cần để tính sẽ nhiều hơn, lớn thì việc tính toán lại phân phối hàng hóa mỗi khi có đường mới sẽ chậm hơn. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Dùng {STRING} ngày để tính toán lại đồ thị phân phối +STR_CONFIG_SETTING_LINKGRAPH_TIME :Dùng {STRING}{NBSP}ngày để tính toán lại đồ thị phân phối STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Thời gian cần thiết cho mỗi bước tính toán đồ thị liên kết. Mỗi khi bắt đầu, chương trình tính toán sẽ được phép chạy trong một số ngày nào đó tùy theo giá trị này. Nếu quá ít có thể không đủ để tính toán, mà nếu quá nhiều thì nó sẽ kéo dài việc tính toán lại phân phối mỗi khi đường đi thay đổi. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :bằng tay STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :bất đối xứng @@ -1584,25 +1629,25 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metric (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Đơn vị khối lượng: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Khi hiển thị khối lượng trên giao diện, thể hiện nó bằng đơn vị đã chọn. +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Khi hiển thị khối lượng trên giao diện, thể hiện nó bằng đơn vị đã chọn STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (short t/ton) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metric (t/tonne) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Đơn vị dung tích: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Khi dung tích thể hiện, hiển thị nó trong đơn vị đã chọn. +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Khi dung tích thể hiện, hiển thị nó trong đơn vị đã chọn STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metric (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Đơn vị gia tốc: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Mỗi đơn vị lực, cũng là gia tốc, hiển thị trên giao diện như là đơn vị đã chọn. +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Mỗi đơn vị lực, cũng là gia tốc, hiển thị trên giao diện như là đơn vị đã chọn STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metric (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Đơn vị độ cao: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Khi độ cao thể hiện trên giao diện, thì hiển thị nó trên đơn vị đã chọn. +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Khi độ cao thể hiện trên giao diện, thì hiển thị nó trên đơn vị đã chọn STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Hoàng Gia (ft) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metric (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) @@ -1613,6 +1658,8 @@ STR_CONFIG_SETTING_INTERFACE :{ORANGE}Giao Di STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Xây Dựng STR_CONFIG_SETTING_VEHICLES :{ORANGE}Phương Tiện STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Tìm đường +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Môi trường +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Chính quyền STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Đô thị STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Nhà máy STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Phân bổ hàng hóa @@ -1666,7 +1713,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Chơi Tr STR_INTRO_GAME_OPTIONS :{BLACK}Cấu Hình Trò Chơi STR_INTRO_HIGHSCORE :{BLACK}Bảng điểm chơi cao nhất -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Thiết Lập Nâng Cao +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Thiết lập STR_INTRO_NEWGRF_SETTINGS :{BLACK}Thiết Lập NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Các Nội Dung Trên Mạng STR_INTRO_SCRIPT_SETTINGS :{BLACK}Thiết Lập AI / Game Script @@ -1686,7 +1733,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Chọn k STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Hiển thị cấu hình của trò chơi STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Hiện bảng điểm chơi cao nhất -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Hiển thị tùy chỉnh nâng cao +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Thiết lập hiển thị STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Hiển thị tùy chỉnh NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kiểm tra những nội dung mới & cập nhật để tải về STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Hiển thị thiết lập AI và Game script @@ -1726,6 +1773,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Điều STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Xe ủi thần kỳ (xóa bỏ nhà máy, vật không thể di chuyển): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Đường ngầm có thể vượt lẫn nhau : {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Máy bay phản lực sẽ không tai nạn (thường xuyên) ở các sân bay nhỏ: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Thay đổi chiều cao tối đa của bản đồ {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Thay đổi chiều cao tối đa của núi đồi trên bản đồ STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Địa hình vừa phải STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Địa hình giá lạnh STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Địa hình cận nhiệt đới @@ -2244,7 +2293,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Xây d STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Xây xưởng tàu hoả (để chế tạo và bảo dưỡng tàu). Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Chuyển từ ray sang điểm mốc. Ctrl để nối các điểm mốc. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Xây nhà ga tàu hoả. Ctrl để nối các nhà ga. Shift để xem chi phí dự tính -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Xây đèn tín hiệu đường sắt. Ctrl đổi dùng đèn/cờ tín hiệu.{}Ctrl + kéo chuột theo đường ray khi xây sẽ xây loạt đèn tín hiệu cho tới điểm ngã ba, tư kế tiếp {}Ctrl+Click để mở cửa sổ chọn loại đèn tin hiệu. Shift để xem chi phí dự tính +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Xây đèn tín hiệu đường sắt. Ctrl đổi dùng đèn/cờ tín hiệu{}Kéo thả để xây đèn tín hiệu theo đoạn kéo thả. Ctrl + kéo chuột theo đường ray khi xây sẽ xây loạt đèn tín hiệu cho tới điểm ngã ba, tư kế tiếp {}Ctrl+Click để mở cửa sổ chọn loại đèn tin hiệu. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Xây cầu tàu hoả. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Xây hầm tàu hoả. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Chuyển chế độ xây/phá cho đường ray, đèn tín hiệu, điểm mốc và nhà ga. Giữ Ctrl để phá bỏ đường ray tính từ điểm mốc hay nhà ga @@ -2616,7 +2665,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Đất công ty STR_ABOUT_OPENTTD :{WHITE}Về OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Nguyên tác bản quyền {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD phiên bản {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2014 Nhóm OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Nhóm OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Lưu Ván Chơi @@ -2650,6 +2699,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Số lượng đô thị: STR_MAPGEN_DATE :{BLACK}Thời điểm: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Số lượng nhà máy: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Chiều cao tối đa của bản đồ +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Tăng chiều cao tối đa của núi đồi trên bản đồ 1 đơn vị +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Giảm chiều cao tối đa của núi đồi trên bản đồ 1 đơn vị STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Độ cao tuyết phủ: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Di chuyển độ cao tuyết phủ lên cao STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Di chuyển độ cao tuyết phủ xuống thấp @@ -2679,6 +2731,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Tên b STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Cỡ: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Thay đổi chiều cao tối đa của bản đồ STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Thay đổi độ cao tuyết phủ STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Thay đổi thời điểm bắt đầu @@ -2760,6 +2813,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Tắt STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Không tương thích với phiên bản OpenTTD này. # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Lưu thiết lập +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Danh sách những thiết lập có sẵn, chọn một để sao chép tên thiết lập +STR_SAVE_PRESET_TITLE :{BLACK}Nhập tên cho thiết lập +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Tên hiện tại cho thiết lập được lưu +STR_SAVE_PRESET_CANCEL :{BLACK}Hủy bỏ +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Không thay đổi thiết lập +STR_SAVE_PRESET_SAVE :{BLACK}Lưu +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Lưu thiết lập bằng tên được chọn # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Thay Đổi Tham Số NewGRF @@ -2788,10 +2849,9 @@ STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Chuyển STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Đi tới sprite STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Nhảy tới sprite đã cho. Nếu sprite không bình thường, thì chuyển tới cái bình thường kế tiếp STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite trước -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Xử lý sprite bình thường ở trước, bỏ qua các loại sprite căn theo điểm bắt đầu +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Xử lý sprite bình thường ở trước, bỏ qua các loại pseudo/recolour/font sprite căn theo điểm bắt đầu STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Theo những thông tin của sprite đã chọn. Thì việc căn chỉnh khi vẽ đối với sprite này sẽ bị bỏ qua STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Di chuyển sprite xung quanh, thay đổi X và Y offsets -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}X offset: {NUM}, Y offset: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Chọn sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Chọn sprite ở bất cứ đâu trên màn hình @@ -2903,8 +2963,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{GREEN}Đã chuyển được {ORANGE}{STRING} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (vẫn còn yêu cầu) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (đã được vận chuyển) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Thị trấn phát triển mỗi {ORANGE}{COMMA}{BLACK} ngày -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Thị trấn phát triển mỗi {ORANGE}{COMMA}{BLACK} ngày (đã được góp vốn) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Thị trấn phát triển mỗi {ORANGE}{COMMA}{BLACK}{NBSP}ngày +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Thị trấn phát triển mỗi {ORANGE}{COMMA}{BLACK}{NBSP}ngày (đã được góp vốn) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Thị trấn {RED}không còn{BLACK} phát triển STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Độ ồn giới hạn trong đô thị: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Xem trung tâm đô thị. Ctrl+Click mở cửa sổ mới về vị trí đô thị @@ -2964,7 +3024,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Thông Tin STR_GOAL_QUESTION_CAPTION_WARNING :Cảnh Báo STR_GOAL_QUESTION_CAPTION_ERROR :Lỗi -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Hủy bỏ STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :Không @@ -2983,6 +3043,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Làm lại STR_GOAL_QUESTION_BUTTON_POSTPONE :Hoãn lại STR_GOAL_QUESTION_BUTTON_SURRENDER :Từ bỏ STR_GOAL_QUESTION_BUTTON_CLOSE :Đóng +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Trợ Cấp @@ -3305,10 +3366,10 @@ STR_PURCHASE_INFO_ALL_BUT :Tất cả tr STR_PURCHASE_INFO_MAX_TE :{BLACK}Lực kéo tối đa: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Tầm xa: {GOLD}{COMMA} ô -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Danh sách tàu hỏa - click vào tàu hỏa để xem thông tin -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Danh sách xe - click vào xe để xem thông tin -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Danh sách tàu - click vào tàu để xem thông tin -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Danh sách máy bay - click vào máy bay để xem thông tin +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Danh sách tàu hỏa có thể chọn. Click vào tàu hỏa để xem thông tin. Ctrl+Click để ẩn/hiện loại được chọn +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Danh sách xe có thể chọn. Click vào xe để xem thông tin. Ctrl+Click để ẩn/hiện loại được chọn +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Danh sách tàu có thể chọn. Click vào tàu để xem thông tin. Ctrl+Click để ẩn/hiện loại được chọn +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Danh sách máy bay có thể chọn. Click vào máy bay để xem thông tin. Ctrl+Click để ẩn/hiện loại được chọn STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Mua P.Tiện STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Mua P.Tiện @@ -3330,6 +3391,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Thay tê STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Thay tên loại tàu STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Thay tên loại máy bay +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ẩn +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ẩn +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Ẩn +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Ẩn + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Hiển thị +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Hiển thị +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Hiển thị +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Hiển thị + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bật/tắt hiển thị loại tàu hỏa +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bật/tắt hiển thị loại xe +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bật/tắt hiển thị loại tàu +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Bật/tắt hiển thị loại máy bay + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Đổi tên kiểu của đầu/toa tàu STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Đổi tên kiểu của ôtô STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Đổi tên kiểu của tàu thuỷ @@ -3383,7 +3459,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Tạo ô STR_DEPOT_CLONE_SHIP :{BLACK}Tạo tàu thuỷ giống hệt STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Tạo máy bay giống hệt -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Thao tác này mua một đoàn tàu giống hệt tàu cũ, gồm cả đầu máy và toa xe. Ctrl+Click để tạo tàu mới chia sẻ lộ trình. Shift+Click để xem giá mua dự tính +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Thao tác này mua một đoàn tàu giống hệt tàu cũ, gồm cả đầu máy và toa xe. Click vào nút này, sau đó click vào một đoàn tàu ngoài hoặc trong ga. Ctrl+Click để tạo tàu mới chia sẻ lộ trình. Shift+Click để xem giá mua dự tính STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Thao tác này mua ôtô giống hệt ôtô cũ.Click vào nút này để thực hiện thao tác đối với xe trong xưởng hoặc ngoài xưởng. Ctrl+Click để tạo ôtô chia sẻ lộ trình. Shift+Click để xem giá mua ước tính STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Thao tác này mua tàu thuỷ giống hệt tàu thuỷ cũ, gồm cả loại hàng chuyên chở. Ctrl+Click để tạo tàu thuỷ chia sẻ lộ trình. Shift+Click để xem giá mua dự tính STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Thao tác này mua máy bay giống hệt máy bay cũ, gồm cả loại hàng chuyên chở. Ctrl+Click để tạo máy bay chia sẻ lộ trình. Shift+Click để xem giá mua dự tính @@ -3434,6 +3510,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Xe cộ STR_REPLACE_VEHICLE_SHIP :Tàu thủy STR_REPLACE_VEHICLE_AIRCRAFT :Máy bay +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Phương tiện đang sử dụng +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Cột hiển thị những phương tiện đang sở hữu +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Phương tiện có sẵn +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Cột hiển thị những phương tiện có thể thay thế + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Lựa chọn đầu máy để thay thế STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Lựa chọn đầu máy mới để thay thế đầu máy đã chọn @@ -3558,7 +3639,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Sức ch STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Cước trung chuyển: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Tần suất bảo trì: {LTBLUE}{COMMA}ngày{BLACK} Lần bảo trì cuối: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Tần suất bảo trì: {LTBLUE}{COMMA}{NBSP}ngày{BLACK} Lần bảo trì cuối: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Tần suất bảo trì: {LTBLUE}{COMMA}%{BLACK} Lần bảo trì cuối: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Tăng tần suất bảo trì lên 10. Ctrl+Click để tăng 5 thôi STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Giảm tần suất bảo trì lên 10. Ctrl+Click để giảm 5 thôi @@ -3790,8 +3871,8 @@ STR_TIMETABLE_TRAVEL_FOR :Di chuyển tro STR_TIMETABLE_TRAVEL_FOR_SPEED :Lộ trình {STRING} với tốc độ tối đa {VELOCITY} STR_TIMETABLE_STAY_FOR :và ở lại trong {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :và di chuyển trong {STRING} -STR_TIMETABLE_DAYS :{COMMA} ngày -STR_TIMETABLE_TICKS :{COMMA} nhịp +STR_TIMETABLE_DAYS :{COMMA}{NBSP}ngày +STR_TIMETABLE_TICKS :{COMMA}{NBSP}nhịp STR_TIMETABLE_TOTAL_TIME :{BLACK}Lịch trình này sẽ mất {STRING} để hoàn thành STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Lịch trình này sẽ mất ít nhất {STRING} để hoàn thành (không phải tất cả điểm được lập lịch trình) @@ -4029,6 +4110,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Đào h STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... ở mức nước biển rồi STR_ERROR_TOO_HIGH :{WHITE}... quá cao STR_ERROR_ALREADY_LEVELLED :{WHITE}... đã bình địa rồi +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Cây cầu phía trên nền đất sau khi san lấp sẽ quá cao. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Không thể đổi tên công ty... @@ -4055,7 +4137,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... quá STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... quá gần đô thị khác STR_ERROR_TOO_MANY_TOWNS :{WHITE}... quá nhiều đô thị STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... không còn khoảng trống nào trên bản đồ -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Độ thị sẽ không xây dựng đường phố. Bạn có thể bật tính năng này ở menu Thiết lập mở rộng ->Kinh tế->Đô thị +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Đô thị sẽ không xây dựng đường phố. Bạn có thể bật tính năng này ở menu Thiết lập mở rộng->Môi trường->Đô thị STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Xây dựng cầu đường đang tiến hành STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Không thể xoá đo thị này...{}Có một ga, bến hoặc xưởng thuộc đô thị hoặc là 1 ô đất của đô thị không thể xoá được. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... không có nơi nào hợp lý để dựng tượng đài ở trung tâm đô thị này @@ -4079,6 +4161,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... rừ STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... chỉ có thể xây phía trên núi cao có tuyết STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... chỉ có thể xây phía dưới núi cao có tuyết +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Không có vùng đất nào phù hợp với nhà máy '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Thay đổi thông số khởi tạo bản đồ để có được bản đồ tốt hơn + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Không thể xây ga tàu hoả ở đây... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Không thể xây bến xe buýt... @@ -4215,6 +4300,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Phải p STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Không thể bắt đầu và kết thúc ở cùng một điểm STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Hai đầu cầu không ở cùng độ cao STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Cầu thấp quá so với mặt đất +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Cầu quá cao đối với địa hình này. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Điểu đầu và cuối phải trên 1 đường thẳng STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... hai đầu cầu phải được gá vào đất STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... cầu quá dài @@ -4778,6 +4864,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (ẩn) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4813,8 +4900,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index b9b1467157..9d3f3ec617 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -95,30 +95,30 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :Diod Perfiol # Quantity of cargo STR_QUANTITY_NOTHING : -STR_QUANTITY_PASSENGERS :{COMMA} teithiwr +STR_QUANTITY_PASSENGERS :{COMMA}{NBSP}teithiwr STR_QUANTITY_COAL :{WEIGHT_LONG} o lo -STR_QUANTITY_MAIL :{COMMA} bag o bost +STR_QUANTITY_MAIL :{COMMA}{NBSP}bag o bost STR_QUANTITY_OIL :{VOLUME_LONG} o olew -STR_QUANTITY_LIVESTOCK :{COMMA} eitem o dda byw -STR_QUANTITY_GOODS :{COMMA} crât o nwyddau +STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}eitem o dda byw +STR_QUANTITY_GOODS :{COMMA}{NBSP}crât o nwyddau STR_QUANTITY_GRAIN :{WEIGHT_LONG} o rawn STR_QUANTITY_WOOD :{WEIGHT_LONG} o goed STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} o fwyn haearn STR_QUANTITY_STEEL :{WEIGHT_LONG} o ddur -STR_QUANTITY_VALUABLES :{COMMA} bag o drysorau +STR_QUANTITY_VALUABLES :{COMMA}{NBSP}bag o drysorau STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} o fwyn copr STR_QUANTITY_MAIZE :{WEIGHT_LONG} o india corn STR_QUANTITY_FRUIT :{WEIGHT_LONG} o ffrwyth -STR_QUANTITY_DIAMONDS :{COMMA} bag o ddiemwntau +STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}bag o ddiemwntau STR_QUANTITY_FOOD :{WEIGHT_LONG} o fwyd STR_QUANTITY_PAPER :{WEIGHT_LONG} o bapur -STR_QUANTITY_GOLD :{COMMA} bag o aur +STR_QUANTITY_GOLD :{COMMA}{NBSP}bag o aur STR_QUANTITY_WATER :{VOLUME_LONG} o ddŵr STR_QUANTITY_WHEAT :{WEIGHT_LONG} o wenith STR_QUANTITY_RUBBER :{VOLUME_LONG} o rwber STR_QUANTITY_SUGAR :{WEIGHT_LONG} o siwgr -STR_QUANTITY_TOYS :{COMMA} tegan -STR_QUANTITY_SWEETS :{COMMA} bag o felysion +STR_QUANTITY_TOYS :{COMMA}{NBSP}tegan +STR_QUANTITY_SWEETS :{COMMA}{NBSP}bag o felysion STR_QUANTITY_COLA :{VOLUME_LONG} o gola STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} o gandifflos STR_QUANTITY_BUBBLES :{COMMA} swigen @@ -165,12 +165,12 @@ STR_ABBREV_NONE :{TINY_FONT}DIM STR_ABBREV_ALL :{TINY_FONT}OLL # 'Mode' of transport for cargoes -STR_PASSENGERS :{COMMA} teithiwr -STR_BAGS :{COMMA} bag -STR_TONS :{COMMA} tunnell -STR_LITERS :{COMMA} litr -STR_ITEMS :{COMMA} eitem -STR_CRATES :{COMMA} crât +STR_PASSENGERS :{COMMA}{NBSP}teithiwr +STR_BAGS :{COMMA}{NBSP}bag +STR_TONS :{COMMA}{NBSP}tunnell +STR_LITERS :{COMMA}{NBSP}litr +STR_ITEMS :{COMMA}{NBSP}eitem +STR_CRATES :{COMMA}{NBSP}crât # Colours, do not shuffle STR_COLOUR_DARK_BLUE :Glas Tywyll @@ -186,42 +186,42 @@ STR_COLOUR_CREAM :Hufen STR_COLOUR_MAUVE :Porffor Golau STR_COLOUR_PURPLE :Porffor STR_COLOUR_ORANGE :Oren -STR_COLOUR_BROWN :Frown +STR_COLOUR_BROWN :Brown STR_COLOUR_GREY :Llwyd STR_COLOUR_WHITE :Gwyn # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tunell -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tunnell -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tunell +STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tunnell +STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galwyn -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galwyn +STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr +STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf +STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} tr -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}tr +STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Llinyn hidlo: @@ -248,6 +248,17 @@ STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Bar sgro STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Bar sgrolio - sgrolio'r rhestr i'r chwith neu i'r dde STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Dymchwel adeiladau ayb. ar sgwâr o dir. Mae Ctrl yn dewis ardal deiagonal. Mae Shift yn toglo adeiladu/dangos amcangyfrif cost +# Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Dangos rhai cudd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Dangos rhai cudd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Dangos rhai cudd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Dangos rhai cudd + +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Drwy alluogi'r botwm yma, fe ddangosir y cerbydau rheilffordd cudd hefyd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Drwy alluogi'r botwm yma, fe ddangosir y cerbydau ffordd cudd hefyd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Drwy alluogi'r botwm yma, fe ddangosir y llongau cudd hefyd +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Drwy alluogi'r botwm yma, fe ddangosir yr awyrennau cudd hefyd + # Query window STR_BUTTON_DEFAULT :{BLACK}Rhagosodiad STR_BUTTON_CANCEL :{BLACK}Diddymu @@ -361,7 +372,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Gadael ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Dewisiadau Gêm -STR_SETTINGS_MENU_CONFIG_SETTINGS :Gosodiadau uwch +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Gosodiadau STR_SETTINGS_MENU_SCRIPT_SETTINGS :Gosodiadau AI / sgript Gêm STR_SETTINGS_MENU_NEWGRF_SETTINGS :Gosodiadau NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Dewisiadau tryloywder @@ -422,7 +433,7 @@ STR_INDUSTRY_MENU_FUND_NEW_INDUSTRY :Ariannu diwydia ############ range for railway construction menu starts STR_RAIL_MENU_RAILROAD_CONSTRUCTION :Adeiladu rheilffordd -STR_RAIL_MENU_ELRAIL_CONSTRUCTION :Adeiladu Rheilffordd Drydan +STR_RAIL_MENU_ELRAIL_CONSTRUCTION :Adeiladu rheilffordd drydan STR_RAIL_MENU_MONORAIL_CONSTRUCTION :Adeiladu monoreilffordd STR_RAIL_MENU_MAGLEV_CONSTRUCTION :Adeiladu maglef ############ range ends here @@ -489,6 +500,37 @@ STR_ORDINAL_NUMBER_15TH :15fed ############ range for ordinal numbers ends ############ range for days starts +STR_DAY_NUMBER_1ST :1af +STR_DAY_NUMBER_2ND :2il +STR_DAY_NUMBER_3RD :3ydd +STR_DAY_NUMBER_4TH :4ydd +STR_DAY_NUMBER_5TH :5ed +STR_DAY_NUMBER_6TH :6ed +STR_DAY_NUMBER_7TH :7ed +STR_DAY_NUMBER_8TH :8ed +STR_DAY_NUMBER_9TH :9ed +STR_DAY_NUMBER_10TH :10ed +STR_DAY_NUMBER_11TH :11eg +STR_DAY_NUMBER_12TH :12ed +STR_DAY_NUMBER_13TH :13eg +STR_DAY_NUMBER_14TH :14eg +STR_DAY_NUMBER_15TH :15ed +STR_DAY_NUMBER_16TH :16eg +STR_DAY_NUMBER_17TH :17eg +STR_DAY_NUMBER_18TH :18ed +STR_DAY_NUMBER_19TH :19eg +STR_DAY_NUMBER_20TH :20ed +STR_DAY_NUMBER_21ST :21ain +STR_DAY_NUMBER_22ND :22ain +STR_DAY_NUMBER_23RD :23ain +STR_DAY_NUMBER_24TH :24ain +STR_DAY_NUMBER_25TH :25ain +STR_DAY_NUMBER_26TH :26ain +STR_DAY_NUMBER_27TH :27ain +STR_DAY_NUMBER_28TH :28ain +STR_DAY_NUMBER_29TH :29ain +STR_DAY_NUMBER_30TH :30ain +STR_DAY_NUMBER_31ST :31ain ############ range for days ends ############ range for months starts @@ -798,7 +840,7 @@ STR_NEWS_SHIP_IS_WAITING :{WHITE}Mae {VEH STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}Mae {VEHICLE} yn aros yn yr awrendy # Order review system / warnings -STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}Mae gan {VEHICLE} rhy ddiffyg gorchmynion yn ei amserlen +STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}Nid oes gan {VEHICLE} ddigon o orchmynion yn ei amserlen STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}Mae gan {VEHICLE} orchymyn gwallus STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}Mae gan {VEHICLE} orchmynion dyblyg STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}Mae gan {VEHICLE} orsaf annilys yn ei orchmynion @@ -815,9 +857,9 @@ STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE STR_NEWS_ORDER_REFIT_FAILED :{WHITE}Stopiodd achos methiant hefo trefnu ailffitio {VEHICLE} STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Methwyd ag adnewyddu {VEHICLE}{}{STRING} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}{STRING} newydd yn awr ar gael! +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Mae {STRING} newydd yn awr ar gael! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}New {STRING} ar gael yn awr! - {ENGINE} +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Mae {STRING} newydd yn awr ar gael! - {ENGINE} STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}Nid yw {STATION} bellach yn derbyn {STRING} STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}Nid yw {STATION} bellach yn derbyn {STRING} na {STRING} @@ -885,10 +927,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgia (G STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iran (IRR) ############ end of currency region - -############ start of measuring units region -############ end of measuring units region - STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cerbydau Ffordd STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Dewiswch ar ba ochr i'r ffordd y dylai cerbydau yrru STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Gyrru ar y chwith @@ -942,6 +980,13 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Cydrania STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Dewiswch y cydraniad sgrin i'w defnyddio STR_GAME_OPTIONS_RESOLUTION_OTHER :arall +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Maint rhyngwyneb +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Dewis maint yr elfennau rhyngwyneb i'w defnyddio + +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Arferol +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dyblyg +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Pedwarplyg + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Set raffeg sylfaenol STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Dewiswch y set raffeg sylfaenol i'w defnyddio STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} ffeil ar goll/llygredig @@ -1035,6 +1080,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Gwastad Iawn STR_TERRAIN_TYPE_FLAT :Gwastad STR_TERRAIN_TYPE_HILLY :Bryniog STR_TERRAIN_TYPE_MOUNTAINOUS :Mynyddig +STR_TERRAIN_TYPE_ALPINIST :Mynyddwr STR_CITY_APPROVAL_PERMISSIVE :Bodlon STR_CITY_APPROVAL_TOLERANT :Hapus @@ -1042,8 +1088,8 @@ STR_CITY_APPROVAL_HOSTILE :Gwrthwynebus STR_WARNING_NO_SUITABLE_AI :{WHITE}Dim AI addas ar gael...{}Gallwch llawrlwytho sawl AI drwy'r system 'Cynnwys Ar-lein' -# Advanced settings window -STR_CONFIG_SETTING_CAPTION :{WHITE}Ffurfweddu Addasiadau +# Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Gosodiadau STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Llinyn hidlo: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Ehangu oll STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Cywasgu oll @@ -1059,9 +1105,9 @@ STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Gosodiad cwmni STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Categori: STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Math: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Yn cyfyngu'r rhestr isod drwy hidlau rhagosodedig -STR_CONFIG_SETTING_RESTRICT_BASIC :Gosodiadau sylfaenol -STR_CONFIG_SETTING_RESTRICT_ADVANCED :Gosodiadau uwch -STR_CONFIG_SETTING_RESTRICT_ALL :Gosodiadau arbenigwyr / pob gosodiad +STR_CONFIG_SETTING_RESTRICT_BASIC :Sylfaenol (gosodiadau pwysig yn unig) +STR_CONFIG_SETTING_RESTRICT_ADVANCED :Uwch (y rhan helaeth o'r gosodiadau) +STR_CONFIG_SETTING_RESTRICT_ALL :Arbennigwyr (gosodiadau arbennigol, gan gynnwys rhai rhyfedd) STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_DEFAULT :Gosodiadau sy'n wahanol i'r rhagosodiad STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Gosodiadau gyda gwerth gwahanol i'ch gosodiadau gêm newydd chi @@ -1114,8 +1160,11 @@ STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Os y galluogir, STR_CONFIG_SETTING_DISASTERS :Trychinebau: {STRING} STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Toglo trychinebau a all rhwystro neu ddinistrio cerbydau neu tanadeiledd STR_CONFIG_SETTING_CITY_APPROVAL :Agwedd y cyngor tref at ailstrwythuro'r ardal: {STRING} -STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Dewis faint y mae sŵn a niewd amgycheddol gan gwmnïau yn effeithio ar eu graddio trefol a gweithredoedd adeiladu pellach yn eu hardal +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Dewis faint y mae sŵn a niwed amgycheddol gan gwmnïau yn effeithio ar eu graddio trefol a gweithredoedd adeiladu pellach yn eu hardal +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Uchder map uchafsymol: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Gosod yr uchder uchafsymol a ganiateir ar gyfer mynyddoedd ar y map +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Ni allwch osod uchder uchafsymol y map i'r gwerth yma. Mae o leiaf un mynydd ar y map yn uwch STR_CONFIG_SETTING_AUTOSLOPE :Caniatáu tirffurfio o dan adeiladau, traciau, ayyb.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Caniatáu tirffurfio o dan adeiladau a thraciau heb eu chwalu STR_CONFIG_SETTING_CATCHMENT :Caniatáu ardaloedd dalgylch mwy realistig eu maint: {STRING} @@ -1144,6 +1193,8 @@ STR_CONFIG_SETTING_INFLATION :Chwyddiant: {ST STR_CONFIG_SETTING_INFLATION_HELPTEXT :Galluogi chwyddiant yn yr economi, lle y bydd costau'n codi ychydig yn gyflymach na thaliadau STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Hyd pont uchafsymol: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Hyd uchafsymol ar gyfer adeiladu pontydd +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Uchder pontydd uchafsymol: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Uchder uchafsymol ar gyfer adeiladu pontydd STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Hyd twnel uchafsymol: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Hyd uchafsymol ar gyfer adeiladu twneli STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Prif ddull adeiladu diwydiannau cynradd: {STRING} @@ -1162,7 +1213,7 @@ STR_CONFIG_SETTING_SIGNALSIDE_DRIVING_SIDE :Ar yr ochr gyrr STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :Ar y dde STR_CONFIG_SETTING_SHOWFINANCES :Dangos y ffenestr gyllid ar ddechrau'r flwyddyn: {STRING} STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Os y galluogir, bydd y ffenestr gyllid yn agor ar ddiwedd y flwyddyn i hwyluso archwilio sefyllfa ariannol y cwmni -STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Gosodir gorchmynion newydd yn 'ddi-stop' fel rhagosodiad: {STRING} +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Gorchmynion newydd yn 'ddi-stop' fel rhagosodiad: {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Fel rheol, bydd cerbyd yn aros wrth pob gorsaf yr aiff drwyddo. Bydd y gosodiad yma yn peri i'r cerbyd yrru'n syth drwy pob gorsaf ar ei ffordd at ei gyrchfan olaf heb aros. Sylwer fod y gosodiad yma'n diffinio rhagosodiad ar gyfer gorchmynion newydd. Gellir newid gorchmynion penodol at unrhyw ddull a fynnir STR_CONFIG_SETTING_STOP_LOCATION :Gorchmynion trenau newydd yn nodi aros ar y {STRING} o'r platfform fel rhagosodiad STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Y man lle y daw trên at aros wrth blatfform fel rheol. Mae'r 'ochr agos' yn cyfeirio at y pen lle mae'r trên yn myned, 'canol' at ganol y platfform, ac 'ochr bell' yn bell o'r mynedfa. Sylwer fod y gosodiad yma'n diffinio rhagosodiad ar gyfer gorchmynion newydd. Gellir newid gorchmynion penodol at unrhyw ddull a fynnir @@ -1229,21 +1280,30 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Ystod neges gwa STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Amser i ddangos negeseuon gwall mewn ffenestr coch. Sylwer ni gaiff rhai negeseuon gwall (difrifol) eu cau'n ddiofyn STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} eiliad STR_CONFIG_SETTING_HOVER_DELAY :Dangos cynghorion: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Oediad cyn y dangosir cynghorion wrth ddal y cyrchydd dros rhyw elfen rhyngwyneb. Fel arall gellir rhwymo cynghorion at botwm dde'r llygoden -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Oedi am {COMMA} eiliad +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Oediad cyn y dangosir cynghorion wrth ddal y cyrchydd dros rhyw elfen rhyngwyneb. Fel arall rhwymir cynghorion at botwm dde'r llygoden pan fo'r gwerth yma'n 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Oedi am {COMMA} milfed o eiliad STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :De glicio STR_CONFIG_SETTING_POPULATION_IN_LABEL :Dangos poblogaeth tref yn label y dref: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Dangos poblogaeth trefi yn eu label ar y map STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Trwch llinellau graff: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Lled y linell mewn graffiau. Bydd llinell fain yn fwy manwl, tra y bydd llinell trwchus yn haws i'w weld gyda lliwiau'n fwy amlwg +STR_CONFIG_SETTING_LANDSCAPE :Tirwedd: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Mae tirweddau'n diffinio senario sylfaenol gydag amryw fathau o gargo ac anghenion twf trefi. Mae NewGRF a Sgriptiau Gêm yn cynnig rheolaeth mannach, fodd bynnag STR_CONFIG_SETTING_LAND_GENERATOR :Cynhyrchydd Tir: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Mae'r crewr gwreiddiol yn ddibynol ar y set graffeg sylfaenol, ac yn creu siapiau tirwedd gosodedig. Mae TerraGenesis yn seiliedig ar generadur said Perlin, gyda gosodiadau manylach STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Gwreiddiol STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Math tirwedd: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(TerraGenesis yn unig) Llyfnder y tirwedd +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Dwysedd diwydiant: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Gosod faint o ddiwydiannau y dylid eu creu a pha lefel caiff eu cynnal drwy'r gêm STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Pellter uchafsymol o'r ochr ar gyfer Purfeydd olew: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Codir purfeydd olew ger ymylon y map yn unig, h.y. ar yr arfordir mewn mapiau ynys STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Uchder Llinell Eira: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Rheoli'r uchder y mae eira'n ymddangos mewn tirwedd is-arctig. Mae eira hefyd yn effeitiho ar gynhyrchu diwydiannau a gofynion twf trefi STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Garwder y tirwedd: {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis yn unig) Dewis amlder bryniau: Mae gan tirwedd llyfn nifer isel o fryniau bylchedig. Mae gan dirwedd garw llawer o fryniau, a all edrych yn undonog STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Llyfn Iawn STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Llyfn STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Garw @@ -1277,7 +1337,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Lliw y tirwedd STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :Gwyrdd STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Gwyrdd tywyll STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Fioled -STR_CONFIG_SETTING_REVERSE_SCROLLING :gwrthdroi'r cyfeiriad sgrolio: {STRING} +STR_CONFIG_SETTING_REVERSE_SCROLLING :Gwrthdroi'r cyfeiriad sgrolio: {STRING} STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Ymddygiad pan yn sgrolio gyda botwm dde y llygoden. Pan yr analluogir, bydd y llygoden yn symyd y camera. Pan y galluogir, bydd y llygoden yn symyd y map STR_CONFIG_SETTING_SMOOTH_SCROLLING :Sgrolio prif ffenestr llyfn: {STRING} STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Rheoli syt y mae'r prif olygfa'n sgrolio at leoliad penodol pan yn clicio ar y map bychan neu yn rhoi gorchymyn i sgrolio at wrthrych penodol @@ -1404,7 +1464,7 @@ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Dangos y cyfnod STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Dewis os y bydd gwasanaethu cerbydau'n digwydd yn ôl yr amser ers y gwasanaeth olaf, neu wrth i'w dibynadwyedd ddisgyn islaw ganran penodol o'r dibynadwyedd uchafsymol STR_CONFIG_SETTING_SERVINT_TRAINS :Ystod gwasanaethu rhagosodedig ar gyfer trenau: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Gosod yr ystod gwasanaethu rhagosodedig ar gyfer cerbydau rheilffordd newydd, os na ddynodir ystod gwasanaethu penodol ar gyfer y cerbyd -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} diwrnod/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}diwrnod/% STR_CONFIG_SETTING_SERVINT_DISABLED :Analluogwyd STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Ystod gwasanethu rhagosodedig ar gyfer cerbydau ffordd: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Gosod yr ystod gwasanaethu rhagosodedig ar gyfer cerbydau ffordd newydd, os na ddynodir ystod gwasanaethu penodol ar gyfer y cerbyd @@ -1443,7 +1503,7 @@ STR_CONFIG_SETTING_NEWS_ADVICE :Cyngor / gwybod STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Dangos negeseuon am gerbydau sydd angen sylw STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Cerbydau Newydd: {STRING} STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Dangos papur newydd pan fo math newydd o gerbyd ar gael -STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Newidiadau i'r llwythi sy'n cael eu derbyn: {STRING} +STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Newidiadau i'r llwythi a dderbynir: {STRING} STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Dangos negeseuon am orsafoedd yn newid y nwyddau y maent yn derbyn STR_CONFIG_SETTING_NEWS_SUBSIDIES :Cymorthdaliadau: {STRING} STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Dangos papur newydd am ddigwyddiadau ynghylch cymorthdaliadau @@ -1471,7 +1531,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Gosod ymddygiad STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Adeiladu semafforau cyn: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Gosod y flwyddyn pan y defnyddir signalau trydan ar draciau. Cyn y flwyddyn hon, fe ddefnyddir signalau semaffor (sydd â gweithred unfath, ond edrychiad gwahanol) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Galluogi'r GUI signalau: {STRING} -STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Dangos ffenestr ar gyfer dewis y math o signalau i ddewis, yn hytrach na chylchu drwy mathau signal wrth Ctrl+clicio heb ffenest pan yn adeiladu signalau +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Dangos ffenestr ar gyfer dewis y math o signalau i ddewis, yn hytrach na chylchu drwy mathau signal heb ffenest wrth Ctrl+clicio ar signalau eisoes wedi'u hadeiladu STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Y math o signal i'w adeiladu fel rhagosodiad: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Signal rhagosodedig i'w ddefnyddio STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Signalau Bloc @@ -1544,9 +1604,9 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Dim STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Lluosydd cychwynol maint dinas: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Maint cymhedrol dinasoedd o gymharu â threfi arferol ar ddechrau'r gêm -STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Diweddaru'r graff dosraniad bob {STRING} diwrnod +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Diweddaru'r graff dosraniad bob {STRING}{NBSP}diwrnod STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Amser rhwng pob ailgifrifiad o'r graff cyswllt. Bydd pob ailgyfrifiad yn cyfrifio'r cynllun ar gyfer un cydran o'r graff. O ganlyn ni fydd dwis gwerth o X yn golygu y bydd y graff cyfan yn cael ei ddiweddaru bob X diwrnod, ond y bydd rhai cydrannau. Bydd ystod byr yn defnyddio mwy o amser y prosesydd yn ailgyfrio graffiau. Bydd ystor hir yn cynyddu'r amser cyn y daw'r dosraniad i ryn ar lwybrau newydd. -STR_CONFIG_SETTING_LINKGRAPH_TIME :Cymryd {STRING} diwrnod ar gyfer ar gyfer ailgyfrifo graff dosraniad +STR_CONFIG_SETTING_LINKGRAPH_TIME :Cymryd {STRING}{NBSP}diwrnod ar gyfer ar gyfer ailgyfrifo graff dosraniad STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Yr amser ar gyfer ailgyfrifo pob cydran o raff cyswllt. Pan y dechreuir ailgyfrifo, fe grëir llinyn gwaith a gaiff redeg am nifer penodol o ddiwrnodau. Bydd gosodiad byr yn ei gwneud yn fwy tebygol na fydd y llinyn wedi gorffen mewn pryd. Yna bydd y gêm yn oedi new y bydd yn barod. Bydd gosodiad hir yn cynyddu'r amser y cymerir i'r dosranaid gael ei ddiweddaru pan fo llwybrau'n newid. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :â llaw STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :anghymesur @@ -1556,7 +1616,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Mae "cymesur" y STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Dull dosrannu ar gyfer post: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Mae "cymesur" yn golygu y bydd tua'r un faint o bost yn cael ei yrru o orsaf A i orsaf B ac y gyrrir o B i A. Mae "anghymesur" yn golygu y gall llwythi mympwyol eu gyrru yn y naill cyfeiriad neu'r llall. Mae "â llaw" yn golygu ni fydd dosrannu diofyn yn digwydd ar gyfer post. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Dull dosrannu ar gyfer llwythi ARFOG: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Mae llwythi ARFOG yn cynnwys trysorau mewn ardaloedd tymherus, diemwntau yn y trofannau, ac aur yn yr is-arctig. Mae modd y bydd NewGRFau yn newid hyn, Mae "cymesur" yn golygu y bydd tua'r un faint o lwythi'n cael eu gyrru o orsaf A i orsaf B ac y gyrrir o B i A. Mae "anghymesur" yn golygu y gall llwythi mympwyol eu gyrru yn y naill cyfeiriad neu'r llall. Mae "â llaw" yn golygu ni fydd dosrannu diofyn yn digwydd ar gyfer y llwythi yma. Fe argymhellir eich bod yn dewis anghymesur neu â llaw pan yn chwarae mewn ardal is-arctig, gan na fydd banciau'n gyrru aur yn ôl i gloddfeydd aur. Ar gyfer ardaloedd tymherus neu trofannol gallwch hefyd ddewis cymesur gan y bydd banciau'n gyrru trysorau'n ôl i'r banciau tardd. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Mae llwythi ARFOG yn cynnwys trysorau mewn ardaloedd tymherus, diemwntau yn y trofannau, ac aur yn yr is-arctig. Gall NewGRFau newid hyn, Mae "cymesur" yn golygu y bydd tua'r un faint o lwythi'n cael eu gyrru o orsaf A i orsaf B ac y gyrrir o B i A. Mae "anghymesur" yn golygu y gall llwythi mympwyol eu gyrru yn y naill cyfeiriad neu'r llall. Mae "â llaw" yn golygu ni fydd dosrannu diofyn yn digwydd ar gyfer y llwythi yma. Fe argymhellir eich bod yn dewis anghymesur neu â llaw pan yn chwarae mewn ardal is-arctig, gan na fydd banciau'n gyrru aur yn ôl i gloddfeydd aur. Ar gyfer ardaloedd tymherus neu trofannol gallwch hefyd ddewis cymesur gan y bydd banciau'n gyrru trysorau'n ôl i rai banciau tardd. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Dull dosrannu ar gyfer llwythi eraill: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Mae "anghymesur" yn golygu y gall llwythi mympwyol eu gyrru yn y naill cyfeiriad neu'r llall. Mae "â llaw" yn golygu ni fydd dosrannu diofyn yn digwydd ar gyfer y llwythi hyn. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Manylder dosrannu: {STRING} @@ -1581,7 +1641,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrig (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Unedau pwysau: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Pan y dangosir pwysau yn y rhyngwyneb defnyddiwr, eu dangos yn yr unedau a ddewiswyd +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Pan y dangosir pwysau yn y rhyngwyneb defnyddiwr, ei ddangos yn yr unedau a ddewiswyd STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (t/tunnell byr) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrig (t/tunell) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) @@ -1675,7 +1735,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Amlchwar STR_INTRO_GAME_OPTIONS :{BLACK}Dewisiadau Gêm STR_INTRO_HIGHSCORE :{BLACK}Tabl Sgôr Uchaf -STR_INTRO_ADVANCED_SETTINGS :{BLACK}Ffurfweddu Addasiadau +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Gosodiadau STR_INTRO_NEWGRF_SETTINGS :{BLACK}Gosodiadau NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Gwirio Cynnwys Ar-lein STR_INTRO_SCRIPT_SETTINGS :{BLACK}Gosodiadau AI / Sgript Gêm @@ -1695,7 +1755,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Dewis ti STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Dangos dewisiadau'r gêm STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Dangos y tabl sgôr uchaf -STR_INTRO_TOOLTIP_ADVANCED_SETTINGS :{BLACK}Ffurfweddu'r Addasiadau +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Gosodiadau arddangos STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Dangos gosodiadau NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Gwirio am gynnwys newydd neu wedi'i ddiweddaru i'w lwytho i lawr STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Dangos gosodiadau AI a sgript Gêm @@ -1735,6 +1795,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Chwarae STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Tarw Dur Hud (chwalu diwydiannau, gwrthrychau nad oes modd eu chwalu): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Caiff twneli groesi eu gilydd: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Ni fydd awyrennau jet yn crashio (yn aml) ar feysydd awyr bychain: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Golygu uchder uchafsymol y map: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Golygu uchder uchafsymol mynyddoedd ar y map STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Tirwedd Tymherus STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Tirwedd Is-arctig STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Tirwedd trofannol @@ -1810,7 +1872,7 @@ STR_FACE_EUROPEAN :{BLACK}Ewropeia STR_FACE_SELECT_EUROPEAN :{BLACK}Dewis gwyneb Ewropeaidd STR_FACE_AFRICAN :{BLACK}Affricanaidd STR_FACE_SELECT_AFRICAN :{BLACK}Dewis gwyneb Affricanaidd -STR_FACE_YES :Iawn +STR_FACE_YES :Ie STR_FACE_NO :Na STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Galluogi mwstásh neu glustdlws STR_FACE_HAIR :Gwallt: @@ -2259,7 +2321,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Adeiladu STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Toglu adeiladu/tynnu ar gyfer traciau, signalau, a pwyntiau llwybro. Wrth ddal Ctrl, caiff cledrau pwyntiau llwybro a gorsafoedd eu tynnu hefyd STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Trosi/Diweddaru math y rheilffordd. Mae Shift yn toglo adeiladu/amcangyfrif y gost -STR_RAIL_NAME_RAILROAD :rheilffordd +STR_RAIL_NAME_RAILROAD :Rheilffordd STR_RAIL_NAME_ELRAIL :rheilffordd drydan STR_RAIL_NAME_MONORAIL :monoreilffordd STR_RAIL_NAME_MAGLEV :maglef @@ -2525,7 +2587,7 @@ STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Dosbarth STR_LAND_AREA_INFORMATION_AIRPORT_NAME :{BLACK}Enw'r maes awyr: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Enw teil maes awyr: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Llwythi sy'n cael eu derbyn: {LTBLUE} +STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Llwythi a dderbynir: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Terfyn cyflymder rheilffordd: {LTBLUE}{VELOCITY} STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Terfyn cyflymder ffordd: {LTBLUE}{VELOCITY} @@ -2565,7 +2627,7 @@ STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :Depo trên {STR STR_LAI_ROAD_DESCRIPTION_ROAD :Ffordd STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :Ffordd gyda goleuadau stryd -STR_LAI_ROAD_DESCRIPTION_TREE_LINED_ROAD :Ffordd gyda coed wedi'i plannu +STR_LAI_ROAD_DESCRIPTION_TREE_LINED_ROAD :Ffordd gyda coed wedi'u plannu STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT :Depo cerbyd ffordd STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING :Croesfan wastad ffordd/rheilffordd STR_LAI_ROAD_DESCRIPTION_TRAMWAY :Tramffordd @@ -2619,13 +2681,13 @@ STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT :Traphont STR_LAI_OBJECT_DESCRIPTION_TRANSMITTER :Darlledydd STR_LAI_OBJECT_DESCRIPTION_LIGHTHOUSE :Goleudy STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS :Pencadlys Cwmni -STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tir mae cwmni berchen +STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tir cwmni # About OpenTTD window STR_ABOUT_OPENTTD :{WHITE}Gwybodaeth am OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Hawlfraint Wreiddiol {COPYRIGHT} 1995 Chris Sawyer, Holl cedwir pob hawl STR_ABOUT_VERSION :{BLACK}fersiwn OpenTTD {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2014 Y tîm OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 Y tîm OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Cadw Gêm @@ -2660,6 +2722,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Nifer trefi: STR_MAPGEN_DATE :{BLACK}Dyddiad: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Nifer diwydiannau: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Uchder map uchafsymol: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Cynyddu uchder uchafsymol mynyddoedd ar y map un uned +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Lleihau uchder uchafsymol mynyddoedd ar y map un uned STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Uchder Llinell Eira: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Symud y llinell eira un yn uwch STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Symud y llinell eira un yn is @@ -2689,6 +2754,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Enw'r Ma STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Maint: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Newid uchder uchafsymol y map STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Newid uchder Llinell Eira STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Newid y flwyddyn gychwyn @@ -2802,14 +2868,13 @@ STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Paramedr # Sprite aligner window STR_SPRITE_ALIGNER_CAPTION :{WHITE}Alinio corlun {COMMA} ({STRING}) STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Corlun nesaf -STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Mynd i'r corlun cyffredin nesaf, gan hepgor unrhyw gorluniau ailliwio/ffont/llidgorluniau, ac amlapio ar y diwedd +STR_SPRITE_ALIGNER_NEXT_TOOLTIP :{BLACK}Mynd i'r corlun cyffredin nesaf, gan hepgor unrhyw gorluniau ailliwio/ffont/llidgorluniau, ac amlapio o'r corlun olaf i'r gyntaf STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Mynd i gorlun STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Mynd i'r corlun a ddynodir. Os nad yw'r corlun yn gorlun cyffredin, mynd i'r corlun gyffredin nesaf STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Corlun blaenorol -STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Mynd i'r corlun cyffredin blaenorol, gan hepgor unrhyw gorluniau ailliwio/ffont/llidgorluniau, ac amlapio ar y diwedd +STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Mynd i'r corlun cyffredin blaenorol, gan hepgor unrhyw gorluniau ailliwio/ffont/llidgorluniau, ac amlapio o'r corlun cyntaf i'r olaf STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Cynrychioliad o'r corlun a ddewiswyd. Fe anwybyddir yr aliniad wrth lunio'r corlun STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Symud y corlun, gan newid yr atredau X ac Y -STR_SPRITE_ALIGNER_OFFSETS :{BLACK}Atred X: {NUM}, Atred Y: {NUM} STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Dewis corlun STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Dewis corlun o ynrhyw fan ar y sgrïn @@ -2921,8 +2986,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} wedi ei dderbyn STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (angen o hyd) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (wedi ei dderbyn) -STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Tref yn tyfu bob {ORANGE}{COMMA}{BLACK} diwrnod -STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Tref yn tyfu bob {ORANGE}{COMMA}{BLACK} diwrnod (wedi ei ariannu) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Tref yn tyfu bob {ORANGE}{COMMA}{BLACK}{NBSP}diwrnod +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Tref yn tyfu bob {ORANGE}{COMMA}{BLACK}{NBSP}diwrnod (wedi ei ariannu) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}{RED}Nid{BLACK} yw'r tref yn tyfu STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Uchafswm swn mewn trefi: {ORANGE}{COMMA}{BLACK} uchafswm: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Canoli'r prif olygfa ar y dref. Mae Ctrl+Clic yn agor ffenest golwg newydd ar leoliad y dref @@ -2959,7 +3024,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Dechrau STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Dechrau ymgyrch hysbyseb gymhedrol yn yr ardal, er mwyn denu mwy o deithwyr a llwythi i'ch gorsafoedd.{} Côst: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Dechrau ymgyrch hysbyseb fawr yn yr adral, er mwyn denu mwy o deithwyr a llwythi i'ch gorsafoedd .{} Cost: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW} Ariannu gwaith ffordd ar y rhwydwaith ffyrdd trefol. Bydd yn amharu'n fawr ar drafnidiaeth y dref am hyd at 6 mis .{} Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW} Adeiladu a statue in honour o your company.{} Côst: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW} Adeiladu cerflun er clod eich cwmni.{} Côst: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW} Ariannu adeiladu adeiladau masnachol newydd yn y dref.{} Côst: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Prynu'r hawl i fod yr unig gyflenwr cludiant yn y dref am flwyddyn. Bydd awdurdod y dref ond yn caniatáy i deithwyr a chargo ddefnyddio eich gorsafoedd chi {} Cost: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} Llwgrwobrwyo'r awdurdod lleol i wella'ch gradd, ond byddwch mewn perygl o dderbyn côsb sylweddol os cewch chi'ch dal.{} Côst: {CURRENCY_LONG} @@ -2982,7 +3047,7 @@ STR_GOAL_QUESTION_CAPTION_INFORMATION :Gwybodaeth STR_GOAL_QUESTION_CAPTION_WARNING :Rhybudd STR_GOAL_QUESTION_CAPTION_ERROR :Gwall -### Start of Goal Question button list +############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Canslo STR_GOAL_QUESTION_BUTTON_OK :Iawn STR_GOAL_QUESTION_BUTTON_NO :Na @@ -3001,6 +3066,7 @@ STR_GOAL_QUESTION_BUTTON_RESTART :Ailddechrau STR_GOAL_QUESTION_BUTTON_POSTPONE :Gohirio STR_GOAL_QUESTION_BUTTON_SURRENDER :Ildio STR_GOAL_QUESTION_BUTTON_CLOSE :Cau +############ End of Goal Question button list # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Cymorthdaliadau @@ -3325,10 +3391,10 @@ STR_PURCHASE_INFO_ALL_BUT :Popeth ond{CARG STR_PURCHASE_INFO_MAX_TE :{BLACK}Grym Tynnu Uchaf: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Pellter cyrhaeddiad: {GOLD}{COMMA} teil -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Rhestr dewis trenau - cliciwch ar cerbyd am wybodaeth -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Rhestr dewis cerbydau ffordd - cliciwch ar gerbyd am wybodaeth -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Rhestr ddewis llongau - cliciwch ar long am wybodaeth -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Rhestr ddewis awyrennau - cliciwch ar awyren am wybodaeth +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Rhestr dewis trenau. Cliciwch ar gerbyd am wybodaeth. Mae Ctrl+Clicio'n toglu cuddio'r math cerbyd +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Rhestr dewis cerbydau ffordd. Cliciwch ar gerbyd am wybodaeth. Mae Ctrl+Clicio'n toglu cuddio'r math cerbyd +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Rhestr ddewis llongau. Cliciwch ar long am wybodaeth. Mae Ctrl+Clicio'n toglu cuddio'r math llong +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Rhestr ddewis awyrennau. Cliciwch ar awyren am wybodaeth. Mae Ctrl+Clicio'n toglu cuddio'r math awyren STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Prynu Cerbyd STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Prynu Cerbyd @@ -3350,6 +3416,21 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Ailenwi' STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Ailenwi'r math llong STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Ailenwi'r math awyren +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Cuddio +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Cuddio +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Cuddio +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Cuddio + +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Dangos +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Dangos +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Dangos +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Dangos + +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglu cuddio/arddangos math y cerbyd rheilffordd +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglu cuddio/arddangos math y cerbyd ffordd +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglu cuddio/arddangos math y llong +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Toglu cuddio/arddangos math yr awyren + STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Ailenwi math y cerbyd trên STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Ailenwi'r math cerbyd ffordd STR_QUERY_RENAME_SHIP_TYPE_CAPTION :{WHITE}Ailenwi'r math llong @@ -3403,7 +3484,7 @@ STR_DEPOT_CLONE_ROAD_VEHICLE :{BLACK}Dyblygu STR_DEPOT_CLONE_SHIP :{BLACK}Dyblygu Llong STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Dyblygu Awyren -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Bydd hyn yn prynu copi o'r trên gan gynnwys pob cerbyd. Cliciwch ar y botwm hwn ac yna ar drên sydd tu fewn neu tu allan i'r depo. Mae Ctrl+Clic yn rhannu'r gorchmynion, tra fo Shift+Clic yn dangos amcangyfrif o'r gost +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Bydd hyn yn prynu copi o'r trên gan gynnwys pob cerbyd. Cliciwch ar y botwm hwn ac yna ar drên sydd tu fewn neu tu allan i'r depo. Bydd Ctrl+Clic yn rhannu'r gorchmynion, tra fo Shift+Clic yn dangos amcangyfrif o'r gost STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Bydd hyn yn adeiladu copi o gerbyd ffordd. Cliciwch ar y botwm hwn ac yna ar gerbyd sydd tu fewn neu tu allan i'r depo. Mae Ctrl+Clic yn rhannu'r gorchmynion, tra fo Shift+Clic yn dangos amcangyfrif o'r gost heb brynnu STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Bydd hyn yn adeiladu copi o long. Cliciwch ar y botwm hwn ac yna ar long sydd tu fewn neu tu allan i'r depo. Mae Ctrl+Clic yn rhannu'r gorchmynion, tra fo Shift+Clic yn dangos amcangyfrif o'r gost STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Bydd hyn yn adeiladu copi o awyren. Cliciwch ar y botwm hwn ac yna ar awyren sydd tu fewn neu tu allan i'r awyrendy. Mae Ctrl+Clic yn rhannu'r gorchmynion, tra fo Shift+Clic yn dangos amcangyfrif o'r gost @@ -3454,6 +3535,11 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Mae Cerbyd Ffor STR_REPLACE_VEHICLE_SHIP :Mae Llong STR_REPLACE_VEHICLE_AIRCRAFT :Mae Awyren +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Cerbydau mewn defnydd +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Colofn gyda cherbydau rydych yn berchen +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Cerbydau ar gael +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Colofn gyda cherbydau ar gael ar gyfer disodli + STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Dewiswch y math injan i'w ddisodli STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Dewiswch y math injan newydd yr hoffech chi ei ddefnyddio yn lle'r math injan ar y chwith @@ -3507,7 +3593,7 @@ STR_VEHICLE_VIEW_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Ailffiti STR_VEHICLE_VIEW_SHIP_REFIT_TOOLTIP :{BLACK}Ailffitio llong i gario llwyth o fath gwahanol STR_VEHICLE_VIEW_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Ailffitio awyren i gario llwyth o fath gwahanol -STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}gwrthdroi cyfeiriad trên +STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Gwrthdroi cyfeiriad trên STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Gorfodi cerbyd i droi rownd STR_VEHICLE_VIEW_TRAIN_ORDERS_TOOLTIP :{BLACK}Dangos gorchmynion trên. Mae Ctrl+Clic yn ddangos amserlen y trên @@ -3576,9 +3662,9 @@ STR_VEHICLE_INFO_CAPACITY :{BLACK}Cynhwyse STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Cynhwysedd: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM}) STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Cynhwysedd: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} -STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Credydau Trosi: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Credydau Trosglwyddo: {LTBLUE}{CURRENCY_LONG} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Bwlch rhwng gwasanaeth: {LTBLUE}{COMMA}days{BLACK} Gwasanaeth diwethaf: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Bwlch rhwng gwasanaeth: {LTBLUE}{COMMA}{NBSP}diwrnod{BLACK} Gwasanaeth diwethaf: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Bwlch rhwng gwasanaethu: {LTBLUE}{COMMA}%{BLACK} Gwasanaeth diwethaf: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Cynyddu'r bwlch rhwng gwasanaethau fesul 10. Mae Ctrl+Clic yn gostwng y bwlch rhwng gwasanaethau fesul 5. STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Gostwng y bwlch rhwng gwasanaethau fesul 10. Mae Ctrl+Clic yn gostwng y bwlch rhwng gwasanaethau fesul 5. @@ -3656,8 +3742,8 @@ STR_ORDERS_END_OF_SHARED_ORDERS :- - Diwedd y Go STR_ORDER_NON_STOP :{BLACK}Heb stop STR_ORDER_GO_TO :Mynd i STR_ORDER_GO_NON_STOP_TO :Mynd heb stop i -STR_ORDER_GO_VIA :Galw heibio -STR_ORDER_GO_NON_STOP_VIA :Myn heb stop gan alw heibio +STR_ORDER_GO_VIA :Mynd trwy +STR_ORDER_GO_NON_STOP_VIA :Mynd heb stop trwy STR_ORDER_TOOLTIP_NON_STOP :{BLACK}Newid ymddygiad stopio o'r gorchymyn a amlygwyd STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}Llwyth llawn, unrhyw gargo @@ -3731,7 +3817,7 @@ STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Dangos p # String parts to build the order string STR_ORDER_GO_TO_WAYPOINT :Mynd trwy {WAYPOINT} -STR_ORDER_GO_NON_STOP_TO_WAYPOINT :Mynd heb stopio drwy {WAYPOINT} +STR_ORDER_GO_NON_STOP_TO_WAYPOINT :Mynd heb stop trwy {WAYPOINT} STR_ORDER_SERVICE_AT :Gwasanaethu yn STR_ORDER_SERVICE_NON_STOP_AT :Gwasanaethu heb stopio yn @@ -3814,8 +3900,8 @@ STR_TIMETABLE_STAY_FOR_ESTIMATED :(aros am {STRIN STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(teitiho am {STRING}, heb ei amserlennu) STR_TIMETABLE_STAY_FOR :aros am {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :a theithio am {STRING} -STR_TIMETABLE_DAYS :{COMMA} diwrnod -STR_TIMETABLE_TICKS :{COMMA} tic +STR_TIMETABLE_DAYS :{COMMA}{NBSP}diwrnod +STR_TIMETABLE_TICKS :{COMMA}{NBSP}tic STR_TIMETABLE_TOTAL_TIME :{BLACK}Bydd yr amserlen hon yn cymryd {STRING} i'w chwblhau STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Bydd yr amserlen hon yn cymryd o leiaf {STRING} i'w chwblhau (heb ei hamserlennu'n llwyr) @@ -4053,6 +4139,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Byddai c STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... eisoes ar lefel y môr STR_ERROR_TOO_HIGH :{WHITE}Rhy uchel STR_ERROR_ALREADY_LEVELLED :{WHITE}... mae eisoes yn fflat +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Byddai'r bont wedyn yn rhy uchel. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Does dim modd newid enw'r cwmni... @@ -4079,7 +4166,7 @@ STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... rhy STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... rhy agos i dref arall STR_ERROR_TOO_MANY_TOWNS :{WHITE}... gormod o drefi STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... nid oes mwy o le ar y map -STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Ni fydd y dref yn adeiladu ffyrdd. Gallwch alluogi adeiladu ffyrdd yn Gosodiadau Uwch->Economi->Trefi +STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Ni fydd y dref yn adeiladu ffyrdd. Gallwch alluogi adeiladu ffyrdd yn Gosodiadau->Amgylchedd->Trefi STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Mae gwaith yn cael ei wneud ar y ffordd STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Methu dileu'r dref...{}Mae gorsaf neu depo sy'n cyfeirio i'r dref neu deil ym mherchnogaeth y dref na ellir ei ddileu STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... nid oes man addas i'r cerflun yn nghanol y ddinas yma @@ -4103,6 +4190,9 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... dim STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... gellir ei adeiladu uwchben yr eirlin yn unig STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... gellir ei adeiladu islaw i'r eirlin yn unig +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nid oedd manau addas ar gyfer diwydiannau '{STRING}' +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Newidwch y paramedrau cynhyrchu map er mwyn cael map gwell + # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Methu adeiladu gorsaf reilffordd yma... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Methu adeiladu gorsaf fysiau... @@ -4166,10 +4256,10 @@ STR_ERROR_CAN_T_BUILD_SHIP_DEPOT :{WHITE}Methu ad STR_ERROR_CAN_T_RENAME_DEPOT :{WHITE}Methu ailenwi depo... -STR_ERROR_TRAIN_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... wedi'i stopio mewn depo -STR_ERROR_ROAD_VEHICLE_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... rhaid iddo stopio mewn depo -STR_ERROR_SHIP_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... fod wedi'i stopio mewn depo -STR_ERROR_AIRCRAFT_MUST_BE_STOPPED_INSIDE_HANGAR :{WHITE}... fod wedi'i stopio mewn awyrendâi +STR_ERROR_TRAIN_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... nid yw wedi'i stopio mewn depo +STR_ERROR_ROAD_VEHICLE_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... nid yw wedi'i stopio mewn depo +STR_ERROR_SHIP_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... nid yw wedi'i stopio mewn depo +STR_ERROR_AIRCRAFT_MUST_BE_STOPPED_INSIDE_HANGAR :{WHITE}... nid yw wedi'i stopio mewn awyrendy STR_ERROR_TRAINS_CAN_ONLY_BE_ALTERED_INSIDE_A_DEPOT :{WHITE}Gellir newid trenau yn unig pan fyddan nhw wedi stopio tu mewn i ddepo STR_ERROR_TRAIN_TOO_LONG :{WHITE}Trên yn rhy hir @@ -4239,6 +4329,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Rhaid dy STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Does dim modd cychwyn a gorffen yn yr un man STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Nid yw dau ben y bont ar yr un lefel STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Mae'r bont yn rhy isel ar gyfer y tirwedd +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Pont rhy uchel ar gyfer y tirwedd yma. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Rhaid i'r cychwyn a'r diwedd fod mewn llinell STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... rhaid i ddau ben y bont orffwys ar y tir STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... pont rhy hir @@ -4803,6 +4894,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY}{COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (cudd) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} @@ -4838,8 +4930,6 @@ STR_WHITE_COMMA :{WHITE}{COMMA} STR_TINY_BLACK_DECIMAL :{TINY_FONT}{BLACK}{DECIMAL} STR_COMPANY_MONEY :{WHITE}{CURRENCY_LONG} STR_BLACK_DATE_LONG :{BLACK}{DATE_LONG} -STR_BLACK_CROSS :{BLACK}{CROSS} -STR_SILVER_CROSS :{SILVER}{CROSS} STR_WHITE_DATE_LONG :{WHITE}{DATE_LONG} STR_SHORT_DATE :{WHITE}{DATE_TINY} STR_DATE_LONG_SMALL :{TINY_FONT}{BLACK}{DATE_LONG} diff --git a/src/linkgraph/demands.cpp b/src/linkgraph/demands.cpp index 2c88778ab6..767bec2c9f 100644 --- a/src/linkgraph/demands.cpp +++ b/src/linkgraph/demands.cpp @@ -125,7 +125,7 @@ public: * this sets demands in both directions. * @param job The link graph job. * @param from_id The supplying node. - * @þaram to_id The receiving node. + * @param to_id The receiving node. * @param demand_forw Demand calculated for the "forward" direction. */ void SymmetricScaler::SetDemands(LinkGraphJob &job, NodeID from_id, NodeID to_id, uint demand_forw) @@ -148,7 +148,7 @@ void SymmetricScaler::SetDemands(LinkGraphJob &job, NodeID from_id, NodeID to_id * this only sets demand in the "forward" direction. * @param job The link graph job. * @param from_id The supplying node. - * @þaram to_id The receiving node. + * @param to_id The receiving node. * @param demand_forw Demand calculated for the "forward" direction. */ inline void Scaler::SetDemands(LinkGraphJob &job, NodeID from_id, NodeID to_id, uint demand_forw) diff --git a/src/linkgraph/linkgraph_gui.cpp b/src/linkgraph/linkgraph_gui.cpp index 579bf9c469..1fe34fe79c 100644 --- a/src/linkgraph/linkgraph_gui.cpp +++ b/src/linkgraph/linkgraph_gui.cpp @@ -152,7 +152,7 @@ void LinkGraphOverlay::AddLinks(const Station *from, const Station *to) ConstEdge edge = lg[ge.node][to->goods[c].node]; if (edge.Capacity() > 0) { this->AddStats(lg.Monthly(edge.Capacity()), lg.Monthly(edge.Usage()), - ge.GetSumFlowVia(to->index), from->owner == OWNER_NONE || to->owner == OWNER_NONE, + ge.flows.GetFlowVia(to->index), from->owner == OWNER_NONE || to->owner == OWNER_NONE, this->cached_links[from->index][to->index]); } } diff --git a/src/linkgraph/linkgraphjob.cpp b/src/linkgraph/linkgraphjob.cpp index 30d68e4d89..20cbf3f64d 100644 --- a/src/linkgraph/linkgraphjob.cpp +++ b/src/linkgraph/linkgraphjob.cpp @@ -21,6 +21,13 @@ LinkGraphJobPool _link_graph_job_pool("LinkGraphJob"); INSTANTIATE_POOL_METHODS(LinkGraphJob) +/** + * Static instance of an invalid path. + * Note: This instance is created on task start. + * Lazy creation on first usage results in a data race between the CDist threads. + */ +/* static */ Path *Path::invalid_path = new Path(INVALID_NODE, true); + /** * Create a link graph job from a link graph. The link graph will be copied so * that the calculations don't interfer with the normal operations on the diff --git a/src/linkgraph/linkgraphjob.h b/src/linkgraph/linkgraphjob.h index 00b65f2086..b4587a7842 100644 --- a/src/linkgraph/linkgraphjob.h +++ b/src/linkgraph/linkgraphjob.h @@ -343,6 +343,8 @@ public: */ class Path { public: + static Path *invalid_path; + Path(NodeID n, bool source = false); /** Get the node this leg passes. */ diff --git a/src/linkgraph/linkgraphschedule.cpp b/src/linkgraph/linkgraphschedule.cpp index 30ad20d4d5..a65783a5e7 100644 --- a/src/linkgraph/linkgraphschedule.cpp +++ b/src/linkgraph/linkgraphschedule.cpp @@ -18,6 +18,13 @@ #include "../safeguards.h" +/** + * Static instance of LinkGraphSchedule. + * Note: This instance is created on task start. + * Lazy creation on first usage results in a data race between the CDist threads. + */ +/* static */ LinkGraphSchedule LinkGraphSchedule::instance; + /** * Start the next job in the schedule. */ @@ -68,9 +75,8 @@ void LinkGraphSchedule::JoinNext() /* static */ void LinkGraphSchedule::Run(void *j) { LinkGraphJob *job = (LinkGraphJob *)j; - LinkGraphSchedule *schedule = LinkGraphSchedule::Instance(); - for (uint i = 0; i < lengthof(schedule->handlers); ++i) { - schedule->handlers[i]->Run(*job); + for (uint i = 0; i < lengthof(instance.handlers); ++i) { + instance.handlers[i]->Run(*job); } } @@ -90,12 +96,11 @@ void LinkGraphSchedule::SpawnAll() */ /* static */ void LinkGraphSchedule::Clear() { - LinkGraphSchedule *inst = LinkGraphSchedule::Instance(); - for (JobList::iterator i(inst->running.begin()); i != inst->running.end(); ++i) { + for (JobList::iterator i(instance.running.begin()); i != instance.running.end(); ++i) { (*i)->JoinThread(); } - inst->running.clear(); - inst->schedule.clear(); + instance.running.clear(); + instance.schedule.clear(); } /** @@ -135,15 +140,6 @@ LinkGraphSchedule::~LinkGraphSchedule() } } -/** - * Retrieve the link graph schedule or create it if necessary. - */ -/* static */ LinkGraphSchedule *LinkGraphSchedule::Instance() -{ - static LinkGraphSchedule inst; - return &inst; -} - /** * Spawn or join a link graph job or compress a link graph if any link graph is * due to do so. @@ -153,9 +149,9 @@ void OnTick_LinkGraph() if (_date_fract != LinkGraphSchedule::SPAWN_JOIN_TICK) return; Date offset = _date % _settings_game.linkgraph.recalc_interval; if (offset == 0) { - LinkGraphSchedule::Instance()->SpawnNext(); + LinkGraphSchedule::instance.SpawnNext(); } else if (offset == _settings_game.linkgraph.recalc_interval / 2) { - LinkGraphSchedule::Instance()->JoinNext(); + LinkGraphSchedule::instance.JoinNext(); } } diff --git a/src/linkgraph/linkgraphschedule.h b/src/linkgraph/linkgraphschedule.h index 5d1871962c..ec22be3161 100644 --- a/src/linkgraph/linkgraphschedule.h +++ b/src/linkgraph/linkgraphschedule.h @@ -51,8 +51,8 @@ protected: public: /* This is a tick where not much else is happening, so a small lag might go unnoticed. */ static const uint SPAWN_JOIN_TICK = 21; ///< Tick when jobs are spawned or joined every day. + static LinkGraphSchedule instance; - static LinkGraphSchedule *Instance(); static void Run(void *j); static void Clear(); diff --git a/src/linkgraph/mcf.cpp b/src/linkgraph/mcf.cpp index 81d4d6d38e..6fed7adead 100644 --- a/src/linkgraph/mcf.cpp +++ b/src/linkgraph/mcf.cpp @@ -148,15 +148,14 @@ public: */ void SetNode(NodeID source, NodeID node) { - static const FlowStat::SharesMap empty; const FlowStatMap &flows = this->job[node].Flows(); FlowStatMap::const_iterator it = flows.find(this->job[source].Station()); if (it != flows.end()) { this->it = it->second.GetShares()->begin(); this->end = it->second.GetShares()->end(); } else { - this->it = empty.begin(); - this->end = empty.end(); + this->it = FlowStat::empty_sharesmap.begin(); + this->end = FlowStat::empty_sharesmap.end(); } } @@ -311,7 +310,7 @@ void MultiCommodityFlow::CleanupPaths(NodeID source_id, PathVector &paths) * @param path End of the path the flow should be pushed on. * @param accuracy Accuracy of the calculation. * @param max_saturation If < UINT_MAX only push flow up to the given - * saturation, otherwise the path can be "overloaded". + * saturation, otherwise the path can be "overloaded". */ uint MultiCommodityFlow::PushFlow(Edge &edge, Path *path, uint accuracy, uint max_saturation) @@ -379,11 +378,10 @@ void MCF1stPass::EliminateCycle(PathVector &path, Path *cycle_begin, uint flow) */ bool MCF1stPass::EliminateCycles(PathVector &path, NodeID origin_id, NodeID next_id) { - static Path *invalid_path = new Path(INVALID_NODE, true); Path *at_next_pos = path[next_id]; /* this node has already been searched */ - if (at_next_pos == invalid_path) return false; + if (at_next_pos == Path::invalid_path) return false; if (at_next_pos == NULL) { /* Summarize paths; add up the paths with the same source and next hop @@ -431,7 +429,7 @@ bool MCF1stPass::EliminateCycles(PathVector &path, NodeID origin_id, NodeID next * could be found in this branch, thus it has to be searched again next * time we spot it. */ - path[next_id] = found ? NULL : invalid_path; + path[next_id] = found ? NULL : Path::invalid_path; return found; } diff --git a/src/linkgraph/refresh.cpp b/src/linkgraph/refresh.cpp index d2a3bdda15..02f27f40c1 100644 --- a/src/linkgraph/refresh.cpp +++ b/src/linkgraph/refresh.cpp @@ -81,18 +81,21 @@ LinkRefresher::LinkRefresher(Vehicle *vehicle, HopSet *seen_hops, bool allow_mer /** * Handle refit orders by updating capacities and refit_capacities. - * @param next Order to be processed. + * @param refit_cargo Cargo to refit to. + * @return True if any vehicle was refit; false if none was. */ -void LinkRefresher::HandleRefit(const Order *next) +bool LinkRefresher::HandleRefit(CargoID refit_cargo) { - this->cargo = next->GetRefitCargo(); + this->cargo = refit_cargo; RefitList::iterator refit_it = this->refit_capacities.begin(); + bool any_refit = false; for (Vehicle *v = this->vehicle; v != NULL; v = v->Next()) { const Engine *e = Engine::Get(v->engine_type); if (!HasBit(e->info.refit_mask, this->cargo)) { ++refit_it; continue; } + any_refit = true; /* Back up the vehicle's cargo type */ CargoID temp_cid = v->cargo_type; @@ -130,6 +133,7 @@ void LinkRefresher::HandleRefit(const Order *next) break; // aircraft have only one vehicle } } + return any_refit; } /** @@ -253,15 +257,20 @@ void LinkRefresher::RefreshLinks(const Order *cur, const Order *next, uint8 flag { while (next != NULL) { - /* If the refit cargo is CT_AUTO_REFIT, we're optimistic and assume the - * cargo will stay the same. The point of this method is to avoid - * deadlocks due to vehicles waiting for cargo that isn't being routed, - * yet. That situation will not occur if the vehicle is actually - * carrying a different cargo in the end. */ - if ((next->IsType(OT_GOTO_DEPOT) || next->IsType(OT_GOTO_STATION)) && - next->IsRefit() && !next->IsAutoRefit()) { + if ((next->IsType(OT_GOTO_DEPOT) || next->IsType(OT_GOTO_STATION)) && next->IsRefit()) { SetBit(flags, WAS_REFIT); - this->HandleRefit(next); + if (!next->IsAutoRefit()) { + this->HandleRefit(next->GetRefitCargo()); + } else if (!HasBit(flags, IN_AUTOREFIT)) { + SetBit(flags, IN_AUTOREFIT); + LinkRefresher backup(*this); + for (CargoID c = 0; c != NUM_CARGO; ++c) { + if (CargoSpec::Get(c)->IsValid() && this->HandleRefit(c)) { + this->RefreshLinks(cur, next, flags, num_hops); + *this = backup; + } + } + } } /* Only reset the refit capacities if the "previous" next is a station, diff --git a/src/linkgraph/refresh.h b/src/linkgraph/refresh.h index eac34266d7..496729df7f 100644 --- a/src/linkgraph/refresh.h +++ b/src/linkgraph/refresh.h @@ -31,10 +31,11 @@ protected: * an influence on the next one. */ enum RefreshFlags { - USE_NEXT, ///< There was a conditional jump. Try to use the given next order when looking for a new one. - HAS_CARGO, ///< Consist could leave the last stop where it could interact with cargo carrying cargo (i.e. not an "unload all" + "no loading" order). - WAS_REFIT, ///< Consist was refit since the last stop where it could interact with cargo. - RESET_REFIT ///< Consist had a chance to load since the last refit and the refit capacities can be reset. + USE_NEXT, ///< There was a conditional jump. Try to use the given next order when looking for a new one. + HAS_CARGO, ///< Consist could leave the last stop where it could interact with cargo carrying cargo (i.e. not an "unload all" + "no loading" order). + WAS_REFIT, ///< Consist was refit since the last stop where it could interact with cargo. + RESET_REFIT, ///< Consist had a chance to load since the last refit and the refit capacities can be reset. + IN_AUTOREFIT, ///< Currently doing an autorefit loop. Ignore the first autorefit order. }; /** @@ -92,7 +93,7 @@ protected: LinkRefresher(Vehicle *v, HopSet *seen_hops, bool allow_merge, bool is_full_loading); - void HandleRefit(const Order *next); + bool HandleRefit(CargoID refit_cargo); void ResetRefit(); void RefreshStats(const Order *cur, const Order *next); const Order *PredictNextOrder(const Order *cur, const Order *next, uint8 flags, uint num_hops = 0); @@ -100,4 +101,4 @@ protected: void RefreshLinks(const Order *cur, const Order *next, uint8 flags, uint num_hops = 0); }; -#endif // REFRESH_H +#endif /* REFRESH_H */ diff --git a/src/map_type.h b/src/map_type.h index 3add9e64a8..620885e5da 100644 --- a/src/map_type.h +++ b/src/map_type.h @@ -17,20 +17,23 @@ * Look at docs/landscape.html for the exact meaning of the members. */ struct Tile { - byte type_height; ///< The type (bits 4..7) and height of the northern corner - byte m1; ///< Primarily used for ownership information + byte type; ///< The type (bits 4..7), bridges (2..3), rainforest/desert (0..1) + byte height; ///< The height of the northern corner. uint16 m2; ///< Primarily used for indices to towns, industries and stations + byte m1; ///< Primarily used for ownership information byte m3; ///< General purpose byte m4; ///< General purpose byte m5; ///< General purpose - byte m6; ///< Primarily used for bridges and rainforest/desert }; +assert_compile(sizeof(Tile) == 8); + /** * Data that is stored per tile. Also used Tile for this. * Look at docs/landscape.html for the exact meaning of the members. */ struct TileExtended { + byte m6; ///< General purpose byte m7; ///< Primarily used for newgrf support }; diff --git a/src/misc_gui.cpp b/src/misc_gui.cpp index 8810c2c0e5..62da50b966 100644 --- a/src/misc_gui.cpp +++ b/src/misc_gui.cpp @@ -25,6 +25,7 @@ #include "querystring_gui.h" #include "core/geometry_func.hpp" #include "newgrf_debug.h" +#include "zoom_func.h" #include "widgets/misc_widget.h" @@ -122,14 +123,15 @@ public: # define LANDINFOD_LEVEL 1 #endif DEBUG(misc, LANDINFOD_LEVEL, "TILE: %#x (%i,%i)", tile, TileX(tile), TileY(tile)); - DEBUG(misc, LANDINFOD_LEVEL, "type_height = %#x", _m[tile].type_height); - DEBUG(misc, LANDINFOD_LEVEL, "m1 = %#x", _m[tile].m1); - DEBUG(misc, LANDINFOD_LEVEL, "m2 = %#x", _m[tile].m2); - DEBUG(misc, LANDINFOD_LEVEL, "m3 = %#x", _m[tile].m3); - DEBUG(misc, LANDINFOD_LEVEL, "m4 = %#x", _m[tile].m4); - DEBUG(misc, LANDINFOD_LEVEL, "m5 = %#x", _m[tile].m5); - DEBUG(misc, LANDINFOD_LEVEL, "m6 = %#x", _m[tile].m6); - DEBUG(misc, LANDINFOD_LEVEL, "m7 = %#x", _me[tile].m7); + DEBUG(misc, LANDINFOD_LEVEL, "type = %#x", _m[tile].type); + DEBUG(misc, LANDINFOD_LEVEL, "height = %#x", _m[tile].height); + DEBUG(misc, LANDINFOD_LEVEL, "m1 = %#x", _m[tile].m1); + DEBUG(misc, LANDINFOD_LEVEL, "m2 = %#x", _m[tile].m2); + DEBUG(misc, LANDINFOD_LEVEL, "m3 = %#x", _m[tile].m3); + DEBUG(misc, LANDINFOD_LEVEL, "m4 = %#x", _m[tile].m4); + DEBUG(misc, LANDINFOD_LEVEL, "m5 = %#x", _m[tile].m5); + DEBUG(misc, LANDINFOD_LEVEL, "m6 = %#x", _me[tile].m6); + DEBUG(misc, LANDINFOD_LEVEL, "m7 = %#x", _me[tile].m7); #undef LANDINFOD_LEVEL } @@ -387,46 +389,47 @@ static const char * const _credits[] = { "Original graphics by Simon Foster", "", "The OpenTTD team (in alphabetical order):", - " Albert Hofkamp (Alberth) - GUI expert", - " Jean-Fran\xC3\xA7ois Claeys (Belugas) - GUI, newindustries and more", - " Matthijs Kooijman (blathijs) - Pathfinder-guru, pool rework", - " Christoph Elsenhans (frosch) - General coding", - " Ulf Hermann (fonsinchen) - Cargo Distribution", - " Lo\xC3\xAF""c Guilloux (glx) - Windows Expert", - " Michael Lutz (michi_cc) - Path based signals", - " Owen Rudge (orudge) - Forum host, OS/2 port", - " Peter Nelson (peter1138) - Spiritual descendant from NewGRF gods", - " Ingo von Borstel (planetmaker) - Support", - " Remko Bijker (Rubidium) - Lead coder and way more", - " Zden\xC4\x9Bk Sojka (SmatZ) - Bug finder and fixer", - " Jos\xC3\xA9 Soler (Terkhen) - General coding", - " Thijs Marinussen (Yexo) - AI Framework", - " Leif Linse (Zuu) - AI/Game Script", + " Albert Hofkamp (Alberth) - GUI expert (since 0.7)", + " Matthijs Kooijman (blathijs) - Pathfinder-guru, Debian port (since 0.3)", + " Ulf Hermann (fonsinchen) - Cargo Distribution (since 1.3)", + " Christoph Elsenhans (frosch) - General coding (since 0.6)", + " Lo\xC3\xAF""c Guilloux (glx) - General / Windows Expert (since 0.4.5)", + " Michael Lutz (michi_cc) - Path based signals (since 0.7)", + " Owen Rudge (orudge) - Forum host, OS/2 port (since 0.1)", + " Peter Nelson (peter1138) - Spiritual descendant from NewGRF gods (since 0.4.5)", + " Ingo von Borstel (planetmaker) - General, Support (since 1.1)", + " Remko Bijker (Rubidium) - Lead coder and way more (since 0.4.5)", + " Jos\xC3\xA9 Soler (Terkhen) - General coding (since 1.0)", + " Leif Linse (Zuu) - AI/Game Script (since 1.2)", "", "Inactive Developers:", - " Bjarni Corfitzen (Bjarni) - MacOSX port, coder and vehicles", - " Victor Fischer (Celestar) - Programming everywhere you need him to", - " Tam\xC3\xA1s Farag\xC3\xB3 (Darkvater) - Ex-Lead coder", - " Jaroslav Mazanec (KUDr) - YAPG (Yet Another Pathfinder God) ;)", - " Jonathan Coome (Maedhros) - High priest of the NewGRF Temple", - " Attila B\xC3\xA1n (MiHaMiX) - Developer WebTranslator 1 and 2", - " Christoph Mallon (Tron) - Programmer, code correctness police", + " Jean-Fran\xC3\xA7ois Claeys (Belugas) - GUI, NewGRF and more (0.4.5 - 1.0)", + " Bjarni Corfitzen (Bjarni) - MacOSX port, coder and vehicles (0.3 - 0.7)", + " Victor Fischer (Celestar) - Programming everywhere you need him to (0.3 - 0.6)", + " Jaroslav Mazanec (KUDr) - YAPG (Yet Another Pathfinder God) ;) (0.4.5 - 0.6)", + " Jonathan Coome (Maedhros) - High priest of the NewGRF Temple (0.5 - 0.6)", + " Attila B\xC3\xA1n (MiHaMiX) - Developer WebTranslator 1 and 2 (0.3 - 0.5)", + " Zden\xC4\x9Bk Sojka (SmatZ) - Bug finder and fixer (0.6 - 1.3)", + " Christoph Mallon (Tron) - Programmer, code correctness police (0.3 - 0.5)", + " Patric Stout (TrueBrain) - NoAI, NoGo, Network (0.3 - 1.2), sys op (active)", + " Thijs Marinussen (Yexo) - AI Framework, General (0.6 - 1.3)", "", "Retired Developers:", - " Ludvig Strigeus (ludde) - OpenTTD author, main coder (0.1 - 0.3.3)", - " Serge Paquet (vurlix) - Assistant project manager, coder (0.1 - 0.3.3)", - " Dominik Scherer (dominik81) - Lead programmer, GUI expert (0.3.0 - 0.3.6)", - " Benedikt Br\xC3\xBCggemeier (skidd13) - Bug fixer and code reworker", - " Patric Stout (TrueBrain) - NoProgrammer (0.3 - 1.2), sys op (active)", + " Tam\xC3\xA1s Farag\xC3\xB3 (Darkvater) - Ex-Lead coder (0.3 - 0.5)", + " Dominik Scherer (dominik81) - Lead programmer, GUI expert (0.3 - 0.3)", + " Emil Djupfeld (egladil) - MacOSX (0.4.5 - 0.6)", + " Simon Sasburg (HackyKid) - Many bugfixes (0.4 - 0.4.5)", + " Ludvig Strigeus (ludde) - Original author of OpenTTD, main coder (0.1 - 0.3)", + " Cian Duffy (MYOB) - BeOS port / manual writing (0.1 - 0.3)", + " Petr Baudi\xC5\xA1 (pasky) - Many patches, NewGRF support (0.3 - 0.3)", + " Benedikt Br\xC3\xBCggemeier (skidd13) - Bug fixer and code reworker (0.6 - 0.7)", + " Serge Paquet (vurlix) - 2nd contributor after ludde (0.1 - 0.3)", "", "Special thanks go out to:", " Josef Drexler - For his great work on TTDPatch", " Marcin Grzegorczyk - Track foundations and for describing TTD internals", - " Petr Baudi\xC5\xA1 (pasky) - Many patches, newGRF support", - " Simon Sasburg (HackyKid) - Many bugfixes he has blessed us with", " Stefan Mei\xC3\x9Fner (sign_de) - For his work on the console", " Mike Ragsdale - OpenTTD installer", - " Cian Duffy (MYOB) - BeOS port / manual writing", " Christian Rosentreter (tokai) - MorphOS / AmigaOS port", " Richard Kempton (richK) - additional airports, initial TGP implementation", "", @@ -629,7 +632,7 @@ static const NWidgetPart _nested_tooltips_widgets[] = { static WindowDesc _tool_tips_desc( WDP_MANUAL, NULL, 0, 0, // Coordinates and sizes are not used, WC_TOOLTIPS, WC_NONE, - 0, + WDF_NO_FOCUS, _nested_tooltips_widgets, lengthof(_nested_tooltips_widgets) ); @@ -681,7 +684,7 @@ struct TooltipsWindow : public Window /* There is only one widget. */ for (uint i = 0; i != this->paramcount; i++) SetDParam(i, this->params[i]); - size->width = min(GetStringBoundingBox(this->string_id).width, 194); + size->width = min(GetStringBoundingBox(this->string_id).width, ScaleGUITrad(194)); size->height = GetStringHeight(this->string_id, size->width); /* Increase slightly to have some space around the box. */ @@ -1166,8 +1169,8 @@ static const NWidgetPart _nested_query_widgets[] = { NWidget(WWT_PANEL, COLOUR_RED), SetPIP(8, 15, 8), NWidget(WWT_TEXT, COLOUR_RED, WID_Q_TEXT), SetMinimalSize(200, 12), NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(20, 29, 20), - NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_Q_NO), SetMinimalSize(71, 12), SetDataTip(STR_QUIT_NO, STR_NULL), - NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_Q_YES), SetMinimalSize(71, 12), SetDataTip(STR_QUIT_YES, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_Q_NO), SetMinimalSize(71, 12), SetFill(1, 1), SetDataTip(STR_QUIT_NO, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_Q_YES), SetMinimalSize(71, 12), SetFill(1, 1), SetDataTip(STR_QUIT_YES, STR_NULL), EndContainer(), EndContainer(), }; diff --git a/src/music_gui.cpp b/src/music_gui.cpp index 1a6a4ca202..279f376525 100644 --- a/src/music_gui.cpp +++ b/src/music_gui.cpp @@ -202,12 +202,17 @@ static void SelectSongToPlay() memset(_cur_playlist, 0, sizeof(_cur_playlist)); do { - const char *filename = BaseMusic::GetUsedSet()->files[_playlists[_settings_client.music.playlist][i] - 1].filename; - /* We are now checking for the existence of that file prior - * to add it to the list of available songs */ - if (!StrEmpty(filename) && FioCheckFileExists(filename, BASESET_DIR)) { - _cur_playlist[j] = _playlists[_settings_client.music.playlist][i]; - j++; + /* File is the index into the file table of the music set. The play list uses 0 as 'no entry', + * so we need to subtract 1. In case of 'no entry' (file = -1), just skip adding it outright. */ + int file = _playlists[_settings_client.music.playlist][i] - 1; + if (file >= 0) { + const char *filename = BaseMusic::GetUsedSet()->files[file].filename; + /* We are now checking for the existence of that file prior + * to add it to the list of available songs */ + if (!StrEmpty(filename) && FioCheckFileExists(filename, BASESET_DIR)) { + _cur_playlist[j] = _playlists[_settings_client.music.playlist][i]; + j++; + } } } while (_playlists[_settings_client.music.playlist][++i] != 0 && j < lengthof(_cur_playlist) - 1); diff --git a/src/network/core/address.cpp b/src/network/core/address.cpp index d25ade4a3a..62af3a40bf 100644 --- a/src/network/core/address.cpp +++ b/src/network/core/address.cpp @@ -356,10 +356,12 @@ static SOCKET ListenLoopProc(addrinfo *runp) DEBUG(net, 3, "[%s] could not set reusable %s sockets for port %s: %s", type, family, address, strerror(errno)); } +#ifndef __OS2__ if (runp->ai_family == AF_INET6 && setsockopt(sock, IPPROTO_IPV6, IPV6_V6ONLY, (const char*)&on, sizeof(on)) == -1) { DEBUG(net, 3, "[%s] could not disable IPv4 over IPv6 on port %s: %s", type, address, strerror(errno)); } +#endif if (bind(sock, runp->ai_addr, (int)runp->ai_addrlen) != 0) { DEBUG(net, 1, "[%s] could not bind on %s port %s: %s", type, family, address, strerror(errno)); diff --git a/src/network/core/os_abstraction.h b/src/network/core/os_abstraction.h index 980c6f7f6d..9608f08fa7 100644 --- a/src/network/core/os_abstraction.h +++ b/src/network/core/os_abstraction.h @@ -239,11 +239,38 @@ static inline void OTTDfreeaddrinfo(struct addrinfo *ai) # include # include # define INADDR_NONE 0xffffffff +# include "../../3rdparty/os2/getaddrinfo.h" +# include "../../3rdparty/os2/getnameinfo.h" + +#define IPV6_V6ONLY 27 + +/* + * IPv6 address + */ +struct in6_addr { + union { + uint8_t __u6_addr8[16]; + uint16_t __u6_addr16[8]; + uint32_t __u6_addr32[4]; + } __u6_addr; /* 128-bit IP6 address */ +}; + +#define s6_addr __u6_addr.__u6_addr8 + +struct sockaddr_in6 { + uint8_t sin6_len; /* length of this struct */ + sa_family_t sin6_family; /* AF_INET6 */ + in_port_t sin6_port; /* Transport layer port # */ + uint32_t sin6_flowinfo; /* IP6 flow information */ + struct in6_addr sin6_addr; /* IP6 address */ + uint32_t sin6_scope_id; /* scope zone index */ +}; typedef int socklen_t; #if !defined(__INNOTEK_LIBC__) typedef unsigned long in_addr_t; #endif /* __INNOTEK_LIBC__ */ + #endif /* OS/2 */ /* MorphOS and Amiga stuff */ diff --git a/src/network/network.cpp b/src/network/network.cpp index 662f49d176..ce37aaa3fa 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -929,10 +929,16 @@ void NetworkGameLoop() p += 2; } - if (strncmp(p, "cmd: ", 5) == 0) { + if (strncmp(p, "cmd: ", 5) == 0 +#ifdef DEBUG_FAILED_DUMP_COMMANDS + || strncmp(p, "cmdf: ", 6) == 0 +#endif + ) { + p += 5; + if (*p == ' ') p++; cp = CallocT(1); int company; - int ret = sscanf(p + 5, "%x; %x; %x; %x; %x; %x; %x; \"%[^\"]\"", &next_date, &next_date_fract, &company, &cp->tile, &cp->p1, &cp->p2, &cp->cmd, cp->text); + int ret = sscanf(p, "%x; %x; %x; %x; %x; %x; %x; \"%[^\"]\"", &next_date, &next_date_fract, &company, &cp->tile, &cp->p1, &cp->p2, &cp->cmd, cp->text); /* There are 8 pieces of data to read, however the last is a * string that might or might not exist. Ignore it if that * string misses because in 99% of the time it's not used. */ @@ -956,6 +962,10 @@ void NetworkGameLoop() } else if (strncmp(p, "msg: ", 5) == 0 || strncmp(p, "client: ", 8) == 0 || strncmp(p, "load: ", 6) == 0 || strncmp(p, "save: ", 6) == 0) { /* A message that is not very important to the log playback, but part of the log. */ +#ifndef DEBUG_FAILED_DUMP_COMMANDS + } else if (strncmp(p, "cmdf: ", 6) == 0) { + DEBUG(net, 0, "Skipping replay of failed command: %s", p + 6); +#endif } else { /* Can't parse a line; what's wrong here? */ DEBUG(net, 0, "trying to parse: %s", p); diff --git a/src/network/network_chat_gui.cpp b/src/network/network_chat_gui.cpp index fdfc4acff4..3416762d02 100644 --- a/src/network/network_chat_gui.cpp +++ b/src/network/network_chat_gui.cpp @@ -21,6 +21,7 @@ #include "../querystring_gui.h" #include "../town.h" #include "../window_func.h" +#include "../toolbar_gui.h" #include "../core/geometry_func.hpp" #include "network.h" #include "network_client.h" @@ -120,7 +121,7 @@ void NetworkInitChatMessage() _chatmsg_list = ReallocT(_chatmsg_list, _settings_client.gui.network_chat_box_height); _chatmsg_box.x = 10; - _chatmsg_box.width = _settings_client.gui.network_chat_box_width; + _chatmsg_box.width = _settings_client.gui.network_chat_box_width_pct * _screen.width / 100; NetworkReInitChatBoxSize(); _chatmessage_visible = false; @@ -321,6 +322,11 @@ struct NetworkChatWindow : public Window { InvalidateWindowData(WC_NEWS_WINDOW, 0, 0); } + virtual void FindWindowPlacementAndResize(int def_width, int def_height) + { + Window::FindWindowPlacementAndResize(_toolbar_width, def_height); + } + /** * Find the next item of the list of things that can be auto-completed. * @param item The current indexed item to return. This function can, and most @@ -536,7 +542,7 @@ static const NWidgetPart _nested_chat_window_widgets[] = { /** The description of the chat window. */ static WindowDesc _chat_window_desc( - WDP_MANUAL, NULL, 640, 14, // x, y, width, height + WDP_MANUAL, NULL, 0, 0, WC_SEND_NETWORK_MSG, WC_NONE, 0, _nested_chat_window_widgets, lengthof(_nested_chat_window_widgets) diff --git a/src/network/network_client.cpp b/src/network/network_client.cpp index 326af65d79..d4d294146e 100644 --- a/src/network/network_client.cpp +++ b/src/network/network_client.cpp @@ -210,7 +210,7 @@ void ClientNetworkGameSocketHandler::ClientError(NetworkRecvStatus res) * when that's the case handle it appropriately. * @return true when everything went okay. */ -/*static */ bool ClientNetworkGameSocketHandler::Receive() +/* static */ bool ClientNetworkGameSocketHandler::Receive() { if (my_client->CanSendReceive()) { NetworkRecvStatus res = my_client->ReceivePackets(); @@ -225,7 +225,7 @@ void ClientNetworkGameSocketHandler::ClientError(NetworkRecvStatus res) } /** Send the packets of this socket handler. */ -/*static */ void ClientNetworkGameSocketHandler::Send() +/* static */ void ClientNetworkGameSocketHandler::Send() { my_client->SendPackets(); my_client->CheckConnection(); diff --git a/src/network/network_content_gui.cpp b/src/network/network_content_gui.cpp index 332cf1a532..7ee1dbd99f 100644 --- a/src/network/network_content_gui.cpp +++ b/src/network/network_content_gui.cpp @@ -297,12 +297,15 @@ class NetworkContentListWindow : public Window, ContentCallback { bool auto_select; ///< Automatically select all content when the meta-data becomes available StringFilter string_filter; ///< Filter for content list QueryString filter_editbox; ///< Filter editbox; + Dimension checkbox_size; ///< Size of checkbox/"blot" sprite const ContentInfo *selected; ///< The selected content info int list_pos; ///< Our position in the list uint filesize_sum; ///< The sum of all selected file sizes Scrollbar *vscroll; ///< Cache of the vertical scrollbar + static char content_type_strs[CONTENT_TYPE_END][64]; ///< Cached strings for all content types. + /** Search external websites for content */ void OpenExternalSearch() { @@ -400,11 +403,7 @@ class NetworkContentListWindow : public Window, ContentCallback { { int r = 0; if ((*a)->type != (*b)->type) { - char a_str[64]; - char b_str[64]; - GetString(a_str, STR_CONTENT_TYPE_BASE_GRAPHICS + (*a)->type - CONTENT_TYPE_BASE_GRAPHICS, lastof(a_str)); - GetString(b_str, STR_CONTENT_TYPE_BASE_GRAPHICS + (*b)->type - CONTENT_TYPE_BASE_GRAPHICS, lastof(b_str)); - r = strnatcmp(a_str, b_str); + r = strnatcmp(content_type_strs[(*a)->type], content_type_strs[(*b)->type]); } if (r == 0) r = NameSorter(a, b); return r; @@ -468,6 +467,7 @@ class NetworkContentListWindow : public Window, ContentCallback { this->vscroll->ScrollTowards(this->list_pos); } + friend void BuildContentTypeStringList(); public: /** * Create the content list window. @@ -481,6 +481,8 @@ public: selected(NULL), list_pos(0) { + this->checkbox_size = maxdim(maxdim(GetSpriteSize(SPR_BOX_EMPTY), GetSpriteSize(SPR_BOX_CHECKED)), GetSpriteSize(SPR_BLOT)); + this->CreateNestedTree(); this->vscroll = this->GetScrollbar(WID_NCL_SCROLLBAR); this->FinishInitNested(WN_NETWORK_WINDOW_CONTENT_LIST); @@ -516,6 +518,10 @@ public: *size = maxdim(*size, GetStringBoundingBox(STR_CONTENT_FILTER_TITLE)); break; + case WID_NCL_CHECKBOX: + size->width = this->checkbox_size.width + WD_MATRIX_RIGHT + WD_MATRIX_LEFT; + break; + case WID_NCL_TYPE: { Dimension d = *size; for (int i = CONTENT_TYPE_BEGIN; i < CONTENT_TYPE_END; i++) { @@ -526,7 +532,7 @@ public: } case WID_NCL_MATRIX: - resize->height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; + resize->height = max(this->checkbox_size.height, (uint)FONT_HEIGHT_NORMAL) + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; size->height = 10 * resize->height; break; } @@ -577,9 +583,11 @@ public: const NWidgetBase *nwi_name = this->GetWidget(WID_NCL_NAME); const NWidgetBase *nwi_type = this->GetWidget(WID_NCL_TYPE); + int line_height = max(this->checkbox_size.height, (uint)FONT_HEIGHT_NORMAL); /* Fill the matrix with the information */ - int sprite_y_offset = WD_MATRIX_TOP + (FONT_HEIGHT_NORMAL - 10) / 2; + int sprite_y_offset = WD_MATRIX_TOP + (line_height - this->checkbox_size.height) / 2 - 1; + int text_y_offset = WD_MATRIX_TOP + (line_height - FONT_HEIGHT_NORMAL) / 2; uint y = r.top; int cnt = 0; for (ConstContentIterator iter = this->content.Get(this->vscroll->GetPosition()); iter != this->content.End() && cnt < this->vscroll->GetCapacity(); iter++, cnt++) { @@ -600,9 +608,9 @@ public: DrawSprite(sprite, pal, nwi_checkbox->pos_x + (pal == PAL_NONE ? 2 : 3), y + sprite_y_offset + (pal == PAL_NONE ? 1 : 0)); StringID str = STR_CONTENT_TYPE_BASE_GRAPHICS + ci->type - CONTENT_TYPE_BASE_GRAPHICS; - DrawString(nwi_type->pos_x, nwi_type->pos_x + nwi_type->current_x - 1, y + WD_MATRIX_TOP, str, TC_BLACK, SA_HOR_CENTER); + DrawString(nwi_type->pos_x, nwi_type->pos_x + nwi_type->current_x - 1, y + text_y_offset, str, TC_BLACK, SA_HOR_CENTER); - DrawString(nwi_name->pos_x + WD_FRAMERECT_LEFT, nwi_name->pos_x + nwi_name->current_x - WD_FRAMERECT_RIGHT, y + WD_MATRIX_TOP, ci->name, TC_BLACK); + DrawString(nwi_name->pos_x + WD_FRAMERECT_LEFT, nwi_name->pos_x + nwi_name->current_x - WD_FRAMERECT_RIGHT, y + text_y_offset, ci->name, TC_BLACK); y += this->resize.step_height; } } @@ -959,6 +967,18 @@ NetworkContentListWindow::GUIContentList::FilterFunction * const NetworkContentL &TagNameFilter, }; +char NetworkContentListWindow::content_type_strs[CONTENT_TYPE_END][64]; + +/** + * Build array of all strings corresponding to the content types. + */ +void BuildContentTypeStringList() +{ + for (int i = CONTENT_TYPE_BEGIN; i < CONTENT_TYPE_END; i++) { + GetString(NetworkContentListWindow::content_type_strs[i], STR_CONTENT_TYPE_BASE_GRAPHICS + i - CONTENT_TYPE_BASE_GRAPHICS, lastof(NetworkContentListWindow::content_type_strs[i])); + } +} + /** The widgets for the content list. */ static const NWidgetPart _nested_network_content_list_widgets[] = { NWidget(NWID_HORIZONTAL), diff --git a/src/network/network_content_gui.h b/src/network/network_content_gui.h index 212fcec04d..1397010019 100644 --- a/src/network/network_content_gui.h +++ b/src/network/network_content_gui.h @@ -43,4 +43,6 @@ public: virtual void OnDownloadProgress(const ContentInfo *ci, int bytes); }; +void BuildContentTypeStringList(); + #endif /* NETWORK_CONTENT_GUI_H */ diff --git a/src/network/network_func.h b/src/network/network_func.h index 67d4c8d488..375cc3da56 100644 --- a/src/network/network_func.h +++ b/src/network/network_func.h @@ -17,6 +17,7 @@ * See docs/desync.txt for details. */ // #define DEBUG_DUMP_COMMANDS +// #define DEBUG_FAILED_DUMP_COMMANDS #include "core/address.h" #include "network_type.h" diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp index 0580dc95c2..013b375bda 100644 --- a/src/network/network_gui.cpp +++ b/src/network/network_gui.cpp @@ -108,7 +108,7 @@ public: this->Add(new NWidgetLeaf(WWT_PUSHTXTBTN, COLOUR_WHITE, WID_NG_YEARS, STR_NETWORK_SERVER_LIST_YEARS_CAPTION, STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP)); leaf = new NWidgetLeaf(WWT_PUSHTXTBTN, COLOUR_WHITE, WID_NG_INFO, STR_EMPTY, STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP); - leaf->SetMinimalSize(40, 12); + leaf->SetMinimalSize(14 + GetSpriteSize(SPR_LOCK).width + GetSpriteSize(SPR_BLOT).width + GetSpriteSize(SPR_FLAGS_BASE).width, 12); leaf->SetFill(0, 1); this->Add(leaf); @@ -235,6 +235,10 @@ protected: QueryString name_editbox; ///< Client name editbox. QueryString filter_editbox; ///< Editbox for filter on servers + int lock_offset; ///< Left offset for lock icon. + int blot_offset; ///< Left offset for green/yellow/red compatibility icon. + int flag_offset; ///< Left offset for langauge flag icon. + /** * (Re)build the GUI network game list (a.k.a. this->servers) as some * major change has occurred. It ensures appropriate filtering and @@ -379,9 +383,13 @@ protected: const NWidgetBase *nwi_info = this->GetWidget(WID_NG_INFO); /* show highlighted item with a different colour */ - if (highlight) GfxFillRect(nwi_name->pos_x + 1, y - 2, nwi_info->pos_x + nwi_info->current_x - 2, y + FONT_HEIGHT_NORMAL - 1, PC_GREY); + if (highlight) GfxFillRect(nwi_name->pos_x + 1, y + 1, nwi_info->pos_x + nwi_info->current_x - 2, y + this->resize.step_height - 2, PC_GREY); - DrawString(nwi_name->pos_x + WD_FRAMERECT_LEFT, nwi_name->pos_x + nwi_name->current_x - WD_FRAMERECT_RIGHT, y, cur_item->info.server_name, TC_BLACK); + /* offsets to vertically centre text and icons */ + int text_y_offset = (this->resize.step_height - FONT_HEIGHT_NORMAL) / 2 + 1; + int icon_y_offset = (this->resize.step_height - GetSpriteSize(SPR_BLOT).height) / 2; + + DrawString(nwi_name->pos_x + WD_FRAMERECT_LEFT, nwi_name->pos_x + nwi_name->current_x - WD_FRAMERECT_RIGHT, y + text_y_offset, cur_item->info.server_name, TC_BLACK); /* only draw details if the server is online */ if (cur_item->online) { @@ -393,7 +401,7 @@ protected: SetDParam(1, cur_item->info.clients_max); SetDParam(2, cur_item->info.companies_on); SetDParam(3, cur_item->info.companies_max); - DrawString(nwi_clients->pos_x, nwi_clients->pos_x + nwi_clients->current_x - 1, y, STR_NETWORK_SERVER_LIST_GENERAL_ONLINE, TC_FROMSTRING, SA_HOR_CENTER); + DrawString(nwi_clients->pos_x, nwi_clients->pos_x + nwi_clients->current_x - 1, y + text_y_offset, STR_NETWORK_SERVER_LIST_GENERAL_ONLINE, TC_FROMSTRING, SA_HOR_CENTER); } if (nwi_header->IsWidgetVisible(WID_NG_MAPSIZE)) { @@ -401,7 +409,7 @@ protected: const NWidgetBase *nwi_mapsize = this->GetWidget(WID_NG_MAPSIZE); SetDParam(0, cur_item->info.map_width); SetDParam(1, cur_item->info.map_height); - DrawString(nwi_mapsize->pos_x, nwi_mapsize->pos_x + nwi_mapsize->current_x - 1, y, STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT, TC_FROMSTRING, SA_HOR_CENTER); + DrawString(nwi_mapsize->pos_x, nwi_mapsize->pos_x + nwi_mapsize->current_x - 1, y + text_y_offset, STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT, TC_FROMSTRING, SA_HOR_CENTER); } if (nwi_header->IsWidgetVisible(WID_NG_DATE)) { @@ -410,7 +418,7 @@ protected: YearMonthDay ymd; ConvertDateToYMD(cur_item->info.game_date, &ymd); SetDParam(0, ymd.year); - DrawString(nwi_date->pos_x, nwi_date->pos_x + nwi_date->current_x - 1, y, STR_JUST_INT, TC_BLACK, SA_HOR_CENTER); + DrawString(nwi_date->pos_x, nwi_date->pos_x + nwi_date->current_x - 1, y + text_y_offset, STR_JUST_INT, TC_BLACK, SA_HOR_CENTER); } if (nwi_header->IsWidgetVisible(WID_NG_YEARS)) { @@ -420,20 +428,17 @@ protected: ConvertDateToYMD(cur_item->info.game_date, &ymd_cur); ConvertDateToYMD(cur_item->info.start_date, &ymd_start); SetDParam(0, ymd_cur.year - ymd_start.year); - DrawString(nwi_years->pos_x, nwi_years->pos_x + nwi_years->current_x - 1, y, STR_JUST_INT, TC_BLACK, SA_HOR_CENTER); + DrawString(nwi_years->pos_x, nwi_years->pos_x + nwi_years->current_x - 1, y + text_y_offset, STR_JUST_INT, TC_BLACK, SA_HOR_CENTER); } - /* Align the sprites */ - y += (FONT_HEIGHT_NORMAL - 10) / 2; - /* draw a lock if the server is password protected */ - if (cur_item->info.use_password) DrawSprite(SPR_LOCK, PAL_NONE, nwi_info->pos_x + 5, y - 1); + if (cur_item->info.use_password) DrawSprite(SPR_LOCK, PAL_NONE, nwi_info->pos_x + this->lock_offset, y + icon_y_offset - 1); /* draw red or green icon, depending on compatibility with server */ - DrawSprite(SPR_BLOT, (cur_item->info.compatible ? PALETTE_TO_GREEN : (cur_item->info.version_compatible ? PALETTE_TO_YELLOW : PALETTE_TO_RED)), nwi_info->pos_x + 15, y); + DrawSprite(SPR_BLOT, (cur_item->info.compatible ? PALETTE_TO_GREEN : (cur_item->info.version_compatible ? PALETTE_TO_YELLOW : PALETTE_TO_RED)), nwi_info->pos_x + this->blot_offset, y + icon_y_offset); /* draw flag according to server language */ - DrawSprite(SPR_FLAGS_BASE + cur_item->info.server_lang, PAL_NONE, nwi_info->pos_x + 25, y); + DrawSprite(SPR_FLAGS_BASE + cur_item->info.server_lang, PAL_NONE, nwi_info->pos_x + this->flag_offset, y + icon_y_offset); } } @@ -456,6 +461,10 @@ public: this->list_pos = SLP_INVALID; this->server = NULL; + this->lock_offset = 5; + this->blot_offset = this->lock_offset + 3 + GetSpriteSize(SPR_LOCK).width; + this->flag_offset = this->blot_offset + 2 + GetSpriteSize(SPR_BLOT).width; + this->CreateNestedTree(); this->vscroll = this->GetScrollbar(WID_NG_SCROLLBAR); this->FinishInitNested(WN_NETWORK_WINDOW_GAME); @@ -495,18 +504,18 @@ public: { switch (widget) { case WID_NG_CONN_BTN: - *size = maxdim(GetStringBoundingBox(_lan_internet_types_dropdown[0]), GetStringBoundingBox(_lan_internet_types_dropdown[1])); + *size = maxdim(*size, maxdim(GetStringBoundingBox(_lan_internet_types_dropdown[0]), GetStringBoundingBox(_lan_internet_types_dropdown[1]))); size->width += padding.width; size->height += padding.height; break; case WID_NG_MATRIX: - resize->height = WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM; + resize->height = WD_MATRIX_TOP + max(GetSpriteSize(SPR_BLOT).height, (uint)FONT_HEIGHT_NORMAL) + WD_MATRIX_BOTTOM; size->height = 10 * resize->height; break; case WID_NG_LASTJOINED: - size->height = WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM; + size->height = WD_MATRIX_TOP + max(GetSpriteSize(SPR_BLOT).height, (uint)FONT_HEIGHT_NORMAL) + WD_MATRIX_BOTTOM; break; case WID_NG_LASTJOINED_SPACER: @@ -514,11 +523,11 @@ public: break; case WID_NG_NAME: - size->width += 2 * WD_SORTBUTTON_ARROW_WIDTH; // Make space for the arrow + size->width += 2 * Window::SortButtonWidth(); // Make space for the arrow break; case WID_NG_CLIENTS: - size->width += 2 * WD_SORTBUTTON_ARROW_WIDTH; // Make space for the arrow + size->width += 2 * Window::SortButtonWidth(); // Make space for the arrow SetDParamMaxValue(0, MAX_CLIENTS); SetDParamMaxValue(1, MAX_CLIENTS); SetDParamMaxValue(2, MAX_COMPANIES); @@ -527,7 +536,7 @@ public: break; case WID_NG_MAPSIZE: - size->width += 2 * WD_SORTBUTTON_ARROW_WIDTH; // Make space for the arrow + size->width += 2 * Window::SortButtonWidth(); // Make space for the arrow SetDParamMaxValue(0, MAX_MAP_SIZE); SetDParamMaxValue(1, MAX_MAP_SIZE); *size = maxdim(*size, GetStringBoundingBox(STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT)); @@ -535,7 +544,7 @@ public: case WID_NG_DATE: case WID_NG_YEARS: - size->width += 2 * WD_SORTBUTTON_ARROW_WIDTH; // Make space for the arrow + size->width += 2 * Window::SortButtonWidth(); // Make space for the arrow SetDParamMaxValue(0, 5); *size = maxdim(*size, GetStringBoundingBox(STR_JUST_INT)); break; @@ -550,7 +559,7 @@ public: { switch (widget) { case WID_NG_MATRIX: { - uint16 y = r.top + WD_MATRIX_TOP; + uint16 y = r.top; const int max = min(this->vscroll->GetPosition() + this->vscroll->GetCapacity(), (int)this->servers.Length()); @@ -564,7 +573,7 @@ public: case WID_NG_LASTJOINED: /* Draw the last joined server, if any */ - if (this->last_joined != NULL) this->DrawServerLine(this->last_joined, r.top + WD_MATRIX_TOP, this->last_joined == this->server); + if (this->last_joined != NULL) this->DrawServerLine(this->last_joined, r.top, this->last_joined == this->server); break; case WID_NG_DETAILS: @@ -2191,7 +2200,7 @@ static const NWidgetPart _nested_network_company_password_window_widgets[] = { NWidget(NWID_VERTICAL), SetPIP(5, 5, 5), NWidget(NWID_HORIZONTAL), SetPIP(5, 5, 5), NWidget(WWT_TEXT, COLOUR_GREY, WID_NCP_LABEL), SetDataTip(STR_COMPANY_VIEW_PASSWORD, STR_NULL), - NWidget(WWT_EDITBOX, COLOUR_GREY, WID_NCP_PASSWORD), SetMinimalSize(194, 12), SetDataTip(STR_COMPANY_VIEW_SET_PASSWORD, STR_NULL), + NWidget(WWT_EDITBOX, COLOUR_GREY, WID_NCP_PASSWORD), SetFill(1, 0), SetMinimalSize(194, 12), SetDataTip(STR_COMPANY_VIEW_SET_PASSWORD, STR_NULL), EndContainer(), NWidget(NWID_HORIZONTAL), SetPIP(5, 0, 5), NWidget(NWID_SPACER), SetFill(1, 0), diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp index dc18658a99..6a33c73d89 100644 --- a/src/network/network_server.cpp +++ b/src/network/network_server.cpp @@ -953,7 +953,7 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::Receive_CLIENT_JOIN(Packet *p) strecpy(ci->client_name, name, lastof(ci->client_name)); ci->client_playas = playas; ci->client_lang = client_lang; - DEBUG(desync, 1, "client: %08x; %02x; %02x; %04x", _date, _date_fract, (int)ci->client_playas, ci->index); + DEBUG(desync, 1, "client: %08x; %02x; %02x; %02x", _date, _date_fract, (int)ci->client_playas, (int)ci->index); /* Make sure companies to which people try to join are not autocleaned */ if (Company::IsValidID(playas)) _network_company_states[playas].months_empty = 0; diff --git a/src/newgrf.cpp b/src/newgrf.cpp index b1b6f5ff14..c9a78deb90 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -2696,13 +2696,13 @@ static ChangeInfoResult GlobalVarChangeInfo(uint gvid, int numinfo, int prop, By for (uint j = 0; j < SNOW_LINE_DAYS; j++) { table[i][j] = buf->ReadByte(); if (_cur.grffile->grf_version >= 8) { - if (table[i][j] != 0xFF) table[i][j] = table[i][j] * (1 + MAX_TILE_HEIGHT) / 256; + if (table[i][j] != 0xFF) table[i][j] = table[i][j] * (1 + _settings_game.construction.max_heightlevel) / 256; } else { if (table[i][j] >= 128) { /* no snow */ table[i][j] = 0xFF; } else { - table[i][j] = table[i][j] * (1 + MAX_TILE_HEIGHT) / 128; + table[i][j] = table[i][j] * (1 + _settings_game.construction.max_heightlevel) / 128; } } } @@ -3471,6 +3471,15 @@ static ChangeInfoResult IndustriesChangeInfo(uint indid, int numinfo, int prop, } else if (itt[k].gfx == 0xFF) { itt[k].ti.x = (int8)GB(itt[k].ti.x, 0, 8); itt[k].ti.y = (int8)GB(itt[k].ti.y, 0, 8); + + /* When there were only 256x256 maps, TileIndex was a uint16 and + * itt[k].ti was just a TileIndexDiff that was added to it. + * As such negative "x" values were shifted into the "y" position. + * x = -1, y = 1 -> x = 255, y = 0 + * Since GRF version 8 the position is interpreted as pair of independent int8. + * For GRF version < 8 we need to emulate the old shifting behaviour. + */ + if (_cur.grffile->grf_version < 8 && itt[k].ti.x < 0) itt[k].ti.y += 1; } } @@ -5594,6 +5603,7 @@ static const Action5Type _action5_types[] = { /* 0x15 */ { A5BLOCK_ALLOW_OFFSET, SPR_OPENTTD_BASE, 1, OPENTTD_SPRITE_COUNT, "OpenTTD GUI graphics" }, /* 0x16 */ { A5BLOCK_ALLOW_OFFSET, SPR_AIRPORT_PREVIEW_BASE, 1, SPR_AIRPORT_PREVIEW_COUNT, "Airport preview graphics" }, /* 0x17 */ { A5BLOCK_ALLOW_OFFSET, SPR_RAILTYPE_TUNNEL_BASE, 1, RAILTYPE_TUNNEL_BASE_COUNT, "Railtype tunnel base" }, + /* 0x18 */ { A5BLOCK_ALLOW_OFFSET, SPR_PALETTE_BASE, 1, PALETTE_SPRITE_COUNT, "Palette" }, }; /* Action 0x05 */ @@ -5826,7 +5836,7 @@ bool GetGlobalVariable(byte param, uint32 *value, const GRFFile *grffile) case 0x20: { // snow line height byte snowline = GetSnowLine(); - if (_settings_game.game_creation.landscape == LT_ARCTIC && snowline <= MAX_TILE_HEIGHT) { + if (_settings_game.game_creation.landscape == LT_ARCTIC && snowline <= _settings_game.construction.max_heightlevel) { *value = Clamp(snowline * (grffile->grf_version >= 8 ? 1 : TILE_HEIGHT), 0, 0xFE); } else { /* No snow */ @@ -6094,7 +6104,7 @@ static void SkipIf(ByteReader *buf) case 0x0A: // GRFID is not nor will be active /* This is the only condtype that doesn't get ignored if the GRFID is not found */ - result = c == NULL || c->flags == GCS_DISABLED || c->status == GCS_NOT_FOUND; + result = c == NULL || c->status == GCS_DISABLED || c->status == GCS_NOT_FOUND; break; default: grfmsg(1, "SkipIf: Unsupported GRF condition type %02X. Ignoring", condtype); return; @@ -6483,7 +6493,7 @@ static uint32 GetPatchVariable(uint8 param) /* The maximum height of the map. */ case 0x14: - return MAX_TILE_HEIGHT; + return _settings_game.construction.max_heightlevel; /* Extra foundations base sprite */ case 0x15: @@ -9091,8 +9101,6 @@ static void FinalisePriceBaseMultipliers() } } -void InitDepotWindowBlockSizes(); - extern void InitGRFTownGeneratorNames(); /** Finish loading NewGRFs and execute needed post-processing */ @@ -9121,9 +9129,6 @@ static void AfterLoadGRFs() /* Set the actually used Canal properties */ FinaliseCanals(); - /* Set the block size in the depot windows based on vehicle sprite sizes */ - InitDepotWindowBlockSizes(); - /* Add all new houses to the house array. */ FinaliseHouseArray(); diff --git a/src/newgrf.h b/src/newgrf.h index a02b0021ff..752873a60e 100644 --- a/src/newgrf.h +++ b/src/newgrf.h @@ -61,6 +61,7 @@ enum GrfMiscBit { GMB_TRAIN_WIDTH_32_PIXELS = 3, ///< Use 32 pixels per train vehicle in depot gui and vehicle details. Never set in the global variable; @see GRFFile::traininfo_vehicle_width GMB_AMBIENT_SOUND_CALLBACK = 4, GMB_CATENARY_ON_3RD_TRACK = 5, // Unsupported. + GMB_SECOND_ROCKY_TILE_SET = 6, }; enum GrfSpecFeature { diff --git a/src/newgrf_callbacks.h b/src/newgrf_callbacks.h index e96d068037..2c30241f07 100644 --- a/src/newgrf_callbacks.h +++ b/src/newgrf_callbacks.h @@ -278,6 +278,9 @@ enum CallbackID { /** Called when industry is built to set initial production level. */ CBID_INDUSTRY_PROD_CHANGE_BUILD = 0x15F, // 15 bit callback + + /** Called to spawn visual effects for vehicles. */ + CBID_VEHICLE_SPAWN_VISUAL_EFFECT = 0x160, // 15 bit callback }; /** diff --git a/src/newgrf_config.cpp b/src/newgrf_config.cpp index 6b7b8c3775..bd95373d91 100644 --- a/src/newgrf_config.cpp +++ b/src/newgrf_config.cpp @@ -715,7 +715,7 @@ static int CDECL GRFSorter(GRFConfig * const *p1, GRFConfig * const *p2) const GRFConfig *c1 = *p1; const GRFConfig *c2 = *p2; - return strcasecmp(c1->GetName(), c2->GetName()); + return strnatcmp(c1->GetName(), c2->GetName()); } /** @@ -735,8 +735,8 @@ void DoScanNewGRFFiles(void *callback) DEBUG(grf, 1, "Scan complete, found %d files", num); if (num != 0 && _all_grfs != NULL) { /* Sort the linked list using quicksort. - * For that we first have to make an array, then sort and - * then remake the linked list. */ + * For that we first have to make an array, then sort and + * then remake the linked list. */ GRFConfig **to_sort = MallocT(num); uint i = 0; diff --git a/src/newgrf_debug_gui.cpp b/src/newgrf_debug_gui.cpp index 6d5312514c..0074af2181 100644 --- a/src/newgrf_debug_gui.cpp +++ b/src/newgrf_debug_gui.cpp @@ -19,6 +19,7 @@ #include "strings_func.h" #include "textbuf_gui.h" #include "vehicle_gui.h" +#include "zoom_func.h" #include "engine_base.h" #include "industry.h" @@ -701,8 +702,8 @@ void ShowNewGRFInspectWindow(GrfSpecFeature feature, uint index, const uint32 gr if (!IsNewGRFInspectable(feature, index)) return; WindowNumber wno = GetInspectWindowNumber(feature, index); - NewGRFInspectWindow *w = AllocateWindowDescFront(feature == GSF_TRAINS || feature == GSF_ROADVEHICLES ? &_newgrf_inspect_chain_desc : &_newgrf_inspect_desc, wno); - if (w == NULL) w = (NewGRFInspectWindow *)FindWindowById(WC_NEWGRF_INSPECT, wno); + WindowDesc *desc = (feature == GSF_TRAINS || feature == GSF_ROADVEHICLES) ? &_newgrf_inspect_chain_desc : &_newgrf_inspect_desc; + NewGRFInspectWindow *w = AllocateWindowDescFront(desc, wno, true); w->SetCallerGRFID(grfid); } @@ -805,8 +806,11 @@ GrfSpecFeature GetGrfSpecFeature(VehicleType type) /** Window used for aligning sprites. */ struct SpriteAlignerWindow : Window { - SpriteID current_sprite; ///< The currently shown sprite + typedef SmallPair XyOffs; ///< Pair for x and y offsets of the sprite before alignment. First value contains the x offset, second value y offset. + + SpriteID current_sprite; ///< The currently shown sprite. Scrollbar *vscroll; + SmallMap offs_start_map; ///< Mapping of starting offsets for the sprites which have been aligned in the sprite aligner window. SpriteAlignerWindow(WindowDesc *desc, WindowNumber wno) : Window(desc) { @@ -820,16 +824,30 @@ struct SpriteAlignerWindow : Window { virtual void SetStringParameters(int widget) const { + const Sprite *spr = GetSprite(this->current_sprite, ST_NORMAL); switch (widget) { case WID_SA_CAPTION: SetDParam(0, this->current_sprite); SetDParamStr(1, FioGetFilename(GetOriginFileSlot(this->current_sprite))); break; - case WID_SA_OFFSETS: { - const Sprite *spr = GetSprite(this->current_sprite, ST_NORMAL); - SetDParam(0, spr->x_offs / ZOOM_LVL_BASE); - SetDParam(1, spr->y_offs / ZOOM_LVL_BASE); + case WID_SA_OFFSETS_ABS: + SetDParam(0, spr->x_offs); + SetDParam(1, spr->y_offs); + break; + + case WID_SA_OFFSETS_REL: { + /* Relative offset is new absolute offset - starting absolute offset. + * Show 0, 0 as the relative offsets if entry is not in the map (meaning they have not been changed yet). + */ + const SmallPair *key_offs_pair = this->offs_start_map.Find(this->current_sprite); + if (key_offs_pair != this->offs_start_map.End()) { + SetDParam(0, spr->x_offs - key_offs_pair->second.first); + SetDParam(1, spr->y_offs - key_offs_pair->second.second); + } else { + SetDParam(0, 0); + SetDParam(1, 0); + } break; } @@ -855,20 +873,20 @@ struct SpriteAlignerWindow : Window { case WID_SA_SPRITE: { /* Center the sprite ourselves */ const Sprite *spr = GetSprite(this->current_sprite, ST_NORMAL); - int width = r.right - r.left + 1; - int height = r.bottom - r.top + 1; - int x = r.left - spr->x_offs / ZOOM_LVL_BASE + (width - spr->width / ZOOM_LVL_BASE) / 2; - int y = r.top - spr->y_offs / ZOOM_LVL_BASE + (height - spr->height / ZOOM_LVL_BASE) / 2; + int width = r.right - r.left + 1 - WD_BEVEL_LEFT - WD_BEVEL_RIGHT; + int height = r.bottom - r.top + 1 - WD_BEVEL_TOP - WD_BEVEL_BOTTOM; + int x = -UnScaleGUI(spr->x_offs) + (width - UnScaleGUI(spr->width) ) / 2; + int y = -UnScaleGUI(spr->y_offs) + (height - UnScaleGUI(spr->height)) / 2; - /* And draw only the part within the sprite area */ - SubSprite subspr = { - spr->x_offs + (spr->width - width * ZOOM_LVL_BASE) / 2 + 1, - spr->y_offs + (spr->height - height * ZOOM_LVL_BASE) / 2 + 1, - spr->x_offs + (spr->width + width * ZOOM_LVL_BASE) / 2 - 1, - spr->y_offs + (spr->height + height * ZOOM_LVL_BASE) / 2 - 1, - }; + DrawPixelInfo new_dpi; + if (!FillDrawPixelInfo(&new_dpi, r.left + WD_BEVEL_LEFT, r.top + WD_BEVEL_TOP, width, height)) break; + DrawPixelInfo *old_dpi = _cur_dpi; + _cur_dpi = &new_dpi; + + DrawSprite(this->current_sprite, PAL_NONE, x, y, NULL, ZOOM_LVL_GUI); + + _cur_dpi = old_dpi; - DrawSprite(this->current_sprite, PAL_NONE, x, y, &subspr, ZOOM_LVL_GUI); break; } @@ -948,17 +966,28 @@ struct SpriteAlignerWindow : Window { * particular NewGRF developer. */ Sprite *spr = const_cast(GetSprite(this->current_sprite, ST_NORMAL)); + + /* Remember the original offsets of the current sprite, if not already in mapping. */ + if (!(this->offs_start_map.Contains(this->current_sprite))) { + this->offs_start_map.Insert(this->current_sprite, XyOffs(spr->x_offs, spr->y_offs)); + } switch (widget) { - case WID_SA_UP: spr->y_offs -= ZOOM_LVL_BASE; break; - case WID_SA_DOWN: spr->y_offs += ZOOM_LVL_BASE; break; - case WID_SA_LEFT: spr->x_offs -= ZOOM_LVL_BASE; break; - case WID_SA_RIGHT: spr->x_offs += ZOOM_LVL_BASE; break; + case WID_SA_UP: spr->y_offs--; break; + case WID_SA_DOWN: spr->y_offs++; break; + case WID_SA_LEFT: spr->x_offs--; break; + case WID_SA_RIGHT: spr->x_offs++; break; } /* Of course, we need to redraw the sprite, but where is it used? * Everywhere is a safe bet. */ MarkWholeScreenDirty(); break; } + + case WID_SA_RESET_REL: + /* Reset the starting offsets for the current sprite. */ + this->offs_start_map.Erase(this->current_sprite); + this->SetDirty(); + break; } } @@ -1034,8 +1063,12 @@ static const NWidgetPart _nested_sprite_aligner_widgets[] = { NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_SA_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_SPRITE_ALIGNER_MOVE_TOOLTIP), SetResize(0, 0), NWidget(NWID_SPACER), SetFill(1, 1), EndContainer(), + NWidget(WWT_LABEL, COLOUR_GREY, WID_SA_OFFSETS_ABS), SetDataTip(STR_SPRITE_ALIGNER_OFFSETS_ABS, STR_NULL), SetFill(1, 0), SetPadding(0, 10, 0, 10), + NWidget(WWT_LABEL, COLOUR_GREY, WID_SA_OFFSETS_REL), SetDataTip(STR_SPRITE_ALIGNER_OFFSETS_REL, STR_NULL), SetFill(1, 0), SetPadding(0, 10, 0, 10), NWidget(NWID_HORIZONTAL), SetPIP(10, 5, 10), - NWidget(WWT_LABEL, COLOUR_GREY, WID_SA_OFFSETS), SetDataTip(STR_SPRITE_ALIGNER_OFFSETS, STR_NULL), SetFill(1, 0), + NWidget(NWID_SPACER), SetFill(1, 1), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_SA_RESET_REL), SetDataTip(STR_SPRITE_ALIGNER_RESET_BUTTON, STR_SPRITE_ALIGNER_RESET_TOOLTIP), SetFill(0, 0), + NWidget(NWID_SPACER), SetFill(1, 1), EndContainer(), EndContainer(), NWidget(NWID_VERTICAL), SetPIP(10, 5, 10), diff --git a/src/newgrf_engine.cpp b/src/newgrf_engine.cpp index cdd62b7aef..4aafa10f9f 100644 --- a/src/newgrf_engine.cpp +++ b/src/newgrf_engine.cpp @@ -56,11 +56,6 @@ const SpriteGroup *GetWagonOverrideSpriteSet(EngineID engine, CargoID cargo, Eng { const Engine *e = Engine::Get(engine); - /* XXX: This could turn out to be a timesink on profiles. We could - * always just dedicate 65535 bytes for an [engine][train] trampoline - * for O(1). Or O(logMlogN) and searching binary tree or smt. like - * that. --pasky */ - for (uint i = 0; i < e->overrides_count; i++) { const WagonOverride *wo = &e->overrides[i]; @@ -545,9 +540,14 @@ static uint32 VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *object, /* The cargo translation is specific to the accessing GRF, and thus cannot be cached. */ CargoID common_cargo_type = (v->grf_cache.consist_cargo_information >> 8) & 0xFF; - /* Unlike everywhere else the cargo translation table is only used since grf version 8, not 7. - * Note: The grffile == NULL case only happens if this function is called for default vehicles. - * And this is only done by CheckCaches(). */ + /* Note: + * - Unlike everywhere else the cargo translation table is only used since grf version 8, not 7. + * - For translating the cargo type we need to use the GRF which is resolving the variable, which + * is object->ro.grffile. + * In case of CBID_TRAIN_ALLOW_WAGON_ATTACH this is not the same as v->GetGRF(). + * - The grffile == NULL case only happens if this function is called for default vehicles. + * And this is only done by CheckCaches(). + */ const GRFFile *grffile = object->ro.grffile; uint8 common_bitnum = (common_cargo_type == CT_INVALID) ? 0xFF : (grffile == NULL || grffile->grf_version < 8) ? CargoSpec::Get(common_cargo_type)->bitnum : grffile->cargo_map[common_cargo_type]; @@ -567,7 +567,7 @@ static uint32 VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *object, { const Vehicle *w = v->Next(); - uint16 altitude = v->z_pos - w->z_pos; // Aircraft height - shadow height + uint16 altitude = ClampToU16(v->z_pos - w->z_pos); // Aircraft height - shadow height byte airporttype = ATP_TTDP_LARGE; const Station *st = GetTargetAirportIfValid(Aircraft::From(v)); @@ -610,7 +610,12 @@ static uint32 VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *object, */ const CargoSpec *cs = CargoSpec::Get(v->cargo_type); - return (cs->classes << 16) | (cs->weight << 8) | v->GetGRF()->cargo_map[v->cargo_type]; + /* Note: + * For translating the cargo type we need to use the GRF which is resolving the variable, which + * is object->ro.grffile. + * In case of CBID_TRAIN_ALLOW_WAGON_ATTACH this is not the same as v->GetGRF(). + */ + return (cs->classes << 16) | (cs->weight << 8) | object->ro.grffile->cargo_map[v->cargo_type]; } case 0x48: return v->GetEngine()->flags; // Vehicle Type Info @@ -660,7 +665,8 @@ static uint32 VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *object, /* Only allow callbacks that don't change properties to avoid circular dependencies. */ if (object->ro.callback == CBID_NO_CALLBACK || object->ro.callback == CBID_RANDOM_TRIGGER || object->ro.callback == CBID_TRAIN_ALLOW_WAGON_ATTACH || - object->ro.callback == CBID_VEHICLE_START_STOP_CHECK || object->ro.callback == CBID_VEHICLE_32DAY_CALLBACK || object->ro.callback == CBID_VEHICLE_COLOUR_MAPPING) { + object->ro.callback == CBID_VEHICLE_START_STOP_CHECK || object->ro.callback == CBID_VEHICLE_32DAY_CALLBACK || object->ro.callback == CBID_VEHICLE_COLOUR_MAPPING || + object->ro.callback == CBID_VEHICLE_SPAWN_VISUAL_EFFECT) { Vehicle *u = v->Move((int32)GetRegister(0x10F)); if (u == NULL) return 0; // available, but zero @@ -901,7 +907,7 @@ static uint32 VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *object, CargoID cargo_type = e->GetDefaultCargoType(); if (cargo_type != CT_INVALID) { const CargoSpec *cs = CargoSpec::Get(cargo_type); - return (cs->classes << 16) | (cs->weight << 8) | e->GetGRF()->cargo_map[cargo_type]; + return (cs->classes << 16) | (cs->weight << 8) | this->ro.grffile->cargo_map[cargo_type]; } else { return 0x000000FF; } diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp index b211c1cb45..2945f99455 100644 --- a/src/newgrf_gui.cpp +++ b/src/newgrf_gui.cpp @@ -199,7 +199,8 @@ struct NewGRFParametersWindow : public Window { switch (widget) { case WID_NP_NUMPAR_DEC: case WID_NP_NUMPAR_INC: { - size->width = size->height = FONT_HEIGHT_NORMAL; + size->width = max(SETTING_BUTTON_WIDTH / 2, FONT_HEIGHT_NORMAL); + size->height = max(SETTING_BUTTON_HEIGHT, FONT_HEIGHT_NORMAL); break; } @@ -213,7 +214,7 @@ struct NewGRFParametersWindow : public Window { } case WID_NP_BACKGROUND: - this->line_height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; + this->line_height = max(SETTING_BUTTON_HEIGHT, FONT_HEIGHT_NORMAL) + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; resize->width = 1; resize->height = this->line_height; @@ -266,6 +267,7 @@ struct NewGRFParametersWindow : public Window { int y = r.top; int button_y_offset = (this->line_height - SETTING_BUTTON_HEIGHT) / 2; + int text_y_offset = (this->line_height - FONT_HEIGHT_NORMAL) / 2; for (uint i = this->vscroll->GetPosition(); this->vscroll->IsVisible(i) && i < this->vscroll->GetCount(); i++) { GRFParameterInfo *par_info = (i < this->grf_config->param_info.Length()) ? this->grf_config->param_info[i] : NULL; if (par_info == NULL) par_info = GetDummyParameterInfo(i); @@ -301,7 +303,7 @@ struct NewGRFParametersWindow : public Window { SetDParam(1, i + 1); } - DrawString(text_left, text_right, y + WD_MATRIX_TOP, STR_NEWGRF_PARAMETERS_SETTING, selected ? TC_WHITE : TC_LIGHT_BLUE); + DrawString(text_left, text_right, y + text_y_offset, STR_NEWGRF_PARAMETERS_SETTING, selected ? TC_WHITE : TC_LIGHT_BLUE); y += this->line_height; } } diff --git a/src/newgrf_industries.cpp b/src/newgrf_industries.cpp index a7ae4c01fb..ef8e9fa9b7 100644 --- a/src/newgrf_industries.cpp +++ b/src/newgrf_industries.cpp @@ -41,9 +41,9 @@ IndustryTileOverrideManager _industile_mngr(NEW_INDUSTRYTILEOFFSET, NUM_INDUSTRY IndustryType MapNewGRFIndustryType(IndustryType grf_type, uint32 grf_id) { if (grf_type == IT_INVALID) return IT_INVALID; - if (!HasBit(grf_type, 7)) return GB(grf_type, 0, 6); + if (!HasBit(grf_type, 7)) return GB(grf_type, 0, 7); - return _industry_mngr.GetID(GB(grf_type, 0, 6), grf_id); + return _industry_mngr.GetID(GB(grf_type, 0, 7), grf_id); } /** @@ -354,7 +354,7 @@ static uint32 GetCountAndDistanceOfClosestInstance(byte param_setID, byte layout case 0xA4: return this->industry->last_month_transported[1]; case 0xA5: return GB(this->industry->last_month_transported[1], 8, 8); - case 0xA6: return this->industry->type; + case 0xA6: return indspec->grf_prop.local_id; case 0xA7: return this->industry->founder; case 0xA8: return this->industry->random_colour; case 0xA9: return Clamp(this->industry->last_prod_year - ORIGINAL_BASE_YEAR, 0, 255); diff --git a/src/newgrf_railtype.cpp b/src/newgrf_railtype.cpp index 872a3a7f66..8a074db974 100644 --- a/src/newgrf_railtype.cpp +++ b/src/newgrf_railtype.cpp @@ -100,9 +100,10 @@ RailTypeResolverObject::RailTypeResolverObject(const RailtypeInfo *rti, TileInde * @param tile The tile to get the sprite for. * @param rtsg The type of sprite to draw. * @param content Where are we drawing the tile? + * @param [out] num_results If not NULL, return the number of sprites in the spriteset. * @return The sprite to draw. */ -SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context) +SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context, uint *num_results) { assert(rtsg < RTSG_END); @@ -112,6 +113,8 @@ SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSp const SpriteGroup *group = object.Resolve(); if (group == NULL || group->GetNumResults() == 0) return 0; + if (num_results) *num_results = group->GetNumResults(); + return group->GetResult(); } diff --git a/src/newgrf_railtype.h b/src/newgrf_railtype.h index 9b00bf5bff..4c68e7d1db 100644 --- a/src/newgrf_railtype.h +++ b/src/newgrf_railtype.h @@ -44,7 +44,7 @@ struct RailTypeResolverObject : public ResolverObject { /* virtual */ const SpriteGroup *ResolveReal(const RealSpriteGroup *group) const; }; -SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context = TCX_NORMAL); +SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context = TCX_NORMAL, uint *num_results = NULL); SpriteID GetCustomSignalSprite(const RailtypeInfo *rti, TileIndex tile, SignalType type, SignalVariant var, SignalState state, bool gui = false); uint8 GetReverseRailTypeTranslation(RailType railtype, const GRFFile *grffile); diff --git a/src/newgrf_text.cpp b/src/newgrf_text.cpp index 5493531227..daf9db4433 100644 --- a/src/newgrf_text.cpp +++ b/src/newgrf_text.cpp @@ -1060,6 +1060,16 @@ uint RemapNewGRFStringControlCode(uint scc, char *buf_start, char **buff, const *argv = MapGRFStringID(_newgrf_textrefstack.grffile->grfid, _newgrf_textrefstack.PopUnsignedWord()); break; } + } else { + /* Consume additional parameter characters */ + switch (scc) { + default: break; + + case SCC_NEWGRF_PUSH_WORD: + case SCC_NEWGRF_UNPRINT: + Utf8Consume(str); + break; + } } switch (scc) { diff --git a/src/news_gui.cpp b/src/news_gui.cpp index 7098b315b0..3800af8b57 100644 --- a/src/news_gui.cpp +++ b/src/news_gui.cpp @@ -80,7 +80,7 @@ static TileIndex GetReferenceTile(NewsReferenceType reftype, uint32 ref) static const NWidgetPart _nested_normal_news_widgets[] = { NWidget(WWT_PANEL, COLOUR_WHITE, WID_N_PANEL), NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1), - NWidget(WWT_TEXT, COLOUR_WHITE, WID_N_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1), + NWidget(WWT_CLOSEBOX, COLOUR_WHITE, WID_N_CLOSEBOX), SetPadding(0, 0, 0, 1), NWidget(NWID_SPACER), SetFill(1, 0), NWidget(NWID_VERTICAL), NWidget(WWT_LABEL, COLOUR_WHITE, WID_N_DATE), SetDataTip(STR_DATE_LONG_SMALL, STR_NULL), @@ -103,7 +103,7 @@ static const NWidgetPart _nested_vehicle_news_widgets[] = { NWidget(WWT_PANEL, COLOUR_WHITE, WID_N_PANEL), NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1), NWidget(NWID_VERTICAL), - NWidget(WWT_TEXT, COLOUR_WHITE, WID_N_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1), + NWidget(WWT_CLOSEBOX, COLOUR_WHITE, WID_N_CLOSEBOX), SetPadding(0, 0, 0, 1), NWidget(NWID_SPACER), SetFill(0, 1), EndContainer(), NWidget(WWT_LABEL, COLOUR_WHITE, WID_N_VEH_TITLE), SetFill(1, 1), SetMinimalSize(419, 55), SetDataTip(STR_EMPTY, STR_NULL), @@ -130,7 +130,7 @@ static const NWidgetPart _nested_company_news_widgets[] = { NWidget(WWT_PANEL, COLOUR_WHITE, WID_N_PANEL), NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1), NWidget(NWID_VERTICAL), - NWidget(WWT_TEXT, COLOUR_WHITE, WID_N_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1), + NWidget(WWT_CLOSEBOX, COLOUR_WHITE, WID_N_CLOSEBOX), SetPadding(0, 0, 0, 1), NWidget(NWID_SPACER), SetFill(0, 1), EndContainer(), NWidget(WWT_LABEL, COLOUR_WHITE, WID_N_TITLE), SetFill(1, 1), SetMinimalSize(410, 20), SetDataTip(STR_EMPTY, STR_NULL), @@ -138,10 +138,7 @@ static const NWidgetPart _nested_company_news_widgets[] = { NWidget(NWID_HORIZONTAL), SetPadding(0, 1, 1, 1), NWidget(NWID_VERTICAL), NWidget(WWT_EMPTY, COLOUR_WHITE, WID_N_MGR_FACE), SetMinimalSize(93, 119), SetPadding(2, 6, 2, 1), - NWidget(NWID_HORIZONTAL), - NWidget(WWT_EMPTY, COLOUR_WHITE, WID_N_MGR_NAME), SetMinimalSize(93, 24), SetPadding(0, 0, 0, 1), - NWidget(NWID_SPACER), SetFill(1, 0), - EndContainer(), + NWidget(WWT_EMPTY, COLOUR_WHITE, WID_N_MGR_NAME), SetMinimalSize(93, 24), SetPadding(0, 0, 0, 1), NWidget(NWID_SPACER), SetFill(0, 1), EndContainer(), NWidget(WWT_EMPTY, COLOUR_WHITE, WID_N_COMPANY_MSG), SetFill(1, 1), SetMinimalSize(328, 150), @@ -160,7 +157,7 @@ static WindowDesc _company_news_desc( static const NWidgetPart _nested_thin_news_widgets[] = { NWidget(WWT_PANEL, COLOUR_WHITE, WID_N_PANEL), NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1), - NWidget(WWT_TEXT, COLOUR_WHITE, WID_N_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1), + NWidget(WWT_CLOSEBOX, COLOUR_WHITE, WID_N_CLOSEBOX), SetPadding(0, 0, 0, 1), NWidget(NWID_SPACER), SetFill(1, 0), NWidget(NWID_VERTICAL), NWidget(WWT_LABEL, COLOUR_WHITE, WID_N_DATE), SetDataTip(STR_DATE_LONG_SMALL, STR_NULL), @@ -316,6 +313,10 @@ struct NewsWindow : Window { { StringID str = STR_NULL; switch (widget) { + case WID_N_MGR_FACE: + *size = maxdim(*size, GetSpriteSize(SPR_GRADIENT)); + break; + case WID_N_MESSAGE: CopyInDParam(0, this->ni->params, lengthof(this->ni->params)); str = this->ni->string_id; @@ -374,7 +375,7 @@ struct NewsWindow : Window { case WID_N_MGR_FACE: { const CompanyNewsInformation *cni = (const CompanyNewsInformation*)this->ni->free_data; DrawCompanyManagerFace(cni->face, cni->colour, r.left, r.top); - GfxFillRect(r.left + 1, r.top, r.left + 1 + 91, r.top + 118, PALETTE_NEWSPAPER, FILLRECT_RECOLOUR); + GfxFillRect(r.left, r.top, r.right, r.bottom, PALETTE_NEWSPAPER, FILLRECT_RECOLOUR); break; } case WID_N_MGR_NAME: { diff --git a/src/object.h b/src/object.h index e0b0c8eee4..0ab92d3769 100644 --- a/src/object.h +++ b/src/object.h @@ -20,7 +20,6 @@ void UpdateCompanyHQ(TileIndex tile, uint score); void BuildObject(ObjectType type, TileIndex tile, CompanyID owner = OWNER_NONE, struct Town *town = NULL, uint8 view = 0); -void PlaceProc_Object(TileIndex tile); -void ShowBuildObjectPicker(struct Window *w); +void ShowBuildObjectPicker(); #endif /* OBJECT_H */ diff --git a/src/object_cmd.cpp b/src/object_cmd.cpp index 4038288d09..b5b9921525 100644 --- a/src/object_cmd.cpp +++ b/src/object_cmd.cpp @@ -295,7 +295,7 @@ CommandCost CmdBuildObject(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3 /* Finally do a check for bridges. */ TILE_AREA_LOOP(t, ta) { - if (MayHaveBridgeAbove(t) && IsBridgeAbove(t) && ( + if (IsBridgeAbove(t) && ( !(spec->flags & OBJECT_FLAG_ALLOW_UNDER_BRIDGE) || (GetTileMaxZ(t) + spec->height >= GetBridgeHeight(GetSouthernBridgeEnd(t))))) { return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); diff --git a/src/object_gui.cpp b/src/object_gui.cpp index c550418869..220f4e3854 100644 --- a/src/object_gui.cpp +++ b/src/object_gui.cpp @@ -16,8 +16,10 @@ #include "newgrf_text.h" #include "strings_func.h" #include "viewport_func.h" +#include "tilehighlight_func.h" #include "window_gui.h" #include "window_func.h" +#include "zoom_func.h" #include "widgets/object_widget.h" @@ -30,7 +32,7 @@ static int _selected_object_index; ///< the index of the selected obje static uint8 _selected_object_view; ///< the view of the selected object /** The window used for building objects. */ -class BuildObjectWindow : public PickerWindowBase { +class BuildObjectWindow : public Window { static const int OBJECT_MARGIN = 4; ///< The margin (in pixels) around an object. int line_height; ///< The height of a single line. int info_height; ///< The height of the info box. @@ -72,11 +74,13 @@ class BuildObjectWindow : public PickerWindowBase { } public: - BuildObjectWindow(WindowDesc *desc, Window *w) : PickerWindowBase(desc, w), info_height(1) + BuildObjectWindow(WindowDesc *desc, WindowNumber number) : Window(desc), info_height(1) { this->CreateNestedTree(); this->vscroll = this->GetScrollbar(WID_BO_SCROLLBAR); - this->FinishInitNested(0); + this->FinishInitNested(number); + + ResetObjectToPlace(); this->vscroll->SetPosition(0); this->vscroll->SetCount(ObjectClass::GetUIClassCount()); @@ -164,8 +168,8 @@ public: /* Determine the pixel heights. */ for (size_t i = 0; i < lengthof(height); i++) { - height[i] *= TILE_HEIGHT; - height[i] += TILE_PIXELS + 2 * OBJECT_MARGIN; + height[i] *= ScaleGUITrad(TILE_HEIGHT); + height[i] += ScaleGUITrad(TILE_PIXELS) + 2 * OBJECT_MARGIN; } /* Now determine the size of the minimum widgets. When there are two columns, then @@ -174,9 +178,9 @@ public: * of widgets, or just the twice the widget height of the two row ones. */ size->height = max(height[0], height[1] * 2 + 2); if (two_wide) { - size->width = (3 * TILE_PIXELS + 2 * OBJECT_MARGIN) * 2 + 2; + size->width = (3 * ScaleGUITrad(TILE_PIXELS) + 2 * OBJECT_MARGIN) * 2 + 2; } else { - size->width = 4 * TILE_PIXELS + 2 * OBJECT_MARGIN; + size->width = 4 * ScaleGUITrad(TILE_PIXELS) + 2 * OBJECT_MARGIN; } /* Get the right size for the single widget based on the current spec. */ @@ -197,6 +201,11 @@ public: resize->height = 1; break; + case WID_BO_SELECT_IMAGE: + size->width = ScaleGUITrad(64) + 2; + size->height = ScaleGUITrad(58) + 2; + break; + default: break; } } @@ -237,9 +246,9 @@ public: if (spec->grf_prop.grffile == NULL) { extern const DrawTileSprites _objects[]; const DrawTileSprites *dts = &_objects[spec->grf_prop.local_id]; - DrawOrigTileSeqInGUI((r.right - r.left) / 2 - 1, (r.bottom - r.top + matrix_height / 2) / 2 - OBJECT_MARGIN - TILE_PIXELS, dts, PAL_NONE); + DrawOrigTileSeqInGUI((r.right - r.left) / 2 - 1, (r.bottom - r.top + matrix_height / 2) / 2 - OBJECT_MARGIN - ScaleGUITrad(TILE_PIXELS), dts, PAL_NONE); } else { - DrawNewObjectTileInGUI((r.right - r.left) / 2 - 1, (r.bottom - r.top + matrix_height / 2) / 2 - OBJECT_MARGIN - TILE_PIXELS, spec, GB(widget, 16, 16)); + DrawNewObjectTileInGUI((r.right - r.left) / 2 - 1, (r.bottom - r.top + matrix_height / 2) / 2 - OBJECT_MARGIN - ScaleGUITrad(TILE_PIXELS), spec, GB(widget, 16, 16)); } _cur_dpi = old_dpi; } @@ -264,9 +273,9 @@ public: if (spec->grf_prop.grffile == NULL) { extern const DrawTileSprites _objects[]; const DrawTileSprites *dts = &_objects[spec->grf_prop.local_id]; - DrawOrigTileSeqInGUI((r.right - r.left) / 2 - 1, r.bottom - r.top - OBJECT_MARGIN - TILE_PIXELS, dts, PAL_NONE); + DrawOrigTileSeqInGUI((r.right - r.left) / 2 - 1, r.bottom - r.top - OBJECT_MARGIN - ScaleGUITrad(TILE_PIXELS), dts, PAL_NONE); } else { - DrawNewObjectTileInGUI((r.right - r.left) / 2 - 1, r.bottom - r.top - OBJECT_MARGIN - TILE_PIXELS, spec, + DrawNewObjectTileInGUI((r.right - r.left) / 2 - 1, r.bottom - r.top - OBJECT_MARGIN - ScaleGUITrad(TILE_PIXELS), spec, min(_selected_object_view, spec->views - 1)); } _cur_dpi = old_dpi; @@ -331,10 +340,11 @@ public: _selected_object_view = 0; } - this->GetWidget(WID_BO_OBJECT_MATRIX)->SetClicked(_selected_object_view); - this->GetWidget(WID_BO_SELECT_MATRIX)->SetClicked(_selected_object_index != -1 ? ObjectClass::Get(_selected_object_class)->GetUIFromIndex(_selected_object_index) : -1); - this->UpdateSelectSize(); - this->SetDirty(); + if (_selected_object_index != -1) { + SetObjectToPlaceWnd(SPR_CURSOR_TRANSMITTER, PAL_NONE, HT_RECT, this); + } + + this->UpdateButtons(_selected_object_class, _selected_object_index, _selected_object_view); } void UpdateSelectSize() @@ -349,6 +359,29 @@ public: } } + /** + * Update buttons to show the selection to the user. + * @param sel_class The class of the selected object. + * @param sel_index Index of the object to select, or \c -1 . + * @param sel_view View of the object to select. + */ + void UpdateButtons(ObjectClassID sel_class, int sel_index, uint sel_view) + { + int view_number, object_number; + if (sel_index == -1) { + view_number = -1; // If no object selected, also hide the selected view. + object_number = -1; + } else { + view_number = sel_view; + object_number = ObjectClass::Get(sel_class)->GetUIFromIndex(sel_index); + } + + this->GetWidget(WID_BO_OBJECT_MATRIX)->SetClicked(view_number); + this->GetWidget(WID_BO_SELECT_MATRIX)->SetClicked(object_number); + this->UpdateSelectSize(); + this->SetDirty(); + } + virtual void OnResize() { this->vscroll->SetCapacityFromWidget(this, WID_BO_CLASS_LIST); @@ -376,14 +409,23 @@ public: case WID_BO_OBJECT_SPRITE: if (_selected_object_index != -1) { _selected_object_view = GB(widget, 16, 16); - this->GetWidget(WID_BO_OBJECT_MATRIX)->SetClicked(_selected_object_view); - this->UpdateSelectSize(); - this->SetDirty(); + this->SelectOtherObject(_selected_object_index); // Re-select the object for a different view. } break; } } + virtual void OnPlaceObject(Point pt, TileIndex tile) + { + DoCommandP(tile, ObjectClass::Get(_selected_object_class)->GetSpec(_selected_object_index)->Index(), + _selected_object_view, CMD_BUILD_OBJECT | CMD_MSG(STR_ERROR_CAN_T_BUILD_OBJECT), CcTerraform); + } + + virtual void OnPlaceObjectAbort() + { + this->UpdateButtons(_selected_object_class, -1, _selected_object_view); + } + /** * Select the first available object. * @param change_class If true, change the class if no object in the current @@ -482,9 +524,9 @@ static WindowDesc _build_object_desc( * Show our object picker. * @param w The toolbar window we're associated with. */ -void ShowBuildObjectPicker(Window *w) +void ShowBuildObjectPicker() { - new BuildObjectWindow(&_build_object_desc, w); + AllocateWindowDescFront(&_build_object_desc, 0); } /** Reset all data of the object GUI. */ @@ -492,13 +534,3 @@ void InitializeObjectGui() { _selected_object_class = (ObjectClassID)0; } - -/** - * PlaceProc function, called when someone pressed the button if the - * object-tool is selected - * @param tile on which to place the object - */ -void PlaceProc_Object(TileIndex tile) -{ - DoCommandP(tile, ObjectClass::Get(_selected_object_class)->GetSpec(_selected_object_index)->Index(), _selected_object_view, CMD_BUILD_OBJECT | CMD_MSG(STR_ERROR_CAN_T_BUILD_OBJECT), CcTerraform); -} diff --git a/src/object_map.h b/src/object_map.h index 85faf4444e..1aaf984345 100644 --- a/src/object_map.h +++ b/src/object_map.h @@ -82,7 +82,7 @@ static inline void MakeObject(TileIndex t, Owner o, ObjectID index, WaterClass w _m[t].m3 = random; _m[t].m4 = 0; _m[t].m5 = index >> 16; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } diff --git a/src/openttd.cpp b/src/openttd.cpp index f289545ec7..c149ebbd4d 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -667,7 +667,7 @@ int openttd_main(int argc, char *argv[]) goto exit_noshutdown; } case 'G': scanner->generation_seed = atoi(mgo.opt); break; - case 'c': _config_file = stredup(mgo.opt); break; + case 'c': free(_config_file); _config_file = stredup(mgo.opt); break; case 'x': scanner->save_config = false; break; case 'h': i = -2; // Force printing of help. @@ -958,6 +958,7 @@ static void MakeNewGameDone() if (_settings_client.gui.pause_on_newgame) DoCommandP(0, PM_PAUSED_NORMAL, 1, CMD_PAUSE); CheckEngines(); + CheckIndustries(); MarkWholeScreenDirty(); } diff --git a/src/os/macosx/crashlog_osx.cpp b/src/os/macosx/crashlog_osx.cpp index 05816c67e9..ad258bbc91 100644 --- a/src/os/macosx/crashlog_osx.cpp +++ b/src/os/macosx/crashlog_osx.cpp @@ -33,7 +33,7 @@ #endif /* printf format specification for 32/64-bit addresses. */ -#if __LP64__ +#ifdef __LP64__ #define PRINTF_PTR "0x%016lx" #else #define PRINTF_PTR "0x%08lx" diff --git a/src/os/macosx/osx_stdafx.h b/src/os/macosx/osx_stdafx.h index cd30f372ea..35b3f434a1 100644 --- a/src/os/macosx/osx_stdafx.h +++ b/src/os/macosx/osx_stdafx.h @@ -46,24 +46,14 @@ #define __STDC_LIMIT_MACROS #include -/* We need to include this first as that "depends" on the compiler's setting - * of __LP64__. So before we define __LP64__ so it can be used. */ -#include -#include - /* Some gcc versions include assert.h via this header. As this would interfere * with our own assert redefinition, include this header first. */ #if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) # include #endif -/* __LP64__ only exists in 10.5 and higher */ -#if defined(__APPLE__) && !defined(__LP64__) -# define __LP64__ 0 -#endif - /* Check for mismatching 'architectures' */ -#if !defined(STRGEN) && !defined(SETTINGSGEN) && ((__LP64__ && !defined(_SQ64)) || (!__LP64__ && defined(_SQ64))) +#if !defined(STRGEN) && !defined(SETTINGSGEN) && ((defined(__LP64__) && !defined(_SQ64)) || (!defined(__LP64__) && defined(_SQ64))) # error "Compiling 64 bits without _SQ64 set! (or vice versa)" #endif @@ -99,7 +89,7 @@ /* NSInteger and NSUInteger are part of 10.5 and higher. */ #ifndef NSInteger -#if __LP64__ +#ifdef __LP64__ typedef long NSInteger; typedef unsigned long NSUInteger; #else @@ -109,7 +99,7 @@ typedef unsigned int NSUInteger; #endif /* NSInteger */ #ifndef CGFLOAT_DEFINED -#if __LP64__ +#ifdef __LP64__ typedef double CGFloat; #else typedef float CGFloat; diff --git a/src/os/os2/os2.cpp b/src/os/os2/os2.cpp index e62b968509..386cc4dbb7 100644 --- a/src/os/os2/os2.cpp +++ b/src/os/os2/os2.cpp @@ -174,6 +174,9 @@ int CDECL main(int argc, char *argv[]) { SetRandomSeed(time(NULL)); + /* Make sure our arguments contain only valid UTF-8 characters. */ + for (int i = 0; i < argc; i++) ValidateString(argv[i]); + return openttd_main(argc, argv); } @@ -217,3 +220,9 @@ uint GetCPUCoreCount() { return 1; } + +void OSOpenBrowser(const char *url) +{ + // stub only + DEBUG(misc, 0, "Failed to open url: %s", url); +} diff --git a/src/os/unix/unix.cpp b/src/os/unix/unix.cpp index ebae5c2440..24dedb2ee1 100644 --- a/src/os/unix/unix.cpp +++ b/src/os/unix/unix.cpp @@ -259,7 +259,8 @@ void cocoaReleaseAutoreleasePool(); int CDECL main(int argc, char *argv[]) { - int ret; + /* Make sure our arguments contain only valid UTF-8 characters. */ + for (int i = 0; i < argc; i++) ValidateString(argv[i]); #ifdef WITH_COCOA cocoaSetupAutoreleasePool(); @@ -275,7 +276,7 @@ int CDECL main(int argc, char *argv[]) signal(SIGPIPE, SIG_IGN); - ret = openttd_main(argc, argv); + int ret = openttd_main(argc, argv); #ifdef WITH_COCOA cocoaReleaseAutoreleasePool(); @@ -368,10 +369,10 @@ void OSOpenBrowser(const char *url) if (child_pid != 0) return; const char *args[3]; - args[0] = "/usr/bin/xdg-open"; + args[0] = "xdg-open"; args[1] = url; args[2] = NULL; - execv(args[0], const_cast(args)); + execvp(args[0], const_cast(args)); DEBUG(misc, 0, "Failed to open url: %s", url); exit(0); } diff --git a/src/os/windows/ottdres.rc.in b/src/os/windows/ottdres.rc.in index f70c521fff..8384b91e7c 100644 --- a/src/os/windows/ottdres.rc.in +++ b/src/os/windows/ottdres.rc.in @@ -79,8 +79,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,5,0,!!REVISION!! - PRODUCTVERSION 1,5,0,!!REVISION!! + FILEVERSION 1,6,0,!!REVISION!! + PRODUCTVERSION 1,6,0,!!REVISION!! FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -100,7 +100,7 @@ BEGIN VALUE "FileDescription", "OpenTTD\0" VALUE "FileVersion", "!!VERSION!!\0" VALUE "InternalName", "openttd\0" - VALUE "LegalCopyright", "Copyright \xA9 OpenTTD Developers 2002-2014. All Rights Reserved.\0" + VALUE "LegalCopyright", "Copyright \xA9 OpenTTD Developers 2002-2015. All Rights Reserved.\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", "openttd.exe\0" VALUE "PrivateBuild", "\0" diff --git a/src/os/windows/win32.cpp b/src/os/windows/win32.cpp index 3d5f0ebde5..f69f01f6cb 100644 --- a/src/os/windows/win32.cpp +++ b/src/os/windows/win32.cpp @@ -453,6 +453,9 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLi argc = ParseCommandLine(cmdline, argv, lengthof(argv)); + /* Make sure our arguments contain only valid UTF-8 characters. */ + for (int i = 0; i < argc; i++) ValidateString(argv[i]); + openttd_main(argc, argv); free(cmdline); return 0; diff --git a/src/os/windows/win32.h b/src/os/windows/win32.h index 45bcff10ab..4e53879cf0 100644 --- a/src/os/windows/win32.h +++ b/src/os/windows/win32.h @@ -35,7 +35,7 @@ TCHAR *convert_to_fs(const char *name, TCHAR *utf16_buf, size_t buflen, bool con HRESULT OTTDSHGetFolderPath(HWND, int, HANDLE, DWORD, LPTSTR); -#if defined(__MINGW32__) +#if defined(__MINGW32__) && !defined(__MINGW64__) #define SHGFP_TYPE_CURRENT 0 #endif /* __MINGW32__ */ diff --git a/src/pathfinder/follow_track.hpp b/src/pathfinder/follow_track.hpp index 7cc7c7248f..a16512bc06 100644 --- a/src/pathfinder/follow_track.hpp +++ b/src/pathfinder/follow_track.hpp @@ -130,9 +130,8 @@ struct CFollowTrackT if (!CanExitOldTile()) return false; FollowTileExit(); if (!QueryNewTileTrackStatus()) return TryReverse(); - if (!CanEnterNewTile()) return false; m_new_td_bits &= DiagdirReachesTrackdirs(m_exitdir); - if (m_new_td_bits == TRACKDIR_BIT_NONE) { + if (m_new_td_bits == TRACKDIR_BIT_NONE || !CanEnterNewTile()) { /* In case we can't enter the next tile, but are * a normal road vehicle, then we can actually * try to reverse as this is the end of the road. diff --git a/src/pathfinder/yapf/yapf_rail.cpp b/src/pathfinder/yapf/yapf_rail.cpp index dea4e28c1b..081bfdc645 100644 --- a/src/pathfinder/yapf/yapf_rail.cpp +++ b/src/pathfinder/yapf/yapf_rail.cpp @@ -21,9 +21,6 @@ #include "../../safeguards.h" -#define DEBUG_YAPF_CACHE 0 - -#if DEBUG_YAPF_CACHE template void DumpState(Tpf &pf1, Tpf &pf2) { DumpTarget dmp1, dmp2; @@ -36,7 +33,6 @@ template void DumpState(Tpf &pf1, Tpf &pf2) fclose(f1); fclose(f2); } -#endif int _total_pf_time_us = 0; @@ -242,17 +238,17 @@ public: if (max_penalty != 0) pf1.DisableCache(true); bool result1 = pf1.FindNearestDepotTwoWay(v, t1, td1, t2, td2, max_penalty, reverse_penalty, depot_tile, reversed); -#if DEBUG_YAPF_CACHE - Tpf pf2; - TileIndex depot_tile2 = INVALID_TILE; - bool reversed2 = false; - pf2.DisableCache(true); - bool result2 = pf2.FindNearestDepotTwoWay(v, t1, td1, t2, td2, max_penalty, reverse_penalty, &depot_tile2, &reversed2); - if (result1 != result2 || (result1 && (*depot_tile != depot_tile2 || *reversed != reversed2))) { - DEBUG(yapf, 0, "CACHE ERROR: FindNearestDepotTwoWay() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); - DumpState(pf1, pf2); + if (_debug_desync_level >= 2) { + Tpf pf2; + TileIndex depot_tile2 = INVALID_TILE; + bool reversed2 = false; + pf2.DisableCache(true); + bool result2 = pf2.FindNearestDepotTwoWay(v, t1, td1, t2, td2, max_penalty, reverse_penalty, &depot_tile2, &reversed2); + if (result1 != result2 || (result1 && (*depot_tile != depot_tile2 || *reversed != reversed2))) { + DEBUG(desync, 2, "CACHE ERROR: FindNearestDepotTwoWay() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); + DumpState(pf1, pf2); + } } -#endif return result1; } @@ -327,19 +323,19 @@ public: { /* Create pathfinder instance */ Tpf pf1; -#if !DEBUG_YAPF_CACHE - bool result1 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, false); - -#else - bool result2 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, true); - Tpf pf2; - pf2.DisableCache(true); - bool result1 = pf2.FindNearestSafeTile(v, t1, td, override_railtype, false); - if (result1 != result2) { - DEBUG(yapf, 0, "CACHE ERROR: FindSafeTile() = [%s, %s]", result2 ? "T" : "F", result1 ? "T" : "F"); - DumpState(pf1, pf2); + bool result1; + if (_debug_desync_level < 2) { + result1 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, false); + } else { + bool result2 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, true); + Tpf pf2; + pf2.DisableCache(true); + result1 = pf2.FindNearestSafeTile(v, t1, td, override_railtype, false); + if (result1 != result2) { + DEBUG(desync, 2, "CACHE ERROR: FindSafeTile() = [%s, %s]", result2 ? "T" : "F", result1 ? "T" : "F"); + DumpState(pf1, pf2); + } } -#endif return result1; } @@ -410,19 +406,20 @@ public: { /* create pathfinder instance */ Tpf pf1; -#if !DEBUG_YAPF_CACHE - Trackdir result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); + Trackdir result1; -#else - Trackdir result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, false, NULL); - Tpf pf2; - pf2.DisableCache(true); - Trackdir result2 = pf2.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); - if (result1 != result2) { - DEBUG(yapf, 0, "CACHE ERROR: ChooseRailTrack() = [%d, %d]", result1, result2); - DumpState(pf1, pf2); + if (_debug_desync_level < 2) { + result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); + } else { + result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, false, NULL); + Tpf pf2; + pf2.DisableCache(true); + Trackdir result2 = pf2.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); + if (result1 != result2) { + DEBUG(desync, 2, "CACHE ERROR: ChooseRailTrack() = [%d, %d]", result1, result2); + DumpState(pf1, pf2); + } } -#endif return result1; } @@ -472,15 +469,15 @@ public: Tpf pf1; bool result1 = pf1.CheckReverseTrain(v, t1, td1, t2, td2, reverse_penalty); -#if DEBUG_YAPF_CACHE - Tpf pf2; - pf2.DisableCache(true); - bool result2 = pf2.CheckReverseTrain(v, t1, td1, t2, td2, reverse_penalty); - if (result1 != result2) { - DEBUG(yapf, 0, "CACHE ERROR: CheckReverseTrain() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); - DumpState(pf1, pf2); + if (_debug_desync_level >= 2) { + Tpf pf2; + pf2.DisableCache(true); + bool result2 = pf2.CheckReverseTrain(v, t1, td1, t2, td2, reverse_penalty); + if (result1 != result2) { + DEBUG(desync, 2, "CACHE ERROR: CheckReverseTrain() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); + DumpState(pf1, pf2); + } } -#endif return result1; } diff --git a/src/pbs.cpp b/src/pbs.cpp index 76cb3b9d63..133293909f 100644 --- a/src/pbs.cpp +++ b/src/pbs.cpp @@ -85,7 +85,11 @@ bool TryReserveRailTrack(TileIndex tile, Track t, bool trigger_stations) if (_settings_client.gui.show_track_reservation) { /* show the reserved rail if needed */ - MarkTileDirtyByTile(tile); + if (IsBridgeTile(tile)) { + MarkBridgeDirty(tile); + } else { + MarkTileDirtyByTile(tile); + } } switch (GetTileType(tile)) { @@ -141,7 +145,11 @@ void UnreserveRailTrack(TileIndex tile, Track t) assert((GetTileTrackStatus(tile, TRANSPORT_RAIL, 0) & TrackToTrackBits(t)) != 0); if (_settings_client.gui.show_track_reservation) { - MarkTileDirtyByTile(tile); + if (IsBridgeTile(tile)) { + MarkBridgeDirty(tile); + } else { + MarkTileDirtyByTile(tile); + } } switch (GetTileType(tile)) { diff --git a/src/rail.h b/src/rail.h index 249c1bea1c..539a162b8e 100644 --- a/src/rail.h +++ b/src/rail.h @@ -89,14 +89,22 @@ enum RailTrackBridgeOffset { * the sprites in the original data files. */ enum RailFenceOffset { - RFO_FLAT_X, - RFO_FLAT_Y, - RFO_FLAT_VERT, - RFO_FLAT_HORZ, - RFO_SLOPE_SW, - RFO_SLOPE_SE, - RFO_SLOPE_NE, - RFO_SLOPE_NW, + RFO_FLAT_X_NW, //!< Slope FLAT, Track X, Fence NW + RFO_FLAT_Y_NE, //!< Slope FLAT, Track Y, Fence NE + RFO_FLAT_LEFT, //!< Slope FLAT, Track LEFT, Fence E + RFO_FLAT_UPPER, //!< Slope FLAT, Track UPPER, Fence S + RFO_SLOPE_SW_NW, //!< Slope SW, Track X, Fence NW + RFO_SLOPE_SE_NE, //!< Slope SE, Track Y, Fence NE + RFO_SLOPE_NE_NW, //!< Slope NE, Track X, Fence NW + RFO_SLOPE_NW_NE, //!< Slope NW, Track Y, Fence NE + RFO_FLAT_X_SE, //!< Slope FLAT, Track X, Fence SE + RFO_FLAT_Y_SW, //!< Slope FLAT, Track Y, Fence SW + RFO_FLAT_RIGHT, //!< Slope FLAT, Track RIGHT, Fence W + RFO_FLAT_LOWER, //!< Slope FLAT, Track LOWER, Fence N + RFO_SLOPE_SW_SE, //!< Slope SW, Track X, Fence SE + RFO_SLOPE_SE_SW, //!< Slope SE, Track Y, Fence SW + RFO_SLOPE_NE_SE, //!< Slope NE, Track X, Fence SE + RFO_SLOPE_NW_SW, //!< Slope NW, Track Y, Fence SW }; /** List of rail type labels. */ @@ -150,16 +158,16 @@ struct RailtypeInfo { CursorID depot; ///< Cursor for building a depot CursorID tunnel; ///< Cursor for building a tunnel CursorID convert; ///< Cursor for converting track - } cursor; + } cursor; ///< Cursors associated with the rail type. struct { - StringID name; - StringID toolbar_caption; - StringID menu_text; - StringID build_caption; - StringID replace_text; - StringID new_loco; - } strings; + StringID name; ///< Name of this rail type. + StringID toolbar_caption; ///< Caption in the construction toolbar GUI for this rail type. + StringID menu_text; ///< Name of this rail type in the main toolbar dropdown. + StringID build_caption; ///< Caption of the build vehicle GUI for this rail type. + StringID replace_text; ///< Text used in the autoreplace GUI. + StringID new_loco; ///< Name of an engine for this type of rail in the engine preview GUI. + } strings; ///< Strings associated with the rail type. /** sprite number difference between a piece of track on a snowy ground and the corresponding one on normal ground */ SpriteID snow_offset; diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp index c4b2b9f432..743e6e193c 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp @@ -485,36 +485,38 @@ CommandCost CmdBuildSingleRail(TileIndex tile, DoCommandFlag flags, uint32 p1, u RoadTypes roadtypes = GetRoadTypes(tile); RoadBits road = GetRoadBits(tile, ROADTYPE_ROAD); RoadBits tram = GetRoadBits(tile, ROADTYPE_TRAM); - switch (roadtypes) { - default: break; - case ROADTYPES_TRAM: - /* Tram crossings must always have road. */ - if (flags & DC_EXEC) { - SetRoadOwner(tile, ROADTYPE_ROAD, _current_company); - Company *c = Company::GetIfValid(_current_company); - if (c != NULL) { - /* A full diagonal tile has two road bits. */ - c->infrastructure.road[ROADTYPE_ROAD] += 2; - DirtyCompanyInfrastructureWindows(c->index); - } - } - roadtypes |= ROADTYPES_ROAD; - break; + if ((track == TRACK_X && ((road | tram) & ROAD_X) == 0) || + (track == TRACK_Y && ((road | tram) & ROAD_Y) == 0)) { + Owner road_owner = GetRoadOwner(tile, ROADTYPE_ROAD); + Owner tram_owner = GetRoadOwner(tile, ROADTYPE_TRAM); + /* Disallow breaking end-of-line of someone else + * so trams can still reverse on this tile. */ + if (Company::IsValidID(tram_owner) && HasExactlyOneBit(tram)) { + CommandCost ret = CheckOwnership(tram_owner); + if (ret.Failed()) return ret; + } + /* Crossings must always have a road... */ + uint num_new_road_pieces = 2 - CountBits(road); + if (road == ROAD_NONE) road_owner = _current_company; + roadtypes |= ROADTYPES_ROAD; + /* ...but tram is not required. */ + uint num_new_tram_pieces = (tram != ROAD_NONE) ? 2 - CountBits(tram) : 0; - case ROADTYPES_ALL: - if (road != tram) return CMD_ERROR; - break; - } + cost.AddCost((num_new_road_pieces + num_new_tram_pieces) * _price[PR_BUILD_ROAD]); - road |= tram; - - if ((track == TRACK_X && road == ROAD_Y) || - (track == TRACK_Y && road == ROAD_X)) { if (flags & DC_EXEC) { - MakeRoadCrossing(tile, GetRoadOwner(tile, ROADTYPE_ROAD), GetRoadOwner(tile, ROADTYPE_TRAM), _current_company, (track == TRACK_X ? AXIS_Y : AXIS_X), railtype, roadtypes, GetTownIndex(tile)); + MakeRoadCrossing(tile, road_owner, tram_owner, _current_company, (track == TRACK_X ? AXIS_Y : AXIS_X), railtype, roadtypes, GetTownIndex(tile)); UpdateLevelCrossing(tile, false); Company::Get(_current_company)->infrastructure.rail[railtype] += LEVELCROSSING_TRACKBIT_FACTOR; DirtyCompanyInfrastructureWindows(_current_company); + if (num_new_road_pieces > 0 && Company::IsValidID(road_owner)) { + Company::Get(road_owner)->infrastructure.road[ROADTYPE_ROAD] += num_new_road_pieces; + DirtyCompanyInfrastructureWindows(road_owner); + } + if (num_new_tram_pieces > 0 && Company::IsValidID(tram_owner)) { + Company::Get(tram_owner)->infrastructure.road[ROADTYPE_TRAM] += num_new_tram_pieces; + DirtyCompanyInfrastructureWindows(tram_owner); + } } break; } @@ -953,7 +955,7 @@ CommandCost CmdBuildTrainDepot(TileIndex tile, DoCommandFlag flags, uint32 p1, u CommandCost cost = DoCommand(tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR); if (cost.Failed()) return cost; - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); if (!Depot::CanAllocateItem()) return CMD_ERROR; @@ -1688,13 +1690,11 @@ CommandCost CmdConvertRail(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3 YapfNotifyTrackLayoutChange(tile, track); YapfNotifyTrackLayoutChange(endtile, track); - MarkTileDirtyByTile(tile); - MarkTileDirtyByTile(endtile); - if (IsBridge(tile)) { - TileIndexDiff delta = TileOffsByDiagDir(GetTunnelBridgeDirection(tile)); - TileIndex t = tile + delta; - for (; t != endtile; t += delta) MarkTileDirtyByTile(t); // TODO encapsulate this into a function + MarkBridgeDirty(tile); + } else { + MarkTileDirtyByTile(tile); + MarkTileDirtyByTile(endtile); } } @@ -1874,109 +1874,128 @@ static void DrawSingleSignal(TileIndex tile, const RailtypeInfo *rti, Track trac static uint32 _drawtile_track_palette; -static void DrawTrackFence_NW(const TileInfo *ti, SpriteID base_image) -{ - RailFenceOffset rfo = RFO_FLAT_X; - if (ti->tileh & SLOPE_NW) rfo = (ti->tileh & SLOPE_W) ? RFO_SLOPE_SW : RFO_SLOPE_NE; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x, ti->y + 1, 16, 1, 4, ti->z); -} -static void DrawTrackFence_SE(const TileInfo *ti, SpriteID base_image) -{ - RailFenceOffset rfo = RFO_FLAT_X; - if (ti->tileh & SLOPE_SE) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SW : RFO_SLOPE_NE; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x, ti->y + TILE_SIZE - 1, 16, 1, 4, ti->z); -} +/** Offsets for drawing fences */ +struct FenceOffset { + Corner height_ref; //!< Corner to use height offset from. + int x_offs; //!< Bounding box X offset. + int y_offs; //!< Bounding box Y offset. + int x_size; //!< Bounding box X size. + int y_size; //!< Bounding box Y size. +}; -static void DrawTrackFence_NW_SE(const TileInfo *ti, SpriteID base_image) -{ - DrawTrackFence_NW(ti, base_image); - DrawTrackFence_SE(ti, base_image); -} +/** Offsets for drawing fences */ +static FenceOffset _fence_offsets[] = { + { CORNER_INVALID, 0, 1, 16, 1 }, // RFO_FLAT_X_NW + { CORNER_INVALID, 1, 0, 1, 16 }, // RFO_FLAT_Y_NE + { CORNER_W, 8, 8, 1, 1 }, // RFO_FLAT_LEFT + { CORNER_N, 8, 8, 1, 1 }, // RFO_FLAT_UPPER + { CORNER_INVALID, 0, 1, 16, 1 }, // RFO_SLOPE_SW_NW + { CORNER_INVALID, 1, 0, 1, 16 }, // RFO_SLOPE_SE_NE + { CORNER_INVALID, 0, 1, 16, 1 }, // RFO_SLOPE_NE_NW + { CORNER_INVALID, 1, 0, 1, 16 }, // RFO_SLOPE_NW_NE + { CORNER_INVALID, 0, 15, 16, 1 }, // RFO_FLAT_X_SE + { CORNER_INVALID, 15, 0, 1, 16 }, // RFO_FLAT_Y_SW + { CORNER_E, 8, 8, 1, 1 }, // RFO_FLAT_RIGHT + { CORNER_S, 8, 8, 1, 1 }, // RFO_FLAT_LOWER + { CORNER_INVALID, 0, 15, 16, 1 }, // RFO_SLOPE_SW_SE + { CORNER_INVALID, 15, 0, 1, 16 }, // RFO_SLOPE_SE_SW + { CORNER_INVALID, 0, 15, 16, 1 }, // RFO_SLOPE_NE_SE + { CORNER_INVALID, 15, 0, 1, 16 }, // RFO_SLOPE_NW_SW +}; -static void DrawTrackFence_NE(const TileInfo *ti, SpriteID base_image) +/** + * Draw a track fence. + * @param ti Tile drawing information. + * @param base_image First fence sprite. + * @param num_sprites Number of fence sprites. + * @param rfo Fence to draw. + */ +static void DrawTrackFence(const TileInfo *ti, SpriteID base_image, uint num_sprites, RailFenceOffset rfo) { - RailFenceOffset rfo = RFO_FLAT_Y; - if (ti->tileh & SLOPE_NE) rfo = (ti->tileh & SLOPE_E) ? RFO_SLOPE_SE : RFO_SLOPE_NW; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x + 1, ti->y, 1, 16, 4, ti->z); -} - -static void DrawTrackFence_SW(const TileInfo *ti, SpriteID base_image) -{ - RailFenceOffset rfo = RFO_FLAT_Y; - if (ti->tileh & SLOPE_SW) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SE : RFO_SLOPE_NW; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x + TILE_SIZE - 1, ti->y, 1, 16, 4, ti->z); -} - -static void DrawTrackFence_NE_SW(const TileInfo *ti, SpriteID base_image) -{ - DrawTrackFence_NE(ti, base_image); - DrawTrackFence_SW(ti, base_image); + int z = ti->z; + if (_fence_offsets[rfo].height_ref != CORNER_INVALID) { + z += GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), _fence_offsets[rfo].height_ref); + } + AddSortableSpriteToDraw(base_image + (rfo % num_sprites), _drawtile_track_palette, + ti->x + _fence_offsets[rfo].x_offs, + ti->y + _fence_offsets[rfo].y_offs, + _fence_offsets[rfo].x_size, + _fence_offsets[rfo].y_size, + 4, z); } /** - * Draw fence at eastern side of track. + * Draw fence at NW border matching the tile slope. */ -static void DrawTrackFence_NS_1(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_NW(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_W); - AddSortableSpriteToDraw(base_image + RFO_FLAT_VERT, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_X_NW; + if (ti->tileh & SLOPE_NW) rfo = (ti->tileh & SLOPE_W) ? RFO_SLOPE_SW_NW : RFO_SLOPE_NE_NW; + DrawTrackFence(ti, base_image, num_sprites, rfo); } /** - * Draw fence at western side of track. + * Draw fence at SE border matching the tile slope. */ -static void DrawTrackFence_NS_2(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_SE(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_E); - AddSortableSpriteToDraw(base_image + RFO_FLAT_VERT, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_X_SE; + if (ti->tileh & SLOPE_SE) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SW_SE : RFO_SLOPE_NE_SE; + DrawTrackFence(ti, base_image, num_sprites, rfo); } /** - * Draw fence at southern side of track. + * Draw fence at NE border matching the tile slope. */ -static void DrawTrackFence_WE_1(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_NE(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_N); - AddSortableSpriteToDraw(base_image + RFO_FLAT_HORZ, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_Y_NE; + if (ti->tileh & SLOPE_NE) rfo = (ti->tileh & SLOPE_E) ? RFO_SLOPE_SE_NE : RFO_SLOPE_NW_NE; + DrawTrackFence(ti, base_image, num_sprites, rfo); } /** - * Draw fence at northern side of track. + * Draw fence at SW border matching the tile slope. */ -static void DrawTrackFence_WE_2(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_SW(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_S); - AddSortableSpriteToDraw(base_image + RFO_FLAT_HORZ, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_Y_SW; + if (ti->tileh & SLOPE_SW) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SE_SW : RFO_SLOPE_NW_SW; + DrawTrackFence(ti, base_image, num_sprites, rfo); } - +/** + * Draw track fences. + * @param ti Tile drawing information. + * @param rti Rail type information. + */ static void DrawTrackDetails(const TileInfo *ti, const RailtypeInfo *rti) { /* Base sprite for track fences. * Note: Halftile slopes only have fences on the upper part. */ - SpriteID base_image = GetCustomRailSprite(rti, ti->tile, RTSG_FENCES, IsHalftileSlope(ti->tileh) ? TCX_UPPER_HALFTILE : TCX_NORMAL); - if (base_image == 0) base_image = SPR_TRACK_FENCE_FLAT_X; + uint num_sprites = 0; + SpriteID base_image = GetCustomRailSprite(rti, ti->tile, RTSG_FENCES, IsHalftileSlope(ti->tileh) ? TCX_UPPER_HALFTILE : TCX_NORMAL, &num_sprites); + if (base_image == 0) { + base_image = SPR_TRACK_FENCE_FLAT_X; + num_sprites = 8; + } + + assert(num_sprites > 0); switch (GetRailGroundType(ti->tile)) { - case RAIL_GROUND_FENCE_NW: DrawTrackFence_NW(ti, base_image); break; - case RAIL_GROUND_FENCE_SE: DrawTrackFence_SE(ti, base_image); break; - case RAIL_GROUND_FENCE_SENW: DrawTrackFence_NW_SE(ti, base_image); break; - case RAIL_GROUND_FENCE_NE: DrawTrackFence_NE(ti, base_image); break; - case RAIL_GROUND_FENCE_SW: DrawTrackFence_SW(ti, base_image); break; - case RAIL_GROUND_FENCE_NESW: DrawTrackFence_NE_SW(ti, base_image); break; - case RAIL_GROUND_FENCE_VERT1: DrawTrackFence_NS_1(ti, base_image); break; - case RAIL_GROUND_FENCE_VERT2: DrawTrackFence_NS_2(ti, base_image); break; - case RAIL_GROUND_FENCE_HORIZ1: DrawTrackFence_WE_1(ti, base_image); break; - case RAIL_GROUND_FENCE_HORIZ2: DrawTrackFence_WE_2(ti, base_image); break; + case RAIL_GROUND_FENCE_NW: DrawTrackFence_NW(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_SE: DrawTrackFence_SE(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_SENW: DrawTrackFence_NW(ti, base_image, num_sprites); + DrawTrackFence_SE(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_NE: DrawTrackFence_NE(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_SW: DrawTrackFence_SW(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_NESW: DrawTrackFence_NE(ti, base_image, num_sprites); + DrawTrackFence_SW(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_VERT1: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LEFT); break; + case RAIL_GROUND_FENCE_VERT2: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_RIGHT); break; + case RAIL_GROUND_FENCE_HORIZ1: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_UPPER); break; + case RAIL_GROUND_FENCE_HORIZ2: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LOWER); break; case RAIL_GROUND_WATER: { Corner track_corner; if (IsHalftileSlope(ti->tileh)) { @@ -1987,10 +2006,10 @@ static void DrawTrackDetails(const TileInfo *ti, const RailtypeInfo *rti) track_corner = OppositeCorner(GetHighestSlopeCorner(ComplementSlope(ti->tileh))); } switch (track_corner) { - case CORNER_W: DrawTrackFence_NS_1(ti, base_image); break; - case CORNER_S: DrawTrackFence_WE_2(ti, base_image); break; - case CORNER_E: DrawTrackFence_NS_2(ti, base_image); break; - case CORNER_N: DrawTrackFence_WE_1(ti, base_image); break; + case CORNER_W: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LEFT); break; + case CORNER_S: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LOWER); break; + case CORNER_E: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_RIGHT); break; + case CORNER_N: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_UPPER); break; default: NOT_REACHED(); } break; @@ -2061,16 +2080,16 @@ static void DrawTrackBitsOverlay(TileInfo *ti, TrackBits track, const RailtypeIn /* Half-tile foundation, no track here? */ } else if (ti->tileh == SLOPE_NW && track == TRACK_BIT_Y) { DrawGroundSprite(ground + RTO_SLOPE_NW, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 9, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_NW, PALETTE_CRASH); } else if (ti->tileh == SLOPE_NE && track == TRACK_BIT_X) { DrawGroundSprite(ground + RTO_SLOPE_NE, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 6, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_NE, PALETTE_CRASH); } else if (ti->tileh == SLOPE_SE && track == TRACK_BIT_Y) { DrawGroundSprite(ground + RTO_SLOPE_SE, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 7, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_SE, PALETTE_CRASH); } else if (ti->tileh == SLOPE_SW && track == TRACK_BIT_X) { DrawGroundSprite(ground + RTO_SLOPE_SW, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 8, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_SW, PALETTE_CRASH); } else { switch (track) { /* Draw single ground sprite when not overlapping. No track overlay @@ -2443,9 +2462,6 @@ void DrawTrainDepotSprite(int x, int y, int dir, RailType railtype) SpriteID image = rti->UsesOverlay() ? SPR_FLAT_GRASS_TILE : dts->ground.sprite; uint32 offset = rti->GetRailtypeSpriteOffset(); - x += 33; - y += 17; - if (image != SPR_FLAT_GRASS_TILE) image += offset; PaletteID palette = COMPANY_SPRITE_COLOUR(_local_company); diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp index 1907c66174..a8c2fc6b33 100644 --- a/src/rail_gui.cpp +++ b/src/rail_gui.cpp @@ -434,6 +434,18 @@ struct BuildRailToolbarWindow : Window { if (_settings_client.gui.link_terraform_toolbar) DeleteWindowById(WC_SCEN_LAND_GEN, 0, false); } + /** + * Some data on this window has become invalid. + * @param data Information about the changed data. + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. + */ + virtual void OnInvalidateData(int data = 0, bool gui_scope = true) + { + if (!gui_scope) return; + + if (!CanBuildVehicleInfrastructure(VEH_TRAIN)) delete this; + } + /** * Configures the rail toolbar for railtype given * @param railtype the railtype to display @@ -1072,6 +1084,13 @@ public: break; } + case WID_BRAS_PLATFORM_DIR_X: + case WID_BRAS_PLATFORM_DIR_Y: + case WID_BRAS_IMAGE: + size->width = ScaleGUITrad(64) + 2; + size->height = ScaleGUITrad(58) + 2; + break; + case WID_BRAS_COVERAGE_TEXTS: size->height = this->coverage_height; break; @@ -1093,8 +1112,10 @@ public: if (FillDrawPixelInfo(&tmp_dpi, r.left, r.top, r.right - r.left + 1, r.bottom - r.top + 1)) { DrawPixelInfo *old_dpi = _cur_dpi; _cur_dpi = &tmp_dpi; - if (!DrawStationTile(32, 28, _cur_railtype, AXIS_X, _railstation.station_class, _railstation.station_type)) { - StationPickerDrawSprite(32, 28, STATION_RAIL, _cur_railtype, INVALID_ROADTYPE, 2); + int x = ScaleGUITrad(31) + 1; + int y = r.bottom - r.top - ScaleGUITrad(31); + if (!DrawStationTile(x, y, _cur_railtype, AXIS_X, _railstation.station_class, _railstation.station_type)) { + StationPickerDrawSprite(x, y, STATION_RAIL, _cur_railtype, INVALID_ROADTYPE, 2); } _cur_dpi = old_dpi; } @@ -1105,8 +1126,10 @@ public: if (FillDrawPixelInfo(&tmp_dpi, r.left, r.top, r.right - r.left + 1, r.bottom - r.top + 1)) { DrawPixelInfo *old_dpi = _cur_dpi; _cur_dpi = &tmp_dpi; - if (!DrawStationTile(32, 28, _cur_railtype, AXIS_Y, _railstation.station_class, _railstation.station_type)) { - StationPickerDrawSprite(32, 28, STATION_RAIL, _cur_railtype, INVALID_ROADTYPE, 3); + int x = ScaleGUITrad(31) + 1; + int y = r.bottom - r.top - ScaleGUITrad(31); + if (!DrawStationTile(x, y, _cur_railtype, AXIS_Y, _railstation.station_class, _railstation.station_type)) { + StationPickerDrawSprite(x, y, STATION_RAIL, _cur_railtype, INVALID_ROADTYPE, 3); } _cur_dpi = old_dpi; } @@ -1141,8 +1164,10 @@ public: if (FillDrawPixelInfo(&tmp_dpi, r.left, r.top, r.right - r.left + 1, r.bottom - r.top + 1)) { DrawPixelInfo *old_dpi = _cur_dpi; _cur_dpi = &tmp_dpi; - if (!DrawStationTile(32, 28, _cur_railtype, _railstation.orientation, _railstation.station_class, type)) { - StationPickerDrawSprite(32, 28, STATION_RAIL, _cur_railtype, INVALID_ROADTYPE, 2 + _railstation.orientation); + int x = ScaleGUITrad(31) + 1; + int y = r.bottom - r.top - ScaleGUITrad(31); + if (!DrawStationTile(x, y, _cur_railtype, _railstation.orientation, _railstation.station_class, type)) { + StationPickerDrawSprite(x, y, STATION_RAIL, _cur_railtype, INVALID_ROADTYPE, 2 + _railstation.orientation); } _cur_dpi = old_dpi; } @@ -1676,11 +1701,19 @@ struct BuildRailDepotWindow : public PickerWindowBase { this->LowerWidget(_build_depot_direction + WID_BRAD_DEPOT_NE); } + virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) + { + if (!IsInsideMM(widget, WID_BRAD_DEPOT_NE, WID_BRAD_DEPOT_NW + 1)) return; + + size->width = ScaleGUITrad(64) + 2; + size->height = ScaleGUITrad(48) + 2; + } + virtual void DrawWidget(const Rect &r, int widget) const { if (!IsInsideMM(widget, WID_BRAD_DEPOT_NE, WID_BRAD_DEPOT_NW + 1)) return; - DrawTrainDepotSprite(r.left - 1, r.top, widget - WID_BRAD_DEPOT_NE + DIAGDIR_NE, _cur_railtype); + DrawTrainDepotSprite(r.left + 1 + ScaleGUITrad(31), r.bottom - ScaleGUITrad(31), widget - WID_BRAD_DEPOT_NE + DIAGDIR_NE, _cur_railtype); } virtual void OnClick(Point pt, int widget, int click_count) @@ -1768,6 +1801,11 @@ struct BuildRailWaypointWindow : PickerWindowBase { /* Resizing in X direction only at blob size, but at pixel level in Y. */ resize->height = 1; break; + + case WID_BRW_WAYPOINT: + size->width = ScaleGUITrad(64) + 2; + size->height = ScaleGUITrad(58) + 2; + break; } } @@ -1777,7 +1815,7 @@ struct BuildRailWaypointWindow : PickerWindowBase { case WID_BRW_WAYPOINT: { byte type = GB(widget, 16, 16); const StationSpec *statspec = StationClass::Get(STAT_CLASS_WAYP)->GetSpec(type); - DrawWaypointSprite(r.left + TILE_PIXELS, r.bottom - TILE_PIXELS, type, _cur_railtype); + DrawWaypointSprite(r.left + 1 + ScaleGUITrad(31), r.bottom - ScaleGUITrad(31), type, _cur_railtype); if (!IsStationAvailable(statspec)) { GfxFillRect(r.left + 1, r.top + 1, r.right - 1, r.bottom - 1, PC_BLACK, FILLRECT_CHECKER); diff --git a/src/rail_map.h b/src/rail_map.h index c8033a3118..2431a79202 100644 --- a/src/rail_map.h +++ b/src/rail_map.h @@ -525,7 +525,7 @@ static inline void MakeRailNormal(TileIndex t, Owner o, TrackBits b, RailType r) _m[t].m3 = r; _m[t].m4 = 0; _m[t].m5 = RAIL_TILE_NORMAL << 6 | b; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } @@ -538,7 +538,7 @@ static inline void MakeRailDepot(TileIndex t, Owner o, DepotID did, DiagDirectio _m[t].m3 = r; _m[t].m4 = 0; _m[t].m5 = RAIL_TILE_DEPOT << 6 | d; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } diff --git a/src/rev.cpp.in b/src/rev.cpp.in index c208382050..7e27859ce0 100644 --- a/src/rev.cpp.in +++ b/src/rev.cpp.in @@ -72,7 +72,7 @@ const byte _openttd_revision_modified = !!MODIFIED!!; * final release will always have a lower version number than the released * version, thus making comparisons on specific revisions easy. */ -const uint32 _openttd_newgrf_version = 1 << 28 | 5 << 24 | 0 << 20 | 0 << 19 | (!!REVISION!! & ((1 << 19) - 1)); +const uint32 _openttd_newgrf_version = 1 << 28 | 6 << 24 | 0 << 20 | 0 << 19 | (!!REVISION!! & ((1 << 19) - 1)); #ifdef __MORPHOS__ /** diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp index d20bdcfb46..aa445eb91a 100644 --- a/src/road_cmd.cpp +++ b/src/road_cmd.cpp @@ -237,21 +237,20 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec SetRoadTypes(tile, GetRoadTypes(tile) & ~RoadTypeToRoadTypes(rt)); /* If the owner of the bridge sells all its road, also move the ownership - * to the owner of the other roadtype. */ + * to the owner of the other roadtype, unless the bridge owner is a town. */ RoadType other_rt = (rt == ROADTYPE_ROAD) ? ROADTYPE_TRAM : ROADTYPE_ROAD; Owner other_owner = GetRoadOwner(tile, other_rt); - if (other_owner != GetTileOwner(tile)) { + if (!IsTileOwner(tile, other_owner) && !IsTileOwner(tile, OWNER_TOWN)) { SetTileOwner(tile, other_owner); SetTileOwner(other_end, other_owner); } /* Mark tiles dirty that have been repaved */ - MarkTileDirtyByTile(tile); - MarkTileDirtyByTile(other_end); if (IsBridge(tile)) { - TileIndexDiff delta = TileOffsByDiagDir(GetTunnelBridgeDirection(tile)); - - for (TileIndex t = tile + delta; t != other_end; t += delta) MarkTileDirtyByTile(t); + MarkBridgeDirty(tile); + } else { + MarkTileDirtyByTile(tile); + MarkTileDirtyByTile(other_end); } } } else { @@ -385,7 +384,10 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec /* Update rail count for level crossings. The plain track should still be accounted * for, so only subtract the difference to the level crossing cost. */ c = Company::GetIfValid(GetTileOwner(tile)); - if (c != NULL) c->infrastructure.rail[GetRailType(tile)] -= LEVELCROSSING_TRACKBIT_FACTOR - 1; + if (c != NULL) { + c->infrastructure.rail[GetRailType(tile)] -= LEVELCROSSING_TRACKBIT_FACTOR - 1; + DirtyCompanyInfrastructureWindows(c->index); + } } else { SetRoadTypes(tile, rts); } @@ -564,6 +566,15 @@ CommandCost CmdBuildRoad(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 } return_cmd_error(STR_ERROR_ALREADY_BUILT); } + /* Disallow breaking end-of-line of someone else + * so trams can still reverse on this tile. */ + if (rt == ROADTYPE_TRAM && HasExactlyOneBit(existing)) { + Owner owner = GetRoadOwner(tile, rt); + if (Company::IsValidID(owner)) { + CommandCost ret = CheckOwnership(owner); + if (ret.Failed()) return ret; + } + } break; } @@ -630,7 +641,10 @@ CommandCost CmdBuildRoad(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 /* Update rail count for level crossings. The plain track is already * counted, so only add the difference to the level crossing cost. */ c = Company::GetIfValid(GetTileOwner(tile)); - if (c != NULL) c->infrastructure.rail[GetRailType(tile)] += LEVELCROSSING_TRACKBIT_FACTOR - 1; + if (c != NULL) { + c->infrastructure.rail[GetRailType(tile)] += LEVELCROSSING_TRACKBIT_FACTOR - 1; + DirtyCompanyInfrastructureWindows(c->index); + } /* Always add road to the roadtypes (can't draw without it) */ bool reserved = HasBit(GetRailReservationTrackBits(tile), railtrack); @@ -747,12 +761,11 @@ do_clear:; SetRoadOwner(tile, rt, company); /* Mark tiles dirty that have been repaved */ - MarkTileDirtyByTile(other_end); - MarkTileDirtyByTile(tile); if (IsBridge(tile)) { - TileIndexDiff delta = TileOffsByDiagDir(GetTunnelBridgeDirection(tile)); - - for (TileIndex t = tile + delta; t != other_end; t += delta) MarkTileDirtyByTile(t); + MarkBridgeDirty(tile); + } else { + MarkTileDirtyByTile(other_end); + MarkTileDirtyByTile(tile); } break; } @@ -1015,7 +1028,7 @@ CommandCost CmdBuildRoadDepot(TileIndex tile, DoCommandFlag flags, uint32 p1, ui CommandCost cost = DoCommand(tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR); if (cost.Failed()) return cost; - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); if (!Depot::CanAllocateItem()) return CMD_ERROR; @@ -1158,16 +1171,15 @@ const byte _road_sloped_sprites[14] = { }; /** - * Whether to draw unpaved roads regardless of the town zone. - * By default, OpenTTD always draws roads as unpaved if they are on a desert - * tile or above the snowline. Newgrf files, however, can set a bit that allows - * paved roads to be built on desert tiles as they would be on grassy tiles. + * Should the road be drawn as a unpaved snow/desert road? + * By default, roads are always drawn as unpaved if they are on desert or + * above the snow line, but NewGRFs can override this for desert. * * @param tile The tile the road is on * @param roadside What sort of road this is - * @return True if the road should be drawn unpaved regardless of the roadside. + * @return True if snow/desert road sprites should be used. */ -static bool AlwaysDrawUnpavedRoads(TileIndex tile, Roadside roadside) +static bool DrawRoadAsSnowDesert(TileIndex tile, Roadside roadside) { return (IsOnSnow(tile) && !(_settings_game.game_creation.landscape == LT_TROPIC && HasGrfMiscBit(GMB_DESERT_PAVED_ROADS) && @@ -1185,7 +1197,7 @@ void DrawTramCatenary(const TileInfo *ti, RoadBits tram) if (IsInvisibilitySet(TO_CATENARY)) return; /* Don't draw the catenary under a low bridge */ - if (MayHaveBridgeAbove(ti->tile) && IsBridgeAbove(ti->tile) && !IsTransparencySet(TO_CATENARY)) { + if (IsBridgeAbove(ti->tile) && !IsTransparencySet(TO_CATENARY)) { int height = GetBridgeHeight(GetNorthernBridgeEnd(ti->tile)); if (height <= GetTileMaxZ(ti->tile) + 1) return; @@ -1247,7 +1259,7 @@ static void DrawRoadBits(TileInfo *ti) Roadside roadside = GetRoadside(ti->tile); - if (AlwaysDrawUnpavedRoads(ti->tile, roadside)) { + if (DrawRoadAsSnowDesert(ti->tile, roadside)) { image += 19; } else { switch (roadside) { @@ -1292,7 +1304,7 @@ static void DrawRoadBits(TileInfo *ti) if (!HasBit(_display_opt, DO_FULL_DETAIL) || _cur_dpi->zoom > ZOOM_LVL_DETAIL) return; /* Do not draw details (street lights, trees) under low bridge */ - if (MayHaveBridgeAbove(ti->tile) && IsBridgeAbove(ti->tile) && (roadside == ROADSIDE_TREES || roadside == ROADSIDE_STREET_LIGHTS)) { + if (IsBridgeAbove(ti->tile) && (roadside == ROADSIDE_TREES || roadside == ROADSIDE_STREET_LIGHTS)) { int height = GetBridgeHeight(GetNorthernBridgeEnd(ti->tile)); int minz = GetTileMaxZ(ti->tile) + 2; @@ -1330,7 +1342,7 @@ static void DrawTile_Road(TileInfo *ti) Roadside roadside = GetRoadside(ti->tile); - if (AlwaysDrawUnpavedRoads(ti->tile, roadside)) { + if (DrawRoadAsSnowDesert(ti->tile, roadside)) { road += 19; } else { switch (roadside) { @@ -1356,7 +1368,7 @@ static void DrawTile_Road(TileInfo *ti) Roadside roadside = GetRoadside(ti->tile); - if (AlwaysDrawUnpavedRoads(ti->tile, roadside)) { + if (DrawRoadAsSnowDesert(ti->tile, roadside)) { image += 8; } else { switch (roadside) { @@ -1415,9 +1427,6 @@ void DrawRoadDepotSprite(int x, int y, DiagDirection dir, RoadType rt) PaletteID palette = COMPANY_SPRITE_COLOUR(_local_company); const DrawTileSprites *dts = (rt == ROADTYPE_TRAM) ? &_tram_depot[dir] : &_road_depot[dir]; - x += 33; - y += 17; - DrawSprite(dts->ground.sprite, PAL_NONE, x, y); DrawOrigTileSeqInGUI(x, y, dts, palette); } @@ -1765,6 +1774,11 @@ static void ChangeTileOwner_Road(TileIndex tile, Owner old_owner, Owner new_owne Company::Get(new_owner)->infrastructure.road[rt] += 2; SetTileOwner(tile, new_owner); + for (RoadType rt = ROADTYPE_ROAD; rt < ROADTYPE_END; rt++) { + if (GetRoadOwner(tile, rt) == old_owner) { + SetRoadOwner(tile, rt, new_owner); + } + } } } return; diff --git a/src/road_gui.cpp b/src/road_gui.cpp index c0594e1f80..b158482ef3 100644 --- a/src/road_gui.cpp +++ b/src/road_gui.cpp @@ -28,6 +28,7 @@ #include "company_base.h" #include "hotkeys.h" #include "road_gui.h" +#include "zoom_func.h" #include "widgets/road_widget.h" @@ -337,11 +338,18 @@ struct BuildRoadToolbarWindow : Window { virtual void OnInvalidateData(int data = 0, bool gui_scope = true) { if (!gui_scope) return; - this->SetWidgetsDisabledState(!CanBuildVehicleInfrastructure(VEH_ROAD), + + bool can_build = CanBuildVehicleInfrastructure(VEH_ROAD); + this->SetWidgetsDisabledState(!can_build, WID_ROT_DEPOT, WID_ROT_BUS_STATION, WID_ROT_TRUCK_STATION, WIDGET_LIST_END); + if (!can_build) { + DeleteWindowById(WC_BUILD_DEPOT, TRANSPORT_ROAD); + DeleteWindowById(WC_BUS_STATION, TRANSPORT_ROAD); + DeleteWindowById(WC_TRUCK_STATION, TRANSPORT_ROAD); + } } /** @@ -634,13 +642,13 @@ struct BuildRoadToolbarWindow : Window { case DDSP_REMOVE_BUSSTOP: { TileArea ta(start_tile, end_tile); - DoCommandP(ta.tile, ta.w | ta.h << 8, ROADSTOP_BUS, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_BUS]), CcPlaySound1D); + DoCommandP(ta.tile, ta.w | ta.h << 8, (_ctrl_pressed << 1) | ROADSTOP_BUS, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_BUS]), CcPlaySound1D); break; } case DDSP_REMOVE_TRUCKSTOP: { TileArea ta(start_tile, end_tile); - DoCommandP(ta.tile, ta.w | ta.h << 8, ROADSTOP_TRUCK, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_TRUCK]), CcPlaySound1D); + DoCommandP(ta.tile, ta.w | ta.h << 8, (_ctrl_pressed << 1) | ROADSTOP_TRUCK, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_TRUCK]), CcPlaySound1D); break; } } @@ -840,7 +848,7 @@ static WindowDesc _build_road_scen_desc( /** * Show the road building toolbar in the scenario editor. - * @return The just opened toolbar. + * @return The just opened toolbar, or \c NULL if the toolbar was already open. */ Window *ShowBuildRoadScenToolbar() { @@ -862,11 +870,19 @@ struct BuildRoadDepotWindow : public PickerWindowBase { this->FinishInitNested(TRANSPORT_ROAD); } + virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) + { + if (!IsInsideMM(widget, WID_BROD_DEPOT_NE, WID_BROD_DEPOT_NW + 1)) return; + + size->width = ScaleGUITrad(64) + 2; + size->height = ScaleGUITrad(48) + 2; + } + virtual void DrawWidget(const Rect &r, int widget) const { if (!IsInsideMM(widget, WID_BROD_DEPOT_NE, WID_BROD_DEPOT_NW + 1)) return; - DrawRoadDepotSprite(r.left - 1, r.top, (DiagDirection)(widget - WID_BROD_DEPOT_NE + DIAGDIR_NE), _cur_roadtype); + DrawRoadDepotSprite(r.left + 1 + ScaleGUITrad(31), r.bottom - ScaleGUITrad(31), (DiagDirection)(widget - WID_BROD_DEPOT_NE + DIAGDIR_NE), _cur_roadtype); } virtual void OnClick(Point pt, int widget, int click_count) @@ -990,12 +1006,20 @@ struct BuildRoadStationWindow : public PickerWindowBase { } } + virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) + { + if (!IsInsideMM(widget, WID_BROS_STATION_NE, WID_BROS_STATION_Y + 1)) return; + + size->width = ScaleGUITrad(64) + 2; + size->height = ScaleGUITrad(48) + 2; + } + virtual void DrawWidget(const Rect &r, int widget) const { if (!IsInsideMM(widget, WID_BROS_STATION_NE, WID_BROS_STATION_Y + 1)) return; StationType st = (this->window_class == WC_BUS_STATION) ? STATION_BUS : STATION_TRUCK; - StationPickerDrawSprite(r.left + TILE_PIXELS, r.bottom - TILE_PIXELS, st, INVALID_RAILTYPE, widget < WID_BROS_STATION_X ? ROADTYPE_ROAD : _cur_roadtype, widget - WID_BROS_STATION_NE); + StationPickerDrawSprite(r.left + 1 + ScaleGUITrad(31), r.bottom - ScaleGUITrad(31), st, INVALID_RAILTYPE, widget < WID_BROS_STATION_X ? ROADTYPE_ROAD : _cur_roadtype, widget - WID_BROS_STATION_NE); } virtual void OnClick(Point pt, int widget, int click_count) diff --git a/src/road_map.h b/src/road_map.h index 6fe1a02b1f..693730294e 100644 --- a/src/road_map.h +++ b/src/road_map.h @@ -461,7 +461,7 @@ enum Roadside { */ static inline Roadside GetRoadside(TileIndex tile) { - return (Roadside)GB(_m[tile].m6, 3, 3); + return (Roadside)GB(_me[tile].m6, 3, 3); } /** @@ -471,7 +471,7 @@ static inline Roadside GetRoadside(TileIndex tile) */ static inline void SetRoadside(TileIndex tile, Roadside s) { - SB(_m[tile].m6, 3, 3, s); + SB(_me[tile].m6, 3, 3, s); } /** @@ -558,7 +558,7 @@ static inline void MakeRoadNormal(TileIndex t, RoadBits bits, RoadTypes rot, Tow _m[t].m3 = (HasBit(rot, ROADTYPE_TRAM) ? bits : 0); _m[t].m4 = 0; _m[t].m5 = (HasBit(rot, ROADTYPE_ROAD) ? bits : 0) | ROAD_TILE_NORMAL << 6; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = rot << 6; SetRoadOwner(t, ROADTYPE_TRAM, tram); } @@ -582,7 +582,7 @@ static inline void MakeRoadCrossing(TileIndex t, Owner road, Owner tram, Owner r _m[t].m3 = rat; _m[t].m4 = 0; _m[t].m5 = ROAD_TILE_CROSSING << 6 | roaddir; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = rot << 6 | road; SetRoadOwner(t, ROADTYPE_TRAM, tram); } @@ -603,7 +603,7 @@ static inline void MakeRoadDepot(TileIndex t, Owner owner, DepotID did, DiagDire _m[t].m3 = 0; _m[t].m4 = 0; _m[t].m5 = ROAD_TILE_DEPOT << 6 | dir; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = RoadTypeToRoadTypes(rt) << 6 | owner; SetRoadOwner(t, ROADTYPE_TRAM, owner); } diff --git a/src/roadveh_cmd.cpp b/src/roadveh_cmd.cpp index 8021cce0c0..1c418e5749 100644 --- a/src/roadveh_cmd.cpp +++ b/src/roadveh_cmd.cpp @@ -107,10 +107,10 @@ int RoadVehicle::GetDisplayImageWidth(Point *offset) const int reference_width = ROADVEHINFO_DEFAULT_VEHICLE_WIDTH; if (offset != NULL) { - offset->x = reference_width / 2; + offset->x = ScaleGUITrad(reference_width) / 2; offset->y = 0; } - return this->gcache.cached_veh_length * reference_width / VEHICLE_LENGTH; + return ScaleGUITrad(this->gcache.cached_veh_length * reference_width / VEHICLE_LENGTH); } static SpriteID GetRoadVehIcon(EngineID engine, EngineImageType image_type) @@ -162,7 +162,9 @@ void DrawRoadVehEngine(int left, int right, int preferred_x, int y, EngineID eng { SpriteID sprite = GetRoadVehIcon(engine, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - preferred_x = Clamp(preferred_x, left - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI), right - UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI) - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI)); + preferred_x = Clamp(preferred_x, + left - UnScaleGUI(real_sprite->x_offs), + right - UnScaleGUI(real_sprite->width) - UnScaleGUI(real_sprite->x_offs)); DrawSprite(sprite, pal, preferred_x, y); } @@ -179,10 +181,10 @@ void GetRoadVehSpriteSize(EngineID engine, uint &width, uint &height, int &xoffs { const Sprite *spr = GetSprite(GetRoadVehIcon(engine, image_type), ST_NORMAL); - width = UnScaleByZoom(spr->width, ZOOM_LVL_GUI); - height = UnScaleByZoom(spr->height, ZOOM_LVL_GUI); - xoffs = UnScaleByZoom(spr->x_offs, ZOOM_LVL_GUI); - yoffs = UnScaleByZoom(spr->y_offs, ZOOM_LVL_GUI); + width = UnScaleGUI(spr->width); + height = UnScaleGUI(spr->height); + xoffs = UnScaleGUI(spr->x_offs); + yoffs = UnScaleGUI(spr->y_offs); } /** @@ -329,7 +331,7 @@ CommandCost CmdBuildRoadVehicle(TileIndex tile, DoCommandFlag flags, const Engin /* Initialize cached values for realistic acceleration. */ if (_settings_game.vehicle.roadveh_acceleration_model != AM_ORIGINAL) v->CargoChanged(); - VehicleUpdatePosition(v); + v->UpdatePosition(); CheckConsistencyOfArticulatedVehicle(v); } @@ -806,12 +808,6 @@ static void RoadVehCheckOvertake(RoadVehicle *v, RoadVehicle *u) od.v = v; od.u = u; - if (u->vcache.cached_max_speed >= v->vcache.cached_max_speed && - !(u->vehstatus & VS_STOPPED) && - u->cur_speed != 0) { - return; - } - /* Trams can't overtake other trams */ if (v->roadtype == ROADTYPE_TRAM) return; @@ -827,6 +823,16 @@ static void RoadVehCheckOvertake(RoadVehicle *v, RoadVehicle *u) /* Check if vehicle is in a road stop, depot, tunnel or bridge or not on a straight road */ if (v->state >= RVSB_IN_ROAD_STOP || !IsStraightRoadTrackdir((Trackdir)(v->state & RVSB_TRACKDIR_MASK))) return; + /* Can't overtake a vehicle that is moving faster than us. If the vehicle in front is + * accelerating, take the maximum speed for the comparison, else the current speed. + * Original acceleration always accelerates, so always use the maximum speed. */ + int u_speed = (_settings_game.vehicle.roadveh_acceleration_model == AM_ORIGINAL || u->GetAcceleration() > 0) ? u->GetCurrentMaxSpeed() : u->cur_speed; + if (u_speed >= v->GetCurrentMaxSpeed() && + !(u->vehstatus & VS_STOPPED) && + u->cur_speed != 0) { + return; + } + od.trackdir = DiagDirToDiagTrackdir(DirToDiagDir(v->direction)); /* Are the current and the next tile suitable for overtaking? @@ -847,7 +853,7 @@ static void RoadVehCheckOvertake(RoadVehicle *v, RoadVehicle *u) v->overtaking = RVSB_DRIVE_SIDE; } -static void RoadZPosAffectSpeed(RoadVehicle *v, byte old_z) +static void RoadZPosAffectSpeed(RoadVehicle *v, int old_z) { if (old_z == v->z_pos || _settings_game.vehicle.roadveh_acceleration_model != AM_ORIGINAL) return; @@ -1017,7 +1023,7 @@ static bool RoadVehLeaveDepot(RoadVehicle *v, bool first) v->x_pos = x; v->y_pos = y; - VehicleUpdatePosition(v); + v->UpdatePosition(); v->UpdateInclination(true, true); InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile); @@ -1146,15 +1152,15 @@ bool IndividualRoadVehicleController(RoadVehicle *v, const RoadVehicle *prev) /* Vehicle has just entered a bridge or tunnel */ v->x_pos = gp.x; v->y_pos = gp.y; - VehicleUpdatePosition(v); + v->UpdatePosition(); v->UpdateInclination(true, true); return true; } v->x_pos = gp.x; v->y_pos = gp.y; - VehicleUpdatePosition(v); - if ((v->vehstatus & VS_HIDDEN) == 0) VehicleUpdateViewport(v, true); + v->UpdatePosition(); + if ((v->vehstatus & VS_HIDDEN) == 0) v->Vehicle::UpdateViewport(true); return true; } @@ -1303,7 +1309,7 @@ again: } v->x_pos = x; v->y_pos = y; - VehicleUpdatePosition(v); + v->UpdatePosition(); RoadZPosAffectSpeed(v, v->UpdateInclination(true, true)); return true; } @@ -1369,7 +1375,7 @@ again: v->x_pos = x; v->y_pos = y; - VehicleUpdatePosition(v); + v->UpdatePosition(); RoadZPosAffectSpeed(v, v->UpdateInclination(true, true)); return true; } @@ -1457,7 +1463,7 @@ again: v->frame++; v->x_pos = x; v->y_pos = y; - VehicleUpdatePosition(v); + v->UpdatePosition(); RoadZPosAffectSpeed(v, v->UpdateInclination(true, false)); return true; } @@ -1506,7 +1512,7 @@ again: if (!HasBit(r, VETS_ENTERED_WORMHOLE)) v->frame++; v->x_pos = x; v->y_pos = y; - VehicleUpdatePosition(v); + v->UpdatePosition(); RoadZPosAffectSpeed(v, v->UpdateInclination(false, true)); return true; } diff --git a/src/roadveh_gui.cpp b/src/roadveh_gui.cpp index 7f3e7bbbca..46ff6cea78 100644 --- a/src/roadveh_gui.cpp +++ b/src/roadveh_gui.cpp @@ -15,6 +15,7 @@ #include "strings_func.h" #include "vehicle_func.h" #include "string_func.h" +#include "zoom_func.h" #include "table/strings.h" @@ -30,7 +31,7 @@ */ void DrawRoadVehDetails(const Vehicle *v, int left, int right, int y) { - uint y_offset = v->HasArticulatedPart() ? 15 : 0; // Draw the first line below the sprite of an articulated RV instead of after it. + uint y_offset = v->HasArticulatedPart() ? ScaleGUITrad(15) : 0; // Draw the first line below the sprite of an articulated RV instead of after it. StringID str; Money feeder_share = 0; @@ -136,7 +137,7 @@ void DrawRoadVehImage(const Vehicle *v, int left, int right, int y, VehicleID se DrawPixelInfo tmp_dpi, *old_dpi; int max_width = right - left + 1; - if (!FillDrawPixelInfo(&tmp_dpi, left, y, max_width, 14)) return; + if (!FillDrawPixelInfo(&tmp_dpi, left, y, max_width, ScaleGUITrad(14))) return; old_dpi = _cur_dpi; _cur_dpi = &tmp_dpi; @@ -148,14 +149,14 @@ void DrawRoadVehImage(const Vehicle *v, int left, int right, int y, VehicleID se if (rtl ? px + width > 0 : px - width < max_width) { PaletteID pal = (u->vehstatus & VS_CRASHED) ? PALETTE_CRASH : GetVehiclePalette(u); - DrawSprite(u->GetImage(dir, image_type), pal, px + (rtl ? -offset.x : offset.x), 6 + offset.y); + DrawSprite(u->GetImage(dir, image_type), pal, px + (rtl ? -offset.x : offset.x), ScaleGUITrad(6) + offset.y); } px += rtl ? -width : width; } if (v->index == selection) { - DrawFrameRect((rtl ? px : 0), 0, (rtl ? max_width : px) - 1, 12, COLOUR_WHITE, FR_BORDERONLY); + DrawFrameRect((rtl ? px : 0), 0, (rtl ? max_width : px) - 1, ScaleGUITrad(13) - 1, COLOUR_WHITE, FR_BORDERONLY); } _cur_dpi = old_dpi; diff --git a/src/saveload/afterload.cpp b/src/saveload/afterload.cpp index 8ecd27b49c..9690481154 100644 --- a/src/saveload/afterload.cpp +++ b/src/saveload/afterload.cpp @@ -16,6 +16,7 @@ #include "../fios.h" #include "../gamelog_internal.h" #include "../network/network.h" +#include "../network/network_func.h" #include "../gfxinit.h" #include "../viewport_func.h" #include "../industry.h" @@ -51,7 +52,9 @@ #include "../core/backup_type.hpp" #include "../smallmap_gui.h" #include "../news_func.h" +#include "../order_backup.h" #include "../error.h" +#include "../disaster_vehicle.h" #include "saveload_internal.h" @@ -503,6 +506,18 @@ static uint FixVehicleInclination(Vehicle *v, Direction dir) return 1U << GVF_GOINGUP_BIT; } +/** + * Checks for the possibility that a bridge may be on this tile + * These are in fact all the tile types on which a bridge can be found + * @param t The tile to analyze + * @return True if a bridge might have been present prior to savegame 194. + */ +static inline bool MayHaveBridgeAbove(TileIndex t) +{ + return IsTileType(t, MP_CLEAR) || IsTileType(t, MP_RAILWAY) || IsTileType(t, MP_ROAD) || + IsTileType(t, MP_WATER) || IsTileType(t, MP_TUNNELBRIDGE) || IsTileType(t, MP_OBJECT); +} + /** * Perform a (large) amount of savegame conversion *magic* in order to * load older savegames and to fill the caches for various purposes. @@ -568,6 +583,23 @@ bool AfterLoadGame() } } + if (IsSavegameVersionBefore(194)) { + _settings_game.construction.max_heightlevel = 15; + + /* In old savegame versions, the heightlevel was coded in bits 0..3 of the type field */ + for (TileIndex t = 0; t < map_size; t++) { + _m[t].height = GB(_m[t].type, 0, 4); + SB(_m[t].type, 0, 2, GB(_me[t].m6, 0, 2)); + SB(_me[t].m6, 0, 2, 0); + if (MayHaveBridgeAbove(t)) { + SB(_m[t].type, 2, 2, GB(_me[t].m6, 6, 2)); + SB(_me[t].m6, 6, 2, 0); + } else { + SB(_m[t].type, 2, 2, 0); + } + } + } + /* in version 2.1 of the savegame, town owner was unified. */ if (IsSavegameVersionBefore(2, 1)) ConvertTownOwner(); @@ -793,7 +825,7 @@ bool AfterLoadGame() break; case MP_STATION: { - if (HasBit(_m[t].m6, 3)) SetBit(_m[t].m6, 2); + if (HasBit(_me[t].m6, 3)) SetBit(_me[t].m6, 2); StationGfx gfx = GetStationGfx(t); StationType st; if ( IsInsideMM(gfx, 0, 8)) { // Rail station @@ -831,7 +863,7 @@ bool AfterLoadGame() ResetSignalHandlers(); return false; } - SB(_m[t].m6, 3, 3, st); + SB(_me[t].m6, 3, 3, st); break; } } @@ -1005,7 +1037,7 @@ bool AfterLoadGame() case ROAD_TILE_NORMAL: SB(_m[t].m4, 0, 4, GB(_m[t].m5, 0, 4)); SB(_m[t].m4, 4, 4, 0); - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); break; case ROAD_TILE_CROSSING: SB(_m[t].m4, 5, 2, GB(_m[t].m5, 2, 2)); @@ -1044,19 +1076,19 @@ bool AfterLoadGame() switch (GetRoadTileType(t)) { default: SlErrorCorrupt("Invalid road tile type"); case ROAD_TILE_NORMAL: - SB(_me[t].m7, 0, 4, GB(_m[t].m3, 0, 4)); // road works - SB(_m[t].m6, 3, 3, GB(_m[t].m3, 4, 3)); // ground - SB(_m[t].m3, 0, 4, GB(_m[t].m4, 4, 4)); // tram bits - SB(_m[t].m3, 4, 4, GB(_m[t].m5, 0, 4)); // tram owner - SB(_m[t].m5, 0, 4, GB(_m[t].m4, 0, 4)); // road bits + SB(_me[t].m7, 0, 4, GB(_m[t].m3, 0, 4)); // road works + SB(_me[t].m6, 3, 3, GB(_m[t].m3, 4, 3)); // ground + SB(_m[t].m3, 0, 4, GB(_m[t].m4, 4, 4)); // tram bits + SB(_m[t].m3, 4, 4, GB(_m[t].m5, 0, 4)); // tram owner + SB(_m[t].m5, 0, 4, GB(_m[t].m4, 0, 4)); // road bits break; case ROAD_TILE_CROSSING: - SB(_me[t].m7, 0, 5, GB(_m[t].m4, 0, 5)); // road owner - SB(_m[t].m6, 3, 3, GB(_m[t].m3, 4, 3)); // ground - SB(_m[t].m3, 4, 4, GB(_m[t].m5, 0, 4)); // tram owner - SB(_m[t].m5, 0, 1, GB(_m[t].m4, 6, 1)); // road axis - SB(_m[t].m5, 5, 1, GB(_m[t].m4, 5, 1)); // crossing state + SB(_me[t].m7, 0, 5, GB(_m[t].m4, 0, 5)); // road owner + SB(_me[t].m6, 3, 3, GB(_m[t].m3, 4, 3)); // ground + SB(_m[t].m3, 4, 4, GB(_m[t].m5, 0, 4)); // tram owner + SB(_m[t].m5, 0, 1, GB(_m[t].m4, 6, 1)); // road axis + SB(_m[t].m5, 5, 1, GB(_m[t].m4, 5, 1)); // crossing state break; case ROAD_TILE_DEPOT: @@ -1073,7 +1105,7 @@ bool AfterLoadGame() if (!IsRoadStop(t)) break; if (fix_roadtypes) SetRoadTypes(t, (RoadTypes)GB(_m[t].m3, 0, 3)); - SB(_me[t].m7, 0, 5, HasBit(_m[t].m6, 2) ? OWNER_TOWN : GetTileOwner(t)); + SB(_me[t].m7, 0, 5, HasBit(_me[t].m6, 2) ? OWNER_TOWN : GetTileOwner(t)); SB(_m[t].m3, 4, 4, _m[t].m1); _m[t].m4 = 0; break; @@ -1087,7 +1119,7 @@ bool AfterLoadGame() SB(_me[t].m7, 0, 5, o); // road owner SB(_m[t].m3, 4, 4, o == OWNER_NONE ? OWNER_TOWN : o); // tram owner } - SB(_m[t].m6, 2, 4, GB(_m[t].m2, 4, 4)); // bridge type + SB(_me[t].m6, 2, 4, GB(_m[t].m2, 4, 4)); // bridge type SB(_me[t].m7, 5, 1, GB(_m[t].m4, 7, 1)); // snow/desert _m[t].m2 = 0; @@ -1821,7 +1853,7 @@ bool AfterLoadGame() /* Increase HouseAnimationFrame from 5 to 7 bits */ for (TileIndex t = 0; t < map_size; t++) { if (IsTileType(t, MP_HOUSE) && GetHouseType(t) >= NEW_HOUSE_OFFSET) { - SB(_m[t].m6, 2, 6, GB(_m[t].m6, 3, 5)); + SB(_me[t].m6, 2, 6, GB(_me[t].m6, 3, 5)); SB(_m[t].m3, 5, 1, 0); } } @@ -1978,7 +2010,7 @@ bool AfterLoadGame() /* Reordering/generalisation of the object bits. */ ObjectType type = _m[t].m5; - SB(_m[t].m6, 2, 4, type == OBJECT_HQ ? GB(_m[t].m3, 2, 3) : 0); + SB(_me[t].m6, 2, 4, type == OBJECT_HQ ? GB(_m[t].m3, 2, 3) : 0); _m[t].m3 = type == OBJECT_HQ ? GB(_m[t].m3, 1, 1) | GB(_m[t].m3, 0, 1) << 4 : 0; /* Make sure those bits are clear as well! */ @@ -1999,8 +2031,8 @@ bool AfterLoadGame() uint offset = _m[t].m3; /* Also move the animation state. */ - _m[t].m3 = GB(_m[t].m6, 2, 4); - SB(_m[t].m6, 2, 4, 0); + _m[t].m3 = GB(_me[t].m6, 2, 4); + SB(_me[t].m6, 2, 4, 0); if (offset == 0) { /* No offset, so make the object. */ @@ -2091,7 +2123,7 @@ bool AfterLoadGame() /* Delete small ufos heading for non-existing vehicles */ Vehicle *v; FOR_ALL_DISASTERVEHICLES(v) { - if (v->subtype == 2/*ST_SMALL_UFO*/ && v->current_order.GetDestination() != 0) { + if (v->subtype == 2 /* ST_SMALL_UFO */ && v->current_order.GetDestination() != 0) { const Vehicle *u = Vehicle::GetIfValid(v->dest_tile); if (u == NULL || u->type != VEH_ROAD || !RoadVehicle::From(u)->IsFrontEngine()) { delete v; @@ -2372,7 +2404,10 @@ bool AfterLoadGame() UpdateAircraftCache(v); AircraftNextAirportPos_and_Order(v); /* get aircraft back on running altitude */ - if ((v->vehstatus & VS_CRASHED) == 0) SetAircraftPosition(v, v->x_pos, v->y_pos, GetAircraftFlyingAltitude(v)); + if ((v->vehstatus & VS_CRASHED) == 0) { + GetAircraftFlightLevelBounds(v, &v->z_pos, NULL); + SetAircraftPosition(v, v->x_pos, v->y_pos, GetAircraftFlightLevel(v)); + } } } } @@ -2384,9 +2419,9 @@ bool AfterLoadGame() case MP_HOUSE: if (GetHouseType(t) >= NEW_HOUSE_OFFSET) { uint per_proc = _me[t].m7; - _me[t].m7 = GB(_m[t].m6, 2, 6) | (GB(_m[t].m3, 5, 1) << 6); + _me[t].m7 = GB(_me[t].m6, 2, 6) | (GB(_m[t].m3, 5, 1) << 6); SB(_m[t].m3, 5, 1, 0); - SB(_m[t].m6, 2, 6, min(per_proc, 63)); + SB(_me[t].m6, 2, 6, min(per_proc, 63)); } break; @@ -2916,6 +2951,23 @@ bool AfterLoadGame() } } + /* + * Only keep order-backups for network clients (and when replaying). + * If we are a network server or not networking, then we just loaded a previously + * saved-by-server savegame. There are no clients with a backup, so clear it. + * Furthermore before savegame version 192 the actual content was always corrupt. + */ + if (!_networking || _network_server || IsSavegameVersionBefore(192)) { +#ifndef DEBUG_DUMP_COMMANDS + /* Note: We cannot use CleanPool since that skips part of the destructor + * and then leaks un-reachable Orders in the order pool. */ + OrderBackup *ob; + FOR_ALL_ORDER_BACKUPS(ob) { + delete ob; + } +#endif + } + /* Station acceptance is some kind of cache */ if (IsSavegameVersionBefore(127)) { diff --git a/src/saveload/engine_sl.cpp b/src/saveload/engine_sl.cpp index 07bad4606d..a568fead7b 100644 --- a/src/saveload/engine_sl.cpp +++ b/src/saveload/engine_sl.cpp @@ -13,7 +13,7 @@ #include "saveload_internal.h" #include "../engine_base.h" #include "../string_func.h" -#include +#include #include "../safeguards.h" @@ -40,6 +40,7 @@ static const SaveLoad _engine_desc[] = { SLE_CONDNULL(1, 0, 44), SLE_CONDVAR(Engine, company_avail, SLE_FILE_U8 | SLE_VAR_U16, 0, 103), SLE_CONDVAR(Engine, company_avail, SLE_UINT16, 104, SL_MAX_VERSION), + SLE_CONDVAR(Engine, company_hidden, SLE_UINT16, 193, SL_MAX_VERSION), SLE_CONDSTR(Engine, name, SLE_STR, 0, 84, SL_MAX_VERSION), SLE_CONDNULL(16, 2, 143), // old reserved space @@ -47,11 +48,42 @@ static const SaveLoad _engine_desc[] = { SLE_END() }; -static std::map _temp_engine; +static std::vector _temp_engine; + +/** + * Allocate an Engine structure, but not using the pools. + * The allocated Engine must be freed using FreeEngine; + * @return Allocated engine. + */ +static Engine* CallocEngine() +{ + uint8 *zero = CallocT(sizeof(Engine)); + Engine *engine = new (zero) Engine(); + return engine; +} + +/** + * Deallocate an Engine constructed by CallocEngine. + * @param e Engine to free. + */ +static void FreeEngine(Engine *e) +{ + if (e != NULL) { + e->~Engine(); + free(e); + } +} Engine *GetTempDataEngine(EngineID index) { - return &_temp_engine[index]; + if (index < _temp_engine.size()) { + return _temp_engine[index]; + } else if (index == _temp_engine.size()) { + _temp_engine.push_back(CallocEngine()); + return _temp_engine[index]; + } else { + NOT_REACHED(); + } } static void Save_ENGN() @@ -108,10 +140,14 @@ void CopyTempEngineData() e->preview_company = se->preview_company; e->preview_wait = se->preview_wait; e->company_avail = se->company_avail; + e->company_hidden = se->company_hidden; if (se->name != NULL) e->name = stredup(se->name); } /* Get rid of temporary data */ + for (std::vector::iterator it = _temp_engine.begin(); it != _temp_engine.end(); ++it) { + FreeEngine(*it); + } _temp_engine.clear(); } diff --git a/src/saveload/game_sl.cpp b/src/saveload/game_sl.cpp index a3273114c7..325ae1c9d4 100644 --- a/src/saveload/game_sl.cpp +++ b/src/saveload/game_sl.cpp @@ -78,22 +78,22 @@ static void Load_GSDT() config->Change(_game_saveload_name, _game_saveload_version, false, _game_saveload_is_random); if (!config->HasScript()) { /* No version of the GameScript available that can load the data. Try to load the - * latest version of the GameScript instead. */ + * latest version of the GameScript instead. */ config->Change(_game_saveload_name, -1, false, _game_saveload_is_random); if (!config->HasScript()) { if (strcmp(_game_saveload_name, "%_dummy") != 0) { DEBUG(script, 0, "The savegame has an GameScript by the name '%s', version %d which is no longer available.", _game_saveload_name, _game_saveload_version); - DEBUG(script, 0, "This game wil continue to run without GameScript."); + DEBUG(script, 0, "This game will continue to run without GameScript."); } else { DEBUG(script, 0, "The savegame had no GameScript available at the time of saving."); - DEBUG(script, 0, "This game wil continue to run without GameScript."); + DEBUG(script, 0, "This game will continue to run without GameScript."); } } else { DEBUG(script, 0, "The savegame has an GameScript by the name '%s', version %d which is no longer available.", _game_saveload_name, _game_saveload_version); DEBUG(script, 0, "The latest version of that GameScript has been loaded instead, but it'll not get the savegame data as it's incompatible."); } /* Make sure the GameScript doesn't get the saveload data, as he was not the - * writer of the saveload data in the first place */ + * writer of the saveload data in the first place */ _game_saveload_version = -1; } } diff --git a/src/saveload/industry_sl.cpp b/src/saveload/industry_sl.cpp index 658cfd2bdd..c5ddadfdd0 100644 --- a/src/saveload/industry_sl.cpp +++ b/src/saveload/industry_sl.cpp @@ -160,14 +160,14 @@ static void Save_ITBL() /** Load industry-type build data. */ static void Load_ITBL() { - int index; - for (int i = 0; i < NUM_INDUSTRYTYPES; i++) { - index = SlIterateArray(); - assert(index == i); - SlObject(_industry_builder.builddata + i, _industrytype_builder_desc); + for (IndustryType it = 0; it < NUM_INDUSTRYTYPES; it++) { + _industry_builder.builddata[it].Reset(); + } + int index; + while ((index = SlIterateArray()) != -1) { + if ((uint)index >= NUM_INDUSTRYTYPES) SlErrorCorrupt("Too many industry builder datas"); + SlObject(_industry_builder.builddata + index, _industrytype_builder_desc); } - index = SlIterateArray(); - assert(index == -1); } extern const ChunkHandler _industry_chunk_handlers[] = { diff --git a/src/saveload/linkgraph_sl.cpp b/src/saveload/linkgraph_sl.cpp index 20a3f44982..a65f4fc8a5 100644 --- a/src/saveload/linkgraph_sl.cpp +++ b/src/saveload/linkgraph_sl.cpp @@ -220,7 +220,7 @@ static void Load_LGRJ() */ static void Load_LGRS() { - SlObject(LinkGraphSchedule::Instance(), GetLinkGraphScheduleDesc()); + SlObject(&LinkGraphSchedule::instance, GetLinkGraphScheduleDesc()); } /** @@ -246,7 +246,7 @@ void AfterLoadLinkGraphs() } } - LinkGraphSchedule::Instance()->SpawnAll(); + LinkGraphSchedule::instance.SpawnAll(); } /** @@ -278,7 +278,7 @@ static void Save_LGRJ() */ static void Save_LGRS() { - SlObject(LinkGraphSchedule::Instance(), GetLinkGraphScheduleDesc()); + SlObject(&LinkGraphSchedule::instance, GetLinkGraphScheduleDesc()); } /** @@ -286,7 +286,7 @@ static void Save_LGRS() */ static void Ptrs_LGRS() { - SlObject(LinkGraphSchedule::Instance(), GetLinkGraphScheduleDesc()); + SlObject(&LinkGraphSchedule::instance, GetLinkGraphScheduleDesc()); } extern const ChunkHandler _linkgraph_chunk_handlers[] = { diff --git a/src/saveload/map_sl.cpp b/src/saveload/map_sl.cpp index 007af7bc60..86a185ca42 100644 --- a/src/saveload/map_sl.cpp +++ b/src/saveload/map_sl.cpp @@ -56,7 +56,7 @@ static void Load_MAPT() for (TileIndex i = 0; i != size;) { SlArray(buf, MAP_SL_BUF_SIZE, SLE_UINT8); - for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) _m[i++].type_height = buf[j]; + for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) _m[i++].type = buf[j]; } } @@ -67,7 +67,30 @@ static void Save_MAPT() SlSetLength(size); for (TileIndex i = 0; i != size;) { - for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) buf[j] = _m[i++].type_height; + for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) buf[j] = _m[i++].type; + SlArray(buf, MAP_SL_BUF_SIZE, SLE_UINT8); + } +} + +static void Load_MAPH() +{ + SmallStackSafeStackAlloc buf; + TileIndex size = MapSize(); + + for (TileIndex i = 0; i != size;) { + SlArray(buf, MAP_SL_BUF_SIZE, SLE_UINT8); + for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) _m[i++].height = buf[j]; + } +} + +static void Save_MAPH() +{ + SmallStackSafeStackAlloc buf; + TileIndex size = MapSize(); + + SlSetLength(size); + for (TileIndex i = 0; i != size;) { + for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) buf[j] = _m[i++].height; SlArray(buf, MAP_SL_BUF_SIZE, SLE_UINT8); } } @@ -200,16 +223,16 @@ static void Load_MAP6() /* 1024, otherwise we overflow on 64x64 maps! */ SlArray(buf, 1024, SLE_UINT8); for (uint j = 0; j != 1024; j++) { - _m[i++].m6 = GB(buf[j], 0, 2); - _m[i++].m6 = GB(buf[j], 2, 2); - _m[i++].m6 = GB(buf[j], 4, 2); - _m[i++].m6 = GB(buf[j], 6, 2); + _me[i++].m6 = GB(buf[j], 0, 2); + _me[i++].m6 = GB(buf[j], 2, 2); + _me[i++].m6 = GB(buf[j], 4, 2); + _me[i++].m6 = GB(buf[j], 6, 2); } } } else { for (TileIndex i = 0; i != size;) { SlArray(buf, MAP_SL_BUF_SIZE, SLE_UINT8); - for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) _m[i++].m6 = buf[j]; + for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) _me[i++].m6 = buf[j]; } } } @@ -221,7 +244,7 @@ static void Save_MAP6() SlSetLength(size); for (TileIndex i = 0; i != size;) { - for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) buf[j] = _m[i++].m6; + for (uint j = 0; j != MAP_SL_BUF_SIZE; j++) buf[j] = _me[i++].m6; SlArray(buf, MAP_SL_BUF_SIZE, SLE_UINT8); } } @@ -252,6 +275,7 @@ static void Save_MAP7() extern const ChunkHandler _map_chunk_handlers[] = { { 'MAPS', Save_MAPS, Load_MAPS, NULL, Check_MAPS, CH_RIFF }, { 'MAPT', Save_MAPT, Load_MAPT, NULL, NULL, CH_RIFF }, + { 'MAPH', Save_MAPH, Load_MAPH, NULL, NULL, CH_RIFF }, { 'MAPO', Save_MAP1, Load_MAP1, NULL, NULL, CH_RIFF }, { 'MAP2', Save_MAP2, Load_MAP2, NULL, NULL, CH_RIFF }, { 'M3LO', Save_MAP3, Load_MAP3, NULL, NULL, CH_RIFF }, diff --git a/src/saveload/newgrf_sl.cpp b/src/saveload/newgrf_sl.cpp index cdfd0f317a..dacc127ea0 100644 --- a/src/saveload/newgrf_sl.cpp +++ b/src/saveload/newgrf_sl.cpp @@ -51,7 +51,7 @@ void Load_NewGRFMapping(OverrideManagerBase &mapping) int index; while ((index = SlIterateArray()) != -1) { - if ((uint)index >= max_id) break; + if ((uint)index >= max_id) SlErrorCorrupt("Too many NewGRF entity mappings"); SlObject(&mapping.mapping_ID[index], _newgrf_mapping_desc); } } diff --git a/src/saveload/oldloader_sl.cpp b/src/saveload/oldloader_sl.cpp index d3c63d951b..4afbe6033d 100644 --- a/src/saveload/oldloader_sl.cpp +++ b/src/saveload/oldloader_sl.cpp @@ -27,6 +27,7 @@ #include "../effectvehicle_base.h" #include "../engine_func.h" #include "../company_base.h" +#include "../disaster_vehicle.h" #include "saveload_internal.h" #include "oldloader.h" @@ -1494,10 +1495,10 @@ static bool LoadOldMapPart1(LoadgameState *ls, int num) } for (uint i = 0; i < OLD_MAP_SIZE / 4; i++) { byte b = ReadByte(ls); - _m[i * 4 + 0].m6 = GB(b, 0, 2); - _m[i * 4 + 1].m6 = GB(b, 2, 2); - _m[i * 4 + 2].m6 = GB(b, 4, 2); - _m[i * 4 + 3].m6 = GB(b, 6, 2); + _me[i * 4 + 0].m6 = GB(b, 0, 2); + _me[i * 4 + 1].m6 = GB(b, 2, 2); + _me[i * 4 + 2].m6 = GB(b, 4, 2); + _me[i * 4 + 3].m6 = GB(b, 6, 2); } } @@ -1509,7 +1510,7 @@ static bool LoadOldMapPart2(LoadgameState *ls, int num) uint i; for (i = 0; i < OLD_MAP_SIZE; i++) { - _m[i].type_height = ReadByte(ls); + _m[i].type = ReadByte(ls); } for (i = 0; i < OLD_MAP_SIZE; i++) { _m[i].m5 = ReadByte(ls); diff --git a/src/saveload/order_sl.cpp b/src/saveload/order_sl.cpp index d939742346..d55d577cb6 100644 --- a/src/saveload/order_sl.cpp +++ b/src/saveload/order_sl.cpp @@ -295,15 +295,6 @@ void Load_BKOR() OrderBackup *ob = new (index) OrderBackup(); SlObject(ob, GetOrderBackupDescription()); } - - /* Only load order-backups for network clients. - * If we are a network server or not networking, then we just loaded a previously - * saved-by-server savegame. There are no clients with a backup, so clear it. - * Furthermore before savegame version 192 the actual content was always corrupt. - */ - if (!_networking || _network_server || IsSavegameVersionBefore(192)) { - _order_backup_pool.CleanPool(); - } } static void Ptrs_BKOR() diff --git a/src/saveload/saveload.cpp b/src/saveload/saveload.cpp index 411b0e7a85..bd3c83d139 100644 --- a/src/saveload/saveload.cpp +++ b/src/saveload/saveload.cpp @@ -260,8 +260,10 @@ * 190 26547 * 191 26646 * 192 26700 + * 193 26802 + * 194 26881 1.5.x */ -extern const uint16 SAVEGAME_VERSION = 192; ///< Current savegame version of OpenTTD. +extern const uint16 SAVEGAME_VERSION = 194; ///< Current savegame version of OpenTTD. SavegameType _savegame_type; ///< type of savegame we are loading @@ -1665,9 +1667,11 @@ static void SlLoadChunk(const ChunkHandler *ch) case CH_ARRAY: _sl.array_index = 0; ch->load_proc(); + if (_next_offs != 0) SlErrorCorrupt("Invalid array length"); break; case CH_SPARSE_ARRAY: ch->load_proc(); + if (_next_offs != 0) SlErrorCorrupt("Invalid array length"); break; default: if ((m & 0xF) == CH_RIFF) { @@ -2788,9 +2792,9 @@ SaveOrLoadResult SaveOrLoad(const char *filename, int mode, Subdirectory sb, boo InitializeGame(256, 256, true, true); // set a mapsize of 256x256 for TTDPatch games or it might get confused /* TTD/TTO savegames have no NewGRFs, TTDP savegame have them - * and if so a new NewGRF list will be made in LoadOldSaveGame. - * Note: this is done here because AfterLoadGame is also called - * for OTTD savegames which have their own NewGRF logic. */ + * and if so a new NewGRF list will be made in LoadOldSaveGame. + * Note: this is done here because AfterLoadGame is also called + * for OTTD savegames which have their own NewGRF logic. */ ClearGRFConfigList(&_grfconfig); GamelogReset(); if (!LoadOldSaveGame(filename)) return SL_REINIT; diff --git a/src/saveload/station_sl.cpp b/src/saveload/station_sl.cpp index a6de95dd01..3db5e1f5f8 100644 --- a/src/saveload/station_sl.cpp +++ b/src/saveload/station_sl.cpp @@ -95,7 +95,7 @@ void MoveBuoysToWaypoints() TILE_AREA_LOOP(t, train_st) { if (!IsTileType(t, MP_STATION) || GetStationIndex(t) != index) continue; - SB(_m[t].m6, 3, 3, STATION_WAYPOINT); + SB(_me[t].m6, 3, 3, STATION_WAYPOINT); wp->rect.BeforeAddTile(t, StationRect::ADD_FORCE); } @@ -541,7 +541,7 @@ static void Load_STNN() for (uint32 j = 0; j < _num_flows; ++j) { SlObject(&flow, _flow_desc); if (fs == NULL || prev_source != flow.source) { - fs = &(st->goods[i].flows.insert(std::make_pair(flow.source, FlowStat(flow.via, flow.share))).first->second); + fs = &(st->goods[i].flows.insert(std::make_pair(flow.source, FlowStat(flow.via, flow.share, flow.restricted))).first->second); } else { fs->AppendShare(flow.via, flow.share, flow.restricted); } diff --git a/src/saveload/vehicle_sl.cpp b/src/saveload/vehicle_sl.cpp index 453210baaa..ebc5fc4215 100644 --- a/src/saveload/vehicle_sl.cpp +++ b/src/saveload/vehicle_sl.cpp @@ -19,6 +19,7 @@ #include "../effectvehicle_base.h" #include "../company_base.h" #include "../company_func.h" +#include "../disaster_vehicle.h" #include "saveload.h" @@ -199,7 +200,8 @@ void UpdateOldAircraft() if (a->subtype == AIR_HELICOPTER) a->Next()->Next()->cur_speed = 32; /* set new position x,y,z */ - SetAircraftPosition(a, gp.x, gp.y, GetAircraftFlyingAltitude(a)); + GetAircraftFlightLevelBounds(a, &a->z_pos, NULL); + SetAircraftPosition(a, gp.x, gp.y, GetAircraftFlightLevel(a)); } } } @@ -459,8 +461,8 @@ void AfterLoadVehicles(bool part_of_load) v->UpdateDeltaXY(v->direction); v->coord.left = INVALID_COORD; - VehicleUpdatePosition(v); - VehicleUpdateViewport(v, false); + v->UpdatePosition(); + v->UpdateViewport(false); } } @@ -843,6 +845,7 @@ const SaveLoad *GetVehicleDescription(VehicleType vt) SLE_CONDVAR(DisasterVehicle, image_override, SLE_UINT32, 191, SL_MAX_VERSION), SLE_CONDVAR(DisasterVehicle, big_ufo_destroyer_target, SLE_FILE_U16 | SLE_VAR_U32, 0, 190), SLE_CONDVAR(DisasterVehicle, big_ufo_destroyer_target, SLE_UINT32, 191, SL_MAX_VERSION), + SLE_CONDVAR(DisasterVehicle, flags, SLE_UINT8, 194, SL_MAX_VERSION), SLE_CONDNULL(16, 2, 143), // old reserved space diff --git a/src/screenshot.cpp b/src/screenshot.cpp index 4921378f8e..a24cc6b211 100644 --- a/src/screenshot.cpp +++ b/src/screenshot.cpp @@ -783,7 +783,7 @@ static void HeightmapCallback(void *userdata, void *buffer, uint y, uint pitch, while (n > 0) { TileIndex ti = TileXY(MapMaxX(), y); for (uint x = MapMaxX(); true; x--) { - *buf = 16 * TileHeight(ti); + *buf = 256 * TileHeight(ti) / (1 + _settings_game.construction.max_heightlevel); buf++; if (x == 0) break; ti = TILE_ADDXY(ti, -1, 0); diff --git a/src/script/api/ai/ai_list.hpp.sq b/src/script/api/ai/ai_list.hpp.sq index db724da831..201113823d 100644 --- a/src/script/api/ai/ai_list.hpp.sq +++ b/src/script/api/ai/ai_list.hpp.sq @@ -40,6 +40,7 @@ void SQAIList_Register(Squirrel *engine) SQAIList.DefSQMethod(engine, &ScriptList::SetValue, "SetValue", 3, "xii"); SQAIList.DefSQMethod(engine, &ScriptList::Sort, "Sort", 3, "xib"); SQAIList.DefSQMethod(engine, &ScriptList::AddList, "AddList", 2, "xx"); + SQAIList.DefSQMethod(engine, &ScriptList::SwapList, "SwapList", 2, "xx"); SQAIList.DefSQMethod(engine, &ScriptList::RemoveAboveValue, "RemoveAboveValue", 2, "xi"); SQAIList.DefSQMethod(engine, &ScriptList::RemoveBelowValue, "RemoveBelowValue", 2, "xi"); SQAIList.DefSQMethod(engine, &ScriptList::RemoveBetweenValue, "RemoveBetweenValue", 3, "xii"); diff --git a/src/script/api/ai/ai_station.hpp.sq b/src/script/api/ai/ai_station.hpp.sq index 6f2b6e741e..af7012d354 100644 --- a/src/script/api/ai/ai_station.hpp.sq +++ b/src/script/api/ai/ai_station.hpp.sq @@ -50,6 +50,10 @@ void SQAIStation_Register(Squirrel *engine) SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoWaitingFrom, "GetCargoWaitingFrom", 4, ".iii"); SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoWaitingVia, "GetCargoWaitingVia", 4, ".iii"); SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoWaitingFromVia, "GetCargoWaitingFromVia", 5, ".iiii"); + SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlanned, "GetCargoPlanned", 3, ".ii"); + SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlannedFrom, "GetCargoPlannedFrom", 4, ".iii"); + SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlannedVia, "GetCargoPlannedVia", 4, ".iii"); + SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlannedFromVia, "GetCargoPlannedFromVia", 5, ".iiii"); SQAIStation.DefSQStaticMethod(engine, &ScriptStation::HasCargoRating, "HasCargoRating", 3, ".ii"); SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoRating, "GetCargoRating", 3, ".ii"); SQAIStation.DefSQStaticMethod(engine, &ScriptStation::GetCoverageRadius, "GetCoverageRadius", 2, ".i"); diff --git a/src/script/api/ai/ai_stationlist.hpp.sq b/src/script/api/ai/ai_stationlist.hpp.sq index 998e89cc1e..93a8c6e767 100644 --- a/src/script/api/ai/ai_stationlist.hpp.sq +++ b/src/script/api/ai/ai_stationlist.hpp.sq @@ -25,6 +25,145 @@ void SQAIStationList_Register(Squirrel *engine) } +template <> const char *GetClassName() { return "AIStationList_Cargo"; } + +void SQAIStationList_Cargo_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_Cargo("AIStationList_Cargo"); + SQAIStationList_Cargo.PreRegister(engine, "AIList"); + SQAIStationList_Cargo.AddConstructor(engine, "xiiiii"); + + SQAIStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_BY_FROM, "CS_BY_FROM"); + SQAIStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_VIA_BY_FROM, "CS_VIA_BY_FROM"); + SQAIStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_BY_VIA, "CS_BY_VIA"); + SQAIStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_FROM_BY_VIA, "CS_FROM_BY_VIA"); + SQAIStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CM_WAITING, "CM_WAITING"); + SQAIStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CM_PLANNED, "CM_PLANNED"); + + SQAIStationList_Cargo.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoWaiting"; } + +void SQAIStationList_CargoWaiting_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoWaiting("AIStationList_CargoWaiting"); + SQAIStationList_CargoWaiting.PreRegister(engine, "AIStationList_Cargo"); + SQAIStationList_CargoWaiting.AddConstructor(engine, "xiiii"); + + SQAIStationList_CargoWaiting.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoPlanned"; } + +void SQAIStationList_CargoPlanned_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoPlanned("AIStationList_CargoPlanned"); + SQAIStationList_CargoPlanned.PreRegister(engine, "AIStationList_Cargo"); + SQAIStationList_CargoPlanned.AddConstructor(engine, "xiiii"); + + SQAIStationList_CargoPlanned.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoWaitingByFrom"; } + +void SQAIStationList_CargoWaitingByFrom_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoWaitingByFrom("AIStationList_CargoWaitingByFrom"); + SQAIStationList_CargoWaitingByFrom.PreRegister(engine, "AIStationList_CargoWaiting"); + SQAIStationList_CargoWaitingByFrom.AddConstructor(engine, "xii"); + + SQAIStationList_CargoWaitingByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoWaitingViaByFrom"; } + +void SQAIStationList_CargoWaitingViaByFrom_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoWaitingViaByFrom("AIStationList_CargoWaitingViaByFrom"); + SQAIStationList_CargoWaitingViaByFrom.PreRegister(engine, "AIStationList_CargoWaiting"); + SQAIStationList_CargoWaitingViaByFrom.AddConstructor(engine, "xiii"); + + SQAIStationList_CargoWaitingViaByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoWaitingByVia"; } + +void SQAIStationList_CargoWaitingByVia_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoWaitingByVia("AIStationList_CargoWaitingByVia"); + SQAIStationList_CargoWaitingByVia.PreRegister(engine, "AIStationList_CargoWaiting"); + SQAIStationList_CargoWaitingByVia.AddConstructor(engine, "xii"); + + SQAIStationList_CargoWaitingByVia.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoWaitingFromByVia"; } + +void SQAIStationList_CargoWaitingFromByVia_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoWaitingFromByVia("AIStationList_CargoWaitingFromByVia"); + SQAIStationList_CargoWaitingFromByVia.PreRegister(engine, "AIStationList_CargoWaiting"); + SQAIStationList_CargoWaitingFromByVia.AddConstructor(engine, "xiii"); + + SQAIStationList_CargoWaitingFromByVia.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoPlannedByFrom"; } + +void SQAIStationList_CargoPlannedByFrom_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoPlannedByFrom("AIStationList_CargoPlannedByFrom"); + SQAIStationList_CargoPlannedByFrom.PreRegister(engine, "AIStationList_CargoPlanned"); + SQAIStationList_CargoPlannedByFrom.AddConstructor(engine, "xii"); + + SQAIStationList_CargoPlannedByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoPlannedViaByFrom"; } + +void SQAIStationList_CargoPlannedViaByFrom_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoPlannedViaByFrom("AIStationList_CargoPlannedViaByFrom"); + SQAIStationList_CargoPlannedViaByFrom.PreRegister(engine, "AIStationList_CargoPlanned"); + SQAIStationList_CargoPlannedViaByFrom.AddConstructor(engine, "xiii"); + + SQAIStationList_CargoPlannedViaByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoPlannedByVia"; } + +void SQAIStationList_CargoPlannedByVia_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoPlannedByVia("AIStationList_CargoPlannedByVia"); + SQAIStationList_CargoPlannedByVia.PreRegister(engine, "AIStationList_CargoPlanned"); + SQAIStationList_CargoPlannedByVia.AddConstructor(engine, "xii"); + + SQAIStationList_CargoPlannedByVia.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "AIStationList_CargoPlannedFromByVia"; } + +void SQAIStationList_CargoPlannedFromByVia_Register(Squirrel *engine) +{ + DefSQClass SQAIStationList_CargoPlannedFromByVia("AIStationList_CargoPlannedFromByVia"); + SQAIStationList_CargoPlannedFromByVia.PreRegister(engine, "AIStationList_CargoPlanned"); + SQAIStationList_CargoPlannedFromByVia.AddConstructor(engine, "xiii"); + + SQAIStationList_CargoPlannedFromByVia.PostRegister(engine); +} + + template <> const char *GetClassName() { return "AIStationList_Vehicle"; } void SQAIStationList_Vehicle_Register(Squirrel *engine) diff --git a/src/script/api/ai_changelog.hpp b/src/script/api/ai_changelog.hpp index 92893c2697..0cf57fe0ff 100644 --- a/src/script/api/ai_changelog.hpp +++ b/src/script/api/ai_changelog.hpp @@ -15,12 +15,43 @@ * functions may still be available if you return an older API version * in GetAPIVersion() in info.nut. * + * \b 1.6.0 + * + * 1.6.0 is not yet released. The following changes are not set in stone yet. + * * \b 1.5.0 * - * 1.5.0 is not yet released. The following changes are not set in stone yet. - * * API additions: + * \li AIList::SwapList + * \li AIStation::GetCargoPlanned + * \li AIStation::GetCargoPlannedFrom + * \li AIStation::GetCargoPlannedFromVia + * \li AIStation::GetCargoPlannedVia * \li AIStation::GetCargoWaitingFromVia + * \li AIStationList_CargoPlannedByFrom + * \li AIStationList_CargoPlannedByVia + * \li AIStationList_CargoPlannedFromByVia + * \li AIStationList_CargoPlannedViaByFrom + * \li AIStationList_CargoWaitingByFrom + * \li AIStationList_CargoWaitingByVia + * \li AIStationList_CargoWaitingFromByVia + * \li AIStationList_CargoWaitingViaByFrom + * + * \b 1.4.4 + * + * No changes + * + * \b 1.4.3 + * + * No changes + * + * \b 1.4.2 + * + * No changes + * + * \b 1.4.1 + * + * No changes * * \b 1.4.0 * diff --git a/src/script/api/game/game_list.hpp.sq b/src/script/api/game/game_list.hpp.sq index 03049b314f..a46696def5 100644 --- a/src/script/api/game/game_list.hpp.sq +++ b/src/script/api/game/game_list.hpp.sq @@ -40,6 +40,7 @@ void SQGSList_Register(Squirrel *engine) SQGSList.DefSQMethod(engine, &ScriptList::SetValue, "SetValue", 3, "xii"); SQGSList.DefSQMethod(engine, &ScriptList::Sort, "Sort", 3, "xib"); SQGSList.DefSQMethod(engine, &ScriptList::AddList, "AddList", 2, "xx"); + SQGSList.DefSQMethod(engine, &ScriptList::SwapList, "SwapList", 2, "xx"); SQGSList.DefSQMethod(engine, &ScriptList::RemoveAboveValue, "RemoveAboveValue", 2, "xi"); SQGSList.DefSQMethod(engine, &ScriptList::RemoveBelowValue, "RemoveBelowValue", 2, "xi"); SQGSList.DefSQMethod(engine, &ScriptList::RemoveBetweenValue, "RemoveBetweenValue", 3, "xii"); diff --git a/src/script/api/game/game_news.hpp.sq b/src/script/api/game/game_news.hpp.sq index 70416f6b7c..3d7022e10e 100644 --- a/src/script/api/game/game_news.hpp.sq +++ b/src/script/api/game/game_news.hpp.sq @@ -28,8 +28,13 @@ void SQGSNews_Register(Squirrel *engine) SQGSNews.DefSQConst(engine, ScriptNews::NT_ACCEPTANCE, "NT_ACCEPTANCE"); SQGSNews.DefSQConst(engine, ScriptNews::NT_SUBSIDIES, "NT_SUBSIDIES"); SQGSNews.DefSQConst(engine, ScriptNews::NT_GENERAL, "NT_GENERAL"); + SQGSNews.DefSQConst(engine, ScriptNews::NR_NONE, "NR_NONE"); + SQGSNews.DefSQConst(engine, ScriptNews::NR_TILE, "NR_TILE"); + SQGSNews.DefSQConst(engine, ScriptNews::NR_STATION, "NR_STATION"); + SQGSNews.DefSQConst(engine, ScriptNews::NR_INDUSTRY, "NR_INDUSTRY"); + SQGSNews.DefSQConst(engine, ScriptNews::NR_TOWN, "NR_TOWN"); - SQGSNews.DefSQStaticMethod(engine, &ScriptNews::Create, "Create", 4, ".i.i"); + SQGSNews.DefSQStaticMethod(engine, &ScriptNews::Create, "Create", 6, ".i.iii"); SQGSNews.PostRegister(engine); } diff --git a/src/script/api/game/game_station.hpp.sq b/src/script/api/game/game_station.hpp.sq index 263ad6ba76..e3a7425caa 100644 --- a/src/script/api/game/game_station.hpp.sq +++ b/src/script/api/game/game_station.hpp.sq @@ -51,6 +51,10 @@ void SQGSStation_Register(Squirrel *engine) SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoWaitingFrom, "GetCargoWaitingFrom", 4, ".iii"); SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoWaitingVia, "GetCargoWaitingVia", 4, ".iii"); SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoWaitingFromVia, "GetCargoWaitingFromVia", 5, ".iiii"); + SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlanned, "GetCargoPlanned", 3, ".ii"); + SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlannedFrom, "GetCargoPlannedFrom", 4, ".iii"); + SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlannedVia, "GetCargoPlannedVia", 4, ".iii"); + SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoPlannedFromVia, "GetCargoPlannedFromVia", 5, ".iiii"); SQGSStation.DefSQStaticMethod(engine, &ScriptStation::HasCargoRating, "HasCargoRating", 3, ".ii"); SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCargoRating, "GetCargoRating", 3, ".ii"); SQGSStation.DefSQStaticMethod(engine, &ScriptStation::GetCoverageRadius, "GetCoverageRadius", 2, ".i"); diff --git a/src/script/api/game/game_stationlist.hpp.sq b/src/script/api/game/game_stationlist.hpp.sq index 65138964ff..a3cdfaa967 100644 --- a/src/script/api/game/game_stationlist.hpp.sq +++ b/src/script/api/game/game_stationlist.hpp.sq @@ -25,6 +25,145 @@ void SQGSStationList_Register(Squirrel *engine) } +template <> const char *GetClassName() { return "GSStationList_Cargo"; } + +void SQGSStationList_Cargo_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_Cargo("GSStationList_Cargo"); + SQGSStationList_Cargo.PreRegister(engine, "GSList"); + SQGSStationList_Cargo.AddConstructor(engine, "xiiiii"); + + SQGSStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_BY_FROM, "CS_BY_FROM"); + SQGSStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_VIA_BY_FROM, "CS_VIA_BY_FROM"); + SQGSStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_BY_VIA, "CS_BY_VIA"); + SQGSStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CS_FROM_BY_VIA, "CS_FROM_BY_VIA"); + SQGSStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CM_WAITING, "CM_WAITING"); + SQGSStationList_Cargo.DefSQConst(engine, ScriptStationList_Cargo::CM_PLANNED, "CM_PLANNED"); + + SQGSStationList_Cargo.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoWaiting"; } + +void SQGSStationList_CargoWaiting_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoWaiting("GSStationList_CargoWaiting"); + SQGSStationList_CargoWaiting.PreRegister(engine, "GSStationList_Cargo"); + SQGSStationList_CargoWaiting.AddConstructor(engine, "xiiii"); + + SQGSStationList_CargoWaiting.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoPlanned"; } + +void SQGSStationList_CargoPlanned_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoPlanned("GSStationList_CargoPlanned"); + SQGSStationList_CargoPlanned.PreRegister(engine, "GSStationList_Cargo"); + SQGSStationList_CargoPlanned.AddConstructor(engine, "xiiii"); + + SQGSStationList_CargoPlanned.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoWaitingByFrom"; } + +void SQGSStationList_CargoWaitingByFrom_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoWaitingByFrom("GSStationList_CargoWaitingByFrom"); + SQGSStationList_CargoWaitingByFrom.PreRegister(engine, "GSStationList_CargoWaiting"); + SQGSStationList_CargoWaitingByFrom.AddConstructor(engine, "xii"); + + SQGSStationList_CargoWaitingByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoWaitingViaByFrom"; } + +void SQGSStationList_CargoWaitingViaByFrom_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoWaitingViaByFrom("GSStationList_CargoWaitingViaByFrom"); + SQGSStationList_CargoWaitingViaByFrom.PreRegister(engine, "GSStationList_CargoWaiting"); + SQGSStationList_CargoWaitingViaByFrom.AddConstructor(engine, "xiii"); + + SQGSStationList_CargoWaitingViaByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoWaitingByVia"; } + +void SQGSStationList_CargoWaitingByVia_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoWaitingByVia("GSStationList_CargoWaitingByVia"); + SQGSStationList_CargoWaitingByVia.PreRegister(engine, "GSStationList_CargoWaiting"); + SQGSStationList_CargoWaitingByVia.AddConstructor(engine, "xii"); + + SQGSStationList_CargoWaitingByVia.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoWaitingFromByVia"; } + +void SQGSStationList_CargoWaitingFromByVia_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoWaitingFromByVia("GSStationList_CargoWaitingFromByVia"); + SQGSStationList_CargoWaitingFromByVia.PreRegister(engine, "GSStationList_CargoWaiting"); + SQGSStationList_CargoWaitingFromByVia.AddConstructor(engine, "xiii"); + + SQGSStationList_CargoWaitingFromByVia.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoPlannedByFrom"; } + +void SQGSStationList_CargoPlannedByFrom_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoPlannedByFrom("GSStationList_CargoPlannedByFrom"); + SQGSStationList_CargoPlannedByFrom.PreRegister(engine, "GSStationList_CargoPlanned"); + SQGSStationList_CargoPlannedByFrom.AddConstructor(engine, "xii"); + + SQGSStationList_CargoPlannedByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoPlannedViaByFrom"; } + +void SQGSStationList_CargoPlannedViaByFrom_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoPlannedViaByFrom("GSStationList_CargoPlannedViaByFrom"); + SQGSStationList_CargoPlannedViaByFrom.PreRegister(engine, "GSStationList_CargoPlanned"); + SQGSStationList_CargoPlannedViaByFrom.AddConstructor(engine, "xiii"); + + SQGSStationList_CargoPlannedViaByFrom.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoPlannedByVia"; } + +void SQGSStationList_CargoPlannedByVia_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoPlannedByVia("GSStationList_CargoPlannedByVia"); + SQGSStationList_CargoPlannedByVia.PreRegister(engine, "GSStationList_CargoPlanned"); + SQGSStationList_CargoPlannedByVia.AddConstructor(engine, "xii"); + + SQGSStationList_CargoPlannedByVia.PostRegister(engine); +} + + +template <> const char *GetClassName() { return "GSStationList_CargoPlannedFromByVia"; } + +void SQGSStationList_CargoPlannedFromByVia_Register(Squirrel *engine) +{ + DefSQClass SQGSStationList_CargoPlannedFromByVia("GSStationList_CargoPlannedFromByVia"); + SQGSStationList_CargoPlannedFromByVia.PreRegister(engine, "GSStationList_CargoPlanned"); + SQGSStationList_CargoPlannedFromByVia.AddConstructor(engine, "xiii"); + + SQGSStationList_CargoPlannedFromByVia.PostRegister(engine); +} + + template <> const char *GetClassName() { return "GSStationList_Vehicle"; } void SQGSStationList_Vehicle_Register(Squirrel *engine) diff --git a/src/script/api/game/game_window.hpp.sq b/src/script/api/game/game_window.hpp.sq index 44d300c271..23627ca665 100644 --- a/src/script/api/game/game_window.hpp.sq +++ b/src/script/api/game/game_window.hpp.sq @@ -213,6 +213,9 @@ void SQGSWindow_Register(Squirrel *engine) SQGSWindow.DefSQConst(engine, ScriptWindow::WID_AP_BTN_DONTHILIGHT, "WID_AP_BTN_DONTHILIGHT"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_AP_BTN_DOHILIGHT, "WID_AP_BTN_DOHILIGHT"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_RV_CAPTION, "WID_RV_CAPTION"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_RV_SORT_ASCENDING_DESCENDING, "WID_RV_SORT_ASCENDING_DESCENDING"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_RV_SHOW_HIDDEN_ENGINES, "WID_RV_SHOW_HIDDEN_ENGINES"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_RV_SORT_DROPDOWN, "WID_RV_SORT_DROPDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_RV_LEFT_MATRIX, "WID_RV_LEFT_MATRIX"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_RV_LEFT_SCROLLBAR, "WID_RV_LEFT_SCROLLBAR"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_RV_RIGHT_MATRIX, "WID_RV_RIGHT_MATRIX"); @@ -237,13 +240,15 @@ void SQGSWindow_Register(Squirrel *engine) SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BBS_BRIDGE_LIST, "WID_BBS_BRIDGE_LIST"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BBS_SCROLLBAR, "WID_BBS_SCROLLBAR"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_CAPTION, "WID_BV_CAPTION"); - SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_SORT_ASSENDING_DESCENDING, "WID_BV_SORT_ASSENDING_DESCENDING"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_SORT_ASCENDING_DESCENDING, "WID_BV_SORT_ASCENDING_DESCENDING"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_SORT_DROPDOWN, "WID_BV_SORT_DROPDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_CARGO_FILTER_DROPDOWN, "WID_BV_CARGO_FILTER_DROPDOWN"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_SHOW_HIDDEN_ENGINES, "WID_BV_SHOW_HIDDEN_ENGINES"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_LIST, "WID_BV_LIST"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_SCROLLBAR, "WID_BV_SCROLLBAR"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_PANEL, "WID_BV_PANEL"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_BUILD, "WID_BV_BUILD"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_SHOW_HIDE, "WID_BV_SHOW_HIDE"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_BUILD_SEL, "WID_BV_BUILD_SEL"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_BV_RENAME, "WID_BV_RENAME"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_C_PANEL, "WID_C_PANEL"); @@ -456,6 +461,9 @@ void SQGSWindow_Register(Squirrel *engine) SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_TOWN_PULLDOWN, "WID_GL_TOWN_PULLDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_INDUSTRY_PULLDOWN, "WID_GL_INDUSTRY_PULLDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_GENERATE_BUTTON, "WID_GL_GENERATE_BUTTON"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_MAX_HEIGHTLEVEL_DOWN, "WID_GL_MAX_HEIGHTLEVEL_DOWN"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_MAX_HEIGHTLEVEL_TEXT, "WID_GL_MAX_HEIGHTLEVEL_TEXT"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_MAX_HEIGHTLEVEL_UP, "WID_GL_MAX_HEIGHTLEVEL_UP"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_START_DATE_DOWN, "WID_GL_START_DATE_DOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_START_DATE_TEXT, "WID_GL_START_DATE_TEXT"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GL_START_DATE_UP, "WID_GL_START_DATE_UP"); @@ -766,10 +774,12 @@ void SQGSWindow_Register(Squirrel *engine) SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_RIGHT, "WID_SA_RIGHT"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_DOWN, "WID_SA_DOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_SPRITE, "WID_SA_SPRITE"); - SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_OFFSETS, "WID_SA_OFFSETS"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_OFFSETS_ABS, "WID_SA_OFFSETS_ABS"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_OFFSETS_REL, "WID_SA_OFFSETS_REL"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_PICKER, "WID_SA_PICKER"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_LIST, "WID_SA_LIST"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_SCROLLBAR, "WID_SA_SCROLLBAR"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_SA_RESET_REL, "WID_SA_RESET_REL"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_NP_SHOW_NUMPAR, "WID_NP_SHOW_NUMPAR"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_NP_NUMPAR_DEC, "WID_NP_NUMPAR_DEC"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_NP_NUMPAR_INC, "WID_NP_NUMPAR_INC"); @@ -996,6 +1006,7 @@ void SQGSWindow_Register(Squirrel *engine) SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GO_LANG_DROPDOWN, "WID_GO_LANG_DROPDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GO_RESOLUTION_DROPDOWN, "WID_GO_RESOLUTION_DROPDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GO_FULLSCREEN_BUTTON, "WID_GO_FULLSCREEN_BUTTON"); + SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GO_GUI_ZOOM_DROPDOWN, "WID_GO_GUI_ZOOM_DROPDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GO_BASE_GRF_DROPDOWN, "WID_GO_BASE_GRF_DROPDOWN"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GO_BASE_GRF_STATUS, "WID_GO_BASE_GRF_STATUS"); SQGSWindow.DefSQConst(engine, ScriptWindow::WID_GO_BASE_GRF_TEXTFILE, "WID_GO_BASE_GRF_TEXTFILE"); diff --git a/src/script/api/game_changelog.hpp b/src/script/api/game_changelog.hpp index 6f1a93b52f..8c01be8d1d 100644 --- a/src/script/api/game_changelog.hpp +++ b/src/script/api/game_changelog.hpp @@ -15,17 +15,51 @@ * functions may still be available if you return an older API version * in GetAPIVersion() in info.nut. * + * \b 1.6.0 + * + * 1.6.0 is not yet released. The following changes are not set in stone yet. + * * \b 1.5.0 * - * 1.5.0 is not yet released. The following changes are not set in stone yet. - * * API additions: + * \li GSList::SwapList + * \li GSStation::GetCargoPlanned + * \li GSStation::GetCargoPlannedFrom + * \li GSStation::GetCargoPlannedFromVia + * \li GSStation::GetCargoPlannedVia * \li GSStation::GetCargoWaitingFromVia + * \li GSStationList_CargoPlannedByFrom + * \li GSStationList_CargoPlannedByVia + * \li GSStationList_CargoPlannedFromByVia + * \li GSStationList_CargoPlannedViaByFrom + * \li GSStationList_CargoWaitingByFrom + * \li GSStationList_CargoWaitingByVia + * \li GSStationList_CargoWaitingFromByVia + * \li GSStationList_CargoWaitingViaByFrom + * + * Other changes: + * \li GSNews::Create takes two extra parameters to refer to a location, station, + * industry, or town. The user can click at the news message to jump to the + * referred location. + * + * \b 1.4.4 + * + * No changes + * + * \b 1.4.3 + * + * No changes + * + * \b 1.4.2 * * Other changes: * \li GSCargoMonitor delivery and pickup monitor functions have improved boundary checking for * their parameters, and return \c -1 if they are found out of bounds. * + * \b 1.4.1 + * + * No changes + * * \b 1.4.0 * * API additions: diff --git a/src/script/api/script_admin.cpp b/src/script/api/script_admin.cpp index feecd11db0..f66d9fc8a8 100644 --- a/src/script/api/script_admin.cpp +++ b/src/script/api/script_admin.cpp @@ -37,12 +37,9 @@ } case OT_STRING: { - const SQChar *res; - sq_getstring(vm, index, &res); + const SQChar *buf; + sq_getstring(vm, index, &buf); - /* @bug if a string longer than 512 characters is given to SQ2OTTD, the - * internal buffer overflows. */ - const char *buf = SQ2OTTD(res); size_t len = strlen(buf) + 1; if (len >= 255) { ScriptLog::Error("Maximum string length is 254 chars. No data sent."); @@ -129,10 +126,10 @@ /* static */ SQInteger ScriptAdmin::Send(HSQUIRRELVM vm) { - if (sq_gettop(vm) - 1 != 1) return sq_throwerror(vm, _SC("wrong number of parameters")); + if (sq_gettop(vm) - 1 != 1) return sq_throwerror(vm, "wrong number of parameters"); if (sq_gettype(vm, 2) != OT_TABLE) { - return sq_throwerror(vm, _SC("ScriptAdmin::Send requires a table as first parameter. No data sent.")); + return sq_throwerror(vm, "ScriptAdmin::Send requires a table as first parameter. No data sent."); } std::string json; diff --git a/src/script/api/script_cargo.hpp b/src/script/api/script_cargo.hpp index 9d409e1918..d1bfdd1fcc 100644 --- a/src/script/api/script_cargo.hpp +++ b/src/script/api/script_cargo.hpp @@ -90,8 +90,15 @@ public: * @param cargo_type The cargo to get the string representation of. * @pre ScriptCargo::IsValidCargo(cargo_type). * @return The cargo label. - * @note Never use this to check if it is a certain cargo. NewGRF can - * redefine all of the names. + * @note + * - The label uniquely identifies a specific cargo. Use this if you want to + * detect special cargos from specific industry set (like production booster cargos, supplies, ...). + * - For more generic cargo support, rather check cargo properties though. For example: + * - Use ScriptCargo::HasCargoClass(..., CC_PASSENGER) to decide bus vs. truck requirements. + * - Use ScriptCargo::GetTownEffect(...) paired with ScriptTown::GetCargoGoal(...) to determine + * town growth requirements. + * - In other words: Only use the cargo label, if you know more about the behaviour + * of a specific cargo from a specific industry set, than the API methods can tell you. */ static char *GetCargoLabel(CargoID cargo_type); diff --git a/src/script/api/script_company.cpp b/src/script/api/script_company.cpp index a5fecf8ead..a1f40c5e1e 100644 --- a/src/script/api/script_company.cpp +++ b/src/script/api/script_company.cpp @@ -230,8 +230,8 @@ { EnforcePrecondition(false, ScriptObject::GetCompany() == OWNER_DEITY); EnforcePrecondition(false, expenses_type < (ExpensesType)::EXPENSES_END); - EnforcePrecondition(false, delta >= INT32_MIN); - EnforcePrecondition(false, delta <= INT32_MAX); + EnforcePrecondition(false, (int64)delta >= INT32_MIN); + EnforcePrecondition(false, (int64)delta <= INT32_MAX); company = ResolveCompanyID(company); EnforcePrecondition(false, company != COMPANY_INVALID); diff --git a/src/script/api/script_company.hpp b/src/script/api/script_company.hpp index 5327930813..4deaeed5e3 100644 --- a/src/script/api/script_company.hpp +++ b/src/script/api/script_company.hpp @@ -192,6 +192,7 @@ public: * @param company The company to change the bank balance of. * @param delta Amount of money to give or take from the bank balance. A positive value adds money to the bank balance. * @param expenses_type The account in the finances window that will register the cost. + * @return True, if the bank balance was changed. * @game @pre No ScriptCompanyMode active in scope. * @pre ResolveCompanyID(company) != COMPANY_INVALID. * @pre delta >= -2**31 diff --git a/src/script/api/script_controller.cpp b/src/script/api/script_controller.cpp index 65e542c023..a42c8ede9b 100644 --- a/src/script/api/script_controller.cpp +++ b/src/script/api/script_controller.cpp @@ -122,7 +122,7 @@ ScriptController::~ScriptController() if (lib == NULL) { char error[1024]; seprintf(error, lastof(error), "couldn't find library '%s' with version %d", library, version); - throw sq_throwerror(vm, OTTD2SQ(error)); + throw sq_throwerror(vm, error); } /* Get the current table/class we belong to */ @@ -142,13 +142,13 @@ ScriptController::~ScriptController() /* Load the library in a 'fake' namespace, so we can link it to the name the user requested */ sq_pushroottable(vm); - sq_pushstring(vm, OTTD2SQ(fake_class), -1); + sq_pushstring(vm, fake_class, -1); sq_newclass(vm, SQFalse); /* Load the library */ if (!engine->LoadScript(vm, lib->GetMainScript(), false)) { char error[1024]; seprintf(error, lastof(error), "there was a compile error when importing '%s' version %d", library, version); - throw sq_throwerror(vm, OTTD2SQ(error)); + throw sq_throwerror(vm, error); } /* Create the fake class */ sq_newslot(vm, -3, SQFalse); @@ -159,15 +159,15 @@ ScriptController::~ScriptController() /* Find the real class inside the fake class (like 'sets.Vector') */ sq_pushroottable(vm); - sq_pushstring(vm, OTTD2SQ(fake_class), -1); + sq_pushstring(vm, fake_class, -1); if (SQ_FAILED(sq_get(vm, -2))) { - throw sq_throwerror(vm, _SC("internal error assigning library class")); + throw sq_throwerror(vm, "internal error assigning library class"); } - sq_pushstring(vm, OTTD2SQ(lib->GetInstanceName()), -1); + sq_pushstring(vm, lib->GetInstanceName(), -1); if (SQ_FAILED(sq_get(vm, -2))) { char error[1024]; seprintf(error, lastof(error), "unable to find class '%s' in the library '%s' version %d", lib->GetInstanceName(), library, version); - throw sq_throwerror(vm, OTTD2SQ(error)); + throw sq_throwerror(vm, error); } HSQOBJECT obj; sq_getstackobj(vm, -1, &obj); @@ -177,7 +177,7 @@ ScriptController::~ScriptController() /* Now link the name the user wanted to our 'fake' class */ sq_pushobject(vm, parent); - sq_pushstring(vm, OTTD2SQ(class_name), -1); + sq_pushstring(vm, class_name, -1); sq_pushobject(vm, obj); sq_newclass(vm, SQTrue); sq_newslot(vm, -3, SQFalse); diff --git a/src/script/api/script_controller.hpp b/src/script/api/script_controller.hpp index 10fd48dcdc..9bdbe9ab79 100644 --- a/src/script/api/script_controller.hpp +++ b/src/script/api/script_controller.hpp @@ -18,8 +18,32 @@ /** * The Controller, the class each Script should extend. It creates the Script, - * makes sure the logic kicks in correctly, and that GetTick() has a valid + * makes sure the logic kicks in correctly, and that #GetTick() has a valid * value. + * + * When starting a new game, or when loading a game, OpenTTD tries to match a + * script that matches to the specified version as close as possible. It tries + * (from first to last, stopping as soon as the attempt succeeds) + * + * - load the exact same version of the same script, + * - load the latest version of the same script that supports loading data from + * the saved version (the version of saved data must be equal or greater + * than ScriptInfo::MinVersionToLoad), + * - load the latest version of the same script (ignoring version requirements), + * - (for AIs) load a random AI, and finally + * - (for AIs) load the dummy AI. + * + * After determining the script to use, starting it is done as follows + * + * - An instance is constructed of the class derived from ScriptController + * (class name is retrieved from ScriptInfo::CreateInstance). + * - If there is script data available in the loaded game and if the data is + * loadable according to ScriptInfo::MinVersionToLoad, #Load is called with the + * data from the loaded game. + * - Finally, #Start is called to start execution of the script. + * + * See also http://wiki.openttd.org/AI:Save/Load for more details. + * * @api ai game */ class ScriptController { @@ -46,6 +70,48 @@ public: */ void Start(); +#ifdef DOXYGEN_API + /** + * Save the state of the script. + * + * By implementing this function, you can store some data inside the savegame. + * The function should return a table with the information you want to store. + * You can only store: + * + * - integers, + * - strings, + * - arrays (max. 25 levels deep), + * - tables (max. 25 levels deep), + * - booleans, and + * - nulls. + * + * In particular, instances of classes can't be saved including + * ScriptList. Such a list should be converted to an array or table on + * save and converted back on load. + * + * The function is called as soon as the user saves the game, + * independently of other activities of the script. The script is not + * notified of the call. To avoid race-conditions between #Save and the + * other script code, change variables directly after a #Sleep, it is + * very unlikely, to get interrupted at that point in the execution. + * See also http://wiki.openttd.org/AI:Save/Load for more details. + * + * @note No other information is saved than the table returned by #Save. + * For example all pending events are lost as soon as the game is loaded. + * + * @return Data of the script that should be stored in the save game. + */ + SquirrelTable Save(); + + /** + * Load saved data just before calling #Start. + * The function is only called when there is data to load. + * @param version Version number of the script that created the \a data. + * @param data Data that was saved (return value of #Save). + */ + void Load(int version, SquirrelTable data); +#endif /* DOXYGEN_API */ + /** * Find at which tick your script currently is. * @return returns the current tick. diff --git a/src/script/api/script_engine.hpp b/src/script/api/script_engine.hpp index 5f703e159d..173377742d 100644 --- a/src/script/api/script_engine.hpp +++ b/src/script/api/script_engine.hpp @@ -108,7 +108,6 @@ public: * Get the maximum speed of an engine. * @param engine_id The engine to get the maximum speed of. * @pre IsValidEngine(engine_id). - * @pre GetVehicleType(engine_id) != ScriptVehicle::VT_TRAIN || !IsWagon(engine_id). * @return The maximum speed the engine has. * @note The speed is in OpenTTD's internal speed unit. * This is mph / 1.6, which is roughly km/h. diff --git a/src/script/api/script_event_types.cpp b/src/script/api/script_event_types.cpp index 277ce22ec8..d424e6feff 100644 --- a/src/script/api/script_event_types.cpp +++ b/src/script/api/script_event_types.cpp @@ -171,7 +171,7 @@ char *ScriptEventAdminPort::ReadString(HSQUIRRELVM vm, char *p) } *p = '\0'; - sq_pushstring(vm, OTTD2SQ(value), -1); + sq_pushstring(vm, value, -1); *p++ = '"'; return p; @@ -259,10 +259,10 @@ char *ScriptEventAdminPort::ReadValue(HSQUIRRELVM vm, char *p) sq_newarray(vm, 0); /* Empty array? */ - char *p2 = p+1; + char *p2 = p + 1; SKIP_EMPTY(p2); if (*p2 == ']') { - p = p2+1; + p = p2 + 1; break; } diff --git a/src/script/api/script_list.cpp b/src/script/api/script_list.cpp index 7add90c741..bdbc1209bd 100644 --- a/src/script/api/script_list.cpp +++ b/src/script/api/script_list.cpp @@ -21,9 +21,9 @@ */ class ScriptListSorter { protected: - ScriptList *list; ///< The list that's being sorted. + ScriptList *list; ///< The list that's being sorted. bool has_no_more_items; ///< Whether we have more items to iterate over. - int32 item_next; ///< The next item we will show. + int64 item_next; ///< The next item we will show. public: /** @@ -34,7 +34,7 @@ public: /** * Get the first item of the sorter. */ - virtual int32 Begin() = 0; + virtual int64 Begin() = 0; /** * Stop iterating a sorter. @@ -44,7 +44,7 @@ public: /** * Get the next item of the sorter. */ - virtual int32 Next() = 0; + virtual int64 Next() = 0; /** * See if the sorter has reached the end. @@ -58,6 +58,17 @@ public: * Callback from the list if an item gets removed. */ virtual void Remove(int item) = 0; + + /** + * Attach the sorter to a new list. This assumes the content of the old list has been moved to + * the new list, too, so that we don't have to invalidate any iterators. Note that std::swap + * doesn't invalidate iterators on lists and maps, so that should be safe. + * @param target New list to attach to. + */ + virtual void Retarget(ScriptList *new_list) + { + this->list = new_list; + } }; /** @@ -80,7 +91,7 @@ public: this->End(); } - int32 Begin() + int64 Begin() { if (this->list->buckets.empty()) return 0; this->has_no_more_items = false; @@ -90,7 +101,7 @@ public: this->bucket_list_iter = this->bucket_list->begin(); this->item_next = *this->bucket_list_iter; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -125,11 +136,11 @@ public: this->item_next = *this->bucket_list_iter; } - int32 Next() + int64 Next() { if (this->IsEnd()) return 0; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -151,6 +162,9 @@ public: */ class ScriptListSorterValueDescending : public ScriptListSorter { private: + /* Note: We cannot use reverse_iterator. + * The iterators must only be invalidated when the element they are pointing to is removed. + * This only holds for forward iterators. */ ScriptList::ScriptListBucket::iterator bucket_iter; ///< The iterator over the list to find the buckets. ScriptList::ScriptItemList *bucket_list; ///< The current bucket list we're iterator over. ScriptList::ScriptItemList::iterator bucket_list_iter; ///< The iterator over the bucket list. @@ -166,22 +180,22 @@ public: this->End(); } - int32 Begin() + int64 Begin() { if (this->list->buckets.empty()) return 0; this->has_no_more_items = false; /* Go to the end of the bucket-list */ - this->bucket_iter = this->list->buckets.begin(); - for (size_t i = this->list->buckets.size(); i > 1; i--) this->bucket_iter++; + this->bucket_iter = this->list->buckets.end(); + --this->bucket_iter; this->bucket_list = &(*this->bucket_iter).second; /* Go to the end of the items in the bucket */ - this->bucket_list_iter = this->bucket_list->begin(); - for (size_t i = this->bucket_list->size(); i > 1; i--) this->bucket_list_iter++; + this->bucket_list_iter = this->bucket_list->end(); + --this->bucket_list_iter; this->item_next = *this->bucket_list_iter; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -211,19 +225,19 @@ public: this->bucket_iter--; this->bucket_list = &(*this->bucket_iter).second; /* Go to the end of the items in the bucket */ - this->bucket_list_iter = this->bucket_list->begin(); - for (size_t i = this->bucket_list->size(); i > 1; i--) this->bucket_list_iter++; + this->bucket_list_iter = this->bucket_list->end(); + --this->bucket_list_iter; } else { this->bucket_list_iter--; } this->item_next = *this->bucket_list_iter; } - int32 Next() + int64 Next() { if (this->IsEnd()) return 0; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -258,7 +272,7 @@ public: this->End(); } - int32 Begin() + int64 Begin() { if (this->list->items.empty()) return 0; this->has_no_more_items = false; @@ -266,7 +280,7 @@ public: this->item_iter = this->list->items.begin(); this->item_next = (*this->item_iter).first; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -289,11 +303,11 @@ public: if (this->item_iter != this->list->items.end()) item_next = (*this->item_iter).first; } - int32 Next() + int64 Next() { if (this->IsEnd()) return 0; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -315,6 +329,9 @@ public: */ class ScriptListSorterItemDescending : public ScriptListSorter { private: + /* Note: We cannot use reverse_iterator. + * The iterators must only be invalidated when the element they are pointing to is removed. + * This only holds for forward iterators. */ ScriptList::ScriptListMap::iterator item_iter; ///< The iterator over the items in the map. public: @@ -328,16 +345,16 @@ public: this->End(); } - int32 Begin() + int64 Begin() { if (this->list->items.empty()) return 0; this->has_no_more_items = false; - this->item_iter = this->list->items.begin(); - for (size_t i = this->list->items.size(); i > 1; i--) this->item_iter++; + this->item_iter = this->list->items.end(); + --this->item_iter; this->item_next = (*this->item_iter).first; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -356,15 +373,20 @@ public: this->has_no_more_items = true; return; } - this->item_iter--; + if (this->item_iter == this->list->items.begin()) { + /* Use 'end' as marker for 'beyond begin' */ + this->item_iter = this->list->items.end(); + } else { + this->item_iter--; + } if (this->item_iter != this->list->items.end()) item_next = (*this->item_iter).first; } - int32 Next() + int64 Next() { if (this->IsEnd()) return 0; - int32 item_current = this->item_next; + int64 item_current = this->item_next; FindNext(); return item_current; } @@ -398,7 +420,7 @@ ScriptList::~ScriptList() delete this->sorter; } -bool ScriptList::HasItem(int32 item) +bool ScriptList::HasItem(int64 item) { return this->items.count(item) == 1; } @@ -412,39 +434,40 @@ void ScriptList::Clear() this->sorter->End(); } -void ScriptList::AddItem(int32 item, int32 value) +void ScriptList::AddItem(int64 item, int64 value) { this->modifications++; if (this->HasItem(item)) return; - this->items[item] = 0; - this->buckets[0].insert(item); - - this->SetValue(item, value); + this->items[item] = value; + this->buckets[value].insert(item); } -void ScriptList::RemoveItem(int32 item) +void ScriptList::RemoveItem(int64 item) { this->modifications++; - if (!this->HasItem(item)) return; + ScriptListMap::iterator item_iter = this->items.find(item); + if (item_iter == this->items.end()) return; - int32 value = this->GetValue(item); + int64 value = item_iter->second; this->sorter->Remove(item); - this->buckets[value].erase(item); - if (this->buckets[value].empty()) this->buckets.erase(value); - this->items.erase(item); + ScriptListBucket::iterator bucket_iter = this->buckets.find(value); + assert(bucket_iter != this->buckets.end()); + bucket_iter->second.erase(item); + if (bucket_iter->second.empty()) this->buckets.erase(bucket_iter); + this->items.erase(item_iter); } -int32 ScriptList::Begin() +int64 ScriptList::Begin() { this->initialized = true; return this->sorter->Begin(); } -int32 ScriptList::Next() +int64 ScriptList::Next() { if (this->initialized == false) { DEBUG(script, 0, "Next() is invalid as Begin() is never called"); @@ -472,26 +495,28 @@ int32 ScriptList::Count() return (int32)this->items.size(); } -int32 ScriptList::GetValue(int32 item) +int64 ScriptList::GetValue(int64 item) { - if (!this->HasItem(item)) return 0; - - return this->items[item]; + ScriptListMap::const_iterator item_iter = this->items.find(item); + return item_iter == this->items.end() ? 0 : item_iter->second; } -bool ScriptList::SetValue(int32 item, int32 value) +bool ScriptList::SetValue(int64 item, int64 value) { this->modifications++; - if (!this->HasItem(item)) return false; + ScriptListMap::iterator item_iter = this->items.find(item); + if (item_iter == this->items.end()) return false; - int32 value_old = this->GetValue(item); + int64 value_old = item_iter->second; if (value_old == value) return true; this->sorter->Remove(item); - this->buckets[value_old].erase(item); - if (this->buckets[value_old].empty()) this->buckets.erase(value_old); - this->items[item] = value; + ScriptListBucket::iterator bucket_iter = this->buckets.find(value_old); + assert(bucket_iter != this->buckets.end()); + bucket_iter->second.erase(item); + if (bucket_iter->second.empty()) this->buckets.erase(bucket_iter); + item_iter->second = value; this->buckets[value].insert(item); return true; @@ -531,6 +556,8 @@ void ScriptList::Sort(SorterType sorter, bool ascending) void ScriptList::AddList(ScriptList *list) { + if (list == this) return; + ScriptListMap *list_items = &list->items; for (ScriptListMap::iterator iter = list_items->begin(); iter != list_items->end(); iter++) { this->AddItem((*iter).first); @@ -538,7 +565,22 @@ void ScriptList::AddList(ScriptList *list) } } -void ScriptList::RemoveAboveValue(int32 value) +void ScriptList::SwapList(ScriptList *list) +{ + if (list == this) return; + + this->items.swap(list->items); + this->buckets.swap(list->buckets); + Swap(this->sorter, list->sorter); + Swap(this->sorter_type, list->sorter_type); + Swap(this->sort_ascending, list->sort_ascending); + Swap(this->initialized, list->initialized); + Swap(this->modifications, list->modifications); + this->sorter->Retarget(this); + list->sorter->Retarget(list); +} + +void ScriptList::RemoveAboveValue(int64 value) { this->modifications++; @@ -548,7 +590,7 @@ void ScriptList::RemoveAboveValue(int32 value) } } -void ScriptList::RemoveBelowValue(int32 value) +void ScriptList::RemoveBelowValue(int64 value) { this->modifications++; @@ -558,7 +600,7 @@ void ScriptList::RemoveBelowValue(int32 value) } } -void ScriptList::RemoveBetweenValue(int32 start, int32 end) +void ScriptList::RemoveBetweenValue(int64 start, int64 end) { this->modifications++; @@ -568,7 +610,7 @@ void ScriptList::RemoveBetweenValue(int32 start, int32 end) } } -void ScriptList::RemoveValue(int32 value) +void ScriptList::RemoveValue(int64 value) { this->modifications++; @@ -656,13 +698,17 @@ void ScriptList::RemoveList(ScriptList *list) { this->modifications++; - ScriptListMap *list_items = &list->items; - for (ScriptListMap::iterator iter = list_items->begin(); iter != list_items->end(); iter++) { - this->RemoveItem((*iter).first); + if (list == this) { + Clear(); + } else { + ScriptListMap *list_items = &list->items; + for (ScriptListMap::iterator iter = list_items->begin(); iter != list_items->end(); iter++) { + this->RemoveItem((*iter).first); + } } } -void ScriptList::KeepAboveValue(int32 value) +void ScriptList::KeepAboveValue(int64 value) { this->modifications++; @@ -672,7 +718,7 @@ void ScriptList::KeepAboveValue(int32 value) } } -void ScriptList::KeepBelowValue(int32 value) +void ScriptList::KeepBelowValue(int64 value) { this->modifications++; @@ -682,7 +728,7 @@ void ScriptList::KeepBelowValue(int32 value) } } -void ScriptList::KeepBetweenValue(int32 start, int32 end) +void ScriptList::KeepBetweenValue(int64 start, int64 end) { this->modifications++; @@ -692,7 +738,7 @@ void ScriptList::KeepBetweenValue(int32 start, int32 end) } } -void ScriptList::KeepValue(int32 value) +void ScriptList::KeepValue(int64 value) { this->modifications++; @@ -718,14 +764,12 @@ void ScriptList::KeepBottom(int32 count) void ScriptList::KeepList(ScriptList *list) { + if (list == this) return; + this->modifications++; ScriptList tmp; - for (ScriptListMap::iterator iter = this->items.begin(); iter != this->items.end(); iter++) { - tmp.AddItem((*iter).first); - tmp.SetValue((*iter).first, (*iter).second); - } - + tmp.AddList(this); tmp.RemoveList(list); this->RemoveList(&tmp); } @@ -737,9 +781,10 @@ SQInteger ScriptList::_get(HSQUIRRELVM vm) SQInteger idx; sq_getinteger(vm, 2, &idx); - if (!this->HasItem(idx)) return SQ_ERROR; + ScriptListMap::const_iterator item_iter = this->items.find(idx); + if (item_iter == this->items.end()) return SQ_ERROR; - sq_pushinteger(vm, this->GetValue(idx)); + sq_pushinteger(vm, item_iter->second); return 1; } @@ -747,7 +792,7 @@ SQInteger ScriptList::_set(HSQUIRRELVM vm) { if (sq_gettype(vm, 2) != OT_INTEGER) return SQ_ERROR; if (sq_gettype(vm, 3) != OT_INTEGER && sq_gettype(vm, 3) != OT_NULL) { - return sq_throwerror(vm, _SC("you can only assign integers to this list")); + return sq_throwerror(vm, "you can only assign integers to this list"); } SQInteger idx, val; @@ -799,7 +844,7 @@ SQInteger ScriptList::Valuate(HSQUIRRELVM vm) int nparam = sq_gettop(vm) - 1; if (nparam < 1) { - return sq_throwerror(vm, _SC("You need to give a least a Valuator as parameter to ScriptList::Valuate")); + return sq_throwerror(vm, "You need to give a least a Valuator as parameter to ScriptList::Valuate"); } /* Make sure the valuator function is really a function, and not any @@ -807,7 +852,7 @@ SQInteger ScriptList::Valuate(HSQUIRRELVM vm) * first parameter they give. */ SQObjectType valuator_type = sq_gettype(vm, 2); if (valuator_type != OT_CLOSURE && valuator_type != OT_NATIVECLOSURE) { - return sq_throwerror(vm, _SC("parameter 1 has an invalid type (expected function)")); + return sq_throwerror(vm, "parameter 1 has an invalid type (expected function)"); } /* Don't allow docommand from a Valuator, as we can't resume in @@ -856,7 +901,7 @@ SQInteger ScriptList::Valuate(HSQUIRRELVM vm) sq_pop(vm, nparam + 4); ScriptObject::SetAllowDoCommand(backup_allow); - return sq_throwerror(vm, _SC("return value of valuator is not valid (not integer/bool)")); + return sq_throwerror(vm, "return value of valuator is not valid (not integer/bool)"); } } @@ -866,7 +911,7 @@ SQInteger ScriptList::Valuate(HSQUIRRELVM vm) sq_pop(vm, nparam + 4); ScriptObject::SetAllowDoCommand(backup_allow); - return sq_throwerror(vm, _SC("modifying valuated list outside of valuator function")); + return sq_throwerror(vm, "modifying valuated list outside of valuator function"); } this->SetValue((*iter).first, value); diff --git a/src/script/api/script_list.hpp b/src/script/api/script_list.hpp index 2117f959da..1fbafe3d9f 100644 --- a/src/script/api/script_list.hpp +++ b/src/script/api/script_list.hpp @@ -44,9 +44,9 @@ private: int modifications; ///< Number of modification that has been done. To prevent changing data while valuating. public: - typedef std::set ScriptItemList; ///< The list of items inside the bucket - typedef std::map ScriptListBucket; ///< The bucket list per value - typedef std::map ScriptListMap; ///< List per item + typedef std::set ScriptItemList; ///< The list of items inside the bucket + typedef std::map ScriptListBucket; ///< The bucket list per value + typedef std::map ScriptListMap; ///< List per item ScriptListMap items; ///< The items in the list ScriptListBucket buckets; ///< The items in the list, sorted by value @@ -60,16 +60,16 @@ public: * @param item the item to add. Should be unique, otherwise it is ignored. * @param value the value to assign. */ - void AddItem(int32 item, int32 value); + void AddItem(int64 item, int64 value); #else - void AddItem(int32 item, int32 value = 0); + void AddItem(int64 item, int64 value = 0); #endif /* DOXYGEN_API */ /** * Remove a single item from the list. * @param item the item to remove. If not existing, it is ignored. */ - void RemoveItem(int32 item); + void RemoveItem(int64 item); /** * Clear the list, making Count() returning 0 and IsEmpty() returning true. @@ -81,21 +81,21 @@ public: * @param item the item to check for. * @return true if the item is in the list. */ - bool HasItem(int32 item); + bool HasItem(int64 item); /** - * Go to the beginning of the list. - * @return the item value of the first item. + * Go to the beginning of the list and return the item. To get the value use list.GetValue(list.Begin()). + * @return the first item. * @note returns 0 if beyond end-of-list. Use IsEnd() to check for end-of-list. */ - int32 Begin(); + int64 Begin(); /** - * Go to the next item in the list. - * @return the item value of the next item. + * Go to the next item in the list and return the item. To get the value use list.GetValue(list.Next()). + * @return the next item. * @note returns 0 if beyond end-of-list. Use IsEnd() to check for end-of-list. */ - int32 Next(); + int64 Next(); /** * Check if a list is empty. @@ -121,7 +121,7 @@ public: * @param item the item to get the value from * @return the value that belongs to this item. */ - int32 GetValue(int32 item); + int64 GetValue(int64 item); /** * Set a value of an item directly. @@ -131,7 +131,7 @@ public: * @note Changing values of items while looping through a list might cause * entries to be skipped. Be very careful with such operations. */ - bool SetValue(int32 item, int32 value); + bool SetValue(int64 item, int64 value); /** * Sort this list by the given sorter and direction. @@ -152,30 +152,36 @@ public: */ void AddList(ScriptList *list); + /** + * Swap the contents of two lists. + * @param list The list that will be swapped with. + */ + void SwapList(ScriptList *list); + /** * Removes all items with a higher value than 'value'. * @param value the value above which all items are removed. */ - void RemoveAboveValue(int32 value); + void RemoveAboveValue(int64 value); /** * Removes all items with a lower value than 'value'. * @param value the value below which all items are removed. */ - void RemoveBelowValue(int32 value); + void RemoveBelowValue(int64 value); /** * Removes all items with a value above start and below end. * @param start the lower bound of the to be removed values (exclusive). * @param end the upper bound of the to be removed values (exclusive). */ - void RemoveBetweenValue(int32 start, int32 end); + void RemoveBetweenValue(int64 start, int64 end); /** * Remove all items with this value. * @param value the value to remove. */ - void RemoveValue(int32 value); + void RemoveValue(int64 value); /** * Remove the first count items. @@ -200,26 +206,26 @@ public: * Keep all items with a higher value than 'value'. * @param value the value above which all items are kept. */ - void KeepAboveValue(int32 value); + void KeepAboveValue(int64 value); /** * Keep all items with a lower value than 'value'. * @param value the value below which all items are kept. */ - void KeepBelowValue(int32 value); + void KeepBelowValue(int64 value); /** * Keep all items with a value above start and below end. * @param start the lower bound of the to be kept values (exclusive). * @param end the upper bound of the to be kept values (exclusive). */ - void KeepBetweenValue(int32 start, int32 end); + void KeepBetweenValue(int64 start, int64 end); /** * Keep all items with this value. * @param value the value to keep. */ - void KeepValue(int32 value); + void KeepValue(int64 value); /** * Keep the first count items, i.e. remove everything except the first count items. diff --git a/src/script/api/script_news.cpp b/src/script/api/script_news.cpp index 8d808ff3c8..5f84f96d69 100644 --- a/src/script/api/script_news.cpp +++ b/src/script/api/script_news.cpp @@ -11,13 +11,17 @@ #include "../../stdafx.h" #include "script_news.hpp" +#include "script_industry.hpp" +#include "script_station.hpp" +#include "script_map.hpp" +#include "script_town.hpp" #include "script_error.hpp" #include "../../command_type.h" #include "../../string_func.h" #include "../../safeguards.h" -/* static */ bool ScriptNews::Create(NewsType type, Text *text, ScriptCompany::CompanyID company) +/* static */ bool ScriptNews::Create(NewsType type, Text *text, ScriptCompany::CompanyID company, NewsReferenceType ref_type, uint32 reference) { CCountedPtr counter(text); @@ -26,9 +30,15 @@ EnforcePreconditionEncodedText(false, encoded); EnforcePrecondition(false, type == NT_ECONOMY || type == NT_SUBSIDIES || type == NT_GENERAL); EnforcePrecondition(false, company == ScriptCompany::COMPANY_INVALID || ScriptCompany::ResolveCompanyID(company) != ScriptCompany::COMPANY_INVALID); + EnforcePrecondition(false, (ref_type == NR_NONE) || + (ref_type == NR_TILE && ScriptMap::IsValidTile(reference)) || + (ref_type == NR_STATION && ScriptStation::IsValidStation(reference)) || + (ref_type == NR_INDUSTRY && ScriptIndustry::IsValidIndustry(reference)) || + (ref_type == NR_TOWN && ScriptTown::IsValidTown(reference))); uint8 c = company; if (company == ScriptCompany::COMPANY_INVALID) c = INVALID_COMPANY; - return ScriptObject::DoCommand(0, type | (NR_NONE << 8) | (c << 16), 0, CMD_CUSTOM_NEWS_ITEM, encoded); + if (ref_type == NR_NONE) reference = 0; + return ScriptObject::DoCommand(0, type | (ref_type << 8) | (c << 16), reference, CMD_CUSTOM_NEWS_ITEM, encoded); } diff --git a/src/script/api/script_news.hpp b/src/script/api/script_news.hpp index 8defa3a85f..ca0656608f 100644 --- a/src/script/api/script_news.hpp +++ b/src/script/api/script_news.hpp @@ -36,15 +36,36 @@ public: }; /** - * Create a news messages for a company. + * Reference to a game element. + */ + enum NewsReferenceType { + /* Selection of useful game elements to refer to. */ + NR_NONE = ::NR_NONE, ///< No reference supplied. + NR_TILE = ::NR_TILE, ///< Reference location, scroll to the location when clicking on the news. + NR_STATION = ::NR_STATION, ///< Reference station, scroll to the station when clicking on the news. Delete news when the station is deleted. + NR_INDUSTRY = ::NR_INDUSTRY, ///< Reference industry, scrolls to the industry when clicking on the news. Delete news when the industry is deleted. + NR_TOWN = ::NR_TOWN, ///< Reference town, scroll to the town when clicking on the news. + }; + + /** + * Create a news message for everybody, or for one company. * @param type The type of the news. * @param text The text message to show (can be either a raw string, or a ScriptText object). * @param company The company, or COMPANY_INVALID for all companies. + * @param ref_type Type of referred game element. + * @param reference The referenced game element of \a ref_type. + * - For #NR_NONE this parameter is ignored. + * - For #NR_TILE this parameter should be a valid location (ScriptMap::IsValidTile). + * - For #NR_STATION this parameter should be a valid stationID (ScriptStation::IsValidStation). + * - For #NR_INDUSTRY this parameter should be a valid industryID (ScriptIndustry::IsValidIndustry). + * - For #NR_TOWN this parameter should be a valid townID (ScriptTown::IsValidTown). * @return True if the action succeeded. + * @pre type must be #NT_ECONOMY, #NT_SUBSIDIES, or #NT_GENERAL. * @pre text != NULL. * @pre company == COMPANY_INVALID || ResolveCompanyID(company) != COMPANY_INVALID. + * @pre The \a reference condition must be fulfilled. */ - static bool Create(NewsType type, Text *text, ScriptCompany::CompanyID company); + static bool Create(NewsType type, Text *text, ScriptCompany::CompanyID company, NewsReferenceType ref_type, uint32 reference); }; #endif /* SCRIPT_NEWS_HPP */ diff --git a/src/script/api/script_station.cpp b/src/script/api/script_station.cpp index c03f851a3b..5ed43e0a67 100644 --- a/src/script/api/script_station.cpp +++ b/src/script/api/script_station.cpp @@ -39,14 +39,25 @@ return ::GetStationIndex(tile); } +template +/* static */ bool ScriptStation::IsCargoRequestValid(StationID station_id, + StationID from_station_id, StationID via_station_id, CargoID cargo_id) +{ + if (!IsValidStation(station_id)) return false; + if (Tfrom && !IsValidStation(from_station_id) && from_station_id != STATION_INVALID) return false; + if (Tvia && !IsValidStation(via_station_id) && via_station_id != STATION_INVALID) return false; + if (!ScriptCargo::IsValidCargo(cargo_id)) return false; + return true; +} + template /* static */ int32 ScriptStation::CountCargoWaiting(StationID station_id, StationID from_station_id, StationID via_station_id, CargoID cargo_id) { - if (!IsValidStation(station_id)) return -1; - if (Tfrom && !IsValidStation(from_station_id) && from_station_id != STATION_INVALID) return -1; - if (Tvia && !IsValidStation(via_station_id) && via_station_id != STATION_INVALID) return -1; - if (!ScriptCargo::IsValidCargo(cargo_id)) return -1; + if (!ScriptStation::IsCargoRequestValid(station_id, from_station_id, + via_station_id, cargo_id)) { + return -1; + } const StationCargoList &cargo_list = ::Station::Get(station_id)->goods[cargo_id].cargo; if (!Tfrom && !Tvia) return cargo_list.TotalCount(); @@ -87,6 +98,47 @@ template return CountCargoWaiting(station_id, from_station_id, via_station_id, cargo_id); } +template +/* static */ int32 ScriptStation::CountCargoPlanned(StationID station_id, + StationID from_station_id, StationID via_station_id, CargoID cargo_id) +{ + if (!ScriptStation::IsCargoRequestValid(station_id, from_station_id, + via_station_id, cargo_id)) { + return -1; + } + + const FlowStatMap &flows = ::Station::Get(station_id)->goods[cargo_id].flows; + if (Tfrom) { + return Tvia ? flows.GetFlowFromVia(from_station_id, via_station_id) : + flows.GetFlowFrom(from_station_id); + } else { + return Tvia ? flows.GetFlowVia(via_station_id) : flows.GetFlow(); + } +} + +/* static */ int32 ScriptStation::GetCargoPlanned(StationID station_id, CargoID cargo_id) +{ + return CountCargoPlanned(station_id, STATION_INVALID, STATION_INVALID, cargo_id); +} + +/* static */ int32 ScriptStation::GetCargoPlannedFrom(StationID station_id, + StationID from_station_id, CargoID cargo_id) +{ + return CountCargoPlanned(station_id, from_station_id, STATION_INVALID, cargo_id); +} + +/* static */ int32 ScriptStation::GetCargoPlannedVia(StationID station_id, + StationID via_station_id, CargoID cargo_id) +{ + return CountCargoPlanned(station_id, STATION_INVALID, via_station_id, cargo_id); +} + +/* static */ int32 ScriptStation::GetCargoPlannedFromVia(StationID station_id, + StationID from_station_id, StationID via_station_id, CargoID cargo_id) +{ + return CountCargoPlanned(station_id, from_station_id, via_station_id, cargo_id); +} + /* static */ bool ScriptStation::HasCargoRating(StationID station_id, CargoID cargo_id) { if (!IsValidStation(station_id)) return false; @@ -178,7 +230,7 @@ template return ::Station::Get(station_id)->town->index; } -/*static */ bool ScriptStation::IsAirportClosed(StationID station_id) +/* static */ bool ScriptStation::IsAirportClosed(StationID station_id) { EnforcePrecondition(false, IsValidStation(station_id)); EnforcePrecondition(false, HasStationType(station_id, STATION_AIRPORT)); @@ -186,7 +238,7 @@ template return (::Station::Get(station_id)->airport.flags & AIRPORT_CLOSED_block) != 0; } -/*static */ bool ScriptStation::OpenCloseAirport(StationID station_id) +/* static */ bool ScriptStation::OpenCloseAirport(StationID station_id) { EnforcePrecondition(false, IsValidStation(station_id)); EnforcePrecondition(false, HasStationType(station_id, STATION_AIRPORT)); diff --git a/src/script/api/script_station.hpp b/src/script/api/script_station.hpp index 26fc280421..8561cd9bdd 100644 --- a/src/script/api/script_station.hpp +++ b/src/script/api/script_station.hpp @@ -127,6 +127,58 @@ public: */ static int32 GetCargoWaitingFromVia(StationID station_id, StationID from_station_id, StationID via_station_id, CargoID cargo_id); + /** + * See how much cargo was planned to pass (including production and consumption) this station per month. + * @param station_id The station to get the planned flow for. + * @param cargo_id The cargo type to get the planned flow for. + * @pre IsValidStation(station_id). + * @pre IsValidCargo(cargo_id). + * @return The amount of cargo units planned to pass the station per month. + */ + static int32 GetCargoPlanned(StationID station_id, CargoID cargo_id); + + /** + * See how much cargo from the specified origin was planned to pass (including production and consumption) this station per month. + * @param station_id The station to get the planned flow for. + * @param from_station_id The station the cargo originates at. + * @param cargo_id The cargo type to get the planned flow for. + * @pre IsValidStation(station_id). + * @pre IsValidStation(from_station_id) || from_station_id == STATION_INVALID. + * @pre IsValidCargo(cargo_id). + * @return The amount of cargo units from the specified origin planned to pass the station per month. + */ + static int32 GetCargoPlannedFrom(StationID station_id, StationID from_station_id, CargoID cargo_id); + + /** + * See how much cargo was planned to pass (including production and consumption) this station per month, heading for the specified next hop. + * @param station_id The station to get the planned flow for. + * @param via_station_id The next station the cargo will go on to. + * @param cargo_id The cargo type to get the planned flow for. + * @pre IsValidStation(station_id). + * @pre IsValidStation(via_station_id) || via_station_id == STATION_INVALID. + * @pre IsValidCargo(cargo_id). + * @return The amount of cargo units planned to pass the station per month, going via the specified next hop. + * @note Cargo planned to go "via" the same station that's being queried is actually planned to be consumed there. + */ + static int32 GetCargoPlannedVia(StationID station_id, StationID via_station_id, CargoID cargo_id); + + /** + * See how much cargo from the specified origin was planned to pass this station per month, + * heading for the specified next hop. + * @param station_id The station to get the planned flow for. + * @param from_station_id The station the cargo originates at. + * @param via_station_id The next station the cargo will go on to. + * @param cargo_id The cargo type to get the planned flow for. + * @pre IsValidStation(station_id). + * @pre IsValidStation(from_station_id) || from_station_id == STATION_INVALID. + * @pre IsValidStation(via_station_id) || via_station_id == STATION_INVALID. + * @pre IsValidCargo(cargo_id). + * @return The amount of cargo units from the specified origin planned to pass the station per month, going via the specified next hop. + * @note Cargo planned to go "via" the same station that's being queried is actually planned to be consumed there. + * @note Cargo planned to pass "from" the same station that's being queried is actually produced there. + */ + static int32 GetCargoPlannedFromVia(StationID station_id, StationID from_station_id, StationID via_station_id, CargoID cargo_id); + /** * Check whether the given cargo at the given station a rating. * @param station_id The station to get the cargo-rating state of. @@ -239,15 +291,23 @@ public: * @param station_id The airport to modify. * @pre IsValidStation(station_id). * @pre HasStationType(station_id, STATION_AIRPORT). - * @return True if the state could be toggled. + * @return True if the state was toggled successfully. */ static bool OpenCloseAirport(StationID station_id); private: + template + static bool IsCargoRequestValid(StationID station_id, StationID from_station_id, + StationID via_station_id, CargoID cargo_id); + template static int32 CountCargoWaiting(StationID station_id, StationID from_station_id, StationID via_station_id, CargoID cargo_id); + template + static int32 CountCargoPlanned(StationID station_id, StationID from_station_id, + StationID via_station_id, CargoID cargo_id); + }; DECLARE_ENUM_AS_BIT_SET(ScriptStation::StationType) diff --git a/src/script/api/script_stationlist.cpp b/src/script/api/script_stationlist.cpp index 9d88fd8fc1..ab9503a1b5 100644 --- a/src/script/api/script_stationlist.cpp +++ b/src/script/api/script_stationlist.cpp @@ -12,6 +12,7 @@ #include "../../stdafx.h" #include "script_stationlist.hpp" #include "script_vehicle.hpp" +#include "script_cargo.hpp" #include "../../station_base.h" #include "../../vehicle_base.h" @@ -35,3 +36,240 @@ ScriptStationList_Vehicle::ScriptStationList_Vehicle(VehicleID vehicle_id) if (o->IsType(OT_GOTO_STATION)) this->AddItem(o->GetDestination()); } } + +ScriptStationList_Cargo::ScriptStationList_Cargo(ScriptStationList_Cargo::CargoMode mode, + ScriptStationList_Cargo::CargoSelector selector, StationID station_id, CargoID cargo, + StationID other_station) +{ + switch (mode) { + case CM_WAITING: + ScriptStationList_CargoWaiting(selector, station_id, cargo, other_station).SwapList(this); + break; + case CM_PLANNED: + ScriptStationList_CargoPlanned(selector, station_id, cargo, other_station).SwapList(this); + break; + default: + NOT_REACHED(); + } +} + +ScriptStationList_CargoWaiting::ScriptStationList_CargoWaiting( + ScriptStationList_Cargo::CargoSelector selector, StationID station_id, CargoID cargo, + StationID other_station) +{ + switch (selector) { + case CS_BY_FROM: + ScriptStationList_CargoWaitingByFrom(station_id, cargo).SwapList(this); + break; + case CS_VIA_BY_FROM: + ScriptStationList_CargoWaitingViaByFrom(station_id, cargo, other_station).SwapList(this); + break; + case CS_BY_VIA: + ScriptStationList_CargoWaitingByVia(station_id, cargo).SwapList(this); + break; + case CS_FROM_BY_VIA: + ScriptStationList_CargoWaitingFromByVia(station_id, cargo, other_station).SwapList(this); + break; + default: + NOT_REACHED(); + } +} + +ScriptStationList_CargoPlanned::ScriptStationList_CargoPlanned( + ScriptStationList_Cargo::CargoSelector selector, StationID station_id, CargoID cargo, + StationID other_station) +{ + switch (selector) { + case CS_BY_FROM: + ScriptStationList_CargoPlannedByFrom(station_id, cargo).SwapList(this); + break; + case CS_VIA_BY_FROM: + ScriptStationList_CargoPlannedViaByFrom(station_id, cargo, other_station).SwapList(this); + break; + case CS_BY_VIA: + ScriptStationList_CargoPlannedByVia(station_id, cargo).SwapList(this); + break; + case CS_FROM_BY_VIA: + ScriptStationList_CargoPlannedFromByVia(station_id, cargo, other_station).SwapList(this); + break; + default: + NOT_REACHED(); + } +} + +class CargoCollector { +public: + CargoCollector(ScriptStationList_Cargo *parent, StationID station_id, CargoID cargo, + StationID other); + ~CargoCollector() ; + + template + void Update(StationID from, StationID via, uint amount); + const GoodsEntry *GE() const { return ge; } + +private: + void SetValue(); + + ScriptStationList_Cargo *list; + const GoodsEntry *ge; + StationID other_station; + + StationID last_key; + uint amount; +}; + +CargoCollector::CargoCollector(ScriptStationList_Cargo *parent, + StationID station_id, CargoID cargo, StationID other) : + list(parent), ge(NULL), other_station(other), last_key(INVALID_STATION), amount(0) +{ + if (!ScriptStation::IsValidStation(station_id)) return; + if (!ScriptCargo::IsValidCargo(cargo)) return; + this->ge = &(Station::Get(station_id)->goods[cargo]); +} + +CargoCollector::~CargoCollector() +{ + this->SetValue(); +} + +void CargoCollector::SetValue() +{ + if (this->amount > 0) { + if (this->list->HasItem(this->last_key)) { + this->list->SetValue(this->last_key, + this->list->GetValue(this->last_key) + this->amount); + } else { + this->list->AddItem(this->last_key, this->amount); + } + } +} + +template +void CargoCollector::Update(StationID from, StationID via, uint amount) +{ + StationID key = INVALID_STATION; + switch (Tselector) { + case ScriptStationList_Cargo::CS_VIA_BY_FROM: + if (via != this->other_station) return; + /* fall through */ + case ScriptStationList_Cargo::CS_BY_FROM: + key = from; + break; + case ScriptStationList_Cargo::CS_FROM_BY_VIA: + if (from != this->other_station) return; + /* fall through */ + case ScriptStationList_Cargo::CS_BY_VIA: + key = via; + break; + } + if (key == this->last_key) { + this->amount += amount; + } else { + this->SetValue(); + this->amount = amount; + this->last_key = key; + } +} + + +template +void ScriptStationList_CargoWaiting::Add(StationID station_id, CargoID cargo, StationID other_station) +{ + CargoCollector collector(this, station_id, cargo, other_station); + if (collector.GE() == NULL) return; + + StationCargoList::ConstIterator iter = collector.GE()->cargo.Packets()->begin(); + StationCargoList::ConstIterator end = collector.GE()->cargo.Packets()->end(); + for (; iter != end; ++iter) { + collector.Update((*iter)->SourceStation(), iter.GetKey(), (*iter)->Count()); + } +} + + +template +void ScriptStationList_CargoPlanned::Add(StationID station_id, CargoID cargo, StationID other_station) +{ + CargoCollector collector(this, station_id, cargo, other_station); + if (collector.GE() == NULL) return; + + FlowStatMap::const_iterator iter = collector.GE()->flows.begin(); + FlowStatMap::const_iterator end = collector.GE()->flows.end(); + for (; iter != end; ++iter) { + const FlowStat::SharesMap *shares = iter->second.GetShares(); + uint prev = 0; + for (FlowStat::SharesMap::const_iterator flow_iter = shares->begin(); + flow_iter != shares->end(); ++flow_iter) { + collector.Update(iter->first, flow_iter->second, flow_iter->first - prev); + prev = flow_iter->first; + } + } +} + +ScriptStationList_CargoWaitingByFrom::ScriptStationList_CargoWaitingByFrom(StationID station_id, + CargoID cargo) +{ + this->Add(station_id, cargo); +} + +ScriptStationList_CargoWaitingViaByFrom::ScriptStationList_CargoWaitingViaByFrom( + StationID station_id, CargoID cargo, StationID via) +{ + CargoCollector collector(this, station_id, cargo, via); + if (collector.GE() == NULL) return; + + std::pair range = + collector.GE()->cargo.Packets()->equal_range(via); + for (StationCargoList::ConstIterator iter = range.first; iter != range.second; ++iter) { + collector.Update((*iter)->SourceStation(), iter.GetKey(), (*iter)->Count()); + } +} + + +ScriptStationList_CargoWaitingByVia::ScriptStationList_CargoWaitingByVia(StationID station_id, + CargoID cargo) +{ + this->Add(station_id, cargo); +} + +ScriptStationList_CargoWaitingFromByVia::ScriptStationList_CargoWaitingFromByVia( + StationID station_id, CargoID cargo, StationID from) +{ + this->Add(station_id, cargo, from); +} + +ScriptStationList_CargoPlannedByFrom::ScriptStationList_CargoPlannedByFrom(StationID station_id, + CargoID cargo) +{ + this->Add(station_id, cargo); +} + +ScriptStationList_CargoPlannedViaByFrom::ScriptStationList_CargoPlannedViaByFrom( + StationID station_id, CargoID cargo, StationID via) +{ + this->Add(station_id, cargo, via); +} + + +ScriptStationList_CargoPlannedByVia::ScriptStationList_CargoPlannedByVia(StationID station_id, + CargoID cargo) +{ + this->Add(station_id, cargo); +} + + +ScriptStationList_CargoPlannedFromByVia::ScriptStationList_CargoPlannedFromByVia( + StationID station_id, CargoID cargo, StationID from) +{ + CargoCollector collector(this, station_id, cargo, from); + if (collector.GE() == NULL) return; + + FlowStatMap::const_iterator iter = collector.GE()->flows.find(from); + if (iter == collector.GE()->flows.end()) return; + const FlowStat::SharesMap *shares = iter->second.GetShares(); + uint prev = 0; + for (FlowStat::SharesMap::const_iterator flow_iter = shares->begin(); + flow_iter != shares->end(); ++flow_iter) { + collector.Update(iter->first, flow_iter->second, flow_iter->first - prev); + prev = flow_iter->first; + } +} diff --git a/src/script/api/script_stationlist.hpp b/src/script/api/script_stationlist.hpp index cd9c98137d..720a43639b 100644 --- a/src/script/api/script_stationlist.hpp +++ b/src/script/api/script_stationlist.hpp @@ -28,6 +28,251 @@ public: ScriptStationList(ScriptStation::StationType station_type); }; +/** + * Creates a list of stations associated with cargo at a station. This is very generic. Use the + * subclasses for all practical purposes. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_Cargo : public ScriptList { +public: + /** + * Criteria of selecting and grouping cargo at a station. + */ + enum CargoSelector { + CS_BY_FROM, ///< Group by origin station. + CS_VIA_BY_FROM, ///< Select by next hop and group by origin station. + CS_BY_VIA, ///< Group by next hop. + CS_FROM_BY_VIA ///< Select by origin station and group by next hop. + }; + + /** + * Ways of associating cargo to stations. + */ + enum CargoMode { + CM_WAITING, ///< Waiting cargo. + CM_PLANNED ///< Planned cargo. + }; + + /** + * Creates a list of stations associated with cargo in the specified way, selected and grouped + * by the chosen criteria. + * @param mode Mode of association, either waiting cargo or planned cargo. + * @param selector Mode of grouping and selecting to be applied. + * @param station_id Station to be queried. + * @param cargo Cargo type to query for. + * @param other_station Other station to restrict the query with. + */ + ScriptStationList_Cargo(ScriptStationList_Cargo::CargoMode mode, ScriptStationList_Cargo::CargoSelector selector, StationID station_id, CargoID cargo, StationID other_station); + +protected: + + /** + * Creates an empty list. + */ + ScriptStationList_Cargo() {} +}; + +/** + * Creates a list of stations associated with cargo waiting at a station. This is very generic. Use + * the subclasses for all practical purposes. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoWaiting : public ScriptStationList_Cargo { +protected: + friend class ScriptStationList_Cargo; + + /** + * Creates an empty list. + */ + ScriptStationList_CargoWaiting() {} + + /** + * Add waiting cargo to the list. + * @param station_id Station to query for waiting cargo. + * @param cargo Cargo type to query for. + * @param other_station Other station to restrict the query with. + */ + template + void Add(StationID station_id, CargoID cargo, StationID other_station = INVALID_STATION); + +public: + + /** + * Creates a list of stations associated with waiting cargo, selected and grouped by the chosen + * criteria. + * @param selector Mode of grouping and selecting to be applied. + * @param station_id Station to be queried. + * @param cargo Cargo type to query for. + * @param other_station Other station to restrict the query with. + */ + ScriptStationList_CargoWaiting(ScriptStationList_Cargo::CargoSelector selector, StationID station_id, CargoID cargo, StationID other_station); +}; + +/** + * Creates a list of stations associated with cargo planned to pass a station. This is very + * generic. Use the subclasses for all practical purposes. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoPlanned : public ScriptStationList_Cargo { +protected: + friend class ScriptStationList_Cargo; + + /** + * Creates an empty list. + */ + ScriptStationList_CargoPlanned() {} + + /** + * Add planned cargo to the list. + * @param station_id Station to query for waiting cargo. + * @param cargo Cargo type to query for. + * @param other_station Other station to restrict the query with. + */ + template + void Add(StationID station_id, CargoID cargo, StationID other_station = INVALID_STATION); + +public: + + /** + * Creates a list of stations associated with cargo planned to pass the station, selected and + * grouped by the chosen criteria. + * @param selector Mode of grouping and selecting to be applied. + * @param station_id Station to be queried. + * @param cargo Cargo type to query for. + * @param other_station Other station to restrict the query with. + */ + ScriptStationList_CargoPlanned(ScriptStationList_Cargo::CargoSelector selector, StationID station_id, CargoID cargo, StationID other_station); +}; + +/** + * Creates a list of origin stations of waiting cargo at a station, with the amounts of cargo + * waiting from each of those origin stations as values. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoWaitingByFrom : public ScriptStationList_CargoWaiting { +public: + /** + * @param station_id Station to query for waiting cargo. + * @param cargo Cargo type to query for. + */ + ScriptStationList_CargoWaitingByFrom(StationID station_id, CargoID cargo); +}; + +/** + * Creates a list of origin stations of cargo waiting at a station for a transfer via another + * station, with the amounts of cargo waiting from each of those origin stations as values. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoWaitingViaByFrom : public ScriptStationList_CargoWaiting { +public: + /** + * @param station_id Station to query for waiting cargo. + * @param cargo Cargo type to query for. + * @param via Next hop to restrict the query with. + */ + ScriptStationList_CargoWaitingViaByFrom(StationID station_id, CargoID cargo, StationID via); +}; + +/** + * Creates a list of next hops of waiting cargo at a station, with the amounts of cargo waiting for + * each of those next hops as values. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoWaitingByVia : public ScriptStationList_CargoWaiting { +public: + /** + * @param station_id Station to query for waiting cargo. + * @param cargo Cargo type to query for. + */ + ScriptStationList_CargoWaitingByVia(StationID station_id, CargoID cargo); +}; + +/** + * Creates a list of next hops of waiting cargo from a specific station at another station, with + * the amounts of cargo waiting for each of those next hops as values. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoWaitingFromByVia : public ScriptStationList_CargoWaiting { +public: + /** + * @param station_id Station to query for waiting cargo. + * @param cargo Cargo type to query for. + * @param from Origin station to restrict the query with. + */ + ScriptStationList_CargoWaitingFromByVia(StationID station_id, CargoID cargo, StationID from); +}; + +/** + * Creates a list of origin stations of cargo planned to pass a station, with the monthly amounts + * of cargo planned for each of those origin stations as values. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoPlannedByFrom : public ScriptStationList_CargoPlanned { +public: + /** + * @param station_id Station to query for planned flows. + * @param cargo Cargo type to query for. + */ + ScriptStationList_CargoPlannedByFrom(StationID station_id, CargoID cargo); +}; + +/** + * Creates a list of origin stations of cargo planned to pass a station going via another station, + * with the monthly amounts of cargo planned for each of those origin stations as values. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoPlannedViaByFrom : public ScriptStationList_CargoPlanned { +public: + /** + * @param station_id Station to query for planned flows. + * @param cargo Cargo type to query for. + * @param via Next hop to restrict the query with. + */ + ScriptStationList_CargoPlannedViaByFrom(StationID station_id, CargoID cargo, StationID via); +}; + +/** + * Creates a list of next hops of cargo planned to pass a station, with the monthly amounts of + * cargo planned for each of those next hops as values. + * Cargo planned to go "via" the station being queried will actually be delivered there. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoPlannedByVia : public ScriptStationList_CargoPlanned { +public: + /** + * @param station_id Station to query for planned flows. + * @param cargo Cargo type to query for. + */ + ScriptStationList_CargoPlannedByVia(StationID station_id, CargoID cargo); +}; + +/** + * Creates a list of next hops of cargo planned to pass a station and originating from another + * station, with the monthly amounts of cargo planned for each of those next hops as values. + * Cargo planned to go "via" the station being queried will actually be delivered there. + * @api ai game + * @ingroup ScriptList + */ +class ScriptStationList_CargoPlannedFromByVia : public ScriptStationList_CargoPlanned { +public: + /** + * @param station_id Station to query for planned flows. + * @param cargo Cargo type to query for. + * @param from Origin station to restrict the query with. + */ + ScriptStationList_CargoPlannedFromByVia(StationID station_id, CargoID cargo, StationID from); +}; + /** * Creates a list of stations which the vehicle has in its orders. * @api ai game diff --git a/src/script/api/script_text.cpp b/src/script/api/script_text.cpp index 1529d45772..e692be0ae2 100644 --- a/src/script/api/script_text.cpp +++ b/src/script/api/script_text.cpp @@ -34,13 +34,13 @@ ScriptText::ScriptText(HSQUIRRELVM vm) : { int nparam = sq_gettop(vm) - 1; if (nparam < 1) { - throw sq_throwerror(vm, _SC("You need to pass at least a StringID to the constructor")); + throw sq_throwerror(vm, "You need to pass at least a StringID to the constructor"); } /* First resolve the StringID. */ SQInteger sqstring; if (SQ_FAILED(sq_getinteger(vm, 2, &sqstring))) { - throw sq_throwerror(vm, _SC("First argument must be a valid StringID")); + throw sq_throwerror(vm, "First argument must be a valid StringID"); } this->string = sqstring; @@ -51,7 +51,7 @@ ScriptText::ScriptText(HSQUIRRELVM vm) : if (SQ_FAILED(this->_SetParam(i, vm))) { this->~ScriptText(); - throw sq_throwerror(vm, _SC("Invalid parameter")); + throw sq_throwerror(vm, "Invalid parameter"); } /* Pop the parameter again. */ @@ -83,7 +83,7 @@ SQInteger ScriptText::_SetParam(int parameter, HSQUIRRELVM vm) const SQChar *value; sq_getstring(vm, -1, &value); - this->params[parameter] = stredup(SQ2OTTD(value)); + this->params[parameter] = stredup(value); ValidateString(this->params[parameter]); break; } @@ -104,7 +104,7 @@ SQInteger ScriptText::_SetParam(int parameter, HSQUIRRELVM vm) /* Validate if it is a GSText instance */ sq_pushroottable(vm); - sq_pushstring(vm, _SC("GSText"), -1); + sq_pushstring(vm, "GSText", -1); sq_get(vm, -2); sq_pushobject(vm, instance); if (sq_instanceof(vm) != SQTrue) return SQ_ERROR; @@ -157,9 +157,8 @@ SQInteger ScriptText::_set(HSQUIRRELVM vm) int32 k; if (sq_gettype(vm, 2) == OT_STRING) { - const SQChar *key; - sq_getstring(vm, 2, &key); - const char *key_string = SQ2OTTD(key); + const SQChar *key_string; + sq_getstring(vm, 2, &key_string); ValidateString(key_string); if (strncmp(key_string, "param_", 6) != 0 || strlen(key_string) > 8) return SQ_ERROR; @@ -202,7 +201,7 @@ char *ScriptText::_GetEncodedText(char *p, char *lastofp, int ¶m_count) p = this->paramt[i]->_GetEncodedText(p, lastofp, param_count); continue; } - p += seprintf(p, lastofp,":%X", (uint32)this->parami[i]); + p += seprintf(p, lastofp,":" OTTD_PRINTFHEX64, this->parami[i]); param_count++; } diff --git a/src/script/api/script_text.hpp b/src/script/api/script_text.hpp index fe38be1973..21bf3929fb 100644 --- a/src/script/api/script_text.hpp +++ b/src/script/api/script_text.hpp @@ -129,7 +129,7 @@ public: private: StringID string; char *params[SCRIPT_TEXT_MAX_PARAMETERS]; - int parami[SCRIPT_TEXT_MAX_PARAMETERS]; + int64 parami[SCRIPT_TEXT_MAX_PARAMETERS]; ScriptText *paramt[SCRIPT_TEXT_MAX_PARAMETERS]; int paramc; diff --git a/src/script/api/script_tilelist.hpp b/src/script/api/script_tilelist.hpp index 74c3afa52f..788432f783 100644 --- a/src/script/api/script_tilelist.hpp +++ b/src/script/api/script_tilelist.hpp @@ -65,9 +65,10 @@ class ScriptTileList_IndustryAccepting : public ScriptTileList { public: /** * @param industry_id The industry to create the ScriptTileList around. - * @param radius The radius of the station you will be using. + * @param radius The coverage radius of the station type you will be using. * @pre ScriptIndustry::IsValidIndustry(industry_id). * @pre radius > 0. + * @note A station part built on any of the returned tiles will give you coverage. */ ScriptTileList_IndustryAccepting(IndustryID industry_id, int radius); }; @@ -82,9 +83,10 @@ class ScriptTileList_IndustryProducing : public ScriptTileList { public: /** * @param industry_id The industry to create the ScriptTileList around. - * @param radius The radius of the station you will be using. + * @param radius The coverage radius of the station type you will be using. * @pre ScriptIndustry::IsValidIndustry(industry_id). * @pre radius > 0. + * @note A station part built on any of the returned tiles will give you acceptance. */ ScriptTileList_IndustryProducing(IndustryID industry_id, int radius); }; diff --git a/src/script/api/script_town.hpp b/src/script/api/script_town.hpp index 4aef587e61..03868e67a4 100644 --- a/src/script/api/script_town.hpp +++ b/src/script/api/script_town.hpp @@ -232,10 +232,10 @@ public: /** * Set the goal of a cargo for this town. * @param town_id The index of the town. - * @param towneffect_id The index of the cargo. + * @param towneffect_id The index of the towneffect. * @param goal The new goal. * @pre IsValidTown(town_id). - * @pre ScriptCargo::IsValidTownEffect(cargo_id). + * @pre ScriptCargo::IsValidTownEffect(towneffect_id). * @return True if the action succeeded. * @api -ai */ @@ -247,7 +247,7 @@ public: * @param town_id The index of the town. * @param towneffect_id The index of the towneffect. * @pre IsValidTown(town_id). - * @pre ScriptCargo::IsValidTownEffect(cargo_id). + * @pre ScriptCargo::IsValidTownEffect(towneffect_id). * @return The goal of the cargo. * @note Goals can change over time. For example with a changing snowline, or * with a growing town. @@ -263,6 +263,7 @@ public: * @return True if the action succeeded. * @note Even when setting a growth rate, towns only grow when the conditions for growth (SetCargoCoal) are met, * and the game settings (economy.town_growth_rate) allow town growth at all. + * @note When changing the growth rate, the relative progress is preserved and scaled to the new rate. * @api -ai */ static bool SetGrowthRate(TownID town_id, uint32 days_between_town_growth); diff --git a/src/script/api/script_window.hpp b/src/script/api/script_window.hpp index 81bac27ac3..58e114734e 100644 --- a/src/script/api/script_window.hpp +++ b/src/script/api/script_window.hpp @@ -529,7 +529,7 @@ public: /** * Generate landscape (newgame); %Window numbers: * - GLWM_SCENARIO = #CreateScenarioWidgets - * - #GenenerateLandscapeWindowMode = #GenerateLandscapeWidgets + * - #GenerateLandscapeWindowMode = #GenerateLandscapeWidgets */ WC_GENERATE_LANDSCAPE = ::WC_GENERATE_LANDSCAPE, @@ -923,6 +923,11 @@ public: enum ReplaceVehicleWidgets { WID_RV_CAPTION = ::WID_RV_CAPTION, ///< Caption of the window. + /* Sort dropdown at the right. */ + WID_RV_SORT_ASCENDING_DESCENDING = ::WID_RV_SORT_ASCENDING_DESCENDING, ///< Ascending/descending sort order button. + WID_RV_SHOW_HIDDEN_ENGINES = ::WID_RV_SHOW_HIDDEN_ENGINES, ///< Toggle whether to display the hidden vehicles. + WID_RV_SORT_DROPDOWN = ::WID_RV_SORT_DROPDOWN, ///< Dropdown for the sort criteria. + /* Left and right matrix + details. */ WID_RV_LEFT_MATRIX = ::WID_RV_LEFT_MATRIX, ///< The matrix on the left. WID_RV_LEFT_SCROLLBAR = ::WID_RV_LEFT_SCROLLBAR, ///< The scrollbar for the matrix on the left. @@ -971,13 +976,15 @@ public: /** Widgets of the #BuildVehicleWindow class. */ enum BuildVehicleWidgets { WID_BV_CAPTION = ::WID_BV_CAPTION, ///< Caption of window. - WID_BV_SORT_ASSENDING_DESCENDING = ::WID_BV_SORT_ASSENDING_DESCENDING, ///< Sort direction. + WID_BV_SORT_ASCENDING_DESCENDING = ::WID_BV_SORT_ASCENDING_DESCENDING, ///< Sort direction. WID_BV_SORT_DROPDOWN = ::WID_BV_SORT_DROPDOWN, ///< Criteria of sorting dropdown. WID_BV_CARGO_FILTER_DROPDOWN = ::WID_BV_CARGO_FILTER_DROPDOWN, ///< Cargo filter dropdown. + WID_BV_SHOW_HIDDEN_ENGINES = ::WID_BV_SHOW_HIDDEN_ENGINES, ///< Toggle whether to display the hidden vehicles. WID_BV_LIST = ::WID_BV_LIST, ///< List of vehicles. WID_BV_SCROLLBAR = ::WID_BV_SCROLLBAR, ///< Scrollbar of list. WID_BV_PANEL = ::WID_BV_PANEL, ///< Button panel. WID_BV_BUILD = ::WID_BV_BUILD, ///< Build panel. + WID_BV_SHOW_HIDE = ::WID_BV_SHOW_HIDE, ///< Button to hide or show the selected engine. WID_BV_BUILD_SEL = ::WID_BV_BUILD_SEL, ///< Build button. WID_BV_RENAME = ::WID_BV_RENAME, ///< Rename button. }; @@ -1286,6 +1293,10 @@ public: WID_GL_GENERATE_BUTTON = ::WID_GL_GENERATE_BUTTON, ///< 'Generate' button. + WID_GL_MAX_HEIGHTLEVEL_DOWN = ::WID_GL_MAX_HEIGHTLEVEL_DOWN, ///< Decrease max. heightlevel + WID_GL_MAX_HEIGHTLEVEL_TEXT = ::WID_GL_MAX_HEIGHTLEVEL_TEXT, ///< Max. heightlevel + WID_GL_MAX_HEIGHTLEVEL_UP = ::WID_GL_MAX_HEIGHTLEVEL_UP, ///< Increase max. heightlevel + WID_GL_START_DATE_DOWN = ::WID_GL_START_DATE_DOWN, ///< Decrease start year. WID_GL_START_DATE_TEXT = ::WID_GL_START_DATE_TEXT, ///< Start year. WID_GL_START_DATE_UP = ::WID_GL_START_DATE_UP, ///< Increase start year. @@ -1789,10 +1800,12 @@ public: WID_SA_RIGHT = ::WID_SA_RIGHT, ///< Move the sprite to the right. WID_SA_DOWN = ::WID_SA_DOWN, ///< Move the sprite down. WID_SA_SPRITE = ::WID_SA_SPRITE, ///< The actual sprite. - WID_SA_OFFSETS = ::WID_SA_OFFSETS, ///< The sprite offsets. + WID_SA_OFFSETS_ABS = ::WID_SA_OFFSETS_ABS, ///< The sprite offsets (absolute). + WID_SA_OFFSETS_REL = ::WID_SA_OFFSETS_REL, ///< The sprite offsets (relative). WID_SA_PICKER = ::WID_SA_PICKER, ///< Sprite picker. WID_SA_LIST = ::WID_SA_LIST, ///< Queried sprite list. WID_SA_SCROLLBAR = ::WID_SA_SCROLLBAR, ///< Scrollbar for sprite list. + WID_SA_RESET_REL = ::WID_SA_RESET_REL, ///< Reset relative sprite offset }; /* automatically generated from ../../widgets/newgrf_widget.h */ @@ -2117,6 +2130,7 @@ public: WID_GO_LANG_DROPDOWN = ::WID_GO_LANG_DROPDOWN, ///< Language dropdown. WID_GO_RESOLUTION_DROPDOWN = ::WID_GO_RESOLUTION_DROPDOWN, ///< Dropdown for the resolution. WID_GO_FULLSCREEN_BUTTON = ::WID_GO_FULLSCREEN_BUTTON, ///< Toggle fullscreen. + WID_GO_GUI_ZOOM_DROPDOWN = ::WID_GO_GUI_ZOOM_DROPDOWN, ///< Dropdown for the GUI zoom level. WID_GO_BASE_GRF_DROPDOWN = ::WID_GO_BASE_GRF_DROPDOWN, ///< Use to select a base GRF. WID_GO_BASE_GRF_STATUS = ::WID_GO_BASE_GRF_STATUS, ///< Info about missing files etc. WID_GO_BASE_GRF_TEXTFILE = ::WID_GO_BASE_GRF_TEXTFILE, ///< Open base GRF readme, changelog (+1) or license (+2). diff --git a/src/script/api/template/template_news.hpp.sq b/src/script/api/template/template_news.hpp.sq index f0a09bb495..445a055e10 100644 --- a/src/script/api/template/template_news.hpp.sq +++ b/src/script/api/template/template_news.hpp.sq @@ -15,6 +15,8 @@ namespace SQConvert { /* Allow enums to be used as Squirrel parameters */ template <> inline ScriptNews::NewsType GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQInteger tmp; sq_getinteger(vm, index, &tmp); return (ScriptNews::NewsType)tmp; } template <> inline int Return(HSQUIRRELVM vm, ScriptNews::NewsType res) { sq_pushinteger(vm, (int32)res); return 1; } + template <> inline ScriptNews::NewsReferenceType GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQInteger tmp; sq_getinteger(vm, index, &tmp); return (ScriptNews::NewsReferenceType)tmp; } + template <> inline int Return(HSQUIRRELVM vm, ScriptNews::NewsReferenceType res) { sq_pushinteger(vm, (int32)res); return 1; } /* Allow ScriptNews to be used as Squirrel parameter */ template <> inline ScriptNews *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptNews *)instance; } diff --git a/src/script/api/template/template_stationlist.hpp.sq b/src/script/api/template/template_stationlist.hpp.sq index f9f49a4ef2..5f7bd28129 100644 --- a/src/script/api/template/template_stationlist.hpp.sq +++ b/src/script/api/template/template_stationlist.hpp.sq @@ -20,6 +20,111 @@ namespace SQConvert { template <> inline int Return(HSQUIRRELVM vm, ScriptStationList *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList", res, NULL, DefSQDestructorCallback, true); return 1; } } // namespace SQConvert +namespace SQConvert { + /* Allow enums to be used as Squirrel parameters */ + template <> inline ScriptStationList_Cargo::CargoSelector GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQInteger tmp; sq_getinteger(vm, index, &tmp); return (ScriptStationList_Cargo::CargoSelector)tmp; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_Cargo::CargoSelector res) { sq_pushinteger(vm, (int32)res); return 1; } + template <> inline ScriptStationList_Cargo::CargoMode GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQInteger tmp; sq_getinteger(vm, index, &tmp); return (ScriptStationList_Cargo::CargoMode)tmp; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_Cargo::CargoMode res) { sq_pushinteger(vm, (int32)res); return 1; } + + /* Allow ScriptStationList_Cargo to be used as Squirrel parameter */ + template <> inline ScriptStationList_Cargo *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_Cargo *)instance; } + template <> inline ScriptStationList_Cargo &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_Cargo *)instance; } + template <> inline const ScriptStationList_Cargo *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_Cargo *)instance; } + template <> inline const ScriptStationList_Cargo &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_Cargo *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_Cargo *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_Cargo", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoWaiting to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoWaiting *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaiting *)instance; } + template <> inline ScriptStationList_CargoWaiting &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaiting *)instance; } + template <> inline const ScriptStationList_CargoWaiting *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaiting *)instance; } + template <> inline const ScriptStationList_CargoWaiting &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaiting *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoWaiting *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoWaiting", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoPlanned to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoPlanned *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlanned *)instance; } + template <> inline ScriptStationList_CargoPlanned &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlanned *)instance; } + template <> inline const ScriptStationList_CargoPlanned *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlanned *)instance; } + template <> inline const ScriptStationList_CargoPlanned &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlanned *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoPlanned *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoPlanned", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoWaitingByFrom to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoWaitingByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingByFrom *)instance; } + template <> inline ScriptStationList_CargoWaitingByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingByFrom *)instance; } + template <> inline const ScriptStationList_CargoWaitingByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingByFrom *)instance; } + template <> inline const ScriptStationList_CargoWaitingByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingByFrom *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoWaitingByFrom *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoWaitingByFrom", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoWaitingViaByFrom to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoWaitingViaByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingViaByFrom *)instance; } + template <> inline ScriptStationList_CargoWaitingViaByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingViaByFrom *)instance; } + template <> inline const ScriptStationList_CargoWaitingViaByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingViaByFrom *)instance; } + template <> inline const ScriptStationList_CargoWaitingViaByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingViaByFrom *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoWaitingViaByFrom *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoWaitingViaByFrom", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoWaitingByVia to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoWaitingByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingByVia *)instance; } + template <> inline ScriptStationList_CargoWaitingByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingByVia *)instance; } + template <> inline const ScriptStationList_CargoWaitingByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingByVia *)instance; } + template <> inline const ScriptStationList_CargoWaitingByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingByVia *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoWaitingByVia *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoWaitingByVia", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoWaitingFromByVia to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoWaitingFromByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingFromByVia *)instance; } + template <> inline ScriptStationList_CargoWaitingFromByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingFromByVia *)instance; } + template <> inline const ScriptStationList_CargoWaitingFromByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoWaitingFromByVia *)instance; } + template <> inline const ScriptStationList_CargoWaitingFromByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoWaitingFromByVia *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoWaitingFromByVia *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoWaitingFromByVia", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoPlannedByFrom to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoPlannedByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedByFrom *)instance; } + template <> inline ScriptStationList_CargoPlannedByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedByFrom *)instance; } + template <> inline const ScriptStationList_CargoPlannedByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedByFrom *)instance; } + template <> inline const ScriptStationList_CargoPlannedByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedByFrom *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoPlannedByFrom *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoPlannedByFrom", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoPlannedViaByFrom to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoPlannedViaByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedViaByFrom *)instance; } + template <> inline ScriptStationList_CargoPlannedViaByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedViaByFrom *)instance; } + template <> inline const ScriptStationList_CargoPlannedViaByFrom *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedViaByFrom *)instance; } + template <> inline const ScriptStationList_CargoPlannedViaByFrom &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedViaByFrom *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoPlannedViaByFrom *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoPlannedViaByFrom", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoPlannedByVia to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoPlannedByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedByVia *)instance; } + template <> inline ScriptStationList_CargoPlannedByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedByVia *)instance; } + template <> inline const ScriptStationList_CargoPlannedByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedByVia *)instance; } + template <> inline const ScriptStationList_CargoPlannedByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedByVia *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoPlannedByVia *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoPlannedByVia", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + +namespace SQConvert { + /* Allow ScriptStationList_CargoPlannedFromByVia to be used as Squirrel parameter */ + template <> inline ScriptStationList_CargoPlannedFromByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedFromByVia *)instance; } + template <> inline ScriptStationList_CargoPlannedFromByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedFromByVia *)instance; } + template <> inline const ScriptStationList_CargoPlannedFromByVia *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_CargoPlannedFromByVia *)instance; } + template <> inline const ScriptStationList_CargoPlannedFromByVia &GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(ScriptStationList_CargoPlannedFromByVia *)instance; } + template <> inline int Return(HSQUIRRELVM vm, ScriptStationList_CargoPlannedFromByVia *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "StationList_CargoPlannedFromByVia", res, NULL, DefSQDestructorCallback, true); return 1; } +} // namespace SQConvert + namespace SQConvert { /* Allow ScriptStationList_Vehicle to be used as Squirrel parameter */ template <> inline ScriptStationList_Vehicle *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (ScriptStationList_Vehicle *)instance; } diff --git a/src/script/script_info.cpp b/src/script/script_info.cpp index 83d3bab8a5..b95c6e366d 100644 --- a/src/script/script_info.cpp +++ b/src/script/script_info.cpp @@ -125,15 +125,14 @@ SQInteger ScriptInfo::AddSetting(HSQUIRRELVM vm) /* Read the table, and find all properties we care about */ sq_pushnull(vm); while (SQ_SUCCEEDED(sq_next(vm, -2))) { - const SQChar *sqkey; - if (SQ_FAILED(sq_getstring(vm, -2, &sqkey))) return SQ_ERROR; - const char *key = SQ2OTTD(sqkey); + const SQChar *key; + if (SQ_FAILED(sq_getstring(vm, -2, &key))) return SQ_ERROR; ValidateString(key); if (strcmp(key, "name") == 0) { const SQChar *sqvalue; if (SQ_FAILED(sq_getstring(vm, -1, &sqvalue))) return SQ_ERROR; - char *name = stredup(SQ2OTTD(sqvalue)); + char *name = stredup(sqvalue); char *s; ValidateString(name); @@ -146,7 +145,7 @@ SQInteger ScriptInfo::AddSetting(HSQUIRRELVM vm) } else if (strcmp(key, "description") == 0) { const SQChar *sqdescription; if (SQ_FAILED(sq_getstring(vm, -1, &sqdescription))) return SQ_ERROR; - config.description = stredup(SQ2OTTD(sqdescription)); + config.description = stredup(sqdescription); ValidateString(config.description); items |= 0x002; } else if (strcmp(key, "min_value") == 0) { @@ -230,9 +229,8 @@ SQInteger ScriptInfo::AddSetting(HSQUIRRELVM vm) SQInteger ScriptInfo::AddLabels(HSQUIRRELVM vm) { - const SQChar *sq_setting_name; - if (SQ_FAILED(sq_getstring(vm, -2, &sq_setting_name))) return SQ_ERROR; - const char *setting_name = SQ2OTTD(sq_setting_name); + const SQChar *setting_name; + if (SQ_FAILED(sq_getstring(vm, -2, &setting_name))) return SQ_ERROR; ValidateString(setting_name); ScriptConfigItem *config = NULL; @@ -253,15 +251,13 @@ SQInteger ScriptInfo::AddLabels(HSQUIRRELVM vm) /* Read the table and find all labels */ sq_pushnull(vm); while (SQ_SUCCEEDED(sq_next(vm, -2))) { - const SQChar *sq_key; - const SQChar *sq_label; - if (SQ_FAILED(sq_getstring(vm, -2, &sq_key))) return SQ_ERROR; - if (SQ_FAILED(sq_getstring(vm, -1, &sq_label))) return SQ_ERROR; + const SQChar *key_string; + const SQChar *label; + if (SQ_FAILED(sq_getstring(vm, -2, &key_string))) return SQ_ERROR; + if (SQ_FAILED(sq_getstring(vm, -1, &label))) return SQ_ERROR; /* Because squirrel doesn't support identifiers starting with a digit, * we skip the first character. */ - const char *key_string = SQ2OTTD(sq_key); int key = atoi(key_string + 1); - const char *label = SQ2OTTD(sq_label); ValidateString(label); /* !Contains() prevents stredup from leaking. */ diff --git a/src/script/script_info_dummy.cpp b/src/script/script_info_dummy.cpp index b70032f44b..e11c631512 100644 --- a/src/script/script_info_dummy.cpp +++ b/src/script/script_info_dummy.cpp @@ -9,8 +9,8 @@ /** @file script_info_dummy.cpp Implementation of a dummy Script. */ -#include #include "../stdafx.h" +#include #include "../string_func.h" #include "../strings_func.h" @@ -41,12 +41,12 @@ void Script_CreateDummyInfo(HSQUIRRELVM vm, const char *type, const char *dir) dp += seprintf(dp, lastof(dummy_script), "function CreateInstance() { return \"Dummy%s\"; }\n", type); dp += seprintf(dp, lastof(dummy_script), "} RegisterDummy%s(Dummy%s());\n", type, type); - const SQChar *sq_dummy_script = OTTD2SQ(dummy_script); + const SQChar *sq_dummy_script = dummy_script; sq_pushroottable(vm); /* Load and run the script */ - if (SQ_SUCCEEDED(sq_compilebuffer(vm, sq_dummy_script, scstrlen(sq_dummy_script), _SC("dummy"), SQTrue))) { + if (SQ_SUCCEEDED(sq_compilebuffer(vm, sq_dummy_script, strlen(sq_dummy_script), "dummy", SQTrue))) { sq_push(vm, -2); if (SQ_SUCCEEDED(sq_call(vm, 1, SQFalse, SQTrue))) { sq_pop(vm, 1); @@ -97,11 +97,11 @@ void Script_CreateDummy(HSQUIRRELVM vm, StringID string, const char *type) /* 3) We translate the error message in the character format that Squirrel wants. * We can use the fact that the wchar string printing also uses %s to print * old style char strings, which is what was generated during the script generation. */ - const SQChar *sq_dummy_script = OTTD2SQ(dummy_script); + const SQChar *sq_dummy_script = dummy_script; /* And finally we load and run the script */ sq_pushroottable(vm); - if (SQ_SUCCEEDED(sq_compilebuffer(vm, sq_dummy_script, scstrlen(sq_dummy_script), _SC("dummy"), SQTrue))) { + if (SQ_SUCCEEDED(sq_compilebuffer(vm, sq_dummy_script, strlen(sq_dummy_script), "dummy", SQTrue))) { sq_push(vm, -2); if (SQ_SUCCEEDED(sq_call(vm, 1, SQFalse, SQTrue))) { sq_pop(vm, 1); diff --git a/src/script/script_instance.cpp b/src/script/script_instance.cpp index 9cfe05c490..5df06ad890 100644 --- a/src/script/script_instance.cpp +++ b/src/script/script_instance.cpp @@ -46,7 +46,7 @@ ScriptStorage::~ScriptStorage() static void PrintFunc(bool error_msg, const SQChar *message) { /* Convert to OpenTTD internal capable string */ - ScriptController::Print(error_msg, SQ2OTTD(message)); + ScriptController::Print(error_msg, message); } ScriptInstance::ScriptInstance(const char *APIName) : @@ -367,11 +367,8 @@ static const SaveLoad _script_byte[] = { _script_sl_byte = SQSL_STRING; SlObject(NULL, _script_byte); } - const SQChar *res; - sq_getstring(vm, index, &res); - /* @bug if a string longer than 512 characters is given to SQ2OTTD, the - * internal buffer overflows. */ - const char *buf = SQ2OTTD(res); + const SQChar *buf; + sq_getstring(vm, index, &buf); size_t len = strlen(buf) + 1; if (len >= 255) { ScriptLog::Error("Maximum string length is 254 chars. No data saved."); @@ -569,7 +566,7 @@ bool ScriptInstance::IsPaused() SlObject(NULL, _script_byte); static char buf[256]; SlArray(buf, _script_sl_byte, SLE_CHAR); - if (vm != NULL) sq_pushstring(vm, OTTD2SQ(buf), -1); + if (vm != NULL) sq_pushstring(vm, buf, -1); return true; } @@ -594,7 +591,7 @@ bool ScriptInstance::IsPaused() case SQSL_BOOL: { SlObject(NULL, _script_byte); - if (vm != NULL) sq_pushinteger(vm, (SQBool)(_script_sl_byte != 0)); + if (vm != NULL) sq_pushbool(vm, (SQBool)(_script_sl_byte != 0)); return true; } @@ -658,7 +655,7 @@ bool ScriptInstance::CallLoad() /* Go to the instance-root */ sq_pushobject(vm, *this->instance); /* Find the function-name inside the script */ - sq_pushstring(vm, OTTD2SQ("Load"), -1); + sq_pushstring(vm, "Load", -1); /* Change the "Load" string in a function pointer */ sq_get(vm, -2); /* Push the main instance as "this" object */ diff --git a/src/script/squirrel.cpp b/src/script/squirrel.cpp index 9c101c7aab..e38067480d 100644 --- a/src/script/squirrel.cpp +++ b/src/script/squirrel.cpp @@ -19,26 +19,20 @@ #include <../squirrel/sqpcheader.h> #include <../squirrel/sqvm.h> -/* Due to the different characters for Squirrel, the scsnprintf might be a simple - * snprint which triggers the safeguard. But it isn't always a simple snprintf. - * Likewise for scvsnprintf and scstrcat. */ #include "../safeguards.h" -#undef snprintf -#undef vsnprintf -#undef strcat void Squirrel::CompileError(HSQUIRRELVM vm, const SQChar *desc, const SQChar *source, SQInteger line, SQInteger column) { SQChar buf[1024]; - scsnprintf(buf, lengthof(buf), _SC("Error %s:") SQ_PRINTF64 _SC("/") SQ_PRINTF64 _SC(": %s"), source, line, column, desc); + seprintf(buf, lastof(buf), "Error %s:" OTTD_PRINTF64 "/" OTTD_PRINTF64 ": %s", source, line, column, desc); /* Check if we have a custom print function */ Squirrel *engine = (Squirrel *)sq_getforeignptr(vm); engine->crashed = true; SQPrintFunc *func = engine->print_func; if (func == NULL) { - DEBUG(misc, 0, "[Squirrel] Compile error: %s", SQ2OTTD(buf)); + DEBUG(misc, 0, "[Squirrel] Compile error: %s", buf); } else { (*func)(true, buf); } @@ -50,13 +44,13 @@ void Squirrel::ErrorPrintFunc(HSQUIRRELVM vm, const SQChar *s, ...) SQChar buf[1024]; va_start(arglist, s); - scvsnprintf(buf, lengthof(buf), s, arglist); + vseprintf(buf, lastof(buf), s, arglist); va_end(arglist); /* Check if we have a custom print function */ SQPrintFunc *func = ((Squirrel *)sq_getforeignptr(vm))->print_func; if (func == NULL) { - scfprintf(stderr, _SC("%s"), buf); + fprintf(stderr, "%s", buf); } else { (*func)(true, buf); } @@ -70,11 +64,11 @@ void Squirrel::RunError(HSQUIRRELVM vm, const SQChar *error) /* Check if we have a custom print function */ SQChar buf[1024]; - scsnprintf(buf, lengthof(buf), _SC("Your script made an error: %s\n"), error); + seprintf(buf, lastof(buf), "Your script made an error: %s\n", error); Squirrel *engine = (Squirrel *)sq_getforeignptr(vm); SQPrintFunc *func = engine->print_func; if (func == NULL) { - scfprintf(stderr, _SC("%s"), buf); + fprintf(stderr, "%s", buf); } else { (*func)(true, buf); } @@ -96,7 +90,7 @@ SQInteger Squirrel::_RunError(HSQUIRRELVM vm) } } - Squirrel::RunError(vm, _SC("unknown error")); + Squirrel::RunError(vm, "unknown error"); return 0; } @@ -106,14 +100,14 @@ void Squirrel::PrintFunc(HSQUIRRELVM vm, const SQChar *s, ...) SQChar buf[1024]; va_start(arglist, s); - scvsnprintf(buf, lengthof(buf) - 2, s, arglist); + vseprintf(buf, lastof(buf) - 2, s, arglist); va_end(arglist); - scstrcat(buf, _SC("\n")); + strecat(buf, "\n", lastof(buf)); /* Check if we have a custom print function */ SQPrintFunc *func = ((Squirrel *)sq_getforeignptr(vm))->print_func; if (func == NULL) { - scprintf(_SC("%s"), buf); + printf("%s", buf); } else { (*func)(false, buf); } @@ -121,7 +115,7 @@ void Squirrel::PrintFunc(HSQUIRRELVM vm, const SQChar *s, ...) void Squirrel::AddMethod(const char *method_name, SQFUNCTION proc, uint nparam, const char *params, void *userdata, int size) { - sq_pushstring(this->vm, OTTD2SQ(method_name), -1); + sq_pushstring(this->vm, method_name, -1); if (size != 0) { void *ptr = sq_newuserdata(vm, size); @@ -129,21 +123,21 @@ void Squirrel::AddMethod(const char *method_name, SQFUNCTION proc, uint nparam, } sq_newclosure(this->vm, proc, size != 0 ? 1 : 0); - if (nparam != 0) sq_setparamscheck(this->vm, nparam, OTTD2SQ(params)); - sq_setnativeclosurename(this->vm, -1, OTTD2SQ(method_name)); + if (nparam != 0) sq_setparamscheck(this->vm, nparam, params); + sq_setnativeclosurename(this->vm, -1, method_name); sq_newslot(this->vm, -3, SQFalse); } void Squirrel::AddConst(const char *var_name, int value) { - sq_pushstring(this->vm, OTTD2SQ(var_name), -1); + sq_pushstring(this->vm, var_name, -1); sq_pushinteger(this->vm, value); sq_newslot(this->vm, -3, SQTrue); } void Squirrel::AddConst(const char *var_name, bool value) { - sq_pushstring(this->vm, OTTD2SQ(var_name), -1); + sq_pushstring(this->vm, var_name, -1); sq_pushbool(this->vm, value); sq_newslot(this->vm, -3, SQTrue); } @@ -151,15 +145,15 @@ void Squirrel::AddConst(const char *var_name, bool value) void Squirrel::AddClassBegin(const char *class_name) { sq_pushroottable(this->vm); - sq_pushstring(this->vm, OTTD2SQ(class_name), -1); + sq_pushstring(this->vm, class_name, -1); sq_newclass(this->vm, SQFalse); } void Squirrel::AddClassBegin(const char *class_name, const char *parent_class) { sq_pushroottable(this->vm); - sq_pushstring(this->vm, OTTD2SQ(class_name), -1); - sq_pushstring(this->vm, OTTD2SQ(parent_class), -1); + sq_pushstring(this->vm, class_name, -1); + sq_pushstring(this->vm, parent_class, -1); if (SQ_FAILED(sq_get(this->vm, -3))) { DEBUG(misc, 0, "[squirrel] Failed to initialize class '%s' based on parent class '%s'", class_name, parent_class); DEBUG(misc, 0, "[squirrel] Make sure that '%s' exists before trying to define '%s'", parent_class, class_name); @@ -181,7 +175,7 @@ bool Squirrel::MethodExists(HSQOBJECT instance, const char *method_name) /* Go to the instance-root */ sq_pushobject(this->vm, instance); /* Find the function-name inside the script */ - sq_pushstring(this->vm, OTTD2SQ(method_name), -1); + sq_pushstring(this->vm, method_name, -1); if (SQ_FAILED(sq_get(this->vm, -2))) { sq_settop(this->vm, top); return false; @@ -232,7 +226,7 @@ bool Squirrel::CallMethod(HSQOBJECT instance, const char *method_name, HSQOBJECT /* Go to the instance-root */ sq_pushobject(this->vm, instance); /* Find the function-name inside the script */ - sq_pushstring(this->vm, OTTD2SQ(method_name), -1); + sq_pushstring(this->vm, method_name, -1); if (SQ_FAILED(sq_get(this->vm, -2))) { DEBUG(misc, 0, "[squirrel] Could not find '%s' in the class", method_name); sq_settop(this->vm, top); @@ -293,9 +287,9 @@ bool Squirrel::CallBoolMethod(HSQOBJECT instance, const char *method_name, bool char *class_name2 = (char *)alloca(len); seprintf(class_name2, class_name2 + len - 1, "%s%s", engine->GetAPIName(), class_name); - sq_pushstring(vm, OTTD2SQ(class_name2), -1); + sq_pushstring(vm, class_name2, -1); } else { - sq_pushstring(vm, OTTD2SQ(class_name), -1); + sq_pushstring(vm, class_name, -1); } if (SQ_FAILED(sq_get(vm, -2))) { @@ -386,58 +380,45 @@ public: } }; -static SQInteger _io_file_lexfeed_ASCII(SQUserPointer file) +static WChar _io_file_lexfeed_ASCII(SQUserPointer file) { - char c; + unsigned char c; if (((SQFile *)file)->Read(&c, sizeof(c), 1) > 0) return c; return 0; } -static SQInteger _io_file_lexfeed_UTF8(SQUserPointer file) +static WChar _io_file_lexfeed_UTF8(SQUserPointer file) { - static const SQInteger utf8_lengths[16] = - { - 1, 1, 1, 1, 1, 1, 1, 1, /* 0000 to 0111 : 1 byte (plain ASCII) */ - 0, 0, 0, 0, /* 1000 to 1011 : not valid */ - 2, 2, /* 1100, 1101 : 2 bytes */ - 3, /* 1110 : 3 bytes */ - 4 /* 1111 : 4 bytes */ - }; - static unsigned char byte_masks[5] = {0, 0, 0x1F, 0x0F, 0x07}; - unsigned char inchar; - SQInteger c = 0; - if (((SQFile *)file)->Read(&inchar, sizeof(inchar), 1) != 1) return 0; - c = inchar; + char buffer[5]; - if (c >= 0x80) { - SQInteger tmp; - SQInteger codelen = utf8_lengths[c >> 4]; - if (codelen == 0) return 0; + /* Read the first character, and get the length based on UTF-8 specs. If invalid, bail out. */ + if (((SQFile *)file)->Read(buffer, sizeof(buffer[0]), 1) != 1) return 0; + uint len = Utf8EncodedCharLen(buffer[0]); + if (len == 0) return -1; + + /* Read the remaining bits. */ + if (len > 1 && ((SQFile *)file)->Read(buffer + 1, sizeof(buffer[0]), len - 1) != len - 1) return 0; + + /* Convert the character, and when definitely invalid, bail out as well. */ + WChar c; + if (Utf8Decode(&c, buffer) != len) return -1; - tmp = c & byte_masks[codelen]; - for (SQInteger n = 0; n < codelen - 1; n++) { - tmp <<= 6; - if (((SQFile *)file)->Read(&inchar, sizeof(inchar), 1) != 1) return 0; - tmp |= inchar & 0x3F; - } - c = tmp; - } return c; } -static SQInteger _io_file_lexfeed_UCS2_no_swap(SQUserPointer file) +static WChar _io_file_lexfeed_UCS2_no_swap(SQUserPointer file) { - wchar_t c; - if (((SQFile *)file)->Read(&c, sizeof(c), 1) > 0) return (SQChar)c; + unsigned short c; + if (((SQFile *)file)->Read(&c, sizeof(c), 1) > 0) return (WChar)c; return 0; } -static SQInteger _io_file_lexfeed_UCS2_swap(SQUserPointer file) +static WChar _io_file_lexfeed_UCS2_swap(SQUserPointer file) { unsigned short c; if (((SQFile *)file)->Read(&c, sizeof(c), 1) > 0) { c = ((c >> 8) & 0x00FF)| ((c << 8) & 0xFF00); - return (SQChar)c; + return (WChar)c; } return 0; } @@ -478,14 +459,14 @@ SQRESULT Squirrel::LoadFile(HSQUIRRELVM vm, const char *filename, SQBool printer case SQ_BYTECODE_STREAM_TAG: { // BYTECODE if (fseek(file, -2, SEEK_CUR) < 0) { FioFCloseFile(file); - return sq_throwerror(vm, _SC("cannot seek the file")); + return sq_throwerror(vm, "cannot seek the file"); } if (SQ_SUCCEEDED(sq_readclosure(vm, _io_file_read, &f))) { FioFCloseFile(file); return SQ_OK; } FioFCloseFile(file); - return sq_throwerror(vm, _SC("Couldn't read bytecode")); + return sq_throwerror(vm, "Couldn't read bytecode"); } case 0xFFFE: /* Either this file is encoded as big-endian and we're on a little-endian @@ -498,11 +479,11 @@ SQRESULT Squirrel::LoadFile(HSQUIRRELVM vm, const char *filename, SQBool printer case 0xEFBB: // UTF-8 on big-endian machine if (fread(&uc, 1, sizeof(uc), file) == 0) { FioFCloseFile(file); - return sq_throwerror(vm, _SC("I/O error")); + return sq_throwerror(vm, "I/O error"); } if (uc != 0xBF) { FioFCloseFile(file); - return sq_throwerror(vm, _SC("Unrecognized encoding")); + return sq_throwerror(vm, "Unrecognized encoding"); } func = _io_file_lexfeed_UTF8; break; @@ -510,19 +491,19 @@ SQRESULT Squirrel::LoadFile(HSQUIRRELVM vm, const char *filename, SQBool printer func = _io_file_lexfeed_ASCII; if (fseek(file, -2, SEEK_CUR) < 0) { FioFCloseFile(file); - return sq_throwerror(vm, _SC("cannot seek the file")); + return sq_throwerror(vm, "cannot seek the file"); } break; } - if (SQ_SUCCEEDED(sq_compile(vm, func, &f, OTTD2SQ(filename), printerror))) { + if (SQ_SUCCEEDED(sq_compile(vm, func, &f, filename, printerror))) { FioFCloseFile(file); return SQ_OK; } FioFCloseFile(file); return SQ_ERROR; } - return sq_throwerror(vm, _SC("cannot open the file")); + return sq_throwerror(vm, "cannot open the file"); } bool Squirrel::LoadScript(HSQUIRRELVM vm, const char *script, bool in_root) diff --git a/src/script/squirrel.hpp b/src/script/squirrel.hpp index 4fdde85a15..9e1d113a80 100644 --- a/src/script/squirrel.hpp +++ b/src/script/squirrel.hpp @@ -199,7 +199,7 @@ public: /** * Convert a Squirrel-object to a string. */ - static const char *ObjectToString(HSQOBJECT *ptr) { return SQ2OTTD(sq_objtostring(ptr)); } + static const char *ObjectToString(HSQOBJECT *ptr) { return sq_objtostring(ptr); } /** * Convert a Squirrel-object to an integer. @@ -230,7 +230,7 @@ public: /** * Throw a Squirrel error that will be nicely displayed to the user. */ - void ThrowError(const char *error) { sq_throwerror(this->vm, OTTD2SQ(error)); } + void ThrowError(const char *error) { sq_throwerror(this->vm, error); } /** * Release a SQ object. diff --git a/src/script/squirrel_helper.hpp b/src/script/squirrel_helper.hpp index 760d6c3bf4..22d738d4f7 100644 --- a/src/script/squirrel_helper.hpp +++ b/src/script/squirrel_helper.hpp @@ -88,8 +88,8 @@ namespace SQConvert { template <> inline int Return (HSQUIRRELVM vm, int64 res) { sq_pushinteger(vm, res); return 1; } template <> inline int Return (HSQUIRRELVM vm, Money res) { sq_pushinteger(vm, res); return 1; } template <> inline int Return (HSQUIRRELVM vm, bool res) { sq_pushbool (vm, res); return 1; } - template <> inline int Return (HSQUIRRELVM vm, char *res) { if (res == NULL) sq_pushnull(vm); else { sq_pushstring(vm, OTTD2SQ(res), -1); free(res); } return 1; } - template <> inline int Return(HSQUIRRELVM vm, const char *res) { if (res == NULL) sq_pushnull(vm); else { sq_pushstring(vm, OTTD2SQ(res), -1); } return 1; } + template <> inline int Return (HSQUIRRELVM vm, char *res) { if (res == NULL) sq_pushnull(vm); else { sq_pushstring(vm, res, -1); free(res); } return 1; } + template <> inline int Return(HSQUIRRELVM vm, const char *res) { if (res == NULL) sq_pushnull(vm); else { sq_pushstring(vm, res, -1); } return 1; } template <> inline int Return (HSQUIRRELVM vm, void *res) { sq_pushuserpointer(vm, res); return 1; } template <> inline int Return (HSQUIRRELVM vm, HSQOBJECT res) { sq_pushobject(vm, res); return 1; } @@ -115,7 +115,7 @@ namespace SQConvert { const SQChar *tmp; sq_getstring(vm, -1, &tmp); - char *tmp_str = stredup(SQ2OTTD(tmp)); + char *tmp_str = stredup(tmp); sq_poptop(vm); *ptr->Append() = (void *)tmp_str; str_validate(tmp_str, tmp_str + strlen(tmp_str)); @@ -125,7 +125,7 @@ namespace SQConvert { template <> inline Array *GetParam(ForceType, HSQUIRRELVM vm, int index, SQAutoFreePointers *ptr) { /* Sanity check of the size. */ - if (sq_getsize(vm, index) > UINT16_MAX) throw sq_throwerror(vm, _SC("an array used as parameter to a function is too large")); + if (sq_getsize(vm, index) > UINT16_MAX) throw sq_throwerror(vm, "an array used as parameter to a function is too large"); SQObject obj; sq_getstackobj(vm, index, &obj); @@ -140,7 +140,7 @@ namespace SQConvert { *data.Append() = (int32)tmp; } else { sq_pop(vm, 4); - throw sq_throwerror(vm, _SC("a member of an array used as parameter to a function is not numeric")); + throw sq_throwerror(vm, "a member of an array used as parameter to a function is not numeric"); } sq_pop(vm, 2); @@ -749,17 +749,17 @@ namespace SQConvert { /* Protect against calls to a non-static method in a static way */ sq_pushroottable(vm); const char *className = GetClassName(); - sq_pushstring(vm, OTTD2SQ(className), -1); + sq_pushstring(vm, className, -1); sq_get(vm, -2); sq_pushobject(vm, instance); - if (sq_instanceof(vm) != SQTrue) return sq_throwerror(vm, _SC("class method is non-static")); + if (sq_instanceof(vm) != SQTrue) return sq_throwerror(vm, "class method is non-static"); sq_pop(vm, 3); /* Get the 'real' instance of this class */ sq_getinstanceup(vm, 1, &real_instance, 0); /* Get the real function pointer */ sq_getuserdata(vm, nparam, &ptr, 0); - if (real_instance == NULL) return sq_throwerror(vm, _SC("couldn't detect real instance of class for non-static call")); + if (real_instance == NULL) return sq_throwerror(vm, "couldn't detect real instance of class for non-static call"); /* Remove the userdata from the stack */ sq_pop(vm, 1); @@ -791,17 +791,17 @@ namespace SQConvert { /* Protect against calls to a non-static method in a static way */ sq_pushroottable(vm); const char *className = GetClassName(); - sq_pushstring(vm, OTTD2SQ(className), -1); + sq_pushstring(vm, className, -1); sq_get(vm, -2); sq_pushobject(vm, instance); - if (sq_instanceof(vm) != SQTrue) return sq_throwerror(vm, _SC("class method is non-static")); + if (sq_instanceof(vm) != SQTrue) return sq_throwerror(vm, "class method is non-static"); sq_pop(vm, 3); /* Get the 'real' instance of this class */ sq_getinstanceup(vm, 1, &real_instance, 0); /* Get the real function pointer */ sq_getuserdata(vm, nparam, &ptr, 0); - if (real_instance == NULL) return sq_throwerror(vm, _SC("couldn't detect real instance of class for non-static call")); + if (real_instance == NULL) return sq_throwerror(vm, "couldn't detect real instance of class for non-static call"); /* Remove the userdata from the stack */ sq_pop(vm, 1); diff --git a/src/script/squirrel_std.cpp b/src/script/squirrel_std.cpp index 0fb8564c8c..96f087a2a7 100644 --- a/src/script/squirrel_std.cpp +++ b/src/script/squirrel_std.cpp @@ -9,20 +9,16 @@ /** @file squirrel_std.cpp Implements the Squirrel Standard Function class */ +#include "../stdafx.h" #include #include -#include "../stdafx.h" #include "../debug.h" #include "squirrel_std.hpp" #include "../core/alloc_func.hpp" #include "../core/math_func.hpp" #include "../string_func.h" -/* Due to the different characters for Squirrel, the scstrcat might be a simple - * strcat which triggers the safeguard. But it isn't always a simple strcat. */ #include "../safeguards.h" -#undef strcat -#undef strdup SQInteger SquirrelStd::min(HSQUIRRELVM vm) @@ -49,7 +45,6 @@ SQInteger SquirrelStd::require(HSQUIRRELVM vm) { SQInteger top = sq_gettop(vm); const SQChar *filename; - SQChar *real_filename; sq_getstring(vm, 2, &filename); @@ -60,31 +55,26 @@ SQInteger SquirrelStd::require(HSQUIRRELVM vm) DEBUG(misc, 0, "[squirrel] Couldn't detect the script-name of the 'require'-caller; this should never happen!"); return SQ_ERROR; } - real_filename = scstrdup(si.source); + + char path[MAX_PATH]; + strecpy(path, si.source, lastof(path)); /* Keep the dir, remove the rest */ - SQChar *s = scstrrchr(real_filename, PATHSEPCHAR); + SQChar *s = strrchr(path, PATHSEPCHAR); if (s != NULL) { /* Keep the PATHSEPCHAR there, remove the rest */ s++; *s = '\0'; } - /* And now we concat, so we are relative from the current script - * First, we have to make sure we have enough space for the full path */ - real_filename = ReallocT(real_filename, scstrlen(real_filename) + scstrlen(filename) + 1); - scstrcat(real_filename, filename); - /* Tars dislike opening files with '/' on Windows.. so convert it to '\\' ;) */ - char *filen = stredup(SQ2OTTD(real_filename)); + strecat(path, filename, lastof(path)); #if (PATHSEPCHAR != '/') - for (char *n = filen; *n != '\0'; n++) if (*n == '/') *n = PATHSEPCHAR; + for (char *n = path; *n != '\0'; n++) if (*n == '/') *n = PATHSEPCHAR; #endif Squirrel *engine = (Squirrel *)sq_getforeignptr(vm); - bool ret = engine->LoadScript(vm, filen); + bool ret = engine->LoadScript(vm, path); /* Reset the top, so the stack stays correct */ sq_settop(vm, top); - free(real_filename); - free(filen); return ret ? 0 : SQ_ERROR; } diff --git a/src/settings.cpp b/src/settings.cpp index 5cbdce9d9e..e6754bb905 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -1068,6 +1068,12 @@ static bool ZoomMinMaxChanged(int32 p1) extern void ConstrainAllViewportsZoom(); ConstrainAllViewportsZoom(); GfxClearSpriteCache(); + if (_settings_client.gui.zoom_min > _gui_zoom) { + /* Restrict GUI zoom if it is no longer available. */ + _gui_zoom = _settings_client.gui.zoom_min; + UpdateCursorSize(); + LoadStringWidthTable(); + } return true; } @@ -1141,7 +1147,7 @@ static bool InvalidateCompanyWindow(int32 p1) static void ValidateSettings() { /* Do not allow a custom sea level with the original land generator. */ - if (_settings_newgame.game_creation.land_generator == 0 && + if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL && _settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) { _settings_newgame.difficulty.quantity_sea_lakes = CUSTOM_SEA_LEVEL_MIN_PERCENTAGE; } @@ -1271,12 +1277,40 @@ static bool ChangeDynamicEngines(int32 p1) return true; } +static bool ChangeMaxHeightLevel(int32 p1) +{ + if (_game_mode == GM_NORMAL) return false; + if (_game_mode != GM_EDITOR) return true; + + /* Check if at least one mountain on the map is higher than the new value. + * If yes, disallow the change. */ + for (TileIndex t = 0; t < MapSize(); t++) { + if ((int32)TileHeight(t) > p1) { + ShowErrorMessage(STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN, INVALID_STRING_ID, WL_ERROR); + /* Return old, unchanged value */ + return false; + } + } + + /* The smallmap uses an index from heightlevels to colours. Trigger rebuilding it. */ + InvalidateWindowClassesData(WC_SMALLMAP, 2); + + return true; +} + static bool StationCatchmentChanged(int32 p1) { Station::RecomputeIndustriesNearForAll(); return true; } +static bool MaxVehiclesChanged(int32 p1) +{ + InvalidateWindowClassesData(WC_BUILD_TOOLBAR); + MarkWholeScreenDirty(); + return true; +} + #ifdef ENABLE_NETWORK diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index 958db55ac3..f1af4804e4 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -57,10 +57,19 @@ static const StringID _autosave_dropdown[] = { INVALID_STRING_ID, }; +static const StringID _gui_zoom_dropdown[] = { + STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL, + STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM, + STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM, + INVALID_STRING_ID, +}; + int _nb_orig_names = SPECSTR_TOWNNAME_LAST - SPECSTR_TOWNNAME_START + 1; ///< Number of original town names. static StringID *_grf_names = NULL; ///< Pointer to town names defined by NewGRFs. static int _nb_grf_names = 0; ///< Number of town names defined by NewGRFs. +static Dimension _circle_size; ///< Dimension of the circle +/- icon. This is here as not all users are within the class of the settings window. + static const void *ResolveVariableAddress(const GameSettings *settings_ptr, const SettingDesc *sd); /** Allocate memory for the NewGRF town names. */ @@ -277,6 +286,16 @@ struct GameOptionsWindow : Window { } break; + case WID_GO_GUI_ZOOM_DROPDOWN: { + list = new DropDownList(); + *selected_index = ZOOM_LVL_OUT_4X - _gui_zoom; + const StringID *items = _gui_zoom_dropdown; + for (int i = 0; *items != INVALID_STRING_ID; items++, i++) { + *list->Append() = new DropDownListStringItem(*items, i, _settings_client.gui.zoom_min > ZOOM_LVL_OUT_4X - i); + } + break; + } + case WID_GO_BASE_GRF_DROPDOWN: list = BuiltSetDropDownList(selected_index); break; @@ -305,6 +324,7 @@ struct GameOptionsWindow : Window { case WID_GO_AUTOSAVE_DROPDOWN: SetDParam(0, _autosave_dropdown[_settings_client.gui.autosave]); break; case WID_GO_LANG_DROPDOWN: SetDParamStr(0, _current_language->own_name); break; case WID_GO_RESOLUTION_DROPDOWN: SetDParam(0, GetCurRes() == _num_resolutions ? STR_GAME_OPTIONS_RESOLUTION_OTHER : SPECSTR_RESOLUTION_START + GetCurRes()); break; + case WID_GO_GUI_ZOOM_DROPDOWN: SetDParam(0, _gui_zoom_dropdown[ZOOM_LVL_OUT_4X - _gui_zoom]); break; case WID_GO_BASE_GRF_DROPDOWN: SetDParamStr(0, BaseGraphics::GetUsedSet()->name); break; case WID_GO_BASE_GRF_STATUS: SetDParam(0, BaseGraphics::GetUsedSet()->GetNumInvalid()); break; case WID_GO_BASE_SFX_DROPDOWN: SetDParamStr(0, BaseSounds::GetUsedSet()->name); break; @@ -507,6 +527,13 @@ struct GameOptionsWindow : Window { } break; + case WID_GO_GUI_ZOOM_DROPDOWN: + GfxClearSpriteCache(); + _gui_zoom = (ZoomLevel)(ZOOM_LVL_OUT_4X - index); + UpdateCursorSize(); + LoadStringWidthTable(); + break; + case WID_GO_BASE_GRF_DROPDOWN: this->SetMediaSet(index); break; @@ -566,6 +593,9 @@ static const NWidgetPart _nested_game_options_widgets[] = { NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_GO_FULLSCREEN_BUTTON), SetMinimalSize(21, 9), SetDataTip(STR_EMPTY, STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP), EndContainer(), EndContainer(), + NWidget(WWT_FRAME, COLOUR_GREY), SetDataTip(STR_GAME_OPTIONS_GUI_ZOOM_FRAME, STR_NULL), + NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GO_GUI_ZOOM_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_BLACK_STRING, STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP), SetFill(1, 0), + EndContainer(), EndContainer(), NWidget(NWID_VERTICAL), SetPIP(0, 6, 0), @@ -1107,7 +1137,7 @@ void SettingEntry::DrawSetting(GameSettings *settings_ptr, int left, int right, editable && value != (sdb->flags & SGF_0ISDISABLED ? 0 : sdb->min), editable && (uint32)value != sdb->max); } this->SetValueDParams(1, value); - DrawString(text_left, text_right, y, sdb->str, highlight ? TC_WHITE : TC_LIGHT_BLUE); + DrawString(text_left, text_right, y + (SETTING_HEIGHT - FONT_HEIGHT_NORMAL) / 2, sdb->str, highlight ? TC_WHITE : TC_LIGHT_BLUE); } /* == SettingsContainer methods == */ @@ -1417,8 +1447,8 @@ uint SettingsPage::Draw(GameSettings *settings_ptr, int left, int right, int y, void SettingsPage::DrawSetting(GameSettings *settings_ptr, int left, int right, int y, bool highlight) const { bool rtl = _current_text_dir == TD_RTL; - DrawSprite((this->folded ? SPR_CIRCLE_FOLDED : SPR_CIRCLE_UNFOLDED), PAL_NONE, rtl ? right - 8 : left, y + (SETTING_HEIGHT - 11) / 2); - DrawString(rtl ? left : left + 12, rtl ? right - 12 : right, y, this->title); + DrawSprite((this->folded ? SPR_CIRCLE_FOLDED : SPR_CIRCLE_UNFOLDED), PAL_NONE, rtl ? right - _circle_size.width : left, y + (SETTING_HEIGHT - _circle_size.height) / 2); + DrawString(rtl ? left : left + _circle_size.width + 2, rtl ? right - _circle_size.width - 2 : right, y + (SETTING_HEIGHT - FONT_HEIGHT_NORMAL) / 2, this->title); } /** Construct settings tree */ @@ -1467,7 +1497,7 @@ static SettingsContainer &GetSettingsTree() SettingsPage *general = interface->Add(new SettingsPage(STR_CONFIG_SETTING_INTERFACE_GENERAL)); { general->Add(new SettingEntry("gui.osk_activation")); - general->Add(new SettingEntry("gui.hover_delay")); + general->Add(new SettingEntry("gui.hover_delay_ms")); general->Add(new SettingEntry("gui.errmsg_duration")); general->Add(new SettingEntry("gui.window_snap_radius")); general->Add(new SettingEntry("gui.window_soft_limit")); @@ -1603,7 +1633,9 @@ static SettingsContainer &GetSettingsTree() limitations->Add(new SettingEntry("construction.command_pause_level")); limitations->Add(new SettingEntry("construction.autoslope")); limitations->Add(new SettingEntry("construction.extra_dynamite")); + limitations->Add(new SettingEntry("construction.max_heightlevel")); limitations->Add(new SettingEntry("construction.max_bridge_length")); + limitations->Add(new SettingEntry("construction.max_bridge_height")); limitations->Add(new SettingEntry("construction.max_tunnel_length")); limitations->Add(new SettingEntry("station.never_expire_airports")); limitations->Add(new SettingEntry("vehicle.never_expire_vehicles")); @@ -1765,6 +1797,7 @@ struct GameSettingsWindow : Window { this->filter.type_hides = false; this->settings_ptr = &GetGameSettings(); + _circle_size = maxdim(GetSpriteSize(SPR_CIRCLE_FOLDED), GetSpriteSize(SPR_CIRCLE_UNFOLDED)); GetSettingsTree().FoldAll(); // Close all sub-pages this->valuewindow_entry = NULL; // No setting entry for which a entry window is opened @@ -1789,7 +1822,7 @@ struct GameSettingsWindow : Window { { switch (widget) { case WID_GS_OPTIONSPANEL: - resize->height = SETTING_HEIGHT = max(11, FONT_HEIGHT_NORMAL + 1); + resize->height = SETTING_HEIGHT = max(max(_circle_size.height, SETTING_BUTTON_HEIGHT), FONT_HEIGHT_NORMAL) + 1; resize->width = 1; size->height = 5 * resize->height + SETTINGTREE_TOP_OFFSET + SETTINGTREE_BOTTOM_OFFSET; @@ -2291,7 +2324,7 @@ GameSettings *GameSettingsWindow::settings_ptr = NULL; static const NWidgetPart _nested_settings_selection_widgets[] = { NWidget(NWID_HORIZONTAL), NWidget(WWT_CLOSEBOX, COLOUR_MAUVE), - NWidget(WWT_CAPTION, COLOUR_MAUVE), SetDataTip(STR_CONFIG_SETTING_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), + NWidget(WWT_CAPTION, COLOUR_MAUVE), SetDataTip(STR_CONFIG_SETTING_TREE_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), NWidget(WWT_DEFSIZEBOX, COLOUR_MAUVE), EndContainer(), NWidget(WWT_PANEL, COLOUR_MAUVE), @@ -2319,16 +2352,13 @@ static const NWidgetPart _nested_settings_selection_widgets[] = { NWidget(WWT_PANEL, COLOUR_MAUVE), SetMinimalSize(400, 40), NWidget(WWT_EMPTY, INVALID_COLOUR, WID_GS_HELP_TEXT), SetMinimalSize(300, 25), SetFill(1, 1), SetResize(1, 0), SetPadding(WD_FRAMETEXT_TOP, WD_FRAMETEXT_RIGHT, WD_FRAMETEXT_BOTTOM, WD_FRAMETEXT_LEFT), - NWidget(NWID_HORIZONTAL), - NWidget(WWT_PANEL, COLOUR_MAUVE), - NWidget(NWID_HORIZONTAL), - NWidget(WWT_PUSHTXTBTN, COLOUR_MAUVE, WID_GS_EXPAND_ALL), SetDataTip(STR_CONFIG_SETTING_EXPAND_ALL, STR_NULL), - NWidget(WWT_PUSHTXTBTN, COLOUR_MAUVE, WID_GS_COLLAPSE_ALL), SetDataTip(STR_CONFIG_SETTING_COLLAPSE_ALL, STR_NULL), - NWidget(NWID_SPACER, INVALID_COLOUR), SetFill(1, 1), SetResize(1, 0), - EndContainer(), - EndContainer(), - NWidget(WWT_RESIZEBOX, COLOUR_MAUVE), + EndContainer(), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_PUSHTXTBTN, COLOUR_MAUVE, WID_GS_EXPAND_ALL), SetDataTip(STR_CONFIG_SETTING_EXPAND_ALL, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_MAUVE, WID_GS_COLLAPSE_ALL), SetDataTip(STR_CONFIG_SETTING_COLLAPSE_ALL, STR_NULL), + NWidget(WWT_PANEL, COLOUR_MAUVE), SetFill(1, 0), SetResize(1, 0), EndContainer(), + NWidget(WWT_RESIZEBOX, COLOUR_MAUVE), EndContainer(), }; @@ -2359,19 +2389,20 @@ void ShowGameSettings() void DrawArrowButtons(int x, int y, Colours button_colour, byte state, bool clickable_left, bool clickable_right) { int colour = _colour_gradient[button_colour][2]; + Dimension dim = NWidgetScrollbar::GetHorizontalDimension(); - DrawFrameRect(x, y, x + SETTING_BUTTON_WIDTH / 2 - 1, y + SETTING_BUTTON_HEIGHT - 1, button_colour, (state == 1) ? FR_LOWERED : FR_NONE); - DrawFrameRect(x + SETTING_BUTTON_WIDTH / 2, y, x + SETTING_BUTTON_WIDTH - 1, y + SETTING_BUTTON_HEIGHT - 1, button_colour, (state == 2) ? FR_LOWERED : FR_NONE); + DrawFrameRect(x, y, x + dim.width - 1, y + dim.height - 1, button_colour, (state == 1) ? FR_LOWERED : FR_NONE); + DrawFrameRect(x + dim.width, y, x + dim.width + dim.width - 1, y + dim.height - 1, button_colour, (state == 2) ? FR_LOWERED : FR_NONE); DrawSprite(SPR_ARROW_LEFT, PAL_NONE, x + WD_IMGBTN_LEFT, y + WD_IMGBTN_TOP); - DrawSprite(SPR_ARROW_RIGHT, PAL_NONE, x + WD_IMGBTN_LEFT + SETTING_BUTTON_WIDTH / 2, y + WD_IMGBTN_TOP); + DrawSprite(SPR_ARROW_RIGHT, PAL_NONE, x + WD_IMGBTN_LEFT + dim.width, y + WD_IMGBTN_TOP); /* Grey out the buttons that aren't clickable */ bool rtl = _current_text_dir == TD_RTL; if (rtl ? !clickable_right : !clickable_left) { - GfxFillRect(x + 1, y, x + SETTING_BUTTON_WIDTH / 2 - 1, y + SETTING_BUTTON_HEIGHT - 2, colour, FILLRECT_CHECKER); + GfxFillRect(x + 1, y, x + dim.width - 1, y + dim.height - 2, colour, FILLRECT_CHECKER); } if (rtl ? !clickable_left : !clickable_right) { - GfxFillRect(x + SETTING_BUTTON_WIDTH / 2 + 1, y, x + SETTING_BUTTON_WIDTH - 1, y + SETTING_BUTTON_HEIGHT - 2, colour, FILLRECT_CHECKER); + GfxFillRect(x + dim.width + 1, y, x + dim.width + dim.width - 1, y + dim.height - 2, colour, FILLRECT_CHECKER); } } @@ -2385,12 +2416,10 @@ void DrawArrowButtons(int x, int y, Colours button_colour, byte state, bool clic */ void DrawDropDownButton(int x, int y, Colours button_colour, bool state, bool clickable) { - static const char *DOWNARROW = "\xEE\x8A\xAA"; - int colour = _colour_gradient[button_colour][2]; DrawFrameRect(x, y, x + SETTING_BUTTON_WIDTH - 1, y + SETTING_BUTTON_HEIGHT - 1, button_colour, state ? FR_LOWERED : FR_NONE); - DrawString(x + (state ? 1 : 0), x + SETTING_BUTTON_WIDTH - (state ? 0 : 1), y + (state ? 2 : 1), DOWNARROW, TC_BLACK, SA_HOR_CENTER); + DrawSprite(SPR_ARROW_DOWN, PAL_NONE, x + (SETTING_BUTTON_WIDTH - NWidgetScrollbar::GetVerticalDimension().width) / 2 + state, y + 2 + state); if (!clickable) { GfxFillRect(x + 1, y, x + SETTING_BUTTON_WIDTH - 1, y + SETTING_BUTTON_HEIGHT - 2, colour, FILLRECT_CHECKER); diff --git a/src/settings_gui.h b/src/settings_gui.h index 2ca418b11f..05955aa557 100644 --- a/src/settings_gui.h +++ b/src/settings_gui.h @@ -14,8 +14,10 @@ #include "gfx_type.h" -static const int SETTING_BUTTON_WIDTH = 20; ///< Width of setting buttons -static const int SETTING_BUTTON_HEIGHT = 10; ///< Height of setting buttons +/** Width of setting buttons */ +#define SETTING_BUTTON_WIDTH ((int)NWidgetScrollbar::GetHorizontalDimension().width * 2) +/** Height of setting buttons */ +#define SETTING_BUTTON_HEIGHT ((int)NWidgetScrollbar::GetHorizontalDimension().height) void DrawArrowButtons(int x, int y, Colours button_colour, byte state, bool clickable_left, bool clickable_right); void DrawDropDownButton(int x, int y, Colours button_colour, bool state, bool clickable); diff --git a/src/settings_type.h b/src/settings_type.h index 7731e40c9c..41366a7719 100644 --- a/src/settings_type.h +++ b/src/settings_type.h @@ -83,7 +83,7 @@ struct GUISettings { uint8 stop_location; ///< what is the default stop location of trains? uint8 auto_scrolling; ///< scroll when moving mouse to the edge (see #ViewportAutoscrolling) byte errmsg_duration; ///< duration of error message - byte hover_delay; ///< time required to activate a hover event, in seconds + uint16 hover_delay_ms; ///< time required to activate a hover event, in milliseconds bool link_terraform_toolbar; ///< display terraform toolbar when displaying rail, road, water and airport toolbars uint8 smallmap_land_colour; ///< colour used for land and heightmap at the smallmap bool reverse_scroll; ///< right-Click-Scrolling scrolls in the opposite direction @@ -144,7 +144,7 @@ struct GUISettings { uint8 station_gui_sort_by; ///< sort cargo entries in the station gui by station name or amount uint8 station_gui_sort_order; ///< the sort order of entries in the station gui - ascending or descending #ifdef ENABLE_NETWORK - uint16 network_chat_box_width; ///< width of the chat box in pixels + uint16 network_chat_box_width_pct; ///< width of the chat box in percent uint8 network_chat_box_height; ///< height of the chat box in lines uint16 network_chat_timeout; ///< timeout of chat messages in seconds #endif @@ -278,7 +278,7 @@ struct GameCreationSettings { uint8 map_y; ///< Y size of map byte land_generator; ///< the landscape generator byte oil_refinery_limit; ///< distance oil refineries allowed from map edge - byte snow_line_height; ///< a number 0-15 that configured snow line height + byte snow_line_height; ///< the configured snow line height byte tgen_smoothness; ///< how rough is the terrain from 0-3 byte tree_placer; ///< the tree placer algorithm byte heightmap_rotation; ///< rotation director for the heightmap @@ -296,9 +296,11 @@ struct GameCreationSettings { /** Settings related to construction in-game */ struct ConstructionSettings { + uint8 max_heightlevel; ///< maximum allowed heightlevel bool build_on_slopes; ///< allow building on slopes bool autoslope; ///< allow terraforming under things uint16 max_bridge_length; ///< maximum length of bridges + byte max_bridge_height; ///< maximum height of bridges uint16 max_tunnel_length; ///< maximum length of tunnels byte train_signal_side; ///< show signals on left / driving / right side bool extra_dynamite; ///< extra dynamite diff --git a/src/ship_cmd.cpp b/src/ship_cmd.cpp index b14e1f2ae5..942b1f960c 100644 --- a/src/ship_cmd.cpp +++ b/src/ship_cmd.cpp @@ -90,7 +90,9 @@ void DrawShipEngine(int left, int right, int preferred_x, int y, EngineID engine { SpriteID sprite = GetShipIcon(engine, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - preferred_x = Clamp(preferred_x, left - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI), right - UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI) - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI)); + preferred_x = Clamp(preferred_x, + left - UnScaleGUI(real_sprite->x_offs), + right - UnScaleGUI(real_sprite->width) - UnScaleGUI(real_sprite->x_offs)); DrawSprite(sprite, pal, preferred_x, y); } @@ -107,10 +109,10 @@ void GetShipSpriteSize(EngineID engine, uint &width, uint &height, int &xoffs, i { const Sprite *spr = GetSprite(GetShipIcon(engine, image_type), ST_NORMAL); - width = UnScaleByZoom(spr->width, ZOOM_LVL_GUI); - height = UnScaleByZoom(spr->height, ZOOM_LVL_GUI); - xoffs = UnScaleByZoom(spr->x_offs, ZOOM_LVL_GUI); - yoffs = UnScaleByZoom(spr->y_offs, ZOOM_LVL_GUI); + width = UnScaleGUI(spr->width); + height = UnScaleGUI(spr->height); + xoffs = UnScaleGUI(spr->x_offs); + yoffs = UnScaleGUI(spr->y_offs); } SpriteID Ship::GetImage(Direction direction, EngineImageType image_type) const @@ -632,8 +634,8 @@ static void ShipController(Ship *v) if (!IsTileType(gp.new_tile, MP_TUNNELBRIDGE) || !HasBit(VehicleEnterTile(v, gp.new_tile, gp.x, gp.y), VETS_ENTERED_WORMHOLE)) { v->x_pos = gp.x; v->y_pos = gp.y; - VehicleUpdatePosition(v); - if ((v->vehstatus & VS_HIDDEN) == 0) VehicleUpdateViewport(v, true); + v->UpdatePosition(); + if ((v->vehstatus & VS_HIDDEN) == 0) v->Vehicle::UpdateViewport(true); return; } } @@ -645,7 +647,7 @@ static void ShipController(Ship *v) v->z_pos = GetSlopePixelZ(gp.x, gp.y); getout: - VehicleUpdatePosition(v); + v->UpdatePosition(); v->UpdateViewport(true, true); return; @@ -729,7 +731,7 @@ CommandCost CmdBuildShip(TileIndex tile, DoCommandFlag flags, const Engine *e, u v->InvalidateNewGRFCacheOfChain(); - VehicleUpdatePosition(v); + v->UpdatePosition(); } return CommandCost(); diff --git a/src/ship_gui.cpp b/src/ship_gui.cpp index cd04efbef5..7ad2e8473a 100644 --- a/src/ship_gui.cpp +++ b/src/ship_gui.cpp @@ -38,16 +38,17 @@ void DrawShipImage(const Vehicle *v, int left, int right, int y, VehicleID selec SpriteID sprite = v->GetImage(rtl ? DIR_E : DIR_W, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - int width = UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI); - int x_offs = UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI); + int width = UnScaleGUI(real_sprite->width); + int x_offs = UnScaleGUI(real_sprite->x_offs); int x = rtl ? right - width - x_offs : left - x_offs; - DrawSprite(sprite, GetVehiclePalette(v), x, y + 10); + y += ScaleGUITrad(10); + DrawSprite(sprite, GetVehiclePalette(v), x, y); if (v->index == selection) { x += x_offs; - y += UnScaleByZoom(real_sprite->y_offs, ZOOM_LVL_GUI) + 10; - DrawFrameRect(x - 1, y - 1, x + width + 1, y + UnScaleByZoom(real_sprite->height, ZOOM_LVL_GUI) + 1, COLOUR_WHITE, FR_BORDERONLY); + y += UnScaleGUI(real_sprite->y_offs); + DrawFrameRect(x - 1, y - 1, x + width + 1, y + UnScaleGUI(real_sprite->height) + 1, COLOUR_WHITE, FR_BORDERONLY); } } diff --git a/src/signs_gui.cpp b/src/signs_gui.cpp index 2358e9492c..a34f1db077 100644 --- a/src/signs_gui.cpp +++ b/src/signs_gui.cpp @@ -160,7 +160,6 @@ struct SignListWindow : Window, SignList { /* Initialize the text edit widget */ this->querystrings[WID_SIL_FILTER_TEXT] = &this->filter_editbox; - this->filter_editbox.ok_button = WID_SIL_FILTER_ENTER_BTN; this->filter_editbox.cancel_button = QueryString::ACTION_CLEAR; /* Initialize the filtering variables */ diff --git a/src/smallmap_gui.cpp b/src/smallmap_gui.cpp index a8da3284e1..80d4ae2a89 100644 --- a/src/smallmap_gui.cpp +++ b/src/smallmap_gui.cpp @@ -28,6 +28,8 @@ #include "table/strings.h" +#include + #include "safeguards.h" static int _smallmap_industry_count; ///< Number of used industries @@ -50,7 +52,7 @@ static const uint8 PC_WATER = 0xCA; ///< Dark blue palette colour for #define MK(a, b) {a, b, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, false} /** Macro for a height legend entry with configurable colour. */ -#define MC(height) {0, STR_TINY_BLACK_HEIGHT, INVALID_INDUSTRYTYPE, height, INVALID_COMPANY, true, false, false} +#define MC(col_break) {0, STR_TINY_BLACK_HEIGHT, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, col_break} /** Macro for non-company owned property entry of LegendAndColour */ #define MO(a, b) {a, b, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, false} @@ -69,18 +71,27 @@ static const uint8 PC_WATER = 0xCA; ///< Dark blue palette colour for /** Legend text giving the colours to look for on the minimap */ static LegendAndColour _legend_land_contours[] = { - /* The colours for the following values are set at BuildLandLegend() based on each colour scheme. */ - MC(0), - MC(4), - MC(8), - MC(12), - MC(14), - - MS(PC_BLACK, STR_SMALLMAP_LEGENDA_ROADS), + MK(PC_BLACK, STR_SMALLMAP_LEGENDA_ROADS), MK(PC_GREY, STR_SMALLMAP_LEGENDA_RAILROADS), MK(PC_LIGHT_BLUE, STR_SMALLMAP_LEGENDA_STATIONS_AIRPORTS_DOCKS), MK(PC_DARK_RED, STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES), MK(PC_WHITE, STR_SMALLMAP_LEGENDA_VEHICLES), + + /* Placeholders for the colours and heights of the legend. + * The following values are set at BuildLandLegend() based + * on each colour scheme and the maximum map height. */ + MC(true), + MC(false), + MC(false), + MC(false), + MC(false), + MC(false), + MC(true), + MC(false), + MC(false), + MC(false), + MC(false), + MC(false), MKEND() }; @@ -166,7 +177,7 @@ void BuildIndustriesLegend() uint j = 0; /* Add each name */ - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { IndustryType ind = _sorted_industry_types[i]; const IndustrySpec *indsp = GetIndustrySpec(ind); if (indsp->enabled) { @@ -248,80 +259,21 @@ static const LegendAndColour * const _legend_table[] = { #define MKCOLOUR_F00F MKCOLOUR_X00X(0xFF) #define MKCOLOUR_FFFF MKCOLOUR_XXXX(0xFF) -/** Height map colours for the green colour scheme, ordered by height. */ -static const uint32 _green_map_heights[] = { - MKCOLOUR_XXXX(0x5A), - MKCOLOUR_XYXY(0x5A, 0x5B), - MKCOLOUR_XXXX(0x5B), - MKCOLOUR_XYXY(0x5B, 0x5C), - MKCOLOUR_XXXX(0x5C), - MKCOLOUR_XYXY(0x5C, 0x5D), - MKCOLOUR_XXXX(0x5D), - MKCOLOUR_XYXY(0x5D, 0x5E), - MKCOLOUR_XXXX(0x5E), - MKCOLOUR_XYXY(0x5E, 0x5F), - MKCOLOUR_XXXX(0x5F), - MKCOLOUR_XYXY(0x5F, 0x1F), - MKCOLOUR_XXXX(0x1F), - MKCOLOUR_XYXY(0x1F, 0x27), - MKCOLOUR_XXXX(0x27), - MKCOLOUR_XXXX(0x27), -}; -assert_compile(lengthof(_green_map_heights) == MAX_TILE_HEIGHT + 1); - -/** Height map colours for the dark green colour scheme, ordered by height. */ -static const uint32 _dark_green_map_heights[] = { - MKCOLOUR_XXXX(0x60), - MKCOLOUR_XYXY(0x60, 0x61), - MKCOLOUR_XXXX(0x61), - MKCOLOUR_XYXY(0x61, 0x62), - MKCOLOUR_XXXX(0x62), - MKCOLOUR_XYXY(0x62, 0x63), - MKCOLOUR_XXXX(0x63), - MKCOLOUR_XYXY(0x63, 0x64), - MKCOLOUR_XXXX(0x64), - MKCOLOUR_XYXY(0x64, 0x65), - MKCOLOUR_XXXX(0x65), - MKCOLOUR_XYXY(0x65, 0x66), - MKCOLOUR_XXXX(0x66), - MKCOLOUR_XYXY(0x66, 0x67), - MKCOLOUR_XXXX(0x67), - MKCOLOUR_XXXX(0x67), -}; -assert_compile(lengthof(_dark_green_map_heights) == MAX_TILE_HEIGHT + 1); - -/** Height map colours for the violet colour scheme, ordered by height. */ -static const uint32 _violet_map_heights[] = { - MKCOLOUR_XXXX(0x80), - MKCOLOUR_XYXY(0x80, 0x81), - MKCOLOUR_XXXX(0x81), - MKCOLOUR_XYXY(0x81, 0x82), - MKCOLOUR_XXXX(0x82), - MKCOLOUR_XYXY(0x82, 0x83), - MKCOLOUR_XXXX(0x83), - MKCOLOUR_XYXY(0x83, 0x84), - MKCOLOUR_XXXX(0x84), - MKCOLOUR_XYXY(0x84, 0x85), - MKCOLOUR_XXXX(0x85), - MKCOLOUR_XYXY(0x85, 0x86), - MKCOLOUR_XXXX(0x86), - MKCOLOUR_XYXY(0x86, 0x87), - MKCOLOUR_XXXX(0x87), - MKCOLOUR_XXXX(0x87), -}; -assert_compile(lengthof(_violet_map_heights) == MAX_TILE_HEIGHT + 1); +#include "table/heightmap_colours.h" /** Colour scheme of the smallmap. */ struct SmallMapColourScheme { - const uint32 *height_colours; ///< Colour of each level in a heightmap. - uint32 default_colour; ///< Default colour of the land. + uint32 *height_colours; ///< Cached colours for each level in a map. + const uint32 *height_colours_base; ///< Base table for determining the colours + size_t colour_count; ///< The number of colours. + uint32 default_colour; ///< Default colour of the land. }; /** Available colour schemes for height maps. */ -static const SmallMapColourScheme _heightmap_schemes[] = { - {_green_map_heights, MKCOLOUR_XXXX(0x54)}, ///< Green colour scheme. - {_dark_green_map_heights, MKCOLOUR_XXXX(0x62)}, ///< Dark green colour scheme. - {_violet_map_heights, MKCOLOUR_XXXX(0x82)}, ///< Violet colour scheme. +static SmallMapColourScheme _heightmap_schemes[] = { + {NULL, _green_map_heights, lengthof(_green_map_heights), MKCOLOUR_XXXX(0x54)}, ///< Green colour scheme. + {NULL, _dark_green_map_heights, lengthof(_dark_green_map_heights), MKCOLOUR_XXXX(0x62)}, ///< Dark green colour scheme. + {NULL, _violet_map_heights, lengthof(_violet_map_heights), MKCOLOUR_XXXX(0x82)}, ///< Violet colour scheme. }; /** @@ -329,9 +281,50 @@ static const SmallMapColourScheme _heightmap_schemes[] = { */ void BuildLandLegend() { - for (LegendAndColour *lc = _legend_land_contours; lc->legend == STR_TINY_BLACK_HEIGHT; lc++) { - lc->colour = _heightmap_schemes[_settings_client.gui.smallmap_land_colour].height_colours[lc->height]; + /* The smallmap window has never been initialized, so no need to change the legend. */ + if (_heightmap_schemes[0].height_colours == NULL) return; + + /* + * The general idea of this function is to fill the legend with an appropriate evenly spaced + * selection of height levels. All entries with STR_TINY_BLACK_HEIGHT are reserved for this. + * At the moment there are twelve of these. + * + * The table below defines up to which height level a particular delta in the legend should be + * used. One could opt for just dividing the maximum height and use that as delta, but that + * creates many "ugly" legend labels, e.g. once every 950 meter. As a result, this table will + * reduce the number of deltas to 7: every 100m, 200m, 300m, 500m, 750m, 1000m and 1250m. The + * deltas are closer together at the lower numbers because going from 12 entries to just 4, as + * would happen when replacing 200m and 300m by 250m, would mean the legend would be short and + * that might not be considered appropriate. + * + * The current method yields at least 7 legend entries and at most 12. It can be increased to + * 8 by adding a 150m and 400m option, but especially 150m creates ugly heights. + * + * It tries to evenly space the legend items over the two columns that are there for the legend. + */ + + /* Table for delta; if max_height is less than the first column, use the second column as value. */ + uint deltas[][2] = { { 24, 2 }, { 48, 4 }, { 72, 6 }, { 120, 10 }, { 180, 15 }, { 240, 20 }, { MAX_TILE_HEIGHT + 1, 25 }}; + uint i = 0; + for (; _settings_game.construction.max_heightlevel >= deltas[i][0]; i++) { + /* Nothing to do here. */ } + uint delta = deltas[i][1]; + + int total_entries = (_settings_game.construction.max_heightlevel / delta) + 1; + int rows = CeilDiv(total_entries, 2); + int j = 0; + + for (i = 0; i < lengthof(_legend_land_contours) - 1 && j < total_entries; i++) { + if (_legend_land_contours[i].legend != STR_TINY_BLACK_HEIGHT) continue; + + _legend_land_contours[i].col_break = j % rows == 0; + _legend_land_contours[i].end = false; + _legend_land_contours[i].height = j * delta; + _legend_land_contours[i].colour = _heightmap_schemes[_settings_client.gui.smallmap_land_colour].height_colours[j * delta]; + j++; + } + _legend_land_contours[i].end = true; } /** @@ -856,7 +849,7 @@ void SmallMapWindow::DrawVehicles(const DrawPixelInfo *dpi, Blitter *blitter) co if (v->vehstatus & (VS_HIDDEN | VS_UNCLICKABLE)) continue; /* Remap into flat coordinates. */ - Point pt = this->RemapTile(v->x_pos / TILE_SIZE, v->y_pos / TILE_SIZE); + Point pt = this->RemapTile(v->x_pos / (int)TILE_SIZE, v->y_pos / (int)TILE_SIZE); int y = pt.y - dpi->top; if (!IsInsideMM(y, 0, dpi->height)) continue; // y is out of bounds. @@ -916,19 +909,20 @@ void SmallMapWindow::DrawMapIndicators() const /* Find main viewport. */ const ViewPort *vp = FindWindowById(WC_MAIN_WINDOW, 0)->viewport; - Point tile = InverseRemapCoords(vp->virtual_left, vp->virtual_top); - Point tl = this->RemapTile(tile.x >> 4, tile.y >> 4); - tl.x -= this->subscroll; + Point upper_left_smallmap_coord = TranslateXYToTileCoord(vp, vp->left, vp->top, false); + Point lower_right_smallmap_coord = TranslateXYToTileCoord(vp, vp->left + vp->width - 1, vp->top + vp->height - 1, false); - tile = InverseRemapCoords(vp->virtual_left + vp->virtual_width, vp->virtual_top + vp->virtual_height); - Point br = this->RemapTile(tile.x >> 4, tile.y >> 4); - br.x -= this->subscroll; + Point upper_left = this->RemapTile(upper_left_smallmap_coord.x / (int)TILE_SIZE, upper_left_smallmap_coord.y / (int)TILE_SIZE); + upper_left.x -= this->subscroll; - SmallMapWindow::DrawVertMapIndicator(tl.x, tl.y, br.y); - SmallMapWindow::DrawVertMapIndicator(br.x, tl.y, br.y); + Point lower_right = this->RemapTile(lower_right_smallmap_coord.x / (int)TILE_SIZE, lower_right_smallmap_coord.y / (int)TILE_SIZE); + lower_right.x -= this->subscroll; - SmallMapWindow::DrawHorizMapIndicator(tl.x, br.x, tl.y); - SmallMapWindow::DrawHorizMapIndicator(tl.x, br.x, br.y); + SmallMapWindow::DrawVertMapIndicator(upper_left.x, upper_left.y, lower_right.y); + SmallMapWindow::DrawVertMapIndicator(lower_right.x, upper_left.y, lower_right.y); + + SmallMapWindow::DrawHorizMapIndicator(upper_left.x, lower_right.x, upper_left.y); + SmallMapWindow::DrawHorizMapIndicator(upper_left.x, lower_right.x, lower_right.y); } /** @@ -1055,7 +1049,8 @@ SmallMapWindow::SmallMapWindow(WindowDesc *desc, int window_number) : Window(des this->InitNested(window_number); this->LowerWidget(this->map_type + WID_SM_CONTOUR); - BuildLandLegend(); + this->RebuildColourIndexIfNecessary(); + this->SetWidgetLoweredState(WID_SM_SHOW_HEIGHT, _smallmap_show_heightmap); this->SetWidgetLoweredState(WID_SM_TOGGLETOWNNAME, this->show_towns); @@ -1067,6 +1062,31 @@ SmallMapWindow::SmallMapWindow(WindowDesc *desc, int window_number) : Window(des this->SetOverlayCargoMask(); } +/** + * Rebuilds the colour indices used for fast access to the smallmap contour colours based on the heightlevel. + */ +void SmallMapWindow::RebuildColourIndexIfNecessary() +{ + /* Rebuild colour indices if necessary. */ + if (SmallMapWindow::max_heightlevel == _settings_game.construction.max_heightlevel) return; + + for (uint n = 0; n < lengthof(_heightmap_schemes); n++) { + /* The heights go from 0 up to and including maximum. */ + int heights = _settings_game.construction.max_heightlevel + 1; + _heightmap_schemes[n].height_colours = ReallocT(_heightmap_schemes[n].height_colours, heights); + + for (int z = 0; z < heights; z++) { + uint access_index = (_heightmap_schemes[n].colour_count * z) / heights; + + /* Choose colour by mapping the range (0..max heightlevel) on the complete colour table. */ + _heightmap_schemes[n].height_colours[z] = _heightmap_schemes[n].height_colours_base[access_index]; + } + } + + SmallMapWindow::max_heightlevel = _settings_game.construction.max_heightlevel; + BuildLandLegend(); +} + /* virtual */ void SmallMapWindow::SetStringParameters(int widget) const { switch (widget) { @@ -1372,12 +1392,7 @@ int SmallMapWindow::GetPositionOnLegend(Point pt) Window *w = FindWindowById(WC_MAIN_WINDOW, 0); int sub; pt = this->PixelToTile(pt.x - wid->pos_x, pt.y - wid->pos_y, &sub); - pt = RemapCoords(this->scroll_x + pt.x * TILE_SIZE + this->zoom * (TILE_SIZE - sub * TILE_SIZE / 4), - this->scroll_y + pt.y * TILE_SIZE + sub * this->zoom * TILE_SIZE / 4, 0); - - w->viewport->follow_vehicle = INVALID_VEHICLE; - w->viewport->dest_scrollpos_x = pt.x - (w->viewport->virtual_width >> 1); - w->viewport->dest_scrollpos_y = pt.y - (w->viewport->virtual_height >> 1); + ScrollWindowTo(this->scroll_x + pt.x * TILE_SIZE, this->scroll_y + pt.y * TILE_SIZE, -1, w); this->SetDirty(); break; @@ -1480,11 +1495,13 @@ int SmallMapWindow::GetPositionOnLegend(Point pt) * @param data Information about the changed data. * - data = 0: Displayed industries at the industry chain window have changed. * - data = 1: Companies have changed. + * - data = 2: Cheat changing the maximum heightlevel has been used, rebuild our heightlevel-to-colour index * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. */ /* virtual */ void SmallMapWindow::OnInvalidateData(int data, bool gui_scope) { if (!gui_scope) return; + switch (data) { case 1: /* The owner legend has already been rebuilt. */ @@ -1492,15 +1509,19 @@ int SmallMapWindow::GetPositionOnLegend(Point pt) break; case 0: { - extern uint64 _displayed_industries; + extern std::bitset _displayed_industries; if (this->map_type != SMT_INDUSTRY) this->SwitchMapType(SMT_INDUSTRY); for (int i = 0; i != _smallmap_industry_count; i++) { - _legend_from_industries[i].show_on_map = HasBit(_displayed_industries, _legend_from_industries[i].type); + _legend_from_industries[i].show_on_map = _displayed_industries.test(_legend_from_industries[i].type); } break; } + case 2: + this->RebuildColourIndexIfNecessary(); + break; + default: NOT_REACHED(); } this->SetDirty(); @@ -1595,14 +1616,18 @@ void SmallMapWindow::SetNewScroll(int sx, int sy, int sub) this->SetDirty(); } +/** + * Center the small map on the current center of the viewport. + */ void SmallMapWindow::SmallMapCenterOnCurrentPos() { const ViewPort *vp = FindWindowById(WC_MAIN_WINDOW, 0)->viewport; - Point pt = InverseRemapCoords(vp->virtual_left + vp->virtual_width / 2, vp->virtual_top + vp->virtual_height / 2); + Point viewport_center = TranslateXYToTileCoord(vp, vp->left + vp->width / 2, vp->top + vp->height / 2); int sub; const NWidgetBase *wid = this->GetWidget(WID_SM_MAP); - Point sxy = this->ComputeScroll(pt.x / TILE_SIZE, pt.y / TILE_SIZE, max(0, (int)wid->current_x / 2 - 2), wid->current_y / 2, &sub); + Point sxy = this->ComputeScroll(viewport_center.x / (int)TILE_SIZE, viewport_center.y / (int)TILE_SIZE, + max(0, (int)wid->current_x / 2 - 2), wid->current_y / 2, &sub); this->SetNewScroll(sxy.x, sxy.y, sub); this->SetDirty(); } @@ -1627,6 +1652,7 @@ Point SmallMapWindow::GetStationMiddle(const Station *st) const SmallMapWindow::SmallMapType SmallMapWindow::map_type = SMT_CONTOUR; bool SmallMapWindow::show_towns = true; +int SmallMapWindow::max_heightlevel = -1; /** * Custom container class for displaying smallmap with a vertically resizing legend panel. @@ -1772,17 +1798,15 @@ static const NWidgetPart _nested_smallmap_widgets[] = { NWidgetFunction(SmallMapDisplay), // Smallmap display and legend bar + image buttons. /* Bottom button row and resize box. */ NWidget(NWID_HORIZONTAL), - NWidget(WWT_PANEL, COLOUR_BROWN), - NWidget(NWID_HORIZONTAL), - NWidget(NWID_SELECTION, INVALID_COLOUR, WID_SM_SELECT_BUTTONS), - NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), - NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_SM_ENABLE_ALL), SetDataTip(STR_SMALLMAP_ENABLE_ALL, STR_NULL), - NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_SM_DISABLE_ALL), SetDataTip(STR_SMALLMAP_DISABLE_ALL, STR_NULL), - NWidget(WWT_TEXTBTN, COLOUR_BROWN, WID_SM_SHOW_HEIGHT), SetDataTip(STR_SMALLMAP_SHOW_HEIGHT, STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT), - EndContainer(), - NWidget(NWID_SPACER), SetFill(1, 1), + NWidget(NWID_SELECTION, INVALID_COLOUR, WID_SM_SELECT_BUTTONS), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), + NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_SM_ENABLE_ALL), SetDataTip(STR_SMALLMAP_ENABLE_ALL, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_SM_DISABLE_ALL), SetDataTip(STR_SMALLMAP_DISABLE_ALL, STR_NULL), + NWidget(WWT_TEXTBTN, COLOUR_BROWN, WID_SM_SHOW_HEIGHT), SetDataTip(STR_SMALLMAP_SHOW_HEIGHT, STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT), + NWidget(WWT_PANEL, COLOUR_BROWN), SetFill(1, 0), SetResize(1, 0), EndContainer(), - NWidget(NWID_SPACER), SetFill(1, 0), SetResize(1, 0), + EndContainer(), + NWidget(WWT_PANEL, COLOUR_BROWN), SetFill(1, 0), SetResize(1, 0), EndContainer(), EndContainer(), NWidget(WWT_RESIZEBOX, COLOUR_BROWN), diff --git a/src/smallmap_gui.h b/src/smallmap_gui.h index 6652f83d8c..2903544a69 100644 --- a/src/smallmap_gui.h +++ b/src/smallmap_gui.h @@ -63,6 +63,7 @@ protected: static SmallMapType map_type; ///< Currently displayed legends. static bool show_towns; ///< Display town names in the smallmap. + static int max_heightlevel; ///< Currently used/cached maximum heightlevel. static const uint LEGEND_BLOB_WIDTH = 8; ///< Width of the coloured blob in front of a line text in the #WID_SM_LEGEND widget. static const uint INDUSTRY_MIN_NUMBER_OF_COLUMNS = 2; ///< Minimal number of columns in the #WID_SM_LEGEND widget for the #SMT_INDUSTRY legend. @@ -146,6 +147,7 @@ protected: return Company::IsValidID(_local_company) ? 1U << _local_company : 0xffffffff; } + void RebuildColourIndexIfNecessary(); uint GetNumberRowsLegend(uint columns) const; void SelectLegendItem(int click_pos, LegendAndColour *legend, int end_legend_item, int begin_legend_item = 0); void SwitchMapType(SmallMapType map_type); diff --git a/src/sprite.cpp b/src/sprite.cpp index 6db6966d80..22210712a9 100644 --- a/src/sprite.cpp +++ b/src/sprite.cpp @@ -119,15 +119,15 @@ void DrawCommonTileSeqInGUI(int x, int y, const DrawTileSprites *dts, int32 orig if (dtss->IsParentSprite()) { Point pt = RemapCoords(dtss->delta_x, dtss->delta_y, dtss->delta_z); - DrawSprite(image, pal, x + UnScaleByZoom(pt.x, ZOOM_LVL_GUI), y + UnScaleByZoom(pt.y, ZOOM_LVL_GUI)); + DrawSprite(image, pal, x + UnScaleGUI(pt.x), y + UnScaleGUI(pt.y)); const Sprite *spr = GetSprite(image & SPRITE_MASK, ST_NORMAL); - child_offset.x = UnScaleByZoom(pt.x + spr->x_offs, ZOOM_LVL_GUI); - child_offset.y = UnScaleByZoom(pt.y + spr->y_offs, ZOOM_LVL_GUI); + child_offset.x = UnScaleGUI(pt.x + spr->x_offs); + child_offset.y = UnScaleGUI(pt.y + spr->y_offs); } else { int offs_x = child_offset_is_unsigned ? (uint8)dtss->delta_x : dtss->delta_x; int offs_y = child_offset_is_unsigned ? (uint8)dtss->delta_y : dtss->delta_y; - DrawSprite(image, pal, x + child_offset.x + offs_x, y + child_offset.y + offs_y); + DrawSprite(image, pal, x + child_offset.x + ScaleGUITrad(offs_x), y + child_offset.y + ScaleGUITrad(offs_y)); } } } diff --git a/src/spritecache.cpp b/src/spritecache.cpp index c41b8f51cb..908e7599ab 100644 --- a/src/spritecache.cpp +++ b/src/spritecache.cpp @@ -438,12 +438,20 @@ static void *ReadSprite(const SpriteCache *sc, SpriteID id, SpriteType sprite_ty return s; } - if (sprite_type == ST_NORMAL) { - if (!ResizeSprites(sprite, sprite_avail, file_slot, sc->id)) { - if (id == SPR_IMG_QUERY) usererror("Okay... something went horribly wrong. I couldn't resize the fallback sprite. What should I do?"); - return (void*)GetRawSprite(SPR_IMG_QUERY, ST_NORMAL, allocator); - } + if (!ResizeSprites(sprite, sprite_avail, file_slot, sc->id)) { + if (id == SPR_IMG_QUERY) usererror("Okay... something went horribly wrong. I couldn't resize the fallback sprite. What should I do?"); + return (void*)GetRawSprite(SPR_IMG_QUERY, ST_NORMAL, allocator); } + + if (sprite->type == ST_FONT && ZOOM_LVL_GUI != ZOOM_LVL_NORMAL) { + /* Make ZOOM_LVL_GUI be ZOOM_LVL_NORMAL */ + sprite[ZOOM_LVL_NORMAL].width = sprite[ZOOM_LVL_GUI].width; + sprite[ZOOM_LVL_NORMAL].height = sprite[ZOOM_LVL_GUI].height; + sprite[ZOOM_LVL_NORMAL].x_offs = sprite[ZOOM_LVL_GUI].x_offs; + sprite[ZOOM_LVL_NORMAL].y_offs = sprite[ZOOM_LVL_GUI].y_offs; + sprite[ZOOM_LVL_NORMAL].data = sprite[ZOOM_LVL_GUI].data; + } + return BlitterFactory::GetCurrentBlitter()->Encode(sprite, allocator); } diff --git a/src/spriteloader/grf.cpp b/src/spriteloader/grf.cpp index a45bd0fa8e..b21e70b1db 100644 --- a/src/spriteloader/grf.cpp +++ b/src/spriteloader/grf.cpp @@ -230,7 +230,7 @@ uint8 LoadSpriteV1(SpriteLoader::Sprite *sprite, uint8 file_slot, size_t file_po /* Type 0xFF indicates either a colourmap or some other non-sprite info; we do not handle them here */ if (type == 0xFF) return 0; - ZoomLevel zoom_lvl = (sprite_type == ST_NORMAL) ? ZOOM_LVL_OUT_4X : ZOOM_LVL_NORMAL; + ZoomLevel zoom_lvl = (sprite_type != ST_MAPGEN) ? ZOOM_LVL_OUT_4X : ZOOM_LVL_NORMAL; sprite[zoom_lvl].height = FioReadByte(); sprite[zoom_lvl].width = FioReadWord(); @@ -275,8 +275,8 @@ uint8 LoadSpriteV2(SpriteLoader::Sprite *sprite, uint8 file_slot, size_t file_po byte colour = type & SCC_MASK; byte zoom = FioReadByte(); - if (colour != 0 && (load_32bpp ? colour != SCC_PAL : colour == SCC_PAL) && (sprite_type == ST_NORMAL ? zoom < lengthof(zoom_lvl_map) : zoom == 0)) { - ZoomLevel zoom_lvl = (sprite_type == ST_NORMAL) ? zoom_lvl_map[zoom] : ZOOM_LVL_NORMAL; + if (colour != 0 && (load_32bpp ? colour != SCC_PAL : colour == SCC_PAL) && (sprite_type != ST_MAPGEN ? zoom < lengthof(zoom_lvl_map) : zoom == 0)) { + ZoomLevel zoom_lvl = (sprite_type != ST_MAPGEN) ? zoom_lvl_map[zoom] : ZOOM_LVL_NORMAL; if (HasBit(loaded_sprites, zoom_lvl)) { /* We already have this zoom level, skip sprite. */ diff --git a/src/station.cpp b/src/station.cpp index c035aafce4..456262dea4 100644 --- a/src/station.cpp +++ b/src/station.cpp @@ -45,13 +45,10 @@ BaseStation::~BaseStation() if (CleaningPool()) return; - Owner owner = this->owner; - if (!Company::IsValidID(owner)) owner = _local_company; - if (!Company::IsValidID(owner)) return; // Spectators - DeleteWindowById(WC_TRAINS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_TRAIN, owner, this->index).Pack()); - DeleteWindowById(WC_ROADVEH_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_ROAD, owner, this->index).Pack()); - DeleteWindowById(WC_SHIPS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_SHIP, owner, this->index).Pack()); - DeleteWindowById(WC_AIRCRAFT_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_AIRCRAFT, owner, this->index).Pack()); + DeleteWindowById(WC_TRAINS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_TRAIN, this->owner, this->index).Pack()); + DeleteWindowById(WC_ROADVEH_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_ROAD, this->owner, this->index).Pack()); + DeleteWindowById(WC_SHIPS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_SHIP, this->owner, this->index).Pack()); + DeleteWindowById(WC_AIRCRAFT_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_AIRCRAFT, this->owner, this->index).Pack()); this->sign.MarkDirty(); } @@ -109,7 +106,7 @@ Station::~Station() } lg->RemoveNode(this->goods[c].node); if (lg->Size() == 0) { - LinkGraphSchedule::Instance()->Unqueue(lg); + LinkGraphSchedule::instance.Unqueue(lg); delete lg; } } diff --git a/src/station_base.h b/src/station_base.h index 944a731f2d..af4d206ba0 100644 --- a/src/station_base.h +++ b/src/station_base.h @@ -37,6 +37,8 @@ class FlowStat { public: typedef std::map SharesMap; + static const SharesMap empty_sharesmap; + /** * Invalid constructor. This can't be called as a FlowStat must not be * empty. However, the constructor must be defined and reachable for @@ -48,12 +50,13 @@ public: * Create a FlowStat with an initial entry. * @param st Station the initial entry refers to. * @param flow Amount of flow for the initial entry. + * @param restricted If the flow to be added is restricted. */ - inline FlowStat(StationID st, uint flow) + inline FlowStat(StationID st, uint flow, bool restricted = false) { assert(flow > 0); this->shares[flow] = st; - this->unrestricted = flow; + this->unrestricted = restricted ? 0 : flow; } /** @@ -148,6 +151,11 @@ private: /** Flow descriptions by origin stations. */ class FlowStatMap : public std::map { public: + uint GetFlow() const; + uint GetFlowVia(StationID via) const; + uint GetFlowFrom(StationID from) const; + uint GetFlowFromVia(StationID from, StationID via) const; + void AddFlow(StationID origin, StationID via, uint amount); void PassOnFlow(StationID origin, StationID via, uint amount); StationIDStack DeleteFlows(StationID via); @@ -267,8 +275,6 @@ struct GoodsEntry { return HasBit(this->status, GES_RATING); } - uint GetSumFlowVia(StationID via) const; - /** * Get the best next hop for a cargo packet from station source. * @param source Source of the packet. diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 91d65ad878..eb90c29ab5 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -58,6 +58,13 @@ #include "safeguards.h" +/** + * Static instance of FlowStat::SharesMap. + * Note: This instance is created on task start. + * Lazy creation on first usage results in a data race between the CDist threads. + */ +/* static */ const FlowStat::SharesMap FlowStat::empty_sharesmap; + /** * Check whether the given tile is a hangar. * @param t the tile to of whether it is a hangar. @@ -721,7 +728,7 @@ CommandCost ClearTile_Station(TileIndex tile, DoCommandFlag flags); */ CommandCost CheckBuildableTile(TileIndex tile, uint invalid_dirs, int &allowed_z, bool allow_steep, bool check_bridge = true) { - if (check_bridge && MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) { + if (check_bridge && IsBridgeAbove(tile)) { return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); } @@ -956,7 +963,11 @@ static CommandCost CheckFlatLandRoadStop(TileArea tile_area, DoCommandFlag flags /* There is a tram, check if we can build road+tram stop over it. */ if (HasBit(cur_rts, ROADTYPE_TRAM)) { Owner tram_owner = GetRoadOwner(cur_tile, ROADTYPE_TRAM); - if (!_settings_game.construction.road_stop_on_competitor_road && tram_owner != OWNER_NONE) { + if (Company::IsValidID(tram_owner) && + (!_settings_game.construction.road_stop_on_competitor_road || + /* Disallow breaking end-of-line of someone else + * so trams can still reverse on this tile. */ + HasExactlyOneBit(GetRoadBits(cur_tile, ROADTYPE_TRAM)))) { CommandCost ret = CheckOwnership(tram_owner); if (ret.Failed()) return ret; } @@ -1616,11 +1627,12 @@ CommandCost CmdRemoveFromRailWaypoint(TileIndex start, DoCommandFlag flags, uint * Remove a rail station/waypoint * @param st The station/waypoint to remove the rail part from * @param flags operation to perform + * @param removal_cost the cost for removing a tile * @tparam T the type of station to remove * @return cost or failure of operation */ template -CommandCost RemoveRailStation(T *st, DoCommandFlag flags) +CommandCost RemoveRailStation(T *st, DoCommandFlag flags, Money removal_cost) { /* Current company owns the station? */ if (_current_company != OWNER_WATER) { @@ -1637,49 +1649,14 @@ CommandCost RemoveRailStation(T *st, DoCommandFlag flags) /* clear all areas of the station */ TILE_AREA_LOOP(tile, ta) { /* only remove tiles that are actually train station tiles */ - if (!st->TileBelongsToRailStation(tile)) continue; - - CommandCost ret = EnsureNoVehicleOnGround(tile); - if (ret.Failed()) return ret; - - cost.AddCost(_price[PR_CLEAR_STATION_RAIL]); - if (flags & DC_EXEC) { - /* read variables before the station tile is removed */ - Track track = GetRailStationTrack(tile); - Owner owner = GetTileOwner(tile); // _current_company can be OWNER_WATER - Train *v = NULL; - if (HasStationReservation(tile)) { - v = GetTrainForReservation(tile, track); - if (v != NULL) FreeTrainTrackReservation(v); - } - if (!IsStationTileBlocked(tile)) Company::Get(owner)->infrastructure.rail[GetRailType(tile)]--; - Company::Get(owner)->infrastructure.station--; - DoClearSquare(tile); - DeleteNewGRFInspectWindow(GSF_STATIONS, tile); - AddTrackToSignalBuffer(tile, track, owner); - YapfNotifyTrackLayoutChange(tile, track); - if (v != NULL) TryPathReserve(v, true); + if (st->TileBelongsToRailStation(tile)) { + SmallVector affected_stations; // dummy + CommandCost ret = RemoveFromRailBaseStation(TileArea(tile, 1, 1), affected_stations, flags, removal_cost, false); + if (ret.Failed()) return ret; + cost.AddCost(ret); } } - if (flags & DC_EXEC) { - st->rect.AfterRemoveRect(st, st->train_station); - - st->train_station.Clear(); - - st->facilities &= ~FACIL_TRAIN; - - free(st->speclist); - st->num_specs = 0; - st->speclist = NULL; - st->cached_anim_triggers = 0; - - DirtyCompanyInfrastructureWindows(st->owner); - SetWindowWidgetDirty(WC_STATION_VIEW, st->index, WID_SV_TRAINS); - st->UpdateVirtCoord(); - DeleteStationIfEmpty(st); - } - return cost; } @@ -1697,7 +1674,7 @@ static CommandCost RemoveRailStation(TileIndex tile, DoCommandFlag flags) } Station *st = Station::GetByTile(tile); - CommandCost cost = RemoveRailStation(st, flags); + CommandCost cost = RemoveRailStation(st, flags, _price[PR_CLEAR_STATION_RAIL]); if (flags & DC_EXEC) st->RecomputeIndustriesNear(); @@ -1717,7 +1694,7 @@ static CommandCost RemoveRailWaypoint(TileIndex tile, DoCommandFlag flags) return DoCommand(tile, 0, 0, DC_EXEC, CMD_REMOVE_FROM_RAIL_WAYPOINT); } - return RemoveRailStation(Waypoint::GetByTile(tile), flags); + return RemoveRailStation(Waypoint::GetByTile(tile), flags, _price[PR_CLEAR_WAYPOINT_RAIL]); } @@ -1980,6 +1957,7 @@ static CommandCost RemoveRoadStop(TileIndex tile, DoCommandFlag flags) } } Company::Get(st->owner)->infrastructure.station--; + DirtyCompanyInfrastructureWindows(st->owner); if (IsDriveThroughStopTile(tile)) { /* Clears the tile for us */ @@ -2026,6 +2004,7 @@ static CommandCost RemoveRoadStop(TileIndex tile, DoCommandFlag flags) * @param p1 bit 0..7: Width of the removal area. * bit 8..15: Height of the removal area. * @param p2 bit 0: 0 For bus stops, 1 for truck stops. + * @param p2 bit 1: 0 to keep roads of all drive-through stops, 1 to remove them. * @param text Unused. * @return The cost of this operation or an error. */ @@ -2033,38 +2012,52 @@ CommandCost CmdRemoveRoadStop(TileIndex tile, DoCommandFlag flags, uint32 p1, ui { uint8 width = (uint8)GB(p1, 0, 8); uint8 height = (uint8)GB(p1, 8, 8); + bool keep_drive_through_roads = !HasBit(p2, 1); /* Check for incorrect width / height. */ if (width == 0 || height == 0) return CMD_ERROR; /* Check if the first tile and the last tile are valid */ if (!IsValidTile(tile) || TileAddWrap(tile, width - 1, height - 1) == INVALID_TILE) return CMD_ERROR; + /* Bankrupting company is not supposed to remove roads, there may be road vehicles. */ + if (!keep_drive_through_roads && (flags & DC_BANKRUPT)) return CMD_ERROR; TileArea roadstop_area(tile, width, height); - int quantity = 0; CommandCost cost(EXPENSES_CONSTRUCTION); + CommandCost last_error(STR_ERROR_THERE_IS_NO_STATION); + bool had_success = false; + TILE_AREA_LOOP(cur_tile, roadstop_area) { /* Make sure the specified tile is a road stop of the correct type */ if (!IsTileType(cur_tile, MP_STATION) || !IsRoadStop(cur_tile) || (uint32)GetRoadStopType(cur_tile) != GB(p2, 0, 1)) continue; - /* Save the stop info before it is removed */ - bool is_drive_through = IsDriveThroughStopTile(cur_tile); - RoadTypes rts = GetRoadTypes(cur_tile); - RoadBits road_bits = IsDriveThroughStopTile(cur_tile) ? - ((GetRoadStopDir(cur_tile) == DIAGDIR_NE) ? ROAD_X : ROAD_Y) : - DiagDirToRoadBits(GetRoadStopDir(cur_tile)); + /* Save information on to-be-restored roads before the stop is removed. */ + RoadTypes rts = ROADTYPES_NONE; + RoadBits road_bits = ROAD_NONE; + Owner road_owner[] = { OWNER_NONE, OWNER_NONE }; + assert_compile(lengthof(road_owner) == ROADTYPE_END); + if (IsDriveThroughStopTile(cur_tile)) { + RoadType rt; + FOR_EACH_SET_ROADTYPE(rt, GetRoadTypes(cur_tile)) { + road_owner[rt] = GetRoadOwner(cur_tile, rt); + /* If we don't want to preserve our roads then restore only roads of others. */ + if (keep_drive_through_roads || road_owner[rt] != _current_company) SetBit(rts, rt); + } + road_bits = AxisToRoadBits(DiagDirToAxis(GetRoadStopDir(cur_tile))); + } - Owner road_owner = GetRoadOwner(cur_tile, ROADTYPE_ROAD); - Owner tram_owner = GetRoadOwner(cur_tile, ROADTYPE_TRAM); CommandCost ret = RemoveRoadStop(cur_tile, flags); - if (ret.Failed()) return ret; + if (ret.Failed()) { + last_error = ret; + continue; + } cost.AddCost(ret); + had_success = true; - quantity++; - /* If the stop was a drive-through stop replace the road */ - if ((flags & DC_EXEC) && is_drive_through) { + /* Restore roads. */ + if ((flags & DC_EXEC) && rts != ROADTYPES_NONE) { MakeRoadNormal(cur_tile, road_bits, rts, ClosestTownFromTile(cur_tile, UINT_MAX)->index, - road_owner, tram_owner); + road_owner[ROADTYPE_ROAD], road_owner[ROADTYPE_TRAM]); /* Update company infrastructure counts. */ RoadType rt; @@ -2078,9 +2071,7 @@ CommandCost CmdRemoveRoadStop(TileIndex tile, DoCommandFlag flags, uint32 p1, ui } } - if (quantity == 0) return_cmd_error(STR_ERROR_THERE_IS_NO_STATION); - - return cost; + return had_success ? cost : last_error; } /** @@ -2489,7 +2480,7 @@ CommandCost CmdBuildDock(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 CommandCost ret = CheckIfAuthorityAllowsNewStation(tile, flags); if (ret.Failed()) return ret; - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); ret = DoCommand(tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR); if (ret.Failed()) return ret; @@ -2500,7 +2491,7 @@ CommandCost CmdBuildDock(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 return_cmd_error(STR_ERROR_SITE_UNSUITABLE); } - if (MayHaveBridgeAbove(tile_cur) && IsBridgeAbove(tile_cur)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile_cur)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); /* Get the water class of the water tile before it is cleared.*/ WaterClass wc = GetWaterClass(tile_cur); @@ -3292,7 +3283,7 @@ static void UpdateStationRating(Station *st) bool skip = false; int rating = 0; - uint waiting = ge->cargo.TotalCount(); + uint waiting = ge->cargo.AvailableCount(); /* num_dests is at least 1 if there is any cargo as * INVALID_STATION is also a destination. @@ -3536,7 +3527,7 @@ void IncreaseStats(Station *st, CargoID cargo, StationID next_station_id, uint c if (ge2.link_graph == INVALID_LINK_GRAPH) { if (LinkGraph::CanAllocateItem()) { lg = new LinkGraph(cargo); - LinkGraphSchedule::Instance()->Queue(lg); + LinkGraphSchedule::instance.Queue(lg); ge2.link_graph = lg->index; ge2.node = lg->AddNode(st2); } else { @@ -3558,11 +3549,11 @@ void IncreaseStats(Station *st, CargoID cargo, StationID next_station_id, uint c if (ge1.link_graph != ge2.link_graph) { LinkGraph *lg2 = LinkGraph::Get(ge2.link_graph); if (lg->Size() < lg2->Size()) { - LinkGraphSchedule::Instance()->Unqueue(lg); + LinkGraphSchedule::instance.Unqueue(lg); lg2->Merge(lg); // Updates GoodsEntries of lg lg = lg2; } else { - LinkGraphSchedule::Instance()->Unqueue(lg2); + LinkGraphSchedule::instance.Unqueue(lg2); lg->Merge(lg2); // Updates GoodsEntries of lg2 } } @@ -3684,7 +3675,7 @@ static uint UpdateStationWaiting(Station *st, CargoID type, uint amount, SourceT if (ge.link_graph == INVALID_LINK_GRAPH) { if (LinkGraph::CanAllocateItem()) { lg = new LinkGraph(type); - LinkGraphSchedule::Instance()->Queue(lg); + LinkGraphSchedule::instance.Queue(lg); ge.link_graph = lg->index; ge.node = lg->AddNode(st); } else { @@ -4457,19 +4448,57 @@ void FlowStatMap::ReleaseFlows(StationID via) } /** - * Get the sum of flows via a specific station from this GoodsEntry. - * @param via Remote station to look for. - * @return a FlowStat with all flows for 'via' added up. + * Get the sum of all flows from this FlowStatMap. + * @return sum of all flows. */ -uint GoodsEntry::GetSumFlowVia(StationID via) const +uint FlowStatMap::GetFlow() const { uint ret = 0; - for (FlowStatMap::const_iterator i = this->flows.begin(); i != this->flows.end(); ++i) { + for (FlowStatMap::const_iterator i = this->begin(); i != this->end(); ++i) { + ret += (--(i->second.GetShares()->end()))->first; + } + return ret; +} + +/** + * Get the sum of flows via a specific station from this FlowStatMap. + * @param via Remote station to look for. + * @return all flows for 'via' added up. + */ +uint FlowStatMap::GetFlowVia(StationID via) const +{ + uint ret = 0; + for (FlowStatMap::const_iterator i = this->begin(); i != this->end(); ++i) { ret += i->second.GetShare(via); } return ret; } +/** + * Get the sum of flows from a specific station from this FlowStatMap. + * @param from Origin station to look for. + * @return all flows from 'from' added up. + */ +uint FlowStatMap::GetFlowFrom(StationID from) const +{ + FlowStatMap::const_iterator i = this->find(from); + if (i == this->end()) return 0; + return (--(i->second.GetShares()->end()))->first; +} + +/** + * Get the flow from a specific station via a specific other station. + * @param from Origin station to look for. + * @param via Remote station to look for. + * @return flow share originating at 'from' and going to 'via'. + */ +uint FlowStatMap::GetFlowFromVia(StationID from, StationID via) const +{ + FlowStatMap::const_iterator i = this->find(from); + if (i == this->end()) return 0; + return i->second.GetShare(via); +} + extern const TileTypeProcs _tile_type_station_procs = { DrawTile_Station, // draw_tile_proc GetSlopePixelZ_Station, // get_slope_z_proc diff --git a/src/station_gui.cpp b/src/station_gui.cpp index e9f0a9240f..666e66d8b5 100644 --- a/src/station_gui.cpp +++ b/src/station_gui.cpp @@ -19,6 +19,7 @@ #include "cargotype.h" #include "station_gui.h" #include "strings_func.h" +#include "string_func.h" #include "window_func.h" #include "viewport_func.h" #include "widgets/dropdown_func.h" @@ -31,6 +32,7 @@ #include "vehiclelist.h" #include "town.h" #include "linkgraph/linkgraph.h" +#include "zoom_func.h" #include "widgets/station_widget.h" @@ -221,7 +223,9 @@ protected: GetString(buf_cache, STR_STATION_NAME, lastof(buf_cache)); } - return strcmp(buf, buf_cache); + int r = strnatcmp(buf, buf_cache); // Sort by name (natural sorting). + if (r == 0) return (*a)->index - (*b)->index; + return r; } /** Sort stations by their type */ @@ -338,7 +342,7 @@ public: switch (widget) { case WID_STL_SORTBY: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; @@ -802,15 +806,16 @@ static const NWidgetPart _nested_station_view_widgets[] = { */ static void DrawCargoIcons(CargoID i, uint waiting, int left, int right, int y) { - uint num = min((waiting + 5) / 10, (right - left) / 10); // maximum is width / 10 icons so it won't overflow + int width = ScaleGUITrad(10); + uint num = min((waiting + (width / 2)) / width, (right - left) / width); // maximum is width / 10 icons so it won't overflow if (num == 0) return; SpriteID sprite = CargoSpec::Get(i)->GetCargoIcon(); - int x = _current_text_dir == TD_RTL ? left : right - num * 10; + int x = _current_text_dir == TD_RTL ? left : right - num * width; do { DrawSprite(sprite, PAL_NONE, x, y); - x += 10; + x += width; } while (--num); } @@ -1184,7 +1189,7 @@ bool CargoSorter::SortStation(StationID st1, StationID st2) const SetDParam(0, st2); GetString(buf2, STR_STATION_NAME, lastof(buf2)); - int res = strcmp(buf1, buf2); + int res = strnatcmp(buf1, buf2); // Sort by name (natural sorting). if (res == 0) { return this->SortId(st1, st2); } else { @@ -1301,17 +1306,15 @@ struct StationViewWindow : public Window { this->SelectSortBy(_settings_client.gui.station_gui_sort_by); this->sort_orders[0] = SO_ASCENDING; this->SelectSortOrder((SortOrder)_settings_client.gui.station_gui_sort_order); - Owner owner = Station::Get(window_number)->owner; - if (owner != OWNER_NONE) this->owner = owner; + this->owner = Station::Get(window_number)->owner; } ~StationViewWindow() { - Owner owner = Station::Get(this->window_number)->owner; - DeleteWindowById(WC_TRAINS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_TRAIN, owner, this->window_number).Pack(), false); - DeleteWindowById(WC_ROADVEH_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_ROAD, owner, this->window_number).Pack(), false); - DeleteWindowById(WC_SHIPS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_SHIP, owner, this->window_number).Pack(), false); - DeleteWindowById(WC_AIRCRAFT_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_AIRCRAFT, owner, this->window_number).Pack(), false); + DeleteWindowById(WC_TRAINS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_TRAIN, this->owner, this->window_number).Pack(), false); + DeleteWindowById(WC_ROADVEH_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_ROAD, this->owner, this->window_number).Pack(), false); + DeleteWindowById(WC_SHIPS_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_SHIP, this->owner, this->window_number).Pack(), false); + DeleteWindowById(WC_AIRCRAFT_LIST, VehicleListIdentifier(VL_STATION_LIST, VEH_AIRCRAFT, this->owner, this->window_number).Pack(), false); } /** diff --git a/src/station_map.h b/src/station_map.h index 67f41f1d75..7ca9bd7204 100644 --- a/src/station_map.h +++ b/src/station_map.h @@ -45,7 +45,7 @@ static const int GFX_TRUCK_BUS_DRIVETHROUGH_OFFSET = 4; ///< The offset for the static inline StationType GetStationType(TileIndex t) { assert(IsTileType(t, MP_STATION)); - return (StationType)GB(_m[t].m6, 3, 3); + return (StationType)GB(_me[t].m6, 3, 3); } /** @@ -394,7 +394,7 @@ static inline bool IsCompatibleTrainStationTile(TileIndex test_tile, TileIndex s static inline bool HasStationReservation(TileIndex t) { assert(HasStationRail(t)); - return HasBit(_m[t].m6, 2); + return HasBit(_me[t].m6, 2); } /** @@ -406,7 +406,7 @@ static inline bool HasStationReservation(TileIndex t) static inline void SetRailStationReservation(TileIndex t, bool b) { assert(HasStationRail(t)); - SB(_m[t].m6, 2, 1, b ? 1 : 0); + SB(_me[t].m6, 2, 1, b ? 1 : 0); } /** @@ -539,8 +539,8 @@ static inline void MakeStation(TileIndex t, Owner o, StationID sid, StationType _m[t].m3 = 0; _m[t].m4 = 0; _m[t].m5 = section; - SB(_m[t].m6, 2, 1, 0); - SB(_m[t].m6, 3, 3, st); + SB(_me[t].m6, 2, 1, 0); + SB(_me[t].m6, 3, 3, st); _me[t].m7 = 0; } diff --git a/src/statusbar_gui.cpp b/src/statusbar_gui.cpp index 151fa5c373..25efa6bb1c 100644 --- a/src/statusbar_gui.cpp +++ b/src/statusbar_gui.cpp @@ -24,6 +24,7 @@ #include "saveload/saveload.h" #include "window_func.h" #include "statusbar_gui.h" +#include "toolbar_gui.h" #include "core/geometry_func.hpp" #include "widgets/statusbar_widget.h" @@ -101,6 +102,11 @@ struct StatusBarWindow : Window { return pt; } + virtual void FindWindowPlacementAndResize(int def_width, int def_height) + { + Window::FindWindowPlacementAndResize(_toolbar_width, def_height); + } + virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) { Dimension d; @@ -238,7 +244,7 @@ static const NWidgetPart _nested_main_status_widgets[] = { }; static WindowDesc _main_status_desc( - WDP_MANUAL, NULL, 640, 12, + WDP_MANUAL, NULL, 0, 0, WC_STATUS_BAR, WC_NONE, WDF_NO_FOCUS, _nested_main_status_widgets, lengthof(_nested_main_status_widgets) diff --git a/src/stdafx.h b/src/stdafx.h index d0e6fb30ae..d68605c196 100644 --- a/src/stdafx.h +++ b/src/stdafx.h @@ -21,6 +21,7 @@ #include #define _GNU_SOURCE #define TROUBLED_INTS + #include #elif defined(__NDS__) #include #define TROUBLED_INTS @@ -265,6 +266,8 @@ #define strncasecmp strnicmp #endif + #define strtoull _strtoui64 + /* MSVC doesn't have these :( */ #define S_ISDIR(mode) (mode & S_IFDIR) #define S_ISREG(mode) (mode & S_IFREG) @@ -301,14 +304,10 @@ const char *FS2OTTD(const TCHAR *name); const TCHAR *OTTD2FS(const char *name, bool console_cp = false); - #define SQ2OTTD(name) FS2OTTD(name) - #define OTTD2SQ(name) OTTD2FS(name) #else #define fopen(file, mode) fopen(OTTD2FS(file), mode) const char *FS2OTTD(const char *name); const char *OTTD2FS(const char *name); - #define SQ2OTTD(name) (name) - #define OTTD2SQ(name) (name) #endif /* WIN32 */ #endif /* STRGEN || SETTINGSGEN */ @@ -501,12 +500,16 @@ static inline void free(const void *ptr) #define HELPER0(x) #x #define HELPER1(x) HELPER0(GCC diagnostic ignored x) #define HELPER2(y) HELPER1(#y) +#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) #define IGNORE_UNINITIALIZED_WARNING_START \ _Pragma("GCC diagnostic push") \ _Pragma(HELPER2(-Wuninitialized)) \ _Pragma(HELPER2(-Wmaybe-uninitialized)) #define IGNORE_UNINITIALIZED_WARNING_STOP _Pragma("GCC diagnostic pop") -#else +#endif +#endif + +#ifndef IGNORE_UNINITIALIZED_WARNING_START #define IGNORE_UNINITIALIZED_WARNING_START #define IGNORE_UNINITIALIZED_WARNING_STOP #endif diff --git a/src/story_gui.cpp b/src/story_gui.cpp index 8199e7fcc4..003843310e 100644 --- a/src/story_gui.cpp +++ b/src/story_gui.cpp @@ -568,10 +568,10 @@ public: if (widget != WID_SB_SEL_PAGE && widget != WID_SB_PAGE_PANEL) return; Dimension d; - d.height= FONT_HEIGHT_NORMAL; + d.height = FONT_HEIGHT_NORMAL; d.width = 0; - switch(widget) { + switch (widget) { case WID_SB_SEL_PAGE: { /* Get max title width. */ @@ -758,13 +758,15 @@ static WindowDesc _story_book_desc( _nested_story_book_widgets, lengthof(_nested_story_book_widgets) ); +/** + * Raise or create the story book window for \a company, at page \a page_id. + * @param company 'Owner' of the story book, may be #INVALID_COMPANY. + * @param page_id Page to open, may be #INVALID_STORY_PAGE. + */ void ShowStoryBook(CompanyID company, uint16 page_id) { if (!Company::IsValidID(company)) company = (CompanyID)INVALID_COMPANY; - StoryBookWindow *w = AllocateWindowDescFront(&_story_book_desc, company); - if (page_id != INVALID_STORY_PAGE) { - if (w == NULL) w = (StoryBookWindow *)FindWindowById(WC_STORY_BOOK, company); - w->SetSelectedPage(page_id); - } + StoryBookWindow *w = AllocateWindowDescFront(&_story_book_desc, company, true); + if (page_id != INVALID_STORY_PAGE) w->SetSelectedPage(page_id); } diff --git a/src/strgen/strgen_base.cpp b/src/strgen/strgen_base.cpp index 95d3291e49..c41f3d9b40 100644 --- a/src/strgen/strgen_base.cpp +++ b/src/strgen/strgen_base.cpp @@ -388,7 +388,7 @@ static void EmitWordList(Buffer *buffer, const char * const *words, uint nw) void EmitPlural(Buffer *buffer, char *buf, int value) { int argidx = _cur_argidx; - int offset = 0; + int offset = -1; int expected = _plural_forms[_lang.plural_form].plural_count; const char **words = AllocaM(const char *, max(expected, MAX_PLURALS)); int nw = 0; @@ -396,6 +396,15 @@ void EmitPlural(Buffer *buffer, char *buf, int value) /* Parse out the number, if one exists. Otherwise default to prev arg. */ if (!ParseRelNum(&buf, &argidx, &offset)) argidx--; + const CmdStruct *cmd = _cur_pcs.cmd[argidx]; + if (offset == -1) { + /* Use default offset */ + if (cmd == NULL || cmd->default_plural_offset < 0) { + strgen_fatal("Command '%s' has no (default) plural position", cmd == NULL ? "" : cmd->cmd); + } + offset = cmd->default_plural_offset; + } + /* Parse each string */ for (nw = 0; nw < MAX_PLURALS; nw++) { words[nw] = ParseWord(&buf); diff --git a/src/string.cpp b/src/string.cpp index 87ea26ee7e..6bc9319c1c 100644 --- a/src/string.cpp +++ b/src/string.cpp @@ -644,7 +644,7 @@ public: size_t idx = s - string_base; WChar c = Utf8Consume(&s); - if (c < 0x10000) { + if (c < 0x10000) { *this->utf16_str.Append() = (UChar)c; } else { /* Make a surrogate pair. */ diff --git a/src/strings.cpp b/src/strings.cpp index c12695c3aa..9c88b70c77 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -35,6 +35,7 @@ #include "window_func.h" #include "debug.h" #include "game/game_text.hpp" +#include "network/network_content_gui.h" #include #include "table/strings.h" @@ -399,7 +400,7 @@ static char *FormatBytes(char *buff, int64 number, const char *last) } assert(id < lengthof(iec_prefixes)); - buff += seprintf(buff, last, " %sB", iec_prefixes[id]); + buff += seprintf(buff, last, NBSP "%sB", iec_prefixes[id]); return buff; } @@ -468,10 +469,10 @@ static char *FormatGenericCurrency(char *buff, const CurrencySpec *spec, Money n * and 1 000 M is inconsistent, so always use 1 000 M. */ if (number >= 1000000000 - 500) { number = (number + 500000) / 1000000; - multiplier = "M"; + multiplier = NBSP "M"; } else if (number >= 1000000) { number = (number + 500) / 1000; - multiplier = "k"; + multiplier = NBSP "k"; } } @@ -874,7 +875,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg bool lookup = (l == SCC_ENCODED); if (lookup) s += len; - param = (int32)strtoul(s, &p, 16); + param = strtoull(s, &p, 16); if (lookup) { if (param >= TAB_SIZE) { @@ -1814,6 +1815,7 @@ bool ReadLanguagePack(const LanguageMetadata *lang) SortIndustryTypes(); BuildIndustriesLegend(); SortNetworkLanguages(); + BuildContentTypeStringList(); InvalidateWindowClassesData(WC_BUILD_VEHICLE); // Build vehicle window. InvalidateWindowClassesData(WC_TRAINS_LIST); // Train group window. InvalidateWindowClassesData(WC_ROADVEH_LIST); // Road vehicle group window. @@ -1864,7 +1866,7 @@ int CDECL StringIDSorter(const StringID *a, const StringID *b) GetString(stra, *a, lastof(stra)); GetString(strb, *b, lastof(strb)); - return strcmp(stra, strb); + return strnatcmp(stra, strb); } /** diff --git a/src/table/build_industry.h b/src/table/build_industry.h index 9c9a28d48f..5ae93bc7ed 100644 --- a/src/table/build_industry.h +++ b/src/table/build_industry.h @@ -254,7 +254,6 @@ static const IndustryTileTable _tile_table_oil_rig_0[] = { MK(1, 0, 26), MK(1, 1, 27), MK(1, 2, 28), - MK(-4, -5, 255), MK(-4, -4, 255), MK(-4, -3, 255), MK(-4, -2, 255), @@ -265,9 +264,10 @@ static const IndustryTileTable _tile_table_oil_rig_0[] = { MK(-4, 3, 255), MK(-4, 4, 255), MK(-4, 5, 255), - MK(-3, 5, 255), - MK(-2, 5, 255), - MK(-1, 5, 255), + MK(-4, 6, 255), + MK(-3, 6, 255), + MK(-2, 6, 255), + MK(-1, 6, 255), MK(0, 6, 255), MK(1, 6, 255), MK(2, 6, 255), @@ -289,9 +289,9 @@ static const IndustryTileTable _tile_table_oil_rig_0[] = { MK(2, -4, 255), MK(1, -4, 255), MK(0, -4, 255), - MK(-1, -5, 255), - MK(-2, -5, 255), - MK(-3, -5, 255), + MK(-1, -4, 255), + MK(-2, -4, 255), + MK(-3, -4, 255), MK(2, 0, 255), MKEND }; diff --git a/src/table/heightmap_colours.h b/src/table/heightmap_colours.h new file mode 100644 index 0000000000..42b99eeca1 --- /dev/null +++ b/src/table/heightmap_colours.h @@ -0,0 +1,344 @@ +/* $Id$ */ + +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + */ + +/** + * @file heightmap_colours.h The colour tables for heightmaps. + */ + +/** Height map colours for the green colour scheme, ordered by height. */ +static const uint32 _green_map_heights[] = { + MKCOLOUR(0x59595958), + MKCOLOUR(0x59595958), + MKCOLOUR(0x59595959), + MKCOLOUR(0x5959595A), + MKCOLOUR(0x59595A59), + MKCOLOUR(0x59595A5A), + MKCOLOUR(0x595A5959), + MKCOLOUR(0x595A595A), + MKCOLOUR(0x595A5A59), + MKCOLOUR(0x595A5A5A), + MKCOLOUR(0x5A595959), + MKCOLOUR(0x5A59595A), + MKCOLOUR(0x5A595A59), + MKCOLOUR(0x5A595A5A), + MKCOLOUR(0x5A5A5959), + MKCOLOUR(0x5A5A595A), + MKCOLOUR(0x5A5A5A59), + MKCOLOUR(0x5A5A5A5A), + MKCOLOUR(0x5A5A5A5B), + MKCOLOUR(0x5A5A5B5A), + MKCOLOUR(0x5A5A5B5B), + MKCOLOUR(0x5A5B5A5A), + MKCOLOUR(0x5A5B5A5B), + MKCOLOUR(0x5A5B5B5A), + MKCOLOUR(0x5A5B5B5B), + MKCOLOUR(0x5B5A5A5A), + MKCOLOUR(0x5B5A5A5B), + MKCOLOUR(0x5B5A5B5A), + MKCOLOUR(0x5B5A5B5B), + MKCOLOUR(0x5B5B5A5A), + MKCOLOUR(0x5B5B5A5B), + MKCOLOUR(0x5B5B5B5B), + MKCOLOUR(0x5B5B5B5C), + MKCOLOUR(0x5B5B5C5B), + MKCOLOUR(0x5B5B5C5C), + MKCOLOUR(0x5B5C5B5B), + MKCOLOUR(0x5B5C5B5C), + MKCOLOUR(0x5B5C5C5B), + MKCOLOUR(0x5B5C5C5C), + MKCOLOUR(0x5C5B5B5B), + MKCOLOUR(0x5C5B5B5C), + MKCOLOUR(0x5C5B5C5B), + MKCOLOUR(0x5C5B5C5C), + MKCOLOUR(0x5C5C5B5B), + MKCOLOUR(0x5C5C5B5C), + MKCOLOUR(0x5C5C5C5C), + MKCOLOUR(0x5C5C5C5D), + MKCOLOUR(0x5C5C5D5C), + MKCOLOUR(0x5C5C5D5D), + MKCOLOUR(0x5C5D5C5C), + MKCOLOUR(0x5C5D5C5D), + MKCOLOUR(0x5C5D5D5C), + MKCOLOUR(0x5C5D5D5D), + MKCOLOUR(0x5D5C5C5C), + MKCOLOUR(0x5D5C5C5D), + MKCOLOUR(0x5D5C5D5C), + MKCOLOUR(0x5D5C5D5D), + MKCOLOUR(0x5D5D5C5C), + MKCOLOUR(0x5D5D5C5D), + MKCOLOUR(0x5D5D5D5D), + MKCOLOUR(0x5D5D5D5E), + MKCOLOUR(0x5D5D5E5D), + MKCOLOUR(0x5D5D5E5E), + MKCOLOUR(0x5D5E5D5D), + MKCOLOUR(0x5D5E5D5E), + MKCOLOUR(0x5D5E5E5D), + MKCOLOUR(0x5D5E5E5E), + MKCOLOUR(0x5E5D5D5D), + MKCOLOUR(0x5E5D5D5E), + MKCOLOUR(0x5E5D5E5D), + MKCOLOUR(0x5E5D5E5E), + MKCOLOUR(0x5E5D5D5D), + MKCOLOUR(0x5E5D5D5E), + MKCOLOUR(0x5E5E5E5E), + MKCOLOUR(0x5E5E5E5F), + MKCOLOUR(0x5E5E5F5E), + MKCOLOUR(0x5E5E5F5F), + MKCOLOUR(0x5E5F5E5E), + MKCOLOUR(0x5E5F5E5F), + MKCOLOUR(0x5E5F5F5E), + MKCOLOUR(0x5E5F5F5F), + MKCOLOUR(0x5F5E5E5E), + MKCOLOUR(0x5F5E5E5F), + MKCOLOUR(0x5F5E5F5E), + MKCOLOUR(0x5F5E5F5F), + MKCOLOUR(0x5F5F5E5E), + MKCOLOUR(0x5F5F5E5F), + MKCOLOUR(0x5F5F5F5F), + MKCOLOUR(0x5F5F5F1F), + MKCOLOUR(0x5F5F1F5F), + MKCOLOUR(0x5F5F1F1F), + MKCOLOUR(0x5F1F5F1F), + MKCOLOUR(0x5F1F1F1F), + MKCOLOUR(0x1F5F5F5F), + MKCOLOUR(0x1F5F5F1F), + MKCOLOUR(0x1F5F1F5F), + MKCOLOUR(0x1F5F1F1F), + MKCOLOUR(0x1F1F5F5F), + MKCOLOUR(0x1F1F5F1F), + MKCOLOUR(0x1F1F1F5F), + MKCOLOUR(0x1F1F1F1F), + MKCOLOUR(0x1F1F1F27), + MKCOLOUR(0x1F1F271F), + MKCOLOUR(0x1F1F2727), + MKCOLOUR(0x1F271F1F), + MKCOLOUR(0x1F271F27), + MKCOLOUR(0x1F272727), + MKCOLOUR(0x271F1F1F), + MKCOLOUR(0x271F1F27), + MKCOLOUR(0x271F271F), + MKCOLOUR(0x271F2727), + MKCOLOUR(0x27271F1F), + MKCOLOUR(0x27271F27), + MKCOLOUR(0x2727271F), + MKCOLOUR(0x27272727), +}; + +/** Height map colours for the dark green colour scheme, ordered by height. */ +static const uint32 _dark_green_map_heights[] = { + MKCOLOUR(0x60606060), + MKCOLOUR(0x60606061), + MKCOLOUR(0x60606160), + MKCOLOUR(0x60606161), + MKCOLOUR(0x60616060), + MKCOLOUR(0x60616061), + MKCOLOUR(0x60616160), + MKCOLOUR(0x60616161), + MKCOLOUR(0x61606060), + MKCOLOUR(0x61606061), + MKCOLOUR(0x61606160), + MKCOLOUR(0x61606161), + MKCOLOUR(0x61616060), + MKCOLOUR(0x61616061), + MKCOLOUR(0x61616160), + MKCOLOUR(0x61616161), + MKCOLOUR(0x61616162), + MKCOLOUR(0x61616261), + MKCOLOUR(0x61616262), + MKCOLOUR(0x61626161), + MKCOLOUR(0x61626162), + MKCOLOUR(0x61626261), + MKCOLOUR(0x61626262), + MKCOLOUR(0x62616161), + MKCOLOUR(0x62616162), + MKCOLOUR(0x62616261), + MKCOLOUR(0x62616262), + MKCOLOUR(0x62626161), + MKCOLOUR(0x62626162), + MKCOLOUR(0x62626261), + MKCOLOUR(0x62626262), + MKCOLOUR(0x62626263), + MKCOLOUR(0x62626362), + MKCOLOUR(0x62626363), + MKCOLOUR(0x62636262), + MKCOLOUR(0x62636263), + MKCOLOUR(0x62636362), + MKCOLOUR(0x62636363), + MKCOLOUR(0x63626262), + MKCOLOUR(0x63626263), + MKCOLOUR(0x63626362), + MKCOLOUR(0x63626363), + MKCOLOUR(0x63636262), + MKCOLOUR(0x63636263), + MKCOLOUR(0x63636362), + MKCOLOUR(0x63636363), + MKCOLOUR(0x63636364), + MKCOLOUR(0x63636463), + MKCOLOUR(0x63636464), + MKCOLOUR(0x63646363), + MKCOLOUR(0x63646364), + MKCOLOUR(0x63646463), + MKCOLOUR(0x63646464), + MKCOLOUR(0x64636363), + MKCOLOUR(0x64636364), + MKCOLOUR(0x64636463), + MKCOLOUR(0x64636464), + MKCOLOUR(0x64646363), + MKCOLOUR(0x64646364), + MKCOLOUR(0x64646463), + MKCOLOUR(0x64646464), + MKCOLOUR(0x64646465), + MKCOLOUR(0x64646564), + MKCOLOUR(0x64646565), + MKCOLOUR(0x64656464), + MKCOLOUR(0x64656465), + MKCOLOUR(0x64656564), + MKCOLOUR(0x64656565), + MKCOLOUR(0x65646464), + MKCOLOUR(0x65646465), + MKCOLOUR(0x65646564), + MKCOLOUR(0x65646565), + MKCOLOUR(0x65656464), + MKCOLOUR(0x65656465), + MKCOLOUR(0x65656564), + MKCOLOUR(0x65656565), + MKCOLOUR(0x65656566), + MKCOLOUR(0x65656665), + MKCOLOUR(0x65656666), + MKCOLOUR(0x65666565), + MKCOLOUR(0x65666566), + MKCOLOUR(0x65666665), + MKCOLOUR(0x65666666), + MKCOLOUR(0x66656565), + MKCOLOUR(0x66656566), + MKCOLOUR(0x66656665), + MKCOLOUR(0x66656666), + MKCOLOUR(0x66666565), + MKCOLOUR(0x66666566), + MKCOLOUR(0x66666665), + MKCOLOUR(0x66666666), + MKCOLOUR(0x66666667), + MKCOLOUR(0x66666766), + MKCOLOUR(0x66666767), + MKCOLOUR(0x66676666), + MKCOLOUR(0x66676667), + MKCOLOUR(0x66676766), + MKCOLOUR(0x66676767), + MKCOLOUR(0x67676767), +}; + +/** Height map colours for the violet colour scheme, ordered by height. */ +static const uint32 _violet_map_heights[] = { + MKCOLOUR(0x80808080), + MKCOLOUR(0x80808081), + MKCOLOUR(0x80808180), + MKCOLOUR(0x80808181), + MKCOLOUR(0x80818080), + MKCOLOUR(0x80818081), + MKCOLOUR(0x80818180), + MKCOLOUR(0x80818181), + MKCOLOUR(0x81808080), + MKCOLOUR(0x81808081), + MKCOLOUR(0x81808180), + MKCOLOUR(0x81808181), + MKCOLOUR(0x81818080), + MKCOLOUR(0x81818081), + MKCOLOUR(0x81818180), + MKCOLOUR(0x81818181), + MKCOLOUR(0x81818182), + MKCOLOUR(0x81818281), + MKCOLOUR(0x81818282), + MKCOLOUR(0x81828181), + MKCOLOUR(0x81828182), + MKCOLOUR(0x81828281), + MKCOLOUR(0x81828282), + MKCOLOUR(0x82818181), + MKCOLOUR(0x82818182), + MKCOLOUR(0x82818281), + MKCOLOUR(0x82818282), + MKCOLOUR(0x82828181), + MKCOLOUR(0x82828182), + MKCOLOUR(0x82828281), + MKCOLOUR(0x82828282), + MKCOLOUR(0x82828283), + MKCOLOUR(0x82828382), + MKCOLOUR(0x82828383), + MKCOLOUR(0x82838282), + MKCOLOUR(0x82838283), + MKCOLOUR(0x82838382), + MKCOLOUR(0x82838383), + MKCOLOUR(0x83828282), + MKCOLOUR(0x83828283), + MKCOLOUR(0x83828382), + MKCOLOUR(0x83828383), + MKCOLOUR(0x83838282), + MKCOLOUR(0x83838283), + MKCOLOUR(0x83838382), + MKCOLOUR(0x83838383), + MKCOLOUR(0x83838384), + MKCOLOUR(0x83838483), + MKCOLOUR(0x83838484), + MKCOLOUR(0x83848383), + MKCOLOUR(0x83848384), + MKCOLOUR(0x83848483), + MKCOLOUR(0x83848484), + MKCOLOUR(0x84838383), + MKCOLOUR(0x84838384), + MKCOLOUR(0x84838483), + MKCOLOUR(0x84838484), + MKCOLOUR(0x84848383), + MKCOLOUR(0x84848384), + MKCOLOUR(0x84848483), + MKCOLOUR(0x84848484), + MKCOLOUR(0x84848485), + MKCOLOUR(0x84848584), + MKCOLOUR(0x84848585), + MKCOLOUR(0x84858484), + MKCOLOUR(0x84858485), + MKCOLOUR(0x84858584), + MKCOLOUR(0x84858585), + MKCOLOUR(0x85848484), + MKCOLOUR(0x85848485), + MKCOLOUR(0x85848584), + MKCOLOUR(0x85848585), + MKCOLOUR(0x85858484), + MKCOLOUR(0x85858485), + MKCOLOUR(0x85858584), + MKCOLOUR(0x85858585), + MKCOLOUR(0x85858586), + MKCOLOUR(0x85858685), + MKCOLOUR(0x85858686), + MKCOLOUR(0x85868585), + MKCOLOUR(0x85868586), + MKCOLOUR(0x85868685), + MKCOLOUR(0x85868686), + MKCOLOUR(0x85868585), + MKCOLOUR(0x85868586), + MKCOLOUR(0x85868685), + MKCOLOUR(0x85868686), + MKCOLOUR(0x86868585), + MKCOLOUR(0x86868586), + MKCOLOUR(0x86868685), + MKCOLOUR(0x86868686), + MKCOLOUR(0x86868687), + MKCOLOUR(0x86868786), + MKCOLOUR(0x86868787), + MKCOLOUR(0x86878686), + MKCOLOUR(0x86878687), + MKCOLOUR(0x86878786), + MKCOLOUR(0x86878787), + MKCOLOUR(0x87868686), + MKCOLOUR(0x87868687), + MKCOLOUR(0x87868786), + MKCOLOUR(0x87868787), + MKCOLOUR(0x87878686), + MKCOLOUR(0x87878687), + MKCOLOUR(0x87878786), + MKCOLOUR(0x87878787), +}; diff --git a/src/table/misc_settings.ini b/src/table/misc_settings.ini index 474c9b981e..52ca2d16ef 100644 --- a/src/table/misc_settings.ini +++ b/src/table/misc_settings.ini @@ -299,5 +299,14 @@ min = 0 max = UINT32_MAX cat = SC_EXPERT +[SDTG_VAR] +name = ""gui_zoom"" +type = SLE_UINT8 +var = _gui_zoom +def = ZOOM_LVL_OUT_4X +min = ZOOM_LVL_MIN +max = ZOOM_LVL_OUT_4X +cat = SC_BASIC + [SDTG_END] diff --git a/src/table/newgrf_debug_data.h b/src/table/newgrf_debug_data.h index 4814ae50ce..c731409341 100644 --- a/src/table/newgrf_debug_data.h +++ b/src/table/newgrf_debug_data.h @@ -61,7 +61,7 @@ static const NIVariable _niv_vehicles[] = { NIV(0x4A, "current rail type info"), NIV(0x4B, "long date of last service"), NIV(0x4C, "current max speed"), - NIV(0x4A, "position in articulated vehicle"), + NIV(0x4D, "position in articulated vehicle"), NIV(0x60, "count vehicle id occurrences"), // 0x61 not useful, since it requires register 0x10F NIV(0x62, "Curvature/position difference to other vehicle"), diff --git a/src/table/object_land.h b/src/table/object_land.h index 035b1ee8e4..a19b2cb089 100644 --- a/src/table/object_land.h +++ b/src/table/object_land.h @@ -123,7 +123,7 @@ static const DrawTileSprites _object_hq[] = { #undef TILE_SPRITE_LINE -#define M(name, size, build_cost_multiplier, clear_cost_multiplier, height, climate, gen_amount, flags) { GRFFilePropsBase<2>(), INVALID_OBJECT_CLASS, name, climate, size, build_cost_multiplier, clear_cost_multiplier, 0, 0xFFFFFFFF, flags, {0, 0, 0, 0}, 0, height, 1, gen_amount, true } +#define M(name, size, build_cost_multiplier, clear_cost_multiplier, height, climate, gen_amount, flags) { GRFFilePropsBase<2>(), INVALID_OBJECT_CLASS, name, climate, size, build_cost_multiplier, clear_cost_multiplier, 0, MAX_DAY + 1, flags, {0, 0, 0, 0}, 0, height, 1, gen_amount, true } /* Climates * T = Temperate diff --git a/src/table/palettes.h b/src/table/palettes.h index e190134c9b..93cb7385e1 100644 --- a/src/table/palettes.h +++ b/src/table/palettes.h @@ -147,24 +147,3 @@ static const ExtraPaletteValues _extra_palette_values = { M(116, 180, 196), M(148, 200, 216), M(180, 220, 232) } }; #undef M - -/** Colour mapping for the TextColours. */ -static const byte _string_colourmap[17] = { - 150, // TC_BLUE - 12, // TC_SILVER - 189, // TC_GOLD - 184, // TC_RED - 174, // TC_PURPLE - 30, // TC_LIGHT_BROWN - 195, // TC_ORANGE - 209, // TC_GREEN - 68, // TC_YELLOW - 95, // TC_DARK_GREEN - 79, // TC_CREAM - 116, // TC_BROWN - 15, // TC_WHITE - 152, // TC_LIGHT_BLUE - 6, // TC_GREY - 133, // TC_DARK_BLUE - 1, // TC_BLACK -}; diff --git a/src/table/settings.ini b/src/table/settings.ini index 437c07b171..f314f21e92 100644 --- a/src/table/settings.ini +++ b/src/table/settings.ini @@ -28,6 +28,7 @@ static bool TownFoundingChanged(int32 p1); static bool DifficultyNoiseChange(int32 i); static bool MaxNoAIsChange(int32 i); static bool CheckRoadSide(int p1); +static bool ChangeMaxHeightLevel(int32 p1); static bool CheckFreeformEdges(int32 p1); static bool ChangeDynamicEngines(int32 p1); static bool StationCatchmentChanged(int32 p1); @@ -40,6 +41,7 @@ static bool RedrawTownAuthority(int32 p1); static bool InvalidateCompanyInfrastructureWindow(int32 p1); static bool InvalidateCompanyWindow(int32 p1); static bool ZoomMinMaxChanged(int32 p1); +static bool MaxVehiclesChanged(int32 p1); #ifdef ENABLE_NETWORK static bool UpdateClientName(int32 p1); @@ -255,7 +257,7 @@ from = 97 guiflags = SGF_MULTISTRING | SGF_NEWGAME_ONLY def = 1 min = 0 -max = 3 +max = 4 interval = 1 str = STR_CONFIG_SETTING_TERRAIN_TYPE strhelp = STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT @@ -377,6 +379,22 @@ proc = CheckRoadSide ; Construction +[SDT_VAR] +base = GameSettings +var = construction.max_heightlevel +type = SLE_UINT8 +from = 194 +guiflags = SGF_NEWGAME_ONLY | SGF_SCENEDIT_TOO +def = DEF_MAX_HEIGHTLEVEL +min = MIN_MAX_HEIGHTLEVEL +max = MAX_MAX_HEIGHTLEVEL +interval = 1 +str = STR_CONFIG_SETTING_MAX_HEIGHTLEVEL +strhelp = STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT +strval = STR_JUST_INT +proc = ChangeMaxHeightLevel +cat = SC_BASIC + [SDT_BOOL] base = GameSettings var = construction.build_on_slopes @@ -494,6 +512,21 @@ str = STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH strhelp = STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT strval = STR_CONFIG_SETTING_TILE_LENGTH +[SDT_VAR] +base = GameSettings +var = construction.max_bridge_height +type = SLE_UINT8 +from = 194 +guiflags = SGF_NO_NETWORK +def = 12 +min = 1 +max = MAX_TILE_HEIGHT +interval = 1 +str = STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT +strhelp = STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT +strval = STR_JUST_COMMA +cat = SC_EXPERT + [SDT_VAR] base = GameSettings var = construction.max_tunnel_length @@ -929,7 +962,7 @@ max = 5000 str = STR_CONFIG_SETTING_MAX_TRAINS strhelp = STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT strval = STR_JUST_COMMA -proc = RedrawScreen +proc = MaxVehiclesChanged cat = SC_BASIC [SDT_VAR] @@ -942,7 +975,7 @@ max = 5000 str = STR_CONFIG_SETTING_MAX_ROAD_VEHICLES strhelp = STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT strval = STR_JUST_COMMA -proc = RedrawScreen +proc = MaxVehiclesChanged cat = SC_BASIC [SDT_VAR] @@ -955,7 +988,7 @@ max = 5000 str = STR_CONFIG_SETTING_MAX_AIRCRAFT strhelp = STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT strval = STR_JUST_COMMA -proc = RedrawScreen +proc = MaxVehiclesChanged cat = SC_BASIC [SDT_VAR] @@ -968,7 +1001,7 @@ max = 5000 str = STR_CONFIG_SETTING_MAX_SHIPS strhelp = STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT strval = STR_JUST_COMMA -proc = RedrawScreen +proc = MaxVehiclesChanged cat = SC_BASIC [SDTG_BOOL] @@ -2145,8 +2178,8 @@ type = SLE_UINT8 from = 30 guiflags = SGF_MULTISTRING | SGF_NEWGAME_ONLY def = 1 -min = 0 -max = 3 +min = TGEN_SMOOTHNESS_BEGIN +max = TGEN_SMOOTHNESS_END - 1 str = STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN strhelp = STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT strval = STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH @@ -2570,13 +2603,14 @@ strhelp = STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT strval = STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE [SDTC_VAR] -var = gui.hover_delay -type = SLE_UINT8 +var = gui.hover_delay_ms +type = SLE_UINT16 flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC guiflags = SGF_0ISDISABLED -def = 2 -min = 1 -max = 5 +def = 250 +min = 50 +max = 6000 +interval = 50 str = STR_CONFIG_SETTING_HOVER_DELAY strhelp = STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT strval = STR_CONFIG_SETTING_HOVER_DELAY_VALUE @@ -2657,7 +2691,7 @@ flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC guiflags = SGF_MULTISTRING def = ZOOM_LVL_MIN min = ZOOM_LVL_MIN -max = ZOOM_LVL_GUI +max = ZOOM_LVL_OUT_4X str = STR_CONFIG_SETTING_ZOOM_MIN strhelp = STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT strval = STR_CONFIG_SETTING_ZOOM_LVL_MIN @@ -3476,12 +3510,12 @@ strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF [SDTC_VAR] ifdef = ENABLE_NETWORK -var = gui.network_chat_box_width +var = gui.network_chat_box_width_pct type = SLE_UINT16 flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC -def = 620 -min = 200 -max = 65535 +def = 40 +min = 10 +max = 100 cat = SC_EXPERT [SDTC_VAR] diff --git a/src/table/sprites.h b/src/table/sprites.h index 5d42caccb6..81d5388f99 100644 --- a/src/table/sprites.h +++ b/src/table/sprites.h @@ -85,6 +85,8 @@ static const SpriteID SPR_SHARED_ORDERS_ICON = SPR_OPENTTD_BASE + 50; static const SpriteID SPR_PIN_UP = SPR_OPENTTD_BASE + 51; // pin icon static const SpriteID SPR_PIN_DOWN = SPR_OPENTTD_BASE + 52; +static const SpriteID SPR_CLOSEBOX = 143; + static const SpriteID SPR_CIRCLE_FOLDED = SPR_OPENTTD_BASE + 147; // (+) icon static const SpriteID SPR_CIRCLE_UNFOLDED = SPR_OPENTTD_BASE + 148; // (-) icon @@ -290,8 +292,12 @@ static const uint16 RAILTYPE_TUNNEL_BASE_COUNT = 16; static const SpriteID SPR_EMPTY_BOUNDING_BOX = SPR_RAILTYPE_TUNNEL_BASE + RAILTYPE_TUNNEL_BASE_COUNT; static const uint16 EMPTY_BOUNDING_BOX_SPRITE_COUNT = 1; +/* Black palette sprite, needed for painting (fictive) tiles outside map */ +static const SpriteID SPR_PALETTE_BASE = SPR_EMPTY_BOUNDING_BOX + EMPTY_BOUNDING_BOX_SPRITE_COUNT; +static const uint16 PALETTE_SPRITE_COUNT = 1; + /* From where can we start putting NewGRFs? */ -static const SpriteID SPR_NEWGRFS_BASE = SPR_EMPTY_BOUNDING_BOX + EMPTY_BOUNDING_BOX_SPRITE_COUNT; +static const SpriteID SPR_NEWGRFS_BASE = SPR_PALETTE_BASE + PALETTE_SPRITE_COUNT; /* Manager face sprites */ static const SpriteID SPR_GRADIENT = 874; // background gradient behind manager face @@ -993,10 +999,10 @@ static const SpriteID SPR_CNST1_TOWNHOUSE_06_V1 = 1444; static const SpriteID SPR_CNST2_TOWNHOUSE_06_V1 = 1445; static const SpriteID SPR_BUILD_TOWNHOUSE_06_V1 = 1446; // 1st variation static const SpriteID SPR_GRND_TOWNHOUSE_06_V1 = 1447; -static const SpriteID SPR_GRND_STADIUM_N = 1479; //stadium ground at north -static const SpriteID SPR_GRND_STADIUM_E = 1480; //stadium ground at east -static const SpriteID SPR_GRND_STADIUM_W = 1481; //stadium ground at west -static const SpriteID SPR_GRND_STADIUM_S = 1482; //stadium ground at south +static const SpriteID SPR_GRND_STADIUM_N = 1479; // stadium ground at north +static const SpriteID SPR_GRND_STADIUM_E = 1480; // stadium ground at east +static const SpriteID SPR_GRND_STADIUM_W = 1481; // stadium ground at west +static const SpriteID SPR_GRND_STADIUM_S = 1482; // stadium ground at south static const SpriteID SPR_CNST1_TOWNHOUSE_06_V2 = 1501; // used as ground, but is stage1 static const SpriteID SPR_CNST1_TOWNHOUSE_06_V2_P = 1502; // pipes extensions for previous static const SpriteID SPR_CNST2_TOWNHOUSE_06_V2_G = 1503; // Ground of cnst stage 2 @@ -1475,11 +1481,15 @@ static const CursorID ANIMCURSOR_BUILDSIGNALS = ANIMCURSOR_FLAG | 4; ///< 1292 - * bits used for the recolouring process. For transparency, it must be 0x322. */ enum SpriteSetup { + /* These bits are applied to sprite ID */ TRANSPARENT_BIT = 31, ///< toggles transparency in the sprite RECOLOUR_BIT = 30, ///< toggles recolouring in the sprite CUSTOM_BIT = 29, OPAQUE_BIT = 28, + /* This bit is applied to palette ID */ + PALETTE_TEXT_RECOLOUR = 31, ///< Set if palette is actually a magic text recolour + PALETTE_WIDTH = 24, ///< number of bits of the sprite containing the recolour palette SPRITE_WIDTH = 24, ///< number of bits for the sprite number }; @@ -1562,4 +1572,6 @@ static const PaletteID PALETTE_CRASH = 804; ///< Recolour sprite static const PaletteID PALETTE_CHURCH_RED = 1438; ///< Recolour sprite for reddish churches static const PaletteID PALETTE_CHURCH_CREAM = 1439; ///< Recolour sprite for white churches +static const PaletteID PALETTE_ALL_BLACK = SPR_PALETTE_BASE; ///< Exchange any color by black, needed for painting fictive tiles outside map + #endif /* SPRITES_H */ diff --git a/src/table/strgen_tables.h b/src/table/strgen_tables.h index e6924e29c4..322f1bc6bf 100644 --- a/src/table/strgen_tables.h +++ b/src/table/strgen_tables.h @@ -27,6 +27,7 @@ struct CmdStruct { ParseCmdProc proc; long value; uint8 consumes; + int8 default_plural_offset; CmdFlags flags; }; @@ -36,115 +37,115 @@ extern void EmitGender(Buffer *buffer, char *buf, int value); static const CmdStruct _cmd_structs[] = { /* Font size */ - {"TINY_FONT", EmitSingleChar, SCC_TINYFONT, 0, C_NONE}, - {"BIG_FONT", EmitSingleChar, SCC_BIGFONT, 0, C_NONE}, + {"TINY_FONT", EmitSingleChar, SCC_TINYFONT, 0, -1, C_NONE}, + {"BIG_FONT", EmitSingleChar, SCC_BIGFONT, 0, -1, C_NONE}, /* Colours */ - {"BLUE", EmitSingleChar, SCC_BLUE, 0, C_DONTCOUNT}, - {"SILVER", EmitSingleChar, SCC_SILVER, 0, C_DONTCOUNT}, - {"GOLD", EmitSingleChar, SCC_GOLD, 0, C_DONTCOUNT}, - {"RED", EmitSingleChar, SCC_RED, 0, C_DONTCOUNT}, - {"PURPLE", EmitSingleChar, SCC_PURPLE, 0, C_DONTCOUNT}, - {"LTBROWN", EmitSingleChar, SCC_LTBROWN, 0, C_DONTCOUNT}, - {"ORANGE", EmitSingleChar, SCC_ORANGE, 0, C_DONTCOUNT}, - {"GREEN", EmitSingleChar, SCC_GREEN, 0, C_DONTCOUNT}, - {"YELLOW", EmitSingleChar, SCC_YELLOW, 0, C_DONTCOUNT}, - {"DKGREEN", EmitSingleChar, SCC_DKGREEN, 0, C_DONTCOUNT}, - {"CREAM", EmitSingleChar, SCC_CREAM, 0, C_DONTCOUNT}, - {"BROWN", EmitSingleChar, SCC_BROWN, 0, C_DONTCOUNT}, - {"WHITE", EmitSingleChar, SCC_WHITE, 0, C_DONTCOUNT}, - {"LTBLUE", EmitSingleChar, SCC_LTBLUE, 0, C_DONTCOUNT}, - {"GRAY", EmitSingleChar, SCC_GRAY, 0, C_DONTCOUNT}, - {"DKBLUE", EmitSingleChar, SCC_DKBLUE, 0, C_DONTCOUNT}, - {"BLACK", EmitSingleChar, SCC_BLACK, 0, C_DONTCOUNT}, + {"BLUE", EmitSingleChar, SCC_BLUE, 0, -1, C_DONTCOUNT}, + {"SILVER", EmitSingleChar, SCC_SILVER, 0, -1, C_DONTCOUNT}, + {"GOLD", EmitSingleChar, SCC_GOLD, 0, -1, C_DONTCOUNT}, + {"RED", EmitSingleChar, SCC_RED, 0, -1, C_DONTCOUNT}, + {"PURPLE", EmitSingleChar, SCC_PURPLE, 0, -1, C_DONTCOUNT}, + {"LTBROWN", EmitSingleChar, SCC_LTBROWN, 0, -1, C_DONTCOUNT}, + {"ORANGE", EmitSingleChar, SCC_ORANGE, 0, -1, C_DONTCOUNT}, + {"GREEN", EmitSingleChar, SCC_GREEN, 0, -1, C_DONTCOUNT}, + {"YELLOW", EmitSingleChar, SCC_YELLOW, 0, -1, C_DONTCOUNT}, + {"DKGREEN", EmitSingleChar, SCC_DKGREEN, 0, -1, C_DONTCOUNT}, + {"CREAM", EmitSingleChar, SCC_CREAM, 0, -1, C_DONTCOUNT}, + {"BROWN", EmitSingleChar, SCC_BROWN, 0, -1, C_DONTCOUNT}, + {"WHITE", EmitSingleChar, SCC_WHITE, 0, -1, C_DONTCOUNT}, + {"LTBLUE", EmitSingleChar, SCC_LTBLUE, 0, -1, C_DONTCOUNT}, + {"GRAY", EmitSingleChar, SCC_GRAY, 0, -1, C_DONTCOUNT}, + {"DKBLUE", EmitSingleChar, SCC_DKBLUE, 0, -1, C_DONTCOUNT}, + {"BLACK", EmitSingleChar, SCC_BLACK, 0, -1, C_DONTCOUNT}, - {"REV", EmitSingleChar, SCC_REVISION, 0, C_NONE}, // openttd revision string + {"REV", EmitSingleChar, SCC_REVISION, 0, -1, C_NONE}, // openttd revision string - {"STRING1", EmitSingleChar, SCC_STRING1, 2, C_CASE | C_GENDER}, // included string that consumes the string id and ONE argument - {"STRING2", EmitSingleChar, SCC_STRING2, 3, C_CASE | C_GENDER}, // included string that consumes the string id and TWO arguments - {"STRING3", EmitSingleChar, SCC_STRING3, 4, C_CASE | C_GENDER}, // included string that consumes the string id and THREE arguments - {"STRING4", EmitSingleChar, SCC_STRING4, 5, C_CASE | C_GENDER}, // included string that consumes the string id and FOUR arguments - {"STRING5", EmitSingleChar, SCC_STRING5, 6, C_CASE | C_GENDER}, // included string that consumes the string id and FIVE arguments - {"STRING6", EmitSingleChar, SCC_STRING6, 7, C_CASE | C_GENDER}, // included string that consumes the string id and SIX arguments - {"STRING7", EmitSingleChar, SCC_STRING7, 8, C_CASE | C_GENDER}, // included string that consumes the string id and SEVEN arguments + {"STRING1", EmitSingleChar, SCC_STRING1, 2, -1, C_CASE | C_GENDER}, // included string that consumes the string id and ONE argument + {"STRING2", EmitSingleChar, SCC_STRING2, 3, -1, C_CASE | C_GENDER}, // included string that consumes the string id and TWO arguments + {"STRING3", EmitSingleChar, SCC_STRING3, 4, -1, C_CASE | C_GENDER}, // included string that consumes the string id and THREE arguments + {"STRING4", EmitSingleChar, SCC_STRING4, 5, -1, C_CASE | C_GENDER}, // included string that consumes the string id and FOUR arguments + {"STRING5", EmitSingleChar, SCC_STRING5, 6, -1, C_CASE | C_GENDER}, // included string that consumes the string id and FIVE arguments + {"STRING6", EmitSingleChar, SCC_STRING6, 7, -1, C_CASE | C_GENDER}, // included string that consumes the string id and SIX arguments + {"STRING7", EmitSingleChar, SCC_STRING7, 8, -1, C_CASE | C_GENDER}, // included string that consumes the string id and SEVEN arguments - {"STATION_FEATURES", EmitSingleChar, SCC_STATION_FEATURES, 1, C_NONE}, // station features string, icons of the features - {"INDUSTRY", EmitSingleChar, SCC_INDUSTRY_NAME, 1, C_CASE | C_GENDER}, // industry, takes an industry #, can have cases - {"CARGO_LONG", EmitSingleChar, SCC_CARGO_LONG, 2, C_NONE | C_GENDER}, - {"CARGO_SHORT", EmitSingleChar, SCC_CARGO_SHORT, 2, C_NONE}, // short cargo description, only ### tons, or ### litres - {"CARGO_TINY", EmitSingleChar, SCC_CARGO_TINY, 2, C_NONE}, // tiny cargo description with only the amount, not a specifier for the amount or the actual cargo name - {"CARGO_LIST", EmitSingleChar, SCC_CARGO_LIST, 1, C_CASE}, - {"POWER", EmitSingleChar, SCC_POWER, 1, C_NONE}, - {"VOLUME_LONG", EmitSingleChar, SCC_VOLUME_LONG, 1, C_NONE}, - {"VOLUME_SHORT", EmitSingleChar, SCC_VOLUME_SHORT, 1, C_NONE}, - {"WEIGHT_LONG", EmitSingleChar, SCC_WEIGHT_LONG, 1, C_NONE}, - {"WEIGHT_SHORT", EmitSingleChar, SCC_WEIGHT_SHORT, 1, C_NONE}, - {"FORCE", EmitSingleChar, SCC_FORCE, 1, C_NONE}, - {"VELOCITY", EmitSingleChar, SCC_VELOCITY, 1, C_NONE}, - {"HEIGHT", EmitSingleChar, SCC_HEIGHT, 1, C_NONE}, + {"STATION_FEATURES", EmitSingleChar, SCC_STATION_FEATURES, 1, -1, C_NONE}, // station features string, icons of the features + {"INDUSTRY", EmitSingleChar, SCC_INDUSTRY_NAME, 1, -1, C_CASE | C_GENDER}, // industry, takes an industry #, can have cases + {"CARGO_LONG", EmitSingleChar, SCC_CARGO_LONG, 2, 1, C_NONE | C_GENDER}, + {"CARGO_SHORT", EmitSingleChar, SCC_CARGO_SHORT, 2, 1, C_NONE}, // short cargo description, only ### tons, or ### litres + {"CARGO_TINY", EmitSingleChar, SCC_CARGO_TINY, 2, 1, C_NONE}, // tiny cargo description with only the amount, not a specifier for the amount or the actual cargo name + {"CARGO_LIST", EmitSingleChar, SCC_CARGO_LIST, 1, -1, C_CASE}, + {"POWER", EmitSingleChar, SCC_POWER, 1, 0, C_NONE}, + {"VOLUME_LONG", EmitSingleChar, SCC_VOLUME_LONG, 1, 0, C_NONE}, + {"VOLUME_SHORT", EmitSingleChar, SCC_VOLUME_SHORT, 1, 0, C_NONE}, + {"WEIGHT_LONG", EmitSingleChar, SCC_WEIGHT_LONG, 1, 0, C_NONE}, + {"WEIGHT_SHORT", EmitSingleChar, SCC_WEIGHT_SHORT, 1, 0, C_NONE}, + {"FORCE", EmitSingleChar, SCC_FORCE, 1, 0, C_NONE}, + {"VELOCITY", EmitSingleChar, SCC_VELOCITY, 1, 0, C_NONE}, + {"HEIGHT", EmitSingleChar, SCC_HEIGHT, 1, 0, C_NONE}, - {"P", EmitPlural, 0, 0, C_DONTCOUNT}, // plural specifier - {"G", EmitGender, 0, 0, C_DONTCOUNT}, // gender specifier + {"P", EmitPlural, 0, 0, -1, C_DONTCOUNT}, // plural specifier + {"G", EmitGender, 0, 0, -1, C_DONTCOUNT}, // gender specifier - {"DATE_TINY", EmitSingleChar, SCC_DATE_TINY, 1, C_NONE}, - {"DATE_SHORT", EmitSingleChar, SCC_DATE_SHORT, 1, C_CASE}, - {"DATE_LONG", EmitSingleChar, SCC_DATE_LONG, 1, C_CASE}, - {"DATE_ISO", EmitSingleChar, SCC_DATE_ISO, 1, C_NONE}, + {"DATE_TINY", EmitSingleChar, SCC_DATE_TINY, 1, -1, C_NONE}, + {"DATE_SHORT", EmitSingleChar, SCC_DATE_SHORT, 1, -1, C_CASE}, + {"DATE_LONG", EmitSingleChar, SCC_DATE_LONG, 1, -1, C_CASE}, + {"DATE_ISO", EmitSingleChar, SCC_DATE_ISO, 1, -1, C_NONE}, - {"STRING", EmitSingleChar, SCC_STRING, 1, C_CASE | C_GENDER}, - {"RAW_STRING", EmitSingleChar, SCC_RAW_STRING_POINTER, 1, C_NONE | C_GENDER}, + {"STRING", EmitSingleChar, SCC_STRING, 1, -1, C_CASE | C_GENDER}, + {"RAW_STRING", EmitSingleChar, SCC_RAW_STRING_POINTER, 1, -1, C_NONE | C_GENDER}, /* Numbers */ - {"COMMA", EmitSingleChar, SCC_COMMA, 1, C_NONE}, // Number with comma - {"DECIMAL", EmitSingleChar, SCC_DECIMAL, 2, C_NONE}, // Number with comma and fractional part. Second parameter is number of fractional digits, first parameter is number times 10**(second parameter). - {"NUM", EmitSingleChar, SCC_NUM, 1, C_NONE}, // Signed number - {"ZEROFILL_NUM", EmitSingleChar, SCC_ZEROFILL_NUM, 2, C_NONE}, // Unsigned number with zero fill, e.g. "02". First parameter is number, second minimum length - {"BYTES", EmitSingleChar, SCC_BYTES, 1, C_NONE}, // Unsigned number with "bytes", i.e. "1.02 MiB or 123 KiB" - {"HEX", EmitSingleChar, SCC_HEX, 1, C_NONE}, // Hexadecimally printed number + {"COMMA", EmitSingleChar, SCC_COMMA, 1, 0, C_NONE}, // Number with comma + {"DECIMAL", EmitSingleChar, SCC_DECIMAL, 2, 0, C_NONE}, // Number with comma and fractional part. Second parameter is number of fractional digits, first parameter is number times 10**(second parameter). + {"NUM", EmitSingleChar, SCC_NUM, 1, 0, C_NONE}, // Signed number + {"ZEROFILL_NUM", EmitSingleChar, SCC_ZEROFILL_NUM, 2, 0, C_NONE}, // Unsigned number with zero fill, e.g. "02". First parameter is number, second minimum length + {"BYTES", EmitSingleChar, SCC_BYTES, 1, 0, C_NONE}, // Unsigned number with "bytes", i.e. "1.02 MiB or 123 KiB" + {"HEX", EmitSingleChar, SCC_HEX, 1, 0, C_NONE}, // Hexadecimally printed number - {"CURRENCY_LONG", EmitSingleChar, SCC_CURRENCY_LONG, 1, C_NONE}, - {"CURRENCY_SHORT", EmitSingleChar, SCC_CURRENCY_SHORT, 1, C_NONE}, // compact currency + {"CURRENCY_LONG", EmitSingleChar, SCC_CURRENCY_LONG, 1, 0, C_NONE}, + {"CURRENCY_SHORT", EmitSingleChar, SCC_CURRENCY_SHORT, 1, 0, C_NONE}, // compact currency - {"WAYPOINT", EmitSingleChar, SCC_WAYPOINT_NAME, 1, C_NONE | C_GENDER}, // waypoint name - {"STATION", EmitSingleChar, SCC_STATION_NAME, 1, C_NONE | C_GENDER}, - {"DEPOT", EmitSingleChar, SCC_DEPOT_NAME, 2, C_NONE | C_GENDER}, - {"TOWN", EmitSingleChar, SCC_TOWN_NAME, 1, C_NONE | C_GENDER}, - {"GROUP", EmitSingleChar, SCC_GROUP_NAME, 1, C_NONE | C_GENDER}, - {"SIGN", EmitSingleChar, SCC_SIGN_NAME, 1, C_NONE | C_GENDER}, - {"ENGINE", EmitSingleChar, SCC_ENGINE_NAME, 1, C_NONE | C_GENDER}, - {"VEHICLE", EmitSingleChar, SCC_VEHICLE_NAME, 1, C_NONE | C_GENDER}, - {"COMPANY", EmitSingleChar, SCC_COMPANY_NAME, 1, C_NONE | C_GENDER}, - {"COMPANY_NUM", EmitSingleChar, SCC_COMPANY_NUM, 1, C_NONE}, - {"PRESIDENT_NAME", EmitSingleChar, SCC_PRESIDENT_NAME, 1, C_NONE | C_GENDER}, + {"WAYPOINT", EmitSingleChar, SCC_WAYPOINT_NAME, 1, -1, C_NONE | C_GENDER}, // waypoint name + {"STATION", EmitSingleChar, SCC_STATION_NAME, 1, -1, C_NONE | C_GENDER}, + {"DEPOT", EmitSingleChar, SCC_DEPOT_NAME, 2, -1, C_NONE | C_GENDER}, + {"TOWN", EmitSingleChar, SCC_TOWN_NAME, 1, -1, C_NONE | C_GENDER}, + {"GROUP", EmitSingleChar, SCC_GROUP_NAME, 1, -1, C_NONE | C_GENDER}, + {"SIGN", EmitSingleChar, SCC_SIGN_NAME, 1, -1, C_NONE | C_GENDER}, + {"ENGINE", EmitSingleChar, SCC_ENGINE_NAME, 1, -1, C_NONE | C_GENDER}, + {"VEHICLE", EmitSingleChar, SCC_VEHICLE_NAME, 1, -1, C_NONE | C_GENDER}, + {"COMPANY", EmitSingleChar, SCC_COMPANY_NAME, 1, -1, C_NONE | C_GENDER}, + {"COMPANY_NUM", EmitSingleChar, SCC_COMPANY_NUM, 1, -1, C_NONE}, + {"PRESIDENT_NAME", EmitSingleChar, SCC_PRESIDENT_NAME, 1, -1, C_NONE | C_GENDER}, - {"", EmitSingleChar, '\n', 0, C_DONTCOUNT}, - {"{", EmitSingleChar, '{', 0, C_DONTCOUNT}, - {"UP_ARROW", EmitSingleChar, SCC_UP_ARROW, 0, C_DONTCOUNT}, - {"SMALL_UP_ARROW", EmitSingleChar, SCC_SMALL_UP_ARROW, 0, C_DONTCOUNT}, - {"SMALL_DOWN_ARROW", EmitSingleChar, SCC_SMALL_DOWN_ARROW, 0, C_DONTCOUNT}, - {"TRAIN", EmitSingleChar, SCC_TRAIN, 0, C_DONTCOUNT}, - {"LORRY", EmitSingleChar, SCC_LORRY, 0, C_DONTCOUNT}, - {"BUS", EmitSingleChar, SCC_BUS, 0, C_DONTCOUNT}, - {"PLANE", EmitSingleChar, SCC_PLANE, 0, C_DONTCOUNT}, - {"SHIP", EmitSingleChar, SCC_SHIP, 0, C_DONTCOUNT}, - {"NBSP", EmitSingleChar, 0xA0, 0, C_DONTCOUNT}, - {"COPYRIGHT", EmitSingleChar, 0xA9, 0, C_DONTCOUNT}, - {"DOWN_ARROW", EmitSingleChar, SCC_DOWN_ARROW, 0, C_DONTCOUNT}, - {"CHECKMARK", EmitSingleChar, SCC_CHECKMARK, 0, C_DONTCOUNT}, - {"CROSS", EmitSingleChar, SCC_CROSS, 0, C_DONTCOUNT}, - {"RIGHT_ARROW", EmitSingleChar, SCC_RIGHT_ARROW, 0, C_DONTCOUNT}, - {"SMALL_LEFT_ARROW", EmitSingleChar, SCC_LESS_THAN, 0, C_DONTCOUNT}, - {"SMALL_RIGHT_ARROW", EmitSingleChar, SCC_GREATER_THAN, 0, C_DONTCOUNT}, + {"", EmitSingleChar, '\n', 0, -1, C_DONTCOUNT}, + {"{", EmitSingleChar, '{', 0, -1, C_DONTCOUNT}, + {"UP_ARROW", EmitSingleChar, SCC_UP_ARROW, 0, -1, C_DONTCOUNT}, + {"SMALL_UP_ARROW", EmitSingleChar, SCC_SMALL_UP_ARROW, 0, -1, C_DONTCOUNT}, + {"SMALL_DOWN_ARROW", EmitSingleChar, SCC_SMALL_DOWN_ARROW, 0, -1, C_DONTCOUNT}, + {"TRAIN", EmitSingleChar, SCC_TRAIN, 0, -1, C_DONTCOUNT}, + {"LORRY", EmitSingleChar, SCC_LORRY, 0, -1, C_DONTCOUNT}, + {"BUS", EmitSingleChar, SCC_BUS, 0, -1, C_DONTCOUNT}, + {"PLANE", EmitSingleChar, SCC_PLANE, 0, -1, C_DONTCOUNT}, + {"SHIP", EmitSingleChar, SCC_SHIP, 0, -1, C_DONTCOUNT}, + {"NBSP", EmitSingleChar, 0xA0, 0, -1, C_DONTCOUNT}, + {"COPYRIGHT", EmitSingleChar, 0xA9, 0, -1, C_DONTCOUNT}, + {"DOWN_ARROW", EmitSingleChar, SCC_DOWN_ARROW, 0, -1, C_DONTCOUNT}, + {"CHECKMARK", EmitSingleChar, SCC_CHECKMARK, 0, -1, C_DONTCOUNT}, + {"CROSS", EmitSingleChar, SCC_CROSS, 0, -1, C_DONTCOUNT}, + {"RIGHT_ARROW", EmitSingleChar, SCC_RIGHT_ARROW, 0, -1, C_DONTCOUNT}, + {"SMALL_LEFT_ARROW", EmitSingleChar, SCC_LESS_THAN, 0, -1, C_DONTCOUNT}, + {"SMALL_RIGHT_ARROW", EmitSingleChar, SCC_GREATER_THAN, 0, -1, C_DONTCOUNT}, /* The following are directional formatting codes used to get the RTL strings right: * http://www.unicode.org/unicode/reports/tr9/#Directional_Formatting_Codes */ - {"LRM", EmitSingleChar, CHAR_TD_LRM, 0, C_DONTCOUNT}, - {"RLM", EmitSingleChar, CHAR_TD_RLM, 0, C_DONTCOUNT}, - {"LRE", EmitSingleChar, CHAR_TD_LRE, 0, C_DONTCOUNT}, - {"RLE", EmitSingleChar, CHAR_TD_RLE, 0, C_DONTCOUNT}, - {"LRO", EmitSingleChar, CHAR_TD_LRO, 0, C_DONTCOUNT}, - {"RLO", EmitSingleChar, CHAR_TD_RLO, 0, C_DONTCOUNT}, - {"PDF", EmitSingleChar, CHAR_TD_PDF, 0, C_DONTCOUNT}, + {"LRM", EmitSingleChar, CHAR_TD_LRM, 0, -1, C_DONTCOUNT}, + {"RLM", EmitSingleChar, CHAR_TD_RLM, 0, -1, C_DONTCOUNT}, + {"LRE", EmitSingleChar, CHAR_TD_LRE, 0, -1, C_DONTCOUNT}, + {"RLE", EmitSingleChar, CHAR_TD_RLE, 0, -1, C_DONTCOUNT}, + {"LRO", EmitSingleChar, CHAR_TD_LRO, 0, -1, C_DONTCOUNT}, + {"RLO", EmitSingleChar, CHAR_TD_RLO, 0, -1, C_DONTCOUNT}, + {"PDF", EmitSingleChar, CHAR_TD_PDF, 0, -1, C_DONTCOUNT}, }; /** Description of a plural form */ diff --git a/src/table/string_colours.h b/src/table/string_colours.h new file mode 100644 index 0000000000..1e3b02bd64 --- /dev/null +++ b/src/table/string_colours.h @@ -0,0 +1,31 @@ +/* $Id$ */ + +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + */ + +/** @file string_colours.h The colour translation of GRF's strings. */ + +/** Colour mapping for the TextColours. */ +static const byte _string_colourmap[17] = { + 150, // TC_BLUE + 12, // TC_SILVER + 189, // TC_GOLD + 184, // TC_RED + 174, // TC_PURPLE + 30, // TC_LIGHT_BROWN + 195, // TC_ORANGE + 209, // TC_GREEN + 68, // TC_YELLOW + 95, // TC_DARK_GREEN + 79, // TC_CREAM + 116, // TC_BROWN + 15, // TC_WHITE + 152, // TC_LIGHT_BLUE + 6, // TC_GREY + 133, // TC_DARK_BLUE + 1, // TC_BLACK +}; diff --git a/src/table/townname.h b/src/table/townname.h index aac2d2b358..25c997d255 100644 --- a/src/table/townname.h +++ b/src/table/townname.h @@ -2612,7 +2612,7 @@ static const char * const _name_swiss_real[] = { "Sursee", "Schwyz", "Thalwil", - "Thônex", + "Th\xC3\xB4nex", "Thun", "Uster", "Uzwil", diff --git a/src/terraform_cmd.cpp b/src/terraform_cmd.cpp index 98ac1d365d..68ebafab94 100644 --- a/src/terraform_cmd.cpp +++ b/src/terraform_cmd.cpp @@ -21,40 +21,20 @@ #include "table/strings.h" +#include +#include + #include "safeguards.h" -/* - * In one terraforming command all four corners of a initial tile can be raised/lowered (though this is not available to the player). - * The maximal amount of height modifications is achieved when raising a complete flat land from sea level to MAX_TILE_HEIGHT or vice versa. - * This affects all corners with a manhatten distance smaller than MAX_TILE_HEIGHT to one of the initial 4 corners. - * Their maximal amount is computed to 4 * \sum_{i=1}^{h_max} i = 2 * h_max * (h_max + 1). - */ -static const int TERRAFORMER_MODHEIGHT_SIZE = 2 * MAX_TILE_HEIGHT * (MAX_TILE_HEIGHT + 1); - -/* - * The maximal amount of affected tiles (i.e. the tiles that incident with one of the corners above, is computed similar to - * 1 + 4 * \sum_{i=1}^{h_max} (i+1) = 1 + 2 * h_max + (h_max + 3). - */ -static const int TERRAFORMER_TILE_TABLE_SIZE = 1 + 2 * MAX_TILE_HEIGHT * (MAX_TILE_HEIGHT + 3); - -struct TerraformerHeightMod { - TileIndex tile; ///< Referenced tile. - byte height; ///< New TileHeight (height of north corner) of the tile. -}; +/** Set of tiles. */ +typedef std::set TileIndexSet; +/** Mapping of tiles to their height. */ +typedef std::map TileIndexToHeightMap; +/** State of the terraforming. */ struct TerraformerState { - int modheight_count; ///< amount of entries in "modheight". - int tile_table_count; ///< amount of entries in "tile_table". - - /** - * Dirty tiles, i.e.\ at least one corner changed. - * - * This array contains the tiles which are or will be marked as dirty. - * - * @ingroup dirty - */ - TileIndex tile_table[TERRAFORMER_TILE_TABLE_SIZE]; - TerraformerHeightMod modheight[TERRAFORMER_MODHEIGHT_SIZE]; ///< Height modifications. + TileIndexSet dirty_tiles; ///< The tiles that need to be redrawn. + TileIndexToHeightMap tile_to_new_height; ///< The tiles for which the height has changed. }; TileIndex _terraform_err_tile; ///< first tile we couldn't terraform @@ -68,14 +48,8 @@ TileIndex _terraform_err_tile; ///< first tile we couldn't terraform */ static int TerraformGetHeightOfTile(const TerraformerState *ts, TileIndex tile) { - const TerraformerHeightMod *mod = ts->modheight; - - for (int count = ts->modheight_count; count != 0; count--, mod++) { - if (mod->tile == tile) return mod->height; - } - - /* TileHeight unchanged so far, read value from map. */ - return TileHeight(tile); + TileIndexToHeightMap::const_iterator it = ts->tile_to_new_height.find(tile); + return it != ts->tile_to_new_height.end() ? it->second : TileHeight(tile); } /** @@ -87,26 +61,7 @@ static int TerraformGetHeightOfTile(const TerraformerState *ts, TileIndex tile) */ static void TerraformSetHeightOfTile(TerraformerState *ts, TileIndex tile, int height) { - /* Find tile in the "modheight" table. - * Note: In a normal user-terraform command the tile will not be found in the "modheight" table. - * But during house- or industry-construction multiple corners can be terraformed at once. */ - TerraformerHeightMod *mod = ts->modheight; - int count = ts->modheight_count; - - while ((count > 0) && (mod->tile != tile)) { - mod++; - count--; - } - - /* New entry? */ - if (count == 0) { - assert(ts->modheight_count < TERRAFORMER_MODHEIGHT_SIZE); - ts->modheight_count++; - } - - /* Finally store the new value */ - mod->tile = tile; - mod->height = (byte)height; + ts->tile_to_new_height[tile] = height; } /** @@ -118,15 +73,7 @@ static void TerraformSetHeightOfTile(TerraformerState *ts, TileIndex tile, int h */ static void TerraformAddDirtyTile(TerraformerState *ts, TileIndex tile) { - int count = ts->tile_table_count; - - for (TileIndex *t = ts->tile_table; count != 0; count--, t++) { - if (*t == tile) return; - } - - assert(ts->tile_table_count < TERRAFORMER_TILE_TABLE_SIZE); - - ts->tile_table[ts->tile_table_count++] = tile; + ts->dirty_tiles.insert(tile); } /** @@ -159,7 +106,7 @@ static CommandCost TerraformTileHeight(TerraformerState *ts, TileIndex tile, int /* Check range of destination height */ if (height < 0) return_cmd_error(STR_ERROR_ALREADY_AT_SEA_LEVEL); - if (height > (int)MAX_TILE_HEIGHT) return_cmd_error(STR_ERROR_TOO_HIGH); + if (height > _settings_game.construction.max_heightlevel) return_cmd_error(STR_ERROR_TOO_HIGH); /* * Check if the terraforming has any effect. @@ -247,8 +194,6 @@ CommandCost CmdTerraformLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uin int direction = (p2 != 0 ? 1 : -1); TerraformerState ts; - ts.modheight_count = ts.tile_table_count = 0; - /* Compute the costs and the terraforming result in a model of the landscape */ if ((p1 & SLOPE_W) != 0 && tile + TileDiffXY(1, 0) < MapSize()) { TileIndex t = tile + TileDiffXY(1, 0); @@ -282,10 +227,8 @@ CommandCost CmdTerraformLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uin * Pass == 0: Collect tileareas which are caused to be auto-cleared. * Pass == 1: Collect the actual cost. */ for (int pass = 0; pass < 2; pass++) { - TileIndex *ti = ts.tile_table; - - for (int count = ts.tile_table_count; count != 0; count--, ti++) { - TileIndex tile = *ti; + for (TileIndexSet::const_iterator it = ts.dirty_tiles.begin(); it != ts.dirty_tiles.end(); it++) { + TileIndex tile = *it; assert(tile < MapSize()); /* MP_VOID tiles can be terraformed but as tunnels and bridges @@ -311,10 +254,20 @@ CommandCost CmdTerraformLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uin if (pass == 0) { /* Check if bridge would take damage */ - if (direction == 1 && MayHaveBridgeAbove(tile) && IsBridgeAbove(tile) && - GetBridgeHeight(GetSouthernBridgeEnd(tile)) <= z_max) { - _terraform_err_tile = tile; // highlight the tile under the bridge - return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile)) { + int bridge_height = GetBridgeHeight(GetSouthernBridgeEnd(tile)); + + /* Check if bridge would take damage. */ + if (direction == 1 && bridge_height <= z_max) { + _terraform_err_tile = tile; // highlight the tile under the bridge + return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + } + + /* Is the bridge above not too high afterwards? */ + if (direction == -1 && bridge_height > (z_min + _settings_game.construction.max_bridge_height)) { + _terraform_err_tile = tile; + return_cmd_error(STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND); + } } /* Check if tunnel would take damage */ if (direction == -1 && IsTunnelInWay(tile, z_min)) { @@ -351,34 +304,106 @@ CommandCost CmdTerraformLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uin } Company *c = Company::GetIfValid(_current_company); - if (c != NULL && (int)GB(c->terraform_limit, 16, 16) < ts.modheight_count) { + if (c != NULL && GB(c->terraform_limit, 16, 16) < ts.tile_to_new_height.size()) { return_cmd_error(STR_ERROR_TERRAFORM_LIMIT_REACHED); } if (flags & DC_EXEC) { /* change the height */ - { - int count; - TerraformerHeightMod *mod; + for (TileIndexToHeightMap::const_iterator it = ts.tile_to_new_height.begin(); + it != ts.tile_to_new_height.end(); it++) { + TileIndex tile = it->first; + int height = it->second; - mod = ts.modheight; - for (count = ts.modheight_count; count != 0; count--, mod++) { - TileIndex til = mod->tile; + SetTileHeight(tile, (uint)height); + } - SetTileHeight(til, mod->height); + /* Finally mark the dirty tiles dirty */ + for (TileIndexSet::const_iterator it = ts.dirty_tiles.begin(); it != ts.dirty_tiles.end(); it++) { + MarkTileDirtyByTile(*it); + + int height = TerraformGetHeightOfTile(&ts, *it); + + /* Now, if we alter the height of the map edge, we need to take care + * about repainting the affected areas outside map as well. + * Remember: + * Outside map, we assume that our landscape descends to + * height zero as fast as possible. + * Those simulated tiles (they don't exist as datastructure, + * only as concept in code) need to be repainted properly, + * otherwise we will get ugly glitches. + * + * Furthermore, note that we have to take care about the possibility, + * that landscape was higher before the change, + * so also tiles a bit outside need to be repainted. + */ + int x = TileX(*it); + int y = TileY(*it); + if (x == 0) { + if (y == 0) { + /* Height of the northern corner is altered. */ + for (int cx = 0; cx >= -height - 1; cx--) { + for (int cy = 0; cy >= -height - 1; cy--) { + /* This means, tiles in the sector north of that + * corner need to be repainted. + */ + if (cx + cy >= -height - 2) { + /* But only tiles that actually might have changed. */ + MarkTileDirtyByTileOutsideMap(cx, cy); + } + } + } + } else if (y < (int)MapMaxY()) { + for (int cx = 0; cx >= -height - 1; cx--) { + MarkTileDirtyByTileOutsideMap(cx, y); + } + } else { + for (int cx = 0; cx >= -height - 1; cx--) { + for (int cy = (int)MapMaxY(); cy <= (int)MapMaxY() + height + 1; cy++) { + if (cx + ((int)MapMaxY() - cy) >= -height - 2) { + MarkTileDirtyByTileOutsideMap(cx, cy); + } + } + } + } + } else if (x < (int)MapMaxX()) { + if (y == 0) { + for (int cy = 0; cy >= -height - 1; cy--) { + MarkTileDirtyByTileOutsideMap(x, cy); + } + } else if (y < (int)MapMaxY()) { + /* Nothing to be done here, we are inside the map. */ + } else { + for (int cy = (int)MapMaxY(); cy <= (int)MapMaxY() + height + 1; cy++) { + MarkTileDirtyByTileOutsideMap(x, cy); + } + } + } else { + if (y == 0) { + for (int cx = (int)MapMaxX(); cx <= (int)MapMaxX() + height + 1; cx++) { + for (int cy = 0; cy >= -height - 1; cy--) { + if (((int)MapMaxX() - cx) + cy >= -height - 2) { + MarkTileDirtyByTileOutsideMap(cx, cy); + } + } + } + } else if (y < (int)MapMaxY()) { + for (int cx = (int)MapMaxX(); cx <= (int)MapMaxX() + height + 1; cx++) { + MarkTileDirtyByTileOutsideMap(cx, y); + } + } else { + for (int cx = (int)MapMaxX(); cx <= (int)MapMaxX() + height + 1; cx++) { + for (int cy = (int)MapMaxY(); cy <= (int)MapMaxY() + height + 1; cy++) { + if (((int)MapMaxX() - cx) + ((int)MapMaxY() - cy) >= -height - 2) { + MarkTileDirtyByTileOutsideMap(cx, cy); + } + } + } + } } } - /* finally mark the dirty tiles dirty */ - { - int count; - TileIndex *ti = ts.tile_table; - for (count = ts.tile_table_count; count != 0; count--, ti++) { - MarkTileDirtyByTile(*ti); - } - } - - if (c != NULL) c->terraform_limit -= ts.modheight_count << 16; + if (c != NULL) c->terraform_limit -= ts.tile_to_new_height.size() << 16; } return total_cost; } @@ -415,7 +440,7 @@ CommandCost CmdLevelLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 } /* Check range of destination height */ - if (h > MAX_TILE_HEIGHT) return_cmd_error((oldh == 0) ? STR_ERROR_ALREADY_AT_SEA_LEVEL : STR_ERROR_TOO_HIGH); + if (h > _settings_game.construction.max_heightlevel) return_cmd_error((oldh == 0) ? STR_ERROR_ALREADY_AT_SEA_LEVEL : STR_ERROR_TOO_HIGH); Money money = GetAvailableMoneyForCommand(); CommandCost cost(EXPENSES_CONSTRUCTION); diff --git a/src/terraform_gui.cpp b/src/terraform_gui.cpp index d2e7d39e1f..acc277249c 100644 --- a/src/terraform_gui.cpp +++ b/src/terraform_gui.cpp @@ -32,6 +32,7 @@ #include "hotkeys.h" #include "engine_base.h" #include "terraform_gui.h" +#include "zoom_func.h" #include "widgets/terraform_widget.h" @@ -209,12 +210,7 @@ struct TerraformToolbarWindow : Window { break; case WID_TT_PLACE_OBJECT: // Place object button - /* Don't show the place object button when there are no objects to place. */ - if (ObjectClass::GetUIClassCount() == 0) return; - if (HandlePlacePushButton(this, WID_TT_PLACE_OBJECT, SPR_CURSOR_TRANSMITTER, HT_RECT)) { - ShowBuildObjectPicker(this); - this->last_user_action = widget; - } + ShowBuildObjectPicker(); break; default: NOT_REACHED(); @@ -248,10 +244,6 @@ struct TerraformToolbarWindow : Window { PlaceProc_Sign(tile); break; - case WID_TT_PLACE_OBJECT: // Place object button - PlaceProc_Object(tile); - break; - default: NOT_REACHED(); } } @@ -285,7 +277,6 @@ struct TerraformToolbarWindow : Window { virtual void OnPlaceObjectAbort() { - DeleteWindowById(WC_BUILD_OBJECT, 0); this->RaiseButtons(); } @@ -343,7 +334,7 @@ static const NWidgetPart _nested_terraform_widgets[] = { NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_TT_PLACE_SIGN), SetMinimalSize(22, 22), SetFill(0, 1), SetDataTip(SPR_IMG_SIGN, STR_SCENEDIT_TOOLBAR_PLACE_SIGN), NWidget(NWID_SELECTION, INVALID_COLOUR, WID_TT_SHOW_PLACE_OBJECT), - NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_TT_PLACE_OBJECT), SetMinimalSize(22, 22), + NWidget(WWT_PUSHIMGBTN, COLOUR_DARK_GREEN, WID_TT_PLACE_OBJECT), SetMinimalSize(22, 22), SetFill(0, 1), SetDataTip(SPR_IMG_TRANSMITTER, STR_SCENEDIT_TOOLBAR_PLACE_OBJECT), EndContainer(), EndContainer(), @@ -360,7 +351,7 @@ static WindowDesc _terraform_desc( /** * Show the toolbar for terraforming in the game. * @param link The toolbar we might want to link to. - * @return The allocated toolbar. + * @return The allocated toolbar if the window was newly opened, else \c NULL. */ Window *ShowTerraformToolbar(Window *link) { @@ -554,6 +545,14 @@ struct ScenarioEditorLandscapeGenerationWindow : Window { } } + virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize) + { + if (widget != WID_ETT_DOTS) return; + + size->width = max(size->width, ScaleGUITrad(59)); + size->height = max(size->height, ScaleGUITrad(31)); + } + virtual void DrawWidget(const Rect &r, int widget) const { if (widget != WID_ETT_DOTS) return; @@ -566,7 +565,7 @@ struct ScenarioEditorLandscapeGenerationWindow : Window { assert(n != 0); do { - DrawSprite(SPR_WHITE_POINT, PAL_NONE, center_x + coords[0], center_y + coords[1]); + DrawSprite(SPR_WHITE_POINT, PAL_NONE, center_x + ScaleGUITrad(coords[0]), center_y + ScaleGUITrad(coords[1])); coords += 2; } while (--n); } @@ -607,10 +606,7 @@ struct ScenarioEditorLandscapeGenerationWindow : Window { break; case WID_ETT_PLACE_OBJECT: // Place transmitter button - if (HandlePlacePushButton(this, WID_ETT_PLACE_OBJECT, SPR_CURSOR_TRANSMITTER, HT_RECT)) { - ShowBuildObjectPicker(this); - this->last_user_action = widget; - } + ShowBuildObjectPicker(); break; case WID_ETT_INCREASE_SIZE: @@ -678,10 +674,6 @@ struct ScenarioEditorLandscapeGenerationWindow : Window { VpStartPlaceSizing(tile, VPM_X_AND_Y, DDSP_CREATE_DESERT); break; - case WID_ETT_PLACE_OBJECT: // Place transmitter button - PlaceProc_Object(tile); - break; - default: NOT_REACHED(); } } @@ -754,7 +746,7 @@ static WindowDesc _scen_edit_land_gen_desc( /** * Show the toolbar for terraforming in the scenario editor. - * @return The allocated toolbar. + * @return The allocated toolbar if the window was newly opened, else \c NULL. */ Window *ShowEditorTerraformToolbar() { diff --git a/src/textbuf.cpp b/src/textbuf.cpp index 116d60ba87..3d219e916d 100644 --- a/src/textbuf.cpp +++ b/src/textbuf.cpp @@ -477,16 +477,10 @@ HandleKeyPressResult Textbuf::HandleKeyPress(WChar key, uint16 keycode) case WKC_RETURN: case WKC_NUM_ENTER: return HKPR_CONFIRM; -#ifdef WITH_COCOA - case (WKC_META | 'V'): -#endif case (WKC_CTRL | 'V'): edited = this->InsertClipboard(); break; -#ifdef WITH_COCOA - case (WKC_META | 'U'): -#endif case (WKC_CTRL | 'U'): this->DeleteAll(); edited = true; diff --git a/src/texteff.cpp b/src/texteff.cpp index 03b5645998..cdb8b8ce6a 100644 --- a/src/texteff.cpp +++ b/src/texteff.cpp @@ -114,7 +114,7 @@ void DrawTextEffects(DrawPixelInfo *dpi) for (TextEffect *te = _text_effects.Begin(); te != end; te++) { if (te->string_id == INVALID_STRING_ID) continue; if (te->mode == TE_RISING || (_settings_client.gui.loading_indicators && !IsTransparencySet(TO_LOADING))) { - ViewportAddString(dpi, ZOOM_LVL_OUT_8X, te, te->string_id, te->string_id - 1, 0, te->params_1, te->params_2); + ViewportAddString(dpi, ZOOM_LVL_OUT_8X, te, te->string_id, te->string_id - 1, STR_NULL, te->params_1, te->params_2); } } } diff --git a/src/textfile_gui.cpp b/src/textfile_gui.cpp index ad6215af50..3efd98497e 100644 --- a/src/textfile_gui.cpp +++ b/src/textfile_gui.cpp @@ -21,6 +21,14 @@ #include "table/strings.h" +#if defined(WITH_ZLIB) +#include +#endif + +#if defined(WITH_LZMA) +#include +#endif + #include "safeguards.h" /** Widgets for the textfile window. */ @@ -193,6 +201,117 @@ void TextfileWindow::SetupScrollbars() #endif /* WITH_FREETYPE */ } +#if defined(WITH_ZLIB) + +/** + * Do an in-memory gunzip operation. This works on a raw deflate stream, + * or a file with gzip or zlib header. + * @param bufp A pointer to a buffer containing the input data. This + * buffer will be freed and replaced by a buffer containing + * the uncompressed data. + * @param sizep A pointer to the buffer size. Before the call, the value + * pointed to should contain the size of the input buffer. + * After the call, it contains the size of the uncompressed + * data. + * + * When decompressing fails, *bufp is set to NULL and *sizep to 0. The + * compressed buffer passed in is still freed in this case. + */ +static void Gunzip(byte **bufp, size_t *sizep) +{ + static const int BLOCKSIZE = 8192; + byte *buf = NULL; + size_t alloc_size = 0; + z_stream z; + int res; + + memset(&z, 0, sizeof(z)); + z.next_in = *bufp; + z.avail_in = *sizep; + + /* window size = 15, add 32 to enable gzip or zlib header processing */ + res = inflateInit2(&z, 15 + 32); + /* Z_BUF_ERROR just means we need more space */ + while (res == Z_OK || (res == Z_BUF_ERROR && z.avail_out == 0)) { + /* When we get here, we're either just starting, or + * inflate is out of output space - allocate more */ + alloc_size += BLOCKSIZE; + z.avail_out += BLOCKSIZE; + buf = ReallocT(buf, alloc_size); + z.next_out = buf + alloc_size - z.avail_out; + res = inflate(&z, Z_FINISH); + } + + free(*bufp); + inflateEnd(&z); + + if (res == Z_STREAM_END) { + *bufp = buf; + *sizep = alloc_size - z.avail_out; + } else { + /* Something went wrong */ + *bufp = NULL; + *sizep = 0; + free(buf); + } +} +#endif + +#if defined(WITH_LZMA) + +/** + * Do an in-memory xunzip operation. This works on a .xz or (legacy) + * .lzma file. + * @param bufp A pointer to a buffer containing the input data. This + * buffer will be freed and replaced by a buffer containing + * the uncompressed data. + * @param sizep A pointer to the buffer size. Before the call, the value + * pointed to should contain the size of the input buffer. + * After the call, it contains the size of the uncompressed + * data. + * + * When decompressing fails, *bufp is set to NULL and *sizep to 0. The + * compressed buffer passed in is still freed in this case. + */ +static void Xunzip(byte **bufp, size_t *sizep) +{ + static const int BLOCKSIZE = 8192; + byte *buf = NULL; + size_t alloc_size = 0; + lzma_stream z = LZMA_STREAM_INIT; + int res; + + z.next_in = *bufp; + z.avail_in = *sizep; + + res = lzma_auto_decoder(&z, UINT64_MAX, LZMA_CONCATENATED); + /* Z_BUF_ERROR just means we need more space */ + while (res == LZMA_OK || (res == LZMA_BUF_ERROR && z.avail_out == 0)) { + /* When we get here, we're either just starting, or + * inflate is out of output space - allocate more */ + alloc_size += BLOCKSIZE; + z.avail_out += BLOCKSIZE; + buf = ReallocT(buf, alloc_size); + z.next_out = buf + alloc_size - z.avail_out; + res = lzma_code(&z, LZMA_FINISH); + } + + free(*bufp); + lzma_end(&z); + + if (res == LZMA_STREAM_END) { + *bufp = buf; + *sizep = alloc_size - z.avail_out; + } else { + /* Something went wrong */ + *bufp = NULL; + *sizep = 0; + free(buf); + } +} +#endif + + /** * Loads the textfile text from file and setup #lines. */ @@ -207,12 +326,31 @@ void TextfileWindow::SetupScrollbars() FILE *handle = FioFOpenFile(textfile, "rb", dir, &filesize); if (handle == NULL) return; - this->text = ReallocT(this->text, filesize + 1); + this->text = ReallocT(this->text, filesize); size_t read = fread(this->text, 1, filesize, handle); fclose(handle); if (read != filesize) return; +#if defined(WITH_ZLIB) || defined(WITH_LZMA) + const char *suffix = strrchr(textfile, '.'); + if (suffix == NULL) return; +#endif + +#if defined(WITH_ZLIB) + /* In-place gunzip */ + if (strcmp(suffix, ".gz") == 0) Gunzip((byte**)&this->text, &filesize); +#endif + +#if defined(WITH_LZMA) + /* In-place xunzip */ + if (strcmp(suffix, ".xz") == 0) Xunzip((byte**)&this->text, &filesize); +#endif + + if (!this->text) return; + + /* Add space for trailing \0 */ + this->text = ReallocT(this->text, filesize + 1); this->text[filesize] = '\0'; /* Replace tabs and line feeds with a space since str_validate removes those. */ @@ -264,12 +402,25 @@ const char *GetTextfile(TextfileType type, Subdirectory dir, const char *filenam char *slash = strrchr(file_path, PATHSEPCHAR); if (slash == NULL) return NULL; - seprintf(slash + 1, lastof(file_path), "%s_%s.txt", prefix, GetCurrentLanguageIsoCode()); - if (FioCheckFileExists(file_path, dir)) return file_path; + static const char * const exts[] = { + "txt", +#if defined(WITH_ZLIB) + "txt.gz", +#endif +#if defined(WITH_LZMA) + "txt.xz", +#endif + }; - seprintf(slash + 1, lastof(file_path), "%s_%.2s.txt", prefix, GetCurrentLanguageIsoCode()); - if (FioCheckFileExists(file_path, dir)) return file_path; + for (size_t i = 0; i < lengthof(exts); i++) { + seprintf(slash + 1, lastof(file_path), "%s_%s.%s", prefix, GetCurrentLanguageIsoCode(), exts[i]); + if (FioCheckFileExists(file_path, dir)) return file_path; - seprintf(slash + 1, lastof(file_path), "%s.txt", prefix); - return FioCheckFileExists(file_path, dir) ? file_path : NULL; + seprintf(slash + 1, lastof(file_path), "%s_%.2s.%s", prefix, GetCurrentLanguageIsoCode(), exts[i]); + if (FioCheckFileExists(file_path, dir)) return file_path; + + seprintf(slash + 1, lastof(file_path), "%s.%s", prefix, exts[i]); + if (FioCheckFileExists(file_path, dir)) return file_path; + } + return NULL; } diff --git a/src/tgp.cpp b/src/tgp.cpp index 77cf282daa..436870b412 100644 --- a/src/tgp.cpp +++ b/src/tgp.cpp @@ -155,7 +155,6 @@ /** Fixed point type for heights */ typedef int16 height_t; static const int height_decimal_bits = 4; -static const height_t _invalid_height = -32768; /** Fixed point array for amplitudes (and percent values) */ typedef int amplitude_t; @@ -165,10 +164,12 @@ static const int amplitude_decimal_bits = 10; struct HeightMap { height_t *h; //< array of heights - uint dim_x; //< height map size_x MapSizeX() + 1 - uint total_size; //< height map total size - uint size_x; //< MapSizeX() - uint size_y; //< MapSizeY() + /* Even though the sizes are always positive, there are many cases where + * X and Y need to be signed integers due to subtractions. */ + int dim_x; //< height map size_x MapSizeX() + 1 + int total_size; //< height map total size + int size_x; //< MapSizeX() + int size_y; //< MapSizeY() /** * Height map accessor @@ -202,35 +203,89 @@ static HeightMap _height_map = {NULL, 0, 0, 0, 0}; /** Walk through all items of _height_map.h */ #define FOR_ALL_TILES_IN_HEIGHT(h) for (h = _height_map.h; h < &_height_map.h[_height_map.total_size]; h++) -/** Maximum index into array of noise amplitudes */ -static const int TGP_FREQUENCY_MAX = 6; - -/** - * Noise amplitudes (multiplied by 1024) - * - indexed by "smoothness setting" and log2(frequency) - */ -static const amplitude_t _amplitudes_by_smoothness_and_frequency[4][TGP_FREQUENCY_MAX + 1] = { - /* lowest frequncy.... ...highest (every corner) */ - /* Very smooth */ - {16000, 5600, 1968, 688, 240, 16, 16}, - /* Smooth */ - {16000, 16000, 6448, 3200, 1024, 128, 16}, - /* Rough */ - {16000, 19200, 12800, 8000, 3200, 256, 64}, - /* Very Rough */ - {24000, 16000, 19200, 16000, 8000, 512, 320}, -}; +/** Maximum number of TGP noise frequencies. */ +static const int MAX_TGP_FREQUENCIES = 10; /** Desired water percentage (100% == 1024) - indexed by _settings_game.difficulty.quantity_sea_lakes */ -static const amplitude_t _water_percent[4] = {20, 80, 250, 400}; +static const amplitude_t _water_percent[4] = {70, 170, 270, 420}; -/** Desired maximum height - indexed by _settings_game.difficulty.terrain_type */ -static const int8 _max_height[4] = { - 6, ///< Very flat - 9, ///< Flat - 12, ///< Hilly - 15, ///< Mountainous -}; +/** + * Gets the maximum allowed height while generating a map based on + * mapsize, terraintype, and the maximum height level. + * @return The maximum height for the map generation. + * @note Values should never be lower than 3 since the minimum snowline height is 2. + */ +static height_t TGPGetMaxHeight() +{ + /** + * Desired maximum height - indexed by: + * - _settings_game.difficulty.terrain_type + * - min(MapLogX(), MapLogY()) - MIN_MAP_SIZE_BITS + * + * It is indexed by map size as well as terrain type since the map size limits the height of + * a usable mountain. For example, on a 64x64 map a 24 high single peak mountain (as if you + * raised land 24 times in the center of the map) will leave only a ring of about 10 tiles + * around the mountain to build on. On a 4096x4096 map, it won't cover any major part of the map. + */ + static const int max_height[5][MAX_MAP_SIZE_BITS - MIN_MAP_SIZE_BITS + 1] = { + /* 64 128 256 512 1024 2048 4096 */ + { 3, 3, 3, 3, 4, 5, 7 }, ///< Very flat + { 5, 7, 8, 9, 14, 19, 31 }, ///< Flat + { 8, 9, 10, 15, 23, 37, 61 }, ///< Hilly + { 10, 11, 17, 19, 49, 63, 73 }, ///< Mountainous + { 12, 19, 25, 31, 67, 75, 87 }, ///< Alpinist + }; + + int max_height_from_table = max_height[_settings_game.difficulty.terrain_type][min(MapLogX(), MapLogY()) - MIN_MAP_SIZE_BITS]; + return I2H(min(max_height_from_table, _settings_game.construction.max_heightlevel)); +} + +/** + * Get the amplitude associated with the currently selected + * smoothness and maximum height level. + * @param frequency The frequency to get the amplitudes for + * @return The amplitudes to apply to the map. + */ +static amplitude_t GetAmplitude(int frequency) +{ + /* Base noise amplitudes (multiplied by 1024) and indexed by "smoothness setting" and log2(frequency). */ + static const amplitude_t amplitudes[][7] = { + /* lowest frequency ...... highest (every corner) */ + {16000, 5600, 1968, 688, 240, 16, 16}, ///< Very smooth + {24000, 12800, 6400, 2700, 1024, 128, 16}, ///< Smooth + {32000, 19200, 12800, 8000, 3200, 256, 64}, ///< Rough + {48000, 24000, 19200, 16000, 8000, 512, 320}, ///< Very rough + }; + /* + * Extrapolation factors for ranges before the table. + * The extrapolation is needed to account for the higher map heights. They need larger + * areas with a particular gradient so that we are able to create maps without too + * many steep slopes up to the wanted height level. It's definitely not perfect since + * it will bring larger rectangles with similar slopes which makes the rectangular + * behaviour of TGP more noticable. However, these height differentiations cannot + * happen over much smaller areas; we basically double the "range" to give a similar + * slope for every doubling of map height. + */ + static const double extrapolation_factors[] = { 3.3, 2.8, 2.3, 1.8 }; + + int smoothness = _settings_game.game_creation.tgen_smoothness; + + /* Get the table index, and return that value if possible. */ + int index = frequency - MAX_TGP_FREQUENCIES + lengthof(amplitudes[smoothness]); + amplitude_t amplitude = amplitudes[smoothness][max(0, index)]; + if (index >= 0) return amplitude; + + /* We need to extrapolate the amplitude. */ + double extrapolation_factor = extrapolation_factors[smoothness]; + int height_range = I2H(16); + do { + amplitude = (amplitude_t)(extrapolation_factor * (double)amplitude); + height_range <<= 1; + index++; + } while (index < 0); + + return Clamp((TGPGetMaxHeight() - height_range) / height_range, 0, 1) * amplitude; +} /** * Check if a X/Y set are within the map. @@ -238,9 +293,9 @@ static const int8 _max_height[4] = { * @param y coordinate y * @return true if within the map */ -static inline bool IsValidXY(uint x, uint y) +static inline bool IsValidXY(int x, int y) { - return ((int)x) >= 0 && x < _height_map.size_x && ((int)y) >= 0 && y < _height_map.size_y; + return x >= 0 && x < _height_map.size_x && y >= 0 && y < _height_map.size_y; } @@ -260,8 +315,8 @@ static inline bool AllocHeightMap() _height_map.dim_x = _height_map.size_x + 1; _height_map.h = CallocT(_height_map.total_size); - /* Iterate through height map initialize values */ - FOR_ALL_TILES_IN_HEIGHT(h) *h = _invalid_height; + /* Iterate through height map and initialise values. */ + FOR_ALL_TILES_IN_HEIGHT(h) *h = 0; return true; } @@ -269,7 +324,6 @@ static inline bool AllocHeightMap() /** Free height map */ static inline void FreeHeightMap() { - if (_height_map.h == NULL) return; free(_height_map.h); _height_map.h = NULL; } @@ -281,117 +335,74 @@ static inline void FreeHeightMap() */ static inline height_t RandomHeight(amplitude_t rMax) { - amplitude_t ra = (Random() << 16) | (Random() & 0x0000FFFF); - height_t rh; /* Spread height into range -rMax..+rMax */ - rh = A2H(ra % (2 * rMax + 1) - rMax); - return rh; + return A2H(RandomRange(2 * rMax + 1) - rMax); } /** - * One interpolation and noise round + * Base Perlin noise generator - fills height map with raw Perlin noise. * - * The heights on the map are generated in an iterative process. - * We start off with a frequency of 1 (log_frequency == 0), and generate heights only for corners on the most coarsest mesh - * (i.e. only for x/y coordinates which are multiples of the minimum edge length). - * - * After this initial step the frequency is doubled (log_frequency incremented) each iteration to generate corners on the next finer mesh. - * The heights of the newly added corners are first set by interpolating the heights from the previous iteration. - * Finally noise with the given amplitude is applied to all corners of the new mesh. - * - * Generation terminates, when the frequency has reached the map size. I.e. the mesh is as fine as the map, and every corner height - * has been set. - * - * @param log_frequency frequency (logarithmic) to apply noise for - * @param amplitude Amplitude for the noise - * @return false if we are finished (reached the minimal step size / highest frequency) + * This runs several iterations with increasing precision; the last iteration looks at areas + * of 1 by 1 tiles, the second to last at 2 by 2 tiles and the initial 2**MAX_TGP_FREQUENCIES + * by 2**MAX_TGP_FREQUENCIES tiles. */ -static bool ApplyNoise(uint log_frequency, amplitude_t amplitude) +static void HeightMapGenerate() { - uint size_min = min(_height_map.size_x, _height_map.size_y); - uint step = size_min >> log_frequency; - uint x, y; - /* Trying to apply noise to uninitialized height map */ assert(_height_map.h != NULL); - /* Are we finished? */ - if (step == 0) return false; + int start = max(MAX_TGP_FREQUENCIES - (int)min(MapLogX(), MapLogY()), 0); + bool first = true; - if (log_frequency == 0) { - /* This is first round, we need to establish base heights with step = size_min */ - for (y = 0; y <= _height_map.size_y; y += step) { - for (x = 0; x <= _height_map.size_x; x += step) { - height_t height = (amplitude > 0) ? RandomHeight(amplitude) : 0; - _height_map.height(x, y) = height; + for (int frequency = start; frequency < MAX_TGP_FREQUENCIES; frequency++) { + const amplitude_t amplitude = GetAmplitude(frequency); + + /* Ignore zero amplitudes; it means our map isn't height enough for this + * amplitude, so ignore it and continue with the next set of amplitude. */ + if (amplitude == 0) continue; + + const int step = 1 << (MAX_TGP_FREQUENCIES - frequency - 1); + + if (first) { + /* This is first round, we need to establish base heights with step = size_min */ + for (int y = 0; y <= _height_map.size_y; y += step) { + for (int x = 0; x <= _height_map.size_x; x += step) { + height_t height = (amplitude > 0) ? RandomHeight(amplitude) : 0; + _height_map.height(x, y) = height; + } + } + first = false; + continue; + } + + /* It is regular iteration round. + * Interpolate height values at odd x, even y tiles */ + for (int y = 0; y <= _height_map.size_y; y += 2 * step) { + for (int x = 0; x <= _height_map.size_x - 2 * step; x += 2 * step) { + height_t h00 = _height_map.height(x + 0 * step, y); + height_t h02 = _height_map.height(x + 2 * step, y); + height_t h01 = (h00 + h02) / 2; + _height_map.height(x + 1 * step, y) = h01; } } - return true; - } - /* It is regular iteration round. - * Interpolate height values at odd x, even y tiles */ - for (y = 0; y <= _height_map.size_y; y += 2 * step) { - for (x = 0; x < _height_map.size_x; x += 2 * step) { - height_t h00 = _height_map.height(x + 0 * step, y); - height_t h02 = _height_map.height(x + 2 * step, y); - height_t h01 = (h00 + h02) / 2; - _height_map.height(x + 1 * step, y) = h01; + /* Interpolate height values at odd y tiles */ + for (int y = 0; y <= _height_map.size_y - 2 * step; y += 2 * step) { + for (int x = 0; x <= _height_map.size_x; x += step) { + height_t h00 = _height_map.height(x, y + 0 * step); + height_t h20 = _height_map.height(x, y + 2 * step); + height_t h10 = (h00 + h20) / 2; + _height_map.height(x, y + 1 * step) = h10; + } + } + + /* Add noise for next higher frequency (smaller steps) */ + for (int y = 0; y <= _height_map.size_y; y += step) { + for (int x = 0; x <= _height_map.size_x; x += step) { + _height_map.height(x, y) += RandomHeight(amplitude); + } } } - - /* Interpolate height values at odd y tiles */ - for (y = 0; y < _height_map.size_y; y += 2 * step) { - for (x = 0; x <= _height_map.size_x; x += step) { - height_t h00 = _height_map.height(x, y + 0 * step); - height_t h20 = _height_map.height(x, y + 2 * step); - height_t h10 = (h00 + h20) / 2; - _height_map.height(x, y + 1 * step) = h10; - } - } - - /* Add noise for next higher frequency (smaller steps) */ - for (y = 0; y <= _height_map.size_y; y += step) { - for (x = 0; x <= _height_map.size_x; x += step) { - _height_map.height(x, y) += RandomHeight(amplitude); - } - } - - return (step > 1); -} - -/** Base Perlin noise generator - fills height map with raw Perlin noise */ -static void HeightMapGenerate() -{ - uint size_min = min(_height_map.size_x, _height_map.size_y); - uint iteration_round = 0; - amplitude_t amplitude; - bool continue_iteration; - int log_size_min, log_frequency_min; - int log_frequency; - - /* Find first power of two that fits, so that later log_frequency == TGP_FREQUENCY_MAX in the last iteration */ - for (log_size_min = TGP_FREQUENCY_MAX; (1U << log_size_min) < size_min; log_size_min++) { } - log_frequency_min = log_size_min - TGP_FREQUENCY_MAX; - - /* Zero must be part of the iteration, else initialization will fail. */ - assert(log_frequency_min >= 0); - - /* Keep increasing the frequency until we reach the step size equal to one tile */ - do { - log_frequency = iteration_round - log_frequency_min; - if (log_frequency >= 0) { - /* Apply noise for the next frequency */ - assert(log_frequency <= TGP_FREQUENCY_MAX); - amplitude = _amplitudes_by_smoothness_and_frequency[_settings_game.game_creation.tgen_smoothness][log_frequency]; - } else { - /* Amplitude for the low frequencies on big maps is 0, i.e. initialise with zero height */ - amplitude = 0; - } - continue_iteration = ApplyNoise(iteration_round, amplitude); - iteration_round++; - } while (continue_iteration); - assert(log_frequency == TGP_FREQUENCY_MAX); } /** Returns min, max and average height from height map */ @@ -509,7 +520,8 @@ static void HeightMapSineTransform(height_t h_min, height_t h_max) } } -/* Additional map variety is provided by applying different curve maps +/** + * Additional map variety is provided by applying different curve maps * to different parts of the map. A randomized low resolution grid contains * which curve map to use on each part of the make. This filtered non-linearly * to smooth out transitions between curves, so each tile could have between @@ -522,62 +534,55 @@ static void HeightMapSineTransform(height_t h_min, height_t h_max) * The level parameter dictates the resolution of the grid. A low resolution * grid will result in larger continuous areas of a land style, a higher * resolution grid splits the style into smaller areas. - * - * At this point in map generation, all height data has been normalized to 0 - * to 239. + * @param level Rough indication of the size of the grid sections to style. Small level means large grid sections. */ -struct control_point_t { - height_t x; - height_t y; -}; - -struct control_point_list_t { - size_t length; - const control_point_t *list; -}; - -static const control_point_t _curve_map_1[] = { - { 0, 0 }, { 48, 24 }, { 192, 32 }, { 240, 96 } -}; - -static const control_point_t _curve_map_2[] = { - { 0, 0 }, { 16, 24 }, { 128, 32 }, { 192, 64 }, { 240, 144 } -}; - -static const control_point_t _curve_map_3[] = { - { 0, 0 }, { 16, 24 }, { 128, 64 }, { 192, 144 }, { 240, 192 } -}; - -static const control_point_t _curve_map_4[] = { - { 0, 0 }, { 16, 24 }, { 96, 72 }, { 160, 192 }, { 220, 239 }, { 240, 239 } -}; - -static const control_point_list_t _curve_maps[] = { - { lengthof(_curve_map_1), _curve_map_1 }, - { lengthof(_curve_map_2), _curve_map_2 }, - { lengthof(_curve_map_3), _curve_map_3 }, - { lengthof(_curve_map_4), _curve_map_4 }, -}; - static void HeightMapCurves(uint level) { - height_t ht[lengthof(_curve_maps)]; + height_t mh = TGPGetMaxHeight() - I2H(1); // height levels above sea level only + + /** Basically scale height X to height Y. Everything in between is interpolated. */ + struct control_point_t { + height_t x; ///< The height to scale from. + height_t y; ///< The height to scale to. + }; + /* Scaled curve maps; value is in height_ts. */ +#define F(fraction) ((height_t)(fraction * mh)) + const control_point_t curve_map_1[] = { { F(0.0), F(0.0) }, { F(0.8), F(0.13) }, { F(1.0), F(0.4) } }; + const control_point_t curve_map_2[] = { { F(0.0), F(0.0) }, { F(0.53), F(0.13) }, { F(0.8), F(0.27) }, { F(1.0), F(0.6) } }; + const control_point_t curve_map_3[] = { { F(0.0), F(0.0) }, { F(0.53), F(0.27) }, { F(0.8), F(0.57) }, { F(1.0), F(0.8) } }; + const control_point_t curve_map_4[] = { { F(0.0), F(0.0) }, { F(0.4), F(0.3) }, { F(0.7), F(0.8) }, { F(0.92), F(0.99) }, { F(1.0), F(0.99) } }; +#undef F + + /** Helper structure to index the different curve maps. */ + struct control_point_list_t { + size_t length; ///< The length of the curve map. + const control_point_t *list; ///< The actual curve map. + }; + const control_point_list_t curve_maps[] = { + { lengthof(curve_map_1), curve_map_1 }, + { lengthof(curve_map_2), curve_map_2 }, + { lengthof(curve_map_3), curve_map_3 }, + { lengthof(curve_map_4), curve_map_4 }, + }; + + height_t ht[lengthof(curve_maps)]; MemSetT(ht, 0, lengthof(ht)); - /* Set up a grid to choose curve maps based on location */ - uint sx = Clamp(1 << level, 2, 32); - uint sy = Clamp(1 << level, 2, 32); + /* Set up a grid to choose curve maps based on location; attempt to get a somewhat square grid */ + float factor = sqrt((float)_height_map.size_x / (float)_height_map.size_y); + uint sx = Clamp((int)(((1 << level) * factor) + 0.5), 1, 128); + uint sy = Clamp((int)(((1 << level) / factor) + 0.5), 1, 128); byte *c = AllocaM(byte, sx * sy); for (uint i = 0; i < sx * sy; i++) { - c[i] = Random() % lengthof(_curve_maps); + c[i] = Random() % lengthof(curve_maps); } /* Apply curves */ - for (uint x = 0; x < _height_map.size_x; x++) { + for (int x = 0; x < _height_map.size_x; x++) { /* Get our X grid positions and bi-linear ratio */ - float fx = (float)(sx * x) / _height_map.size_x + 0.5f; + float fx = (float)(sx * x) / _height_map.size_x + 1.0f; uint x1 = (uint)fx; uint x2 = x1; float xr = 2.0f * (fx - x1) - 1.0f; @@ -591,10 +596,10 @@ static void HeightMapCurves(uint level) if (x2 >= sx) x2--; } - for (uint y = 0; y < _height_map.size_y; y++) { + for (int y = 0; y < _height_map.size_y; y++) { /* Get our Y grid position and bi-linear ratio */ - float fy = (float)(sy * y) / _height_map.size_y + 0.5f; + float fy = (float)(sy * y) / _height_map.size_y + 1.0f; uint y1 = (uint)fy; uint y2 = y1; float yr = 2.0f * (fy - y1) - 1.0f; @@ -623,24 +628,36 @@ static void HeightMapCurves(uint level) height_t *h = &_height_map.height(x, y); + /* Do not touch sea level */ + if (*h < I2H(1)) continue; + + /* Only scale above sea level */ + *h -= I2H(1); + /* Apply all curve maps that are used on this tile. */ - for (uint t = 0; t < lengthof(_curve_maps); t++) { + for (uint t = 0; t < lengthof(curve_maps); t++) { if (!HasBit(corner_bits, t)) continue; - const control_point_t *cm = _curve_maps[t].list; - for (uint i = 0; i < _curve_maps[t].length - 1; i++) { + bool found = false; + const control_point_t *cm = curve_maps[t].list; + for (uint i = 0; i < curve_maps[t].length - 1; i++) { const control_point_t &p1 = cm[i]; const control_point_t &p2 = cm[i + 1]; if (*h >= p1.x && *h < p2.x) { ht[t] = p1.y + (*h - p1.x) * (p2.y - p1.y) / (p2.x - p1.x); + found = true; break; } } + assert(found); } /* Apply interpolation of curve map results. */ *h = (height_t)((ht[corner_a] * yri + ht[corner_b] * yr) * xri + (ht[corner_c] * yri + ht[corner_d] * yr) * xr); + + /* Readd sea level */ + *h += I2H(1); } } } @@ -673,7 +690,7 @@ static void HeightMapAdjustWaterLevel(amplitude_t water_percent, height_t h_max_ * Transform the height map into new (normalized) height map: * values from range: h_min..h_water_level will become negative so it will be clamped to 0 * values from range: h_water_level..h_max are transformed into 0..h_max_new - * where h_max_new is 4, 8, 12 or 16 depending on terrain type (very flat, flat, hilly, mountains) + * where h_max_new is depending on terrain type and map size. */ FOR_ALL_TILES_IN_HEIGHT(h) { /* Transform height from range h_water_level..h_max into 0..h_max_new range */ @@ -712,7 +729,7 @@ static void HeightMapCoastLines(uint8 water_borders) { int smallest_size = min(_settings_game.game_creation.map_x, _settings_game.game_creation.map_y); const int margin = 4; - uint y, x; + int y, x; double max_x; double max_y; @@ -721,7 +738,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_NE)) { /* Top right */ max_x = abs((perlin_coast_noise_2D(_height_map.size_y - y, y, 0.9, 53) + 0.25) * 5 + (perlin_coast_noise_2D(y, y, 0.35, 179) + 1) * 12); - max_x = max((smallest_size * smallest_size / 16) + max_x, (smallest_size * smallest_size / 16) + margin - max_x); + max_x = max((smallest_size * smallest_size / 64) + max_x, (smallest_size * smallest_size / 64) + margin - max_x); if (smallest_size < 8 && max_x > 5) max_x /= 1.5; for (x = 0; x < max_x; x++) { _height_map.height(x, y) = 0; @@ -731,7 +748,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_SW)) { /* Bottom left */ max_x = abs((perlin_coast_noise_2D(_height_map.size_y - y, y, 0.85, 101) + 0.3) * 6 + (perlin_coast_noise_2D(y, y, 0.45, 67) + 0.75) * 8); - max_x = max((smallest_size * smallest_size / 16) + max_x, (smallest_size * smallest_size / 16) + margin - max_x); + max_x = max((smallest_size * smallest_size / 64) + max_x, (smallest_size * smallest_size / 64) + margin - max_x); if (smallest_size < 8 && max_x > 5) max_x /= 1.5; for (x = _height_map.size_x; x > (_height_map.size_x - 1 - max_x); x--) { _height_map.height(x, y) = 0; @@ -744,7 +761,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_NW)) { /* Top left */ max_y = abs((perlin_coast_noise_2D(x, _height_map.size_y / 2, 0.9, 167) + 0.4) * 5 + (perlin_coast_noise_2D(x, _height_map.size_y / 3, 0.4, 211) + 0.7) * 9); - max_y = max((smallest_size * smallest_size / 16) + max_y, (smallest_size * smallest_size / 16) + margin - max_y); + max_y = max((smallest_size * smallest_size / 64) + max_y, (smallest_size * smallest_size / 64) + margin - max_y); if (smallest_size < 8 && max_y > 5) max_y /= 1.5; for (y = 0; y < max_y; y++) { _height_map.height(x, y) = 0; @@ -754,7 +771,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_SE)) { /* Bottom right */ max_y = abs((perlin_coast_noise_2D(x, _height_map.size_y / 3, 0.85, 71) + 0.25) * 6 + (perlin_coast_noise_2D(x, _height_map.size_y / 3, 0.35, 193) + 0.75) * 12); - max_y = max((smallest_size * smallest_size / 16) + max_y, (smallest_size * smallest_size / 16) + margin - max_y); + max_y = max((smallest_size * smallest_size / 64) + max_y, (smallest_size * smallest_size / 64) + margin - max_y); if (smallest_size < 8 && max_y > 5) max_y /= 1.5; for (y = _height_map.size_y; y > (_height_map.size_y - 1 - max_y); y--) { _height_map.height(x, y) = 0; @@ -773,7 +790,7 @@ static void HeightMapSmoothCoastInDirection(int org_x, int org_y, int dir_x, int int ed; // coast distance from edge int depth; - height_t h_prev = 16; + height_t h_prev = I2H(1); height_t h; assert(IsValidXY(org_x, org_y)); @@ -781,7 +798,7 @@ static void HeightMapSmoothCoastInDirection(int org_x, int org_y, int dir_x, int /* Search for the coast (first non-water tile) */ for (x = org_x, y = org_y, ed = 0; IsValidXY(x, y) && ed < max_coast_dist_from_edge; x += dir_x, y += dir_y, ed++) { /* Coast found? */ - if (_height_map.height(x, y) > 15) break; + if (_height_map.height(x, y) >= I2H(1)) break; /* Coast found in the neighborhood? */ if (IsValidXY(x + dir_y, y + dir_x) && _height_map.height(x + dir_y, y + dir_x) > 0) break; @@ -803,7 +820,7 @@ static void HeightMapSmoothCoastInDirection(int org_x, int org_y, int dir_x, int /** Smooth coasts by modulating height of tiles close to map edges with cosine of distance from edge */ static void HeightMapSmoothCoasts(uint8 water_borders) { - uint x, y; + int x, y; /* First Smooth NW and SE coasts (y close to 0 and y close to size_y) */ for (x = 0; x < _height_map.size_x; x++) { if (HasBit(water_borders, BORDER_NW)) HeightMapSmoothCoastInDirection(x, 0, 0, 1); @@ -825,16 +842,15 @@ static void HeightMapSmoothCoasts(uint8 water_borders) */ static void HeightMapSmoothSlopes(height_t dh_max) { - int x, y; - for (y = 0; y <= (int)_height_map.size_y; y++) { - for (x = 0; x <= (int)_height_map.size_x; x++) { + for (int y = 0; y <= (int)_height_map.size_y; y++) { + for (int x = 0; x <= (int)_height_map.size_x; x++) { height_t h_max = min(_height_map.height(x > 0 ? x - 1 : x, y), _height_map.height(x, y > 0 ? y - 1 : y)) + dh_max; if (_height_map.height(x, y) > h_max) _height_map.height(x, y) = h_max; } } - for (y = _height_map.size_y; y >= 0; y--) { - for (x = _height_map.size_x; x >= 0; x--) { - height_t h_max = min(_height_map.height((uint)x < _height_map.size_x ? x + 1 : x, y), _height_map.height(x, (uint)y < _height_map.size_y ? y + 1 : y)) + dh_max; + for (int y = _height_map.size_y; y >= 0; y--) { + for (int x = _height_map.size_x; x >= 0; x--) { + height_t h_max = min(_height_map.height(x < _height_map.size_x ? x + 1 : x, y), _height_map.height(x, y < _height_map.size_y ? y + 1 : y)) + dh_max; if (_height_map.height(x, y) > h_max) _height_map.height(x, y) = h_max; } } @@ -851,7 +867,7 @@ static void HeightMapNormalize() { int sea_level_setting = _settings_game.difficulty.quantity_sea_lakes; const amplitude_t water_percent = sea_level_setting != (int)CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY ? _water_percent[sea_level_setting] : _settings_game.game_creation.custom_sea_level * 1024 / 100; - const height_t h_max_new = I2H(_max_height[_settings_game.difficulty.terrain_type]); + const height_t h_max_new = TGPGetMaxHeight(); const height_t roughness = 7 + 3 * _settings_game.game_creation.tgen_smoothness; HeightMapAdjustWaterLevel(water_percent, h_max_new); @@ -865,13 +881,13 @@ static void HeightMapNormalize() HeightMapSmoothCoasts(water_borders); HeightMapSmoothSlopes(roughness); - HeightMapSineTransform(12, h_max_new); + HeightMapSineTransform(I2H(1), h_max_new); if (_settings_game.game_creation.variety > 0) { HeightMapCurves(_settings_game.game_creation.variety); } - HeightMapSmoothSlopes(16); + HeightMapSmoothSlopes(I2H(1)); } /** @@ -934,9 +950,8 @@ static double interpolated_noise(const double x, const double y, const int prime static double perlin_coast_noise_2D(const double x, const double y, const double p, const int prime) { double total = 0.0; - int i; - for (i = 0; i < 6; i++) { + for (int i = 0; i < 6; i++) { const double frequency = (double)(1 << i); const double amplitude = pow(p, (double)i); @@ -967,8 +982,6 @@ static void TgenSetTileHeight(TileIndex tile, int height) */ void GenerateTerrainPerlin() { - uint x, y; - if (!AllocHeightMap()) return; GenerateWorldSetAbortCallback(FreeHeightMap); @@ -982,17 +995,16 @@ void GenerateTerrainPerlin() /* First make sure the tiles at the north border are void tiles if needed. */ if (_settings_game.construction.freeform_edges) { - for (y = 0; y < _height_map.size_y - 1; y++) MakeVoid(_height_map.size_x * y); - for (x = 0; x < _height_map.size_x; x++) MakeVoid(x); + for (int y = 0; y < _height_map.size_y - 1; y++) MakeVoid(_height_map.size_x * y); + for (int x = 0; x < _height_map.size_x; x++) MakeVoid(x); } + int max_height = H2I(TGPGetMaxHeight()); + /* Transfer height map into OTTD map */ - for (y = 0; y < _height_map.size_y; y++) { - for (x = 0; x < _height_map.size_x; x++) { - int height = H2I(_height_map.height(x, y)); - if (height < 0) height = 0; - if (height > 15) height = 15; - TgenSetTileHeight(TileXY(x, y), height); + for (int y = 0; y < _height_map.size_y; y++) { + for (int x = 0; x < _height_map.size_x; x++) { + TgenSetTileHeight(TileXY(x, y), Clamp(H2I(_height_map.height(x, y)), 0, max_height)); } } diff --git a/src/thread/thread_os2.cpp b/src/thread/thread_os2.cpp index 93f04cac19..2dcb8288f4 100644 --- a/src/thread/thread_os2.cpp +++ b/src/thread/thread_os2.cpp @@ -38,7 +38,7 @@ public: param(param), self_destruct(self_destruct) { - thread = _beginthread(stThreadProc, NULL, 32768, this); + thread = _beginthread(stThreadProc, NULL, 1048576, this); } /* virtual */ bool Exit() diff --git a/src/tile_map.cpp b/src/tile_map.cpp index 9855484dff..c566ad02cd 100644 --- a/src/tile_map.cpp +++ b/src/tile_map.cpp @@ -15,7 +15,99 @@ #include "safeguards.h" /** - * Return the slope of a given tile + * Returns the tile height for a coordinate outside map. Such a height is + * needed for painting the area outside map using completely black tiles. + * The idea is descending to heightlevel 0 as fast as possible. + * @param x The X-coordinate (same unit as TileX). + * @param y The Y-coordinate (same unit as TileY). + * @return The height in the same unit as TileHeight. + */ +uint TileHeightOutsideMap(int x, int y) +{ + /* In all cases: Descend to heightlevel 0 as fast as possible. + * So: If we are at the 0-side of the map (x<0 or y<0), we must + * subtract the distance to coordinate 0 from the heightlevel at + * coordinate 0. + * In other words: Subtract e.g. -x. If we are at the MapMax + * side of the map, we also need to subtract the distance to + * the edge of map, e.g. MapMaxX - x. + * + * NOTE: Assuming constant heightlevel outside map would be + * simpler here. However, then we run into painting problems, + * since whenever a heightlevel change at the map border occurs, + * we would need to repaint anything outside map. + * In contrast, by doing it this way, we can localize this change, + * which means we may assume constant heightlevel for all tiles + * at more than distance from the + * map border. + */ + if (x < 0) { + if (y < 0) { + return max((int)TileHeight(TileXY(0, 0)) - (-x) - (-y), 0); + } else if (y < (int)MapMaxY()) { + return max((int)TileHeight(TileXY(0, y)) - (-x), 0); + } else { + return max((int)TileHeight(TileXY(0, (int)MapMaxY())) - (-x) - (y - (int)MapMaxY()), 0); + } + } else if (x < (int)MapMaxX()) { + if (y < 0) { + return max((int)TileHeight(TileXY(x, 0)) - (-y), 0); + } else if (y < (int)MapMaxY()) { + return TileHeight(TileXY(x, y)); + } else { + return max((int)TileHeight(TileXY(x, (int)MapMaxY())) - (y - (int)MapMaxY()), 0); + } + } else { + if (y < 0) { + return max((int)TileHeight(TileXY((int)MapMaxX(), 0)) - (x - (int)MapMaxX()) - (-y), 0); + } else if (y < (int)MapMaxY()) { + return max((int)TileHeight(TileXY((int)MapMaxX(), y)) - (x - (int)MapMaxX()), 0); + } else { + return max((int)TileHeight(TileXY((int)MapMaxX(), (int)MapMaxY())) - (x - (int)MapMaxX()) - (y - (int)MapMaxY()), 0); + } + } +} + +/** + * Get a tile's slope given the heigh of its four corners. + * @param hnorth The height at the northern corner in the same unit as TileHeight. + * @param hwest The height at the western corner in the same unit as TileHeight. + * @param heast The height at the eastern corner in the same unit as TileHeight. + * @param hsouth The height at the southern corner in the same unit as TileHeight. + * @param [out] h The lowest height of the four corners. + * @return The slope. + */ +static Slope GetTileSlopeGivenHeight(int hnorth, int hwest, int heast, int hsouth, int *h) +{ + /* Due to the fact that tiles must connect with each other without leaving gaps, the + * biggest difference in height between any corner and 'min' is between 0, 1, or 2. + * + * Also, there is at most 1 corner with height difference of 2. + */ + int hminnw = min(hnorth, hwest); + int hmines = min(heast, hsouth); + int hmin = min(hminnw, hmines); + + if (h != NULL) *h = hmin; + + int hmaxnw = max(hnorth, hwest); + int hmaxes = max(heast, hsouth); + int hmax = max(hmaxnw, hmaxes); + + Slope r = SLOPE_FLAT; + + if (hnorth != hmin) r |= SLOPE_N; + if (hwest != hmin) r |= SLOPE_W; + if (heast != hmin) r |= SLOPE_E; + if (hsouth != hmin) r |= SLOPE_S; + + if (hmax - hmin == 2) r |= SLOPE_STEEP; + + return r; +} + +/** + * Return the slope of a given tile inside the map. * @param tile Tile to compute slope of * @param h If not \c NULL, pointer to storage of z height * @return Slope of the tile, except for the HALFTILE part @@ -24,40 +116,38 @@ Slope GetTileSlope(TileIndex tile, int *h) { assert(tile < MapSize()); - if (!IsInnerTile(tile)) { + uint x = TileX(tile); + uint y = TileY(tile); + if (x == MapMaxX() || y == MapMaxY()) { if (h != NULL) *h = TileHeight(tile); return SLOPE_FLAT; } - int a = TileHeight(tile); // Height of the N corner - int min = a; // Minimal height of all corners examined so far - int b = TileHeight(tile + TileDiffXY(1, 0)); // Height of the W corner - if (min > b) min = b; - int c = TileHeight(tile + TileDiffXY(0, 1)); // Height of the E corner - if (min > c) min = c; - int d = TileHeight(tile + TileDiffXY(1, 1)); // Height of the S corner - if (min > d) min = d; + int hnorth = TileHeight(tile); // Height of the North corner. + int hwest = TileHeight(tile + TileDiffXY(1, 0)); // Height of the West corner. + int heast = TileHeight(tile + TileDiffXY(0, 1)); // Height of the East corner. + int hsouth = TileHeight(tile + TileDiffXY(1, 1)); // Height of the South corner. - /* Due to the fact that tiles must connect with each other without leaving gaps, the - * biggest difference in height between any corner and 'min' is between 0, 1, or 2. - * - * Also, there is at most 1 corner with height difference of 2. - */ + return GetTileSlopeGivenHeight(hnorth, hwest, heast, hsouth, h); +} - uint r = SLOPE_FLAT; // Computed slope of the tile +/** + * Return the slope of a given tile outside the map. + * + * @param tile Tile outside the map to compute slope of. + * @param h If not \c NULL, pointer to storage of z height. + * @return Slope of the tile outside map, except for the HALFTILE part. + */ +Slope GetTilePixelSlopeOutsideMap(int x, int y, int *h) +{ + int hnorth = TileHeightOutsideMap(x, y); // N corner. + int hwest = TileHeightOutsideMap(x + 1, y); // W corner. + int heast = TileHeightOutsideMap(x, y + 1); // E corner. + int hsouth = TileHeightOutsideMap(x + 1, y + 1); // S corner. - /* For each corner if not equal to minimum height: - * - set the SLOPE_STEEP flag if the difference is 2 - * - add the corresponding SLOPE_X constant to the computed slope - */ - if ((a -= min) != 0) r += (--a << 4) + SLOPE_N; - if ((c -= min) != 0) r += (--c << 4) + SLOPE_E; - if ((d -= min) != 0) r += (--d << 4) + SLOPE_S; - if ((b -= min) != 0) r += (--b << 4) + SLOPE_W; - - if (h != NULL) *h = min; - - return (Slope)r; + Slope s = GetTileSlopeGivenHeight(hnorth, hwest, heast, hsouth, h); + if (h != NULL) *h *= TILE_HEIGHT; + return s; } /** @@ -93,7 +183,7 @@ int GetTileZ(TileIndex tile) { if (TileX(tile) == MapMaxX() || TileY(tile) == MapMaxY()) return 0; - int h = TileHeight(tile); // N corner + int h = TileHeight(tile); // N corner h = min(h, TileHeight(tile + TileDiffXY(1, 0))); // W corner h = min(h, TileHeight(tile + TileDiffXY(0, 1))); // E corner h = min(h, TileHeight(tile + TileDiffXY(1, 1))); // S corner @@ -102,18 +192,52 @@ int GetTileZ(TileIndex tile) } /** - * Get top height of the tile + * Get bottom height of the tile outside map. + * + * @param tile Tile outside the map to compute height of. + * @return Minimum height of the tile outside the map. + */ +int GetTilePixelZOutsideMap(int x, int y) +{ + uint h = TileHeightOutsideMap(x, y); // N corner. + h = min(h, TileHeightOutsideMap(x + 1, y)); // W corner. + h = min(h, TileHeightOutsideMap(x, y + 1)); // E corner. + h = min(h, TileHeightOutsideMap(x + 1, y + 1)); // S corner + + return h * TILE_HEIGHT; +} + +/** + * Get top height of the tile inside the map. * @param t Tile to compute height of * @return Maximum height of the tile */ int GetTileMaxZ(TileIndex t) { - if (TileX(t) == MapMaxX() || TileY(t) == MapMaxY()) return 0; + if (TileX(t) == MapMaxX() || TileY(t) == MapMaxY()) return TileHeightOutsideMap(TileX(t), TileY(t)); - int h = TileHeight(t); // N corner + int h = TileHeight(t); // N corner h = max(h, TileHeight(t + TileDiffXY(1, 0))); // W corner h = max(h, TileHeight(t + TileDiffXY(0, 1))); // E corner h = max(h, TileHeight(t + TileDiffXY(1, 1))); // S corner return h; } + +/** + * Get top height of the tile outside the map. + * + * @see Detailed description in header. + * + * @param tile Tile outside to compute height of. + * @return Maximum height of the tile. + */ +int GetTileMaxPixelZOutsideMap(int x, int y) +{ + uint h = TileHeightOutsideMap(x, y); + h = max(h, TileHeightOutsideMap(x + 1, y)); + h = max(h, TileHeightOutsideMap(x, y + 1)); + h = max(h, TileHeightOutsideMap(x + 1, y + 1)); + + return h * TILE_HEIGHT; +} diff --git a/src/tile_map.h b/src/tile_map.h index 98863eb599..4d5891d7ba 100644 --- a/src/tile_map.h +++ b/src/tile_map.h @@ -31,9 +31,11 @@ static inline uint TileHeight(TileIndex tile) { assert(tile < MapSize()); - return GB(_m[tile].type_height, 0, 4); + return _m[tile].height; } +uint TileHeightOutsideMap(int x, int y); + /** * Sets the height of a tile. * @@ -48,7 +50,7 @@ static inline void SetTileHeight(TileIndex tile, uint height) { assert(tile < MapSize()); assert(height <= MAX_TILE_HEIGHT); - SB(_m[tile].type_height, 0, 4, height); + _m[tile].height = height; } /** @@ -64,6 +66,19 @@ static inline uint TilePixelHeight(TileIndex tile) return TileHeight(tile) * TILE_HEIGHT; } +/** + * Returns the tile height for a coordinate outside map. Such a height is + * needed for painting the area outside map using completely black tiles. + * The idea is descending to heightlevel 0 as fast as possible. + * @param x The X-coordinate (same unit as TileX). + * @param y The Y-coordinate (same unit as TileY). + * @return The height in pixels in the same unit as TilePixelHeight. + */ +static inline uint TilePixelHeightOutsideMap(int x, int y) +{ + return TileHeightOutsideMap(x, y) * TILE_HEIGHT; +} + /** * Get the tiletype of a given tile. * @@ -74,7 +89,7 @@ static inline uint TilePixelHeight(TileIndex tile) static inline TileType GetTileType(TileIndex tile) { assert(tile < MapSize()); - return (TileType)GB(_m[tile].type_height, 4, 4); + return (TileType)GB(_m[tile].type, 4, 4); } /** @@ -113,7 +128,7 @@ static inline void SetTileType(TileIndex tile, TileType type) * edges of the map. If _settings_game.construction.freeform_edges is true, * the upper edges of the map are also VOID tiles. */ assert(IsInnerTile(tile) == (type != MP_VOID)); - SB(_m[tile].type_height, 4, 4, type); + SB(_m[tile].type, 4, 4, type); } /** @@ -204,7 +219,7 @@ static inline void SetTropicZone(TileIndex tile, TropicZone type) { assert(tile < MapSize()); assert(!IsTileType(tile, MP_VOID) || type == TROPICZONE_NORMAL); - SB(_m[tile].m6, 0, 2, type); + SB(_m[tile].type, 0, 2, type); } /** @@ -216,7 +231,7 @@ static inline void SetTropicZone(TileIndex tile, TropicZone type) static inline TropicZone GetTropicZone(TileIndex tile) { assert(tile < MapSize()); - return (TropicZone)GB(_m[tile].m6, 0, 2); + return (TropicZone)GB(_m[tile].type, 0, 2); } /** @@ -262,6 +277,8 @@ static inline Slope GetTilePixelSlope(TileIndex tile, int *h) return s; } +Slope GetTilePixelSlopeOutsideMap(int x, int y, int *h); + /** * Get bottom height of the tile * @param tile Tile to compute height of @@ -272,6 +289,8 @@ static inline int GetTilePixelZ(TileIndex tile) return GetTileZ(tile) * TILE_HEIGHT; } +int GetTilePixelZOutsideMap(int x, int y); + /** * Get top height of the tile * @param t Tile to compute height of @@ -282,6 +301,8 @@ static inline int GetTileMaxPixelZ(TileIndex tile) return GetTileMaxZ(tile) * TILE_HEIGHT; } +int GetTileMaxPixelZOutsideMap(int x, int y); + /** * Calculate a hash value from a tile position diff --git a/src/tile_type.h b/src/tile_type.h index 34543eb93e..0d720925da 100644 --- a/src/tile_type.h +++ b/src/tile_type.h @@ -12,15 +12,21 @@ #ifndef TILE_TYPE_H #define TILE_TYPE_H -static const uint TILE_SIZE = 16; ///< Tiles are 16x16 "units" in size -static const uint TILE_UNIT_MASK = TILE_SIZE - 1; ///< For masking in/out the inner-tile units. -static const uint TILE_PIXELS = 32; ///< a tile is 32x32 pixels -static const uint TILE_HEIGHT = 8; ///< The standard height-difference between tiles on two levels is 8 (z-diff 8) +static const uint TILE_SIZE = 16; ///< Tile size in world coordinates. +static const uint TILE_UNIT_MASK = TILE_SIZE - 1; ///< For masking in/out the inner-tile world coordinate units. +static const uint TILE_PIXELS = 32; ///< Pixel distance between tile columns/rows in #ZOOM_LVL_BASE. +static const uint TILE_HEIGHT = 8; ///< Height of a height level in world coordinate AND in pixels in #ZOOM_LVL_BASE. -static const uint MAX_TILE_HEIGHT = 15; ///< Maximum allowed tile height +static const uint MAX_BUILDING_PIXELS = 200; ///< Maximum height of a building in pixels in #ZOOM_LVL_BASE. (Also applies to "bridge buildings" on the bridge floor.) + +static const uint MAX_TILE_HEIGHT = 255; ///< Maximum allowed tile height + +static const uint MIN_MAX_HEIGHTLEVEL = 15; ///< Lower bound of maximum allowed heightlevel (in the construction settings) +static const uint DEF_MAX_HEIGHTLEVEL = 30; ///< Default maximum allowed heightlevel (in the construction settings) +static const uint MAX_MAX_HEIGHTLEVEL = MAX_TILE_HEIGHT; ///< Upper bound of maximum allowed heightlevel (in the construction settings) static const uint MIN_SNOWLINE_HEIGHT = 2; ///< Minimum snowline height -static const uint DEF_SNOWLINE_HEIGHT = 7; ///< Default snowline height +static const uint DEF_SNOWLINE_HEIGHT = 15; ///< Default snowline height static const uint MAX_SNOWLINE_HEIGHT = (MAX_TILE_HEIGHT - 2); ///< Maximum allowed snowline height diff --git a/src/timetable_cmd.cpp b/src/timetable_cmd.cpp index 42566c376f..5625161d94 100644 --- a/src/timetable_cmd.cpp +++ b/src/timetable_cmd.cpp @@ -96,6 +96,7 @@ static void ChangeTimetable(Vehicle *v, VehicleOrderID order_number, uint16 val, * - p1 = (bit 28-29) - Timetable data to change (@see ModifyTimetableFlags) * @param p2 The amount of time to wait. * - p2 = (bit 0-15) - The data to modify as specified by p1 bits 28-29. + * 0 to clear times, UINT16_MAX to clear speed limit. * @param text unused * @return the cost of this operation or an error */ @@ -157,14 +158,29 @@ CommandCost CmdChangeTimetable(TileIndex tile, DoCommandFlag flags, uint32 p1, u if (max_speed != order->GetMaxSpeed() && (order->IsType(OT_CONDITIONAL) || v->type == VEH_AIRCRAFT)) return CMD_ERROR; if (flags & DC_EXEC) { - if (wait_time != order->GetWaitTime() || (wait_time > 0 && !order->IsWaitTimetabled())) { - ChangeTimetable(v, order_number, wait_time, MTF_WAIT_TIME, wait_time > 0); - } - if (travel_time != order->GetTravelTime() || (travel_time > 0 && !order->IsTravelTimetabled())) { - ChangeTimetable(v, order_number, travel_time, MTF_TRAVEL_TIME, travel_time > 0); - } - if (max_speed != order->GetMaxSpeed()) { - ChangeTimetable(v, order_number, max_speed, MTF_TRAVEL_SPEED, max_speed != UINT16_MAX); + switch (mtf) { + case MTF_WAIT_TIME: + /* Set time if changing the value or confirming an estimated time as timetabled. */ + if (wait_time != order->GetWaitTime() || (wait_time > 0 && !order->IsWaitTimetabled())) { + ChangeTimetable(v, order_number, wait_time, MTF_WAIT_TIME, wait_time > 0); + } + break; + + case MTF_TRAVEL_TIME: + /* Set time if changing the value or confirming an estimated time as timetabled. */ + if (travel_time != order->GetTravelTime() || (travel_time > 0 && !order->IsTravelTimetabled())) { + ChangeTimetable(v, order_number, travel_time, MTF_TRAVEL_TIME, travel_time > 0); + } + break; + + case MTF_TRAVEL_SPEED: + if (max_speed != order->GetMaxSpeed()) { + ChangeTimetable(v, order_number, max_speed, MTF_TRAVEL_SPEED, max_speed != UINT16_MAX); + } + break; + + default: + break; } } @@ -371,6 +387,9 @@ void UpdateVehicleTimetable(Vehicle *v, bool travelling) if (v->current_order.IsType(OT_IMPLICIT)) return; // no timetabling of auto orders + if (v->cur_real_order_index >= v->GetNumOrders()) return; + Order *real_current_order = v->GetOrder(v->cur_real_order_index); + VehicleOrderID first_manual_order = 0; for (Order *o = v->GetFirstOrder(); o != NULL && o->IsType(OT_IMPLICIT); o = o->next) { ++first_manual_order; @@ -398,17 +417,20 @@ void UpdateVehicleTimetable(Vehicle *v, bool travelling) if (!HasBit(v->vehicle_flags, VF_TIMETABLE_STARTED)) return; bool autofilling = HasBit(v->vehicle_flags, VF_AUTOFILL_TIMETABLE); - if (travelling && (!v->current_order.IsWaitTimetabled() || - (autofilling && !HasBit(v->vehicle_flags, VF_AUTOFILL_PRES_WAIT_TIME)))) { - /* Need to clear that now as otherwise we are not able to reduce the wait time */ + bool remeasure_wait_time = !real_current_order->IsWaitTimetabled() || + (autofilling && !HasBit(v->vehicle_flags, VF_AUTOFILL_PRES_WAIT_TIME)); + + if (travelling && remeasure_wait_time) { + /* We just finished travelling and want to remeasure the loading time, + * so do not apply any restrictions for the loading to finish. */ v->current_order.SetWaitTime(0); } if (just_started) return; - /* Modify station waiting time only if our new value is larger (this is - * always the case when we cleared the timetable). */ - if (!v->current_order.IsType(OT_CONDITIONAL) && (travelling || time_taken > v->current_order.GetWaitTime())) { + /* Before modifying waiting times, check whether we want to preserve bigger ones. */ + if (!real_current_order->IsType(OT_CONDITIONAL) && + (travelling || time_taken > real_current_order->GetWaitTime() || remeasure_wait_time)) { /* Round the time taken up to the nearest day, as this will avoid * confusion for people who are timetabling in days, and can be * adjusted later by people who aren't. @@ -420,9 +442,9 @@ void UpdateVehicleTimetable(Vehicle *v, bool travelling) * processing of different orders when filling the timetable. */ uint time_to_set = CeilDiv(max(time_taken, 1U), DAY_TICKS) * DAY_TICKS; - if (travelling && (autofilling || !v->current_order.IsTravelTimetabled())) { + if (travelling && (autofilling || !real_current_order->IsTravelTimetabled())) { ChangeTimetable(v, v->cur_real_order_index, time_to_set, MTF_TRAVEL_TIME, autofilling); - } else if (!travelling && (autofilling || !v->current_order.IsWaitTimetabled())) { + } else if (!travelling && (autofilling || !real_current_order->IsWaitTimetabled())) { ChangeTimetable(v, v->cur_real_order_index, time_to_set, MTF_WAIT_TIME, autofilling); } } @@ -437,8 +459,8 @@ void UpdateVehicleTimetable(Vehicle *v, bool travelling) if (autofilling) return; - uint timetabled = travelling ? v->current_order.GetTimetabledTravel() : - v->current_order.GetTimetabledWait(); + uint timetabled = travelling ? real_current_order->GetTimetabledTravel() : + real_current_order->GetTimetabledWait(); /* Vehicles will wait at stations if they arrive early even if they are not * timetabled to wait there, so make sure the lateness counter is updated diff --git a/src/toolbar_gui.cpp b/src/toolbar_gui.cpp index c3f2a6e7b5..45d751dc56 100644 --- a/src/toolbar_gui.cpp +++ b/src/toolbar_gui.cpp @@ -46,6 +46,7 @@ #include "game/game.hpp" #include "goal_base.h" #include "story_base.h" +#include "toolbar_gui.h" #include "widgets/toolbar_widget.h" @@ -56,6 +57,9 @@ #include "safeguards.h" +/** Width of the toolbar, shared by statusbar. */ +uint _toolbar_width = 0; + RailType _last_built_railtype; RoadType _last_built_roadtype; @@ -307,7 +311,7 @@ static CallBackFunction ToolbarOptionsClick(Window *w) { DropDownList *list = new DropDownList(); *list->Append() = new DropDownListStringItem(STR_SETTINGS_MENU_GAME_OPTIONS, OME_GAMEOPTIONS, false); - *list->Append() = new DropDownListStringItem(STR_SETTINGS_MENU_CONFIG_SETTINGS, OME_SETTINGS, false); + *list->Append() = new DropDownListStringItem(STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE, OME_SETTINGS, false); /* Changes to the per-AI settings don't get send from the server to the clients. Clients get * the settings once they join but never update it. As such don't show the window at all * to network clients. */ @@ -1121,7 +1125,7 @@ void SetStartingYear(Year year) _settings_game.game_creation.starting_year = Clamp(year, MIN_YEAR, MAX_YEAR); Date new_date = ConvertYMDToDate(_settings_game.game_creation.starting_year, 0, 1); /* If you open a savegame as scenario there may already be link graphs.*/ - LinkGraphSchedule::Instance()->ShiftDates(new_date - _date); + LinkGraphSchedule::instance.ShiftDates(new_date - _date); SetDate(new_date, 0); } @@ -1350,7 +1354,7 @@ public: child_wid->current_x = child_wid->smallest_x; } } - w->window_desc->default_width = nbuttons * this->smallest_x; + _toolbar_width = nbuttons * this->smallest_x; } void AssignSizePosition(SizingType sizing, uint x, uint y, uint given_width, uint given_height, bool rtl) @@ -1526,7 +1530,7 @@ class NWidgetScenarioToolbarContainer : public NWidgetToolbarContainer { assert(i < lengthof(this->panel_widths)); this->panel_widths[i++] = child_wid->current_x; - w->window_desc->default_width += child_wid->current_x; + _toolbar_width += child_wid->current_x; } } @@ -1666,6 +1670,11 @@ struct MainToolbarWindow : Window { DoZoomInOutWindow(ZOOM_NONE, this); } + virtual void FindWindowPlacementAndResize(int def_width, int def_height) + { + Window::FindWindowPlacementAndResize(_toolbar_width, def_height); + } + virtual void OnPaint() { /* If spectator, disable all construction buttons @@ -1900,7 +1909,7 @@ static const NWidgetPart _nested_toolbar_normal_widgets[] = { }; static WindowDesc _toolb_normal_desc( - WDP_MANUAL, NULL, 640, 22, + WDP_MANUAL, NULL, 0, 0, WC_MAIN_TOOLBAR, WC_NONE, WDF_NO_FOCUS, _nested_toolbar_normal_widgets, lengthof(_nested_toolbar_normal_widgets), @@ -1981,6 +1990,11 @@ struct ScenarioEditorToolbarWindow : Window { DoZoomInOutWindow(ZOOM_NONE, this); } + virtual void FindWindowPlacementAndResize(int def_width, int def_height) + { + Window::FindWindowPlacementAndResize(_toolbar_width, def_height); + } + virtual void OnPaint() { this->SetWidgetDisabledState(WID_TE_DATE_BACKWARD, _settings_game.game_creation.starting_year <= MIN_YEAR); @@ -2211,7 +2225,7 @@ static const NWidgetPart _nested_toolb_scen_widgets[] = { }; static WindowDesc _toolb_scen_desc( - WDP_MANUAL, NULL, 640, 22, + WDP_MANUAL, NULL, 0, 0, WC_MAIN_TOOLBAR, WC_NONE, WDF_NO_FOCUS, _nested_toolb_scen_widgets, lengthof(_nested_toolb_scen_widgets), diff --git a/src/toolbar_gui.h b/src/toolbar_gui.h index d3eba5b272..37fc8f0e9f 100644 --- a/src/toolbar_gui.h +++ b/src/toolbar_gui.h @@ -16,4 +16,6 @@ void AllocateToolbar(); void ToggleBoundingBoxes(); void ToggleDirtyBlocks(); +extern uint _toolbar_width; + #endif /* TOOLBAR_GUI_H */ diff --git a/src/town.h b/src/town.h index 42495971ec..010c7c2168 100644 --- a/src/town.h +++ b/src/town.h @@ -91,7 +91,7 @@ struct Town : TownPool::PoolItem<&_town_pool> { uint16 time_until_rebuild; ///< time until we rebuild a house - uint16 grow_counter; ///< counter to count when to grow + uint16 grow_counter; ///< counter to count when to grow, value is smaller than or equal to growth_rate uint16 growth_rate; ///< town growth rate byte fund_buildings_months; ///< fund buildings program in action? diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index 1c6a01eaee..ea44603b0c 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -171,7 +171,7 @@ Money HouseSpec::GetRemovalCost() const return (_price[PR_CLEAR_HOUSE] * this->removal_cost) >> 8; } -// Local +/* Local */ static int _grow_town_result; /* Describe the possible states */ @@ -377,7 +377,8 @@ void Town::UpdateVirtCoord() SetDParam(0, this->index); SetDParam(1, this->cache.population); this->cache.sign.UpdatePosition(pt.x, pt.y - 24 * ZOOM_LVL_BASE, - _settings_client.gui.population_in_label ? STR_VIEWPORT_TOWN_POP : STR_VIEWPORT_TOWN); + _settings_client.gui.population_in_label ? STR_VIEWPORT_TOWN_POP : STR_VIEWPORT_TOWN, + STR_VIEWPORT_TOWN); SetWindowDirty(WC_TOWN_VIEW, this->index); } @@ -868,7 +869,7 @@ static bool IsRoadAllowedHere(Town *t, TileIndex tile, DiagDirection dir) if (DistanceFromEdge(tile) == 0) return false; /* Prevent towns from building roads under bridges along the bridge. Looks silly. */ - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile) && GetBridgeAxis(tile) == DiagDirToAxis(dir)) return false; + if (IsBridgeAbove(tile) && GetBridgeAxis(tile) == DiagDirToAxis(dir)) return false; /* Check if there already is a road at this point? */ if (GetTownRoadBits(tile) == ROAD_NONE) { @@ -1296,13 +1297,56 @@ static void GrowTownInTile(TileIndex *tile_ptr, RoadBits cur_rb, DiagDirection t GrowTownWithRoad(t1, tile, rcmd); } +/** + * Checks whether a road can be followed or is a dead end, that can not be extended to the next tile. + * This only checks trivial but often cases. + * @param tile Start tile for road. + * @param dir Direction for road to follow or build. + * @return true If road is or can be connected in the specified direction. + */ +static bool CanFollowRoad(TileIndex tile, DiagDirection dir) +{ + TileIndex target_tile = tile + TileOffsByDiagDir(dir); + if (!IsValidTile(target_tile)) return false; + if (HasTileWaterGround(target_tile)) return false; + + RoadBits target_rb = GetTownRoadBits(target_tile); + if (_settings_game.economy.allow_town_roads || _generating_world) { + /* Check whether a road connection exists or can be build. */ + switch (GetTileType(target_tile)) { + case MP_ROAD: + return target_rb != ROAD_NONE; + + case MP_STATION: + return IsDriveThroughStopTile(target_tile); + + case MP_TUNNELBRIDGE: + return GetTunnelBridgeTransportType(target_tile) == TRANSPORT_ROAD; + + case MP_HOUSE: + case MP_INDUSTRY: + case MP_OBJECT: + return false; + + default: + /* Checked for void and water earlier */ + return true; + } + } else { + /* Check whether a road connection already exists, + * and it leads somewhere else. */ + RoadBits back_rb = DiagDirToRoadBits(ReverseDiagDir(dir)); + return (target_rb & back_rb) != 0 && (target_rb & ~back_rb) != 0; + } +} + /** * Returns "growth" if a house was built, or no if the build failed. * @param t town to inquiry * @param tile to inquiry - * @return something other than zero(0)if town expansion was possible + * @return true if town expansion was possible */ -static int GrowTownAtRoad(Town *t, TileIndex tile) +static bool GrowTownAtRoad(Town *t, TileIndex tile) { /* Special case. * @see GrowTownInTile Check the else if @@ -1339,7 +1383,7 @@ static int GrowTownAtRoad(Town *t, TileIndex tile) * and return if no more road blocks available */ if (IsValidDiagDirection(target_dir)) cur_rb &= ~DiagDirToRoadBits(ReverseDiagDir(target_dir)); if (cur_rb == ROAD_NONE) { - return _grow_town_result; + return _grow_town_result == GROWTH_SUCCEED; } if (IsTileType(tile, MP_TUNNELBRIDGE)) { @@ -1348,14 +1392,22 @@ static int GrowTownAtRoad(Town *t, TileIndex tile) } else { /* Select a random bit from the blockmask, walk a step * and continue the search from there. */ - do target_dir = RandomDiagDir(); while (!(cur_rb & DiagDirToRoadBits(target_dir))); + do { + if (cur_rb == ROAD_NONE) return false; + RoadBits target_bits; + do { + target_dir = RandomDiagDir(); + target_bits = DiagDirToRoadBits(target_dir); + } while (!(cur_rb & target_bits)); + cur_rb &= ~target_bits; + } while (!CanFollowRoad(tile, target_dir)); } tile = TileAddByDiagDir(tile, target_dir); if (IsTileType(tile, MP_ROAD) && !IsRoadDepot(tile) && HasTileRoadType(tile, ROADTYPE_ROAD)) { /* Don't allow building over roads of other cities */ if (IsRoadOwner(tile, ROADTYPE_ROAD, OWNER_TOWN) && Town::GetByTile(tile) != t) { - _grow_town_result = GROWTH_SUCCEED; + return false; } else if (IsRoadOwner(tile, ROADTYPE_ROAD, OWNER_NONE) && _game_mode == GM_EDITOR) { /* If we are in the SE, and this road-piece has no town owner yet, it just found an * owner :) (happy happy happy road now) */ @@ -1367,7 +1419,7 @@ static int GrowTownAtRoad(Town *t, TileIndex tile) /* Max number of times is checked. */ } while (--_grow_town_result >= 0); - return (_grow_town_result == -2); + return _grow_town_result == GROWTH_SUCCEED - 1; } /** @@ -1389,7 +1441,7 @@ static RoadBits GenRandomRoadBits() /** * Grow the town * @param t town to grow - * @return true iff a house was built + * @return true iff something (house, road, bridge, ...) was built */ static bool GrowTown(Town *t) { @@ -1418,9 +1470,9 @@ static bool GrowTown(Town *t) const TileIndexDiffC *ptr; for (ptr = _town_coord_mod; ptr != endof(_town_coord_mod); ++ptr) { if (GetTownRoadBits(tile) != ROAD_NONE) { - int r = GrowTownAtRoad(t, tile); + bool success = GrowTownAtRoad(t, tile); cur_company.Restore(); - return r != 0; + return success; } tile = TILE_ADD(tile, ToTileIndexDiff(*ptr)); } @@ -2018,7 +2070,7 @@ static inline bool CanBuildHouseHere(TileIndex tile, TownID town, bool noslope) if ((noslope && slope != SLOPE_FLAT) || IsSteepSlope(slope)) return false; /* building under a bridge? */ - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return false; + if (IsBridgeAbove(tile)) return false; /* do not try to build over house owned by another town */ if (IsTileType(tile, MP_HOUSE) && GetTownIndex(tile) != town) return false; @@ -2790,7 +2842,7 @@ static bool SearchTileForStatue(TileIndex tile, void *user_data) /* Statues can be build on slopes, just like houses. Only the steep slopes is a no go. */ if (IsSteepSlope(GetTileSlope(tile))) return false; /* Don't build statues under bridges. */ - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return false; + if (IsBridgeAbove(tile)) return false; /* A clear-able open space is always preferred. */ if ((IsTileType(tile, MP_CLEAR) || IsTileType(tile, MP_TREES)) && TryClearTile(tile)) { @@ -3115,9 +3167,7 @@ static void UpdateTownGrowRate(Town *t) if (t->larger_town) m /= 2; t->growth_rate = m / (t->cache.num_houses / 50 + 1); - if (m <= t->grow_counter) { - t->grow_counter = m; - } + t->grow_counter = min(t->growth_rate, t->grow_counter); SetBit(t->flags, TOWN_IS_GROWING); SetWindowDirty(WC_TOWN_VIEW, t->index); diff --git a/src/town_gui.cpp b/src/town_gui.cpp index a2ac0bafe7..222549ff73 100644 --- a/src/town_gui.cpp +++ b/src/town_gui.cpp @@ -406,7 +406,7 @@ public: if (this->town->text != NULL) { SetDParamStr(0, this->town->text); - DrawStringMultiLine(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_LEFT, y += FONT_HEIGHT_NORMAL, UINT16_MAX, STR_JUST_RAW_STRING, TC_BLACK); + DrawStringMultiLine(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y += FONT_HEIGHT_NORMAL, UINT16_MAX, STR_JUST_RAW_STRING, TC_BLACK); } } @@ -484,7 +484,7 @@ public: if (this->town->text != NULL) { SetDParamStr(0, this->town->text); - aimed_height += GetStringHeight(STR_JUST_RAW_STRING, width); + aimed_height += GetStringHeight(STR_JUST_RAW_STRING, width - WD_FRAMERECT_LEFT - WD_FRAMERECT_RIGHT); } return aimed_height; @@ -797,7 +797,7 @@ public: switch (widget) { case WID_TD_SORT_ORDER: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; @@ -1113,7 +1113,8 @@ public: bool success = DoCommandP(tile, this->town_size | this->city << 2 | this->town_layout << 3 | random << 6, townnameparts, CMD_FOUND_TOWN | CMD_MSG(errstr), cc, name); - if (success) this->RandomTownName(); + /* Rerandomise name, if success and no cost-estimation. */ + if (success && !_shift_pressed) this->RandomTownName(); } virtual void OnClick(Point pt, int widget, int click_count) diff --git a/src/town_map.h b/src/town_map.h index 41505871de..016ff9a6d2 100644 --- a/src/town_map.h +++ b/src/town_map.h @@ -126,7 +126,7 @@ static inline void HaltLift(TileIndex t) */ static inline byte GetLiftPosition(TileIndex t) { - return GB(_m[t].m6, 2, 6); + return GB(_me[t].m6, 2, 6); } /** @@ -136,7 +136,7 @@ static inline byte GetLiftPosition(TileIndex t) */ static inline void SetLiftPosition(TileIndex t, byte pos) { - SB(_m[t].m6, 2, 6, pos); + SB(_me[t].m6, 2, 6, pos); } /** @@ -315,7 +315,7 @@ static inline byte GetHouseTriggers(TileIndex t) static inline byte GetHouseProcessingTime(TileIndex t) { assert(IsTileType(t, MP_HOUSE)); - return GB(_m[t].m6, 2, 6); + return GB(_me[t].m6, 2, 6); } /** @@ -327,7 +327,7 @@ static inline byte GetHouseProcessingTime(TileIndex t) static inline void SetHouseProcessingTime(TileIndex t, byte time) { assert(IsTileType(t, MP_HOUSE)); - SB(_m[t].m6, 2, 6, time); + SB(_me[t].m6, 2, 6, time); } /** @@ -338,7 +338,7 @@ static inline void SetHouseProcessingTime(TileIndex t, byte time) static inline void DecHouseProcessingTime(TileIndex t) { assert(IsTileType(t, MP_HOUSE)); - _m[t].m6 -= 1 << 2; + _me[t].m6 -= 1 << 2; } /** diff --git a/src/townname.cpp b/src/townname.cpp index f3a4e5cbb7..2067fa1bb3 100644 --- a/src/townname.cpp +++ b/src/townname.cpp @@ -635,7 +635,7 @@ static char *MakeCzechTownName(char *buf, const char *last, uint32 seed) choose = _name_czech_subst_full[stem].choose; allow = _name_czech_subst_full[stem].allow; } else { - unsigned int map[lengthof(_name_czech_subst_ending)]; + uint map[lengthof(_name_czech_subst_ending)]; int ending_start = -1, ending_stop = -1; /* Load the substantive */ diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index 8c4eed116c..308101fb98 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -464,10 +464,10 @@ int Train::GetDisplayImageWidth(Point *offset) const } if (offset != NULL) { - offset->x = reference_width / 2; - offset->y = vehicle_pitch; + offset->x = ScaleGUITrad(reference_width) / 2; + offset->y = ScaleGUITrad(vehicle_pitch); } - return this->gcache.cached_veh_length * reference_width / VEHICLE_LENGTH; + return ScaleGUITrad(this->gcache.cached_veh_length * reference_width / VEHICLE_LENGTH); } static SpriteID GetDefaultTrainSprite(uint8 spritenum, Direction direction) @@ -514,7 +514,7 @@ static SpriteID GetRailIcon(EngineID engine, bool rear_head, int &y, EngineImage SpriteID sprite = GetCustomVehicleIcon(engine, dir, image_type); if (sprite != 0) { if (e->GetGRF() != NULL) { - y += e->GetGRF()->traininfo_vehicle_pitch; + y += ScaleGUITrad(e->GetGRF()->traininfo_vehicle_pitch); } return sprite; } @@ -538,14 +538,18 @@ void DrawTrainEngine(int left, int right, int preferred_x, int y, EngineID engin const Sprite *real_spritef = GetSprite(spritef, ST_NORMAL); const Sprite *real_spriter = GetSprite(spriter, ST_NORMAL); - preferred_x = Clamp(preferred_x, left - UnScaleByZoom(real_spritef->x_offs, ZOOM_LVL_GUI) + 14, right - UnScaleByZoom(real_spriter->width, ZOOM_LVL_GUI) - UnScaleByZoom(real_spriter->x_offs, ZOOM_LVL_GUI) - 15); + preferred_x = Clamp(preferred_x, + left - UnScaleGUI(real_spritef->x_offs) + ScaleGUITrad(14), + right - UnScaleGUI(real_spriter->width) - UnScaleGUI(real_spriter->x_offs) - ScaleGUITrad(15)); - DrawSprite(spritef, pal, preferred_x - 14, yf); - DrawSprite(spriter, pal, preferred_x + 15, yr); + DrawSprite(spritef, pal, preferred_x - ScaleGUITrad(14), yf); + DrawSprite(spriter, pal, preferred_x + ScaleGUITrad(15), yr); } else { SpriteID sprite = GetRailIcon(engine, false, y, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - preferred_x = Clamp(preferred_x, left - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI), right - UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI) - UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI)); + preferred_x = Clamp(preferred_x, + left - UnScaleGUI(real_sprite->x_offs), + right - UnScaleGUI(real_sprite->width) - UnScaleGUI(real_sprite->x_offs)); DrawSprite(sprite, pal, preferred_x, y); } } @@ -566,20 +570,20 @@ void GetTrainSpriteSize(EngineID engine, uint &width, uint &height, int &xoffs, SpriteID sprite = GetRailIcon(engine, false, y, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - width = UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI); - height = UnScaleByZoom(real_sprite->height, ZOOM_LVL_GUI); - xoffs = UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI); - yoffs = UnScaleByZoom(real_sprite->y_offs, ZOOM_LVL_GUI); + width = UnScaleGUI(real_sprite->width); + height = UnScaleGUI(real_sprite->height); + xoffs = UnScaleGUI(real_sprite->x_offs); + yoffs = UnScaleGUI(real_sprite->y_offs); if (RailVehInfo(engine)->railveh_type == RAILVEH_MULTIHEAD) { sprite = GetRailIcon(engine, true, y, image_type); real_sprite = GetSprite(sprite, ST_NORMAL); /* Calculate values relative to an imaginary center between the two sprites. */ - width = TRAININFO_DEFAULT_VEHICLE_WIDTH + UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI) + UnScaleByZoom(real_sprite->x_offs, ZOOM_LVL_GUI) - xoffs; - height = max(height, UnScaleByZoom(real_sprite->height, ZOOM_LVL_GUI)); - xoffs = xoffs - TRAININFO_DEFAULT_VEHICLE_WIDTH / 2; - yoffs = min(yoffs, UnScaleByZoom(real_sprite->y_offs, ZOOM_LVL_GUI)); + width = ScaleGUITrad(TRAININFO_DEFAULT_VEHICLE_WIDTH) + UnScaleGUI(real_sprite->width) + UnScaleGUI(real_sprite->x_offs) - xoffs; + height = max(height, UnScaleGUI(real_sprite->height)); + xoffs = xoffs - ScaleGUITrad(TRAININFO_DEFAULT_VEHICLE_WIDTH) / 2; + yoffs = min(yoffs, UnScaleGUI(real_sprite->y_offs)); } } @@ -642,7 +646,7 @@ static CommandCost CmdBuildRailWagon(TileIndex tile, DoCommandFlag flags, const _new_vehicle_id = v->index; - VehicleUpdatePosition(v); + v->UpdatePosition(); v->First()->ConsistChanged(CCF_ARRANGE); UpdateTrainGroupID(v->First()); @@ -705,7 +709,7 @@ static void AddRearEngineToMultiheadedTrain(Train *v) v->SetMultiheaded(); u->SetMultiheaded(); v->SetNext(u); - VehicleUpdatePosition(u); + u->UpdatePosition(); /* Now we need to link the front and rear engines together */ v->other_multiheaded_part = u; @@ -777,7 +781,7 @@ CommandCost CmdBuildRailVehicle(TileIndex tile, DoCommandFlag flags, const Engin v->SetFrontEngine(); v->SetEngine(); - VehicleUpdatePosition(v); + v->UpdatePosition(); if (rvi->railveh_type == RAILVEH_MULTIHEAD) { AddRearEngineToMultiheadedTrain(v); @@ -1439,7 +1443,7 @@ void Train::UpdateDeltaXY(Direction direction) if (!IsDiagonalDirection(direction)) { static const int _sign_table[] = { - // x, y + /* x, y */ -1, -1, // DIR_N -1, 1, // DIR_E 1, 1, // DIR_S @@ -1565,14 +1569,14 @@ static void UpdateStatusAfterSwap(Train *v) /* We have just left the wormhole, possibly set the * "goingdown" bit. UpdateInclination() can be used * because we are at the border of the tile. */ - VehicleUpdatePosition(v); + v->UpdatePosition(); v->UpdateInclination(true, true); return; } } } - VehicleUpdatePosition(v); + v->UpdatePosition(); v->UpdateViewport(true, true); } @@ -2190,7 +2194,7 @@ static bool CheckTrainStayInDepot(Train *v) v->cur_speed = 0; v->UpdateViewport(true, true); - VehicleUpdatePosition(v); + v->UpdatePosition(); UpdateSignalsOnSegment(v->tile, INVALID_DIAGDIR, v->owner); v->UpdateAcceleration(); InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile); @@ -2219,8 +2223,12 @@ static void ClearPathReservation(const Train *v, TileIndex tile, Trackdir track_ SetTunnelBridgeReservation(end, false); if (_settings_client.gui.show_track_reservation) { - MarkTileDirtyByTile(tile); - MarkTileDirtyByTile(end); + if (IsBridge(tile)) { + MarkBridgeDirty(tile); + } else { + MarkTileDirtyByTile(tile); + MarkTileDirtyByTile(end); + } } } } @@ -3341,8 +3349,8 @@ bool TrainController(Train *v, Vehicle *nomove, bool reverse) } else { v->x_pos = gp.x; v->y_pos = gp.y; - VehicleUpdatePosition(v); - if ((v->vehstatus & VS_HIDDEN) == 0) VehicleUpdateViewport(v, true); + v->UpdatePosition(); + if ((v->vehstatus & VS_HIDDEN) == 0) v->Vehicle::UpdateViewport(true); continue; } } @@ -3352,7 +3360,7 @@ bool TrainController(Train *v, Vehicle *nomove, bool reverse) v->x_pos = gp.x; v->y_pos = gp.y; - VehicleUpdatePosition(v); + v->UpdatePosition(); /* update the Z position of the vehicle */ int old_z = v->UpdateInclination(gp.new_tile != gp.old_tile, false); @@ -3522,7 +3530,7 @@ static void ChangeTrainDirRandomly(Train *v) * a bridge, because UpdateInclination() will put the vehicle under * the bridge in that case */ if (v->track != TRACK_BIT_WORMHOLE) { - VehicleUpdatePosition(v); + v->UpdatePosition(); v->UpdateInclination(false, false); } } diff --git a/src/train_gui.cpp b/src/train_gui.cpp index a89ade3cf7..d9da097017 100644 --- a/src/train_gui.cpp +++ b/src/train_gui.cpp @@ -15,6 +15,7 @@ #include "train.h" #include "strings_func.h" #include "vehicle_func.h" +#include "zoom_func.h" #include "table/strings.h" @@ -73,7 +74,7 @@ static int HighlightDragPosition(int px, int max_width, VehicleID selection) if (drag_hlight_width > 0) { GfxFillRect(drag_hlight_left + WD_FRAMERECT_LEFT, WD_FRAMERECT_TOP + 1, - drag_hlight_right - WD_FRAMERECT_RIGHT, 13 - WD_FRAMERECT_BOTTOM, _colour_gradient[COLOUR_GREY][7]); + drag_hlight_right - WD_FRAMERECT_RIGHT, ScaleGUITrad(13) - WD_FRAMERECT_BOTTOM, _colour_gradient[COLOUR_GREY][7]); } return drag_hlight_width; @@ -99,8 +100,9 @@ void DrawTrainImage(const Train *v, int left, int right, int y, VehicleID select int highlight_l = 0; int highlight_r = 0; int max_width = right - left + 1; + int height = ScaleGUITrad(14); - if (!FillDrawPixelInfo(&tmp_dpi, left, y, max_width, 14)) return; + if (!FillDrawPixelInfo(&tmp_dpi, left, y, max_width, height)) return; old_dpi = _cur_dpi; _cur_dpi = &tmp_dpi; @@ -121,7 +123,7 @@ void DrawTrainImage(const Train *v, int left, int right, int y, VehicleID select if (rtl ? px + width > 0 : px - width < max_width) { PaletteID pal = (v->vehstatus & VS_CRASHED) ? PALETTE_CRASH : GetVehiclePalette(v); - DrawSprite(v->GetImage(dir, image_type), pal, px + (rtl ? -offset.x : offset.x), 7 + offset.y); + DrawSprite(v->GetImage(dir, image_type), pal, px + (rtl ? -offset.x : offset.x), height / 2 + offset.y); } if (!v->IsArticulatedPart()) sel_articulated = false; @@ -150,7 +152,7 @@ void DrawTrainImage(const Train *v, int left, int right, int y, VehicleID select if (highlight_l != highlight_r) { /* Draw the highlight. Now done after drawing all the engines, as * the next engine after the highlight could overlap it. */ - DrawFrameRect(highlight_l, 0, highlight_r, 13, COLOUR_WHITE, FR_BORDERONLY); + DrawFrameRect(highlight_l, 0, highlight_r, height - 1, COLOUR_WHITE, FR_BORDERONLY); } _cur_dpi = old_dpi; @@ -350,13 +352,19 @@ int GetTrainDetailsWndVScroll(VehicleID veh_id, TrainDetailsWindowTabs det_tab) */ void DrawTrainDetails(const Train *v, int left, int right, int y, int vscroll_pos, uint16 vscroll_cap, TrainDetailsWindowTabs det_tab) { + /* get rid of awkward offset */ + y -= WD_MATRIX_TOP; + + int sprite_height = ScaleGUITrad(GetVehicleHeight(VEH_TRAIN)); + int line_height = max(sprite_height, WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM); + int sprite_y_offset = line_height / 2; + int text_y_offset = (line_height - FONT_HEIGHT_NORMAL) / 2; + /* draw the first 3 details tabs */ if (det_tab != TDW_TAB_TOTALS) { bool rtl = _current_text_dir == TD_RTL; Direction dir = rtl ? DIR_E : DIR_W; int x = rtl ? right : left; - int sprite_y_offset = 4 + (FONT_HEIGHT_NORMAL - 10) / 2; - int line_height = WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM; for (; v != NULL && vscroll_pos > -vscroll_cap; v = v->GetNextVehicle()) { GetCargoSummaryOfArticulatedVehicle(v, &_cargo_summary); @@ -368,15 +376,20 @@ void DrawTrainDetails(const Train *v, int left, int right, int y, int vscroll_po Point offset; int width = u->GetDisplayImageWidth(&offset); if (vscroll_pos <= 0 && vscroll_pos > -vscroll_cap) { + int pitch = 0; + const Engine *e = Engine::Get(v->engine_type); + if (e->GetGRF() != NULL) { + pitch = ScaleGUITrad(e->GetGRF()->traininfo_vehicle_pitch); + } PaletteID pal = (v->vehstatus & VS_CRASHED) ? PALETTE_CRASH : GetVehiclePalette(v); - DrawSprite(u->GetImage(dir, EIT_IN_DETAILS), pal, px + (rtl ? -offset.x : offset.x), y - line_height * vscroll_pos + sprite_y_offset + offset.y); + DrawSprite(u->GetImage(dir, EIT_IN_DETAILS), pal, px + (rtl ? -offset.x : offset.x), y - line_height * vscroll_pos + sprite_y_offset + pitch); } px += rtl ? -width : width; dx += width; u = u->Next(); } while (u != NULL && u->IsArticulatedPart()); - bool separate_sprite_row = (dx > TRAIN_DETAILS_MAX_INDENT); + bool separate_sprite_row = (dx > (uint)ScaleGUITrad(TRAIN_DETAILS_MAX_INDENT)); if (separate_sprite_row) { vscroll_pos--; dx = 0; @@ -384,11 +397,11 @@ void DrawTrainDetails(const Train *v, int left, int right, int y, int vscroll_po uint num_lines = max(1u, _cargo_summary.Length()); for (uint i = 0; i < num_lines; i++) { - int sprite_width = max(dx, TRAIN_DETAILS_MIN_INDENT) + 3; + int sprite_width = max(dx, ScaleGUITrad(TRAIN_DETAILS_MIN_INDENT)) + 3; int data_left = left + (rtl ? 0 : sprite_width); int data_right = right - (rtl ? sprite_width : 0); if (vscroll_pos <= 0 && vscroll_pos > -vscroll_cap) { - int py = y - line_height * vscroll_pos; + int py = y - line_height * vscroll_pos + text_y_offset; if (i > 0 || separate_sprite_row) { if (vscroll_pos != 0) GfxFillRect(left, py - WD_MATRIX_TOP - 1, right, py - WD_MATRIX_TOP, _colour_gradient[COLOUR_GREY][5]); } @@ -432,8 +445,8 @@ void DrawTrainDetails(const Train *v, int left, int right, int y, int vscroll_po } /* draw total cargo tab */ - DrawString(left, right, y, STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT); - y += WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM; + DrawString(left, right, y + text_y_offset, STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT); + y += line_height; for (CargoID i = 0; i < NUM_CARGO; i++) { if (max_cargo[i] > 0 && --vscroll_pos < 0 && vscroll_pos > -vscroll_cap) { @@ -442,11 +455,11 @@ void DrawTrainDetails(const Train *v, int left, int right, int y, int vscroll_po SetDParam(2, i); // {SHORTCARGO} #1 SetDParam(3, max_cargo[i]); // {SHORTCARGO} #2 SetDParam(4, _settings_game.vehicle.freight_trains); - DrawString(left, right, y, FreightWagonMult(i) > 1 ? STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_MULT : STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY); - y += WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM; + DrawString(left, right, y + text_y_offset, FreightWagonMult(i) > 1 ? STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_MULT : STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY); + y += line_height; } } SetDParam(0, feeder_share); - DrawString(left, right, y, STR_VEHICLE_INFO_FEEDER_CARGO_VALUE); + DrawString(left, right, y + text_y_offset, STR_VEHICLE_INFO_FEEDER_CARGO_VALUE); } } diff --git a/src/tree_map.h b/src/tree_map.h index 105eb8dca4..e614099fc9 100644 --- a/src/tree_map.h +++ b/src/tree_map.h @@ -279,7 +279,7 @@ static inline void MakeTree(TileIndex t, TreeType type, uint count, uint growth, _m[t].m3 = type; _m[t].m4 = 0 << 5 | 0 << 2; _m[t].m5 = count << 6 | growth; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } diff --git a/src/tunnel_map.h b/src/tunnel_map.h index c4f68f7296..e200a1275e 100644 --- a/src/tunnel_map.h +++ b/src/tunnel_map.h @@ -56,7 +56,7 @@ static inline void MakeRoadTunnel(TileIndex t, Owner o, DiagDirection d, RoadTyp _m[t].m3 = 0; _m[t].m4 = 0; _m[t].m5 = TRANSPORT_ROAD << 2 | d; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; SetRoadOwner(t, ROADTYPE_ROAD, o); if (o != OWNER_TOWN) SetRoadOwner(t, ROADTYPE_TRAM, o); @@ -78,7 +78,7 @@ static inline void MakeRailTunnel(TileIndex t, Owner o, DiagDirection d, RailTyp _m[t].m3 = r; _m[t].m4 = 0; _m[t].m5 = TRANSPORT_RAIL << 2 | d; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } diff --git a/src/tunnelbridge.h b/src/tunnelbridge.h index ab8891f621..0a2c2293d5 100644 --- a/src/tunnelbridge.h +++ b/src/tunnelbridge.h @@ -14,6 +14,9 @@ #include "map_func.h" +void MarkBridgeDirty(TileIndex begin, TileIndex end, DiagDirection direction, uint bridge_height); +void MarkBridgeDirty(TileIndex tile); + /** * Calculates the length of a tunnel or a bridge (without end tiles) * @param begin The begin of the tunnel or bridge. diff --git a/src/tunnelbridge_cmd.cpp b/src/tunnelbridge_cmd.cpp index 9bb96538d6..5f2534b58c 100644 --- a/src/tunnelbridge_cmd.cpp +++ b/src/tunnelbridge_cmd.cpp @@ -52,6 +52,33 @@ TileIndex _build_tunnel_endtile; ///< The end of a tunnel; as hidden return from /** Z position of the bridge sprites relative to bridge height (downwards) */ static const int BRIDGE_Z_START = 3; + +/** + * Mark bridge tiles dirty. + * Note: The bridge does not need to exist, everything is passed via parameters. + * @param begin Start tile. + * @param end End tile. + * @param direction Direction from \a begin to \a end. + * @param bridge_height Bridge height level. + */ +void MarkBridgeDirty(TileIndex begin, TileIndex end, DiagDirection direction, uint bridge_height) +{ + TileIndexDiff delta = TileOffsByDiagDir(direction); + for (TileIndex t = begin; t != end; t += delta) { + MarkTileDirtyByTile(t, bridge_height - TileHeight(t)); + } + MarkTileDirtyByTile(end); +} + +/** + * Mark bridge tiles dirty. + * @param tile Bridge head. + */ +void MarkBridgeDirty(TileIndex tile) +{ + MarkBridgeDirty(tile, GetOtherTunnelBridgeEnd(tile), GetTunnelBridgeDirection(tile), GetBridgeHeight(tile)); +} + /** Reset the data been eventually changed by the grf loaded. */ void ResetBridges() { @@ -376,15 +403,13 @@ CommandCost CmdBuildBridge(TileIndex end_tile, DoCommandFlag flags, uint32 p1, u const TileIndex heads[] = {tile_start, tile_end}; for (int i = 0; i < 2; i++) { - if (MayHaveBridgeAbove(heads[i])) { - if (IsBridgeAbove(heads[i])) { - TileIndex north_head = GetNorthernBridgeEnd(heads[i]); + if (IsBridgeAbove(heads[i])) { + TileIndex north_head = GetNorthernBridgeEnd(heads[i]); - if (direction == GetBridgeAxis(heads[i])) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (direction == GetBridgeAxis(heads[i])) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); - if (z_start + 1 == GetBridgeHeight(north_head)) { - return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); - } + if (z_start + 1 == GetBridgeHeight(north_head)) { + return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); } } } @@ -393,7 +418,17 @@ CommandCost CmdBuildBridge(TileIndex end_tile, DoCommandFlag flags, uint32 p1, u for (TileIndex tile = tile_start + delta; tile != tile_end; tile += delta) { if (GetTileMaxZ(tile) > z_start) return_cmd_error(STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN); - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) { + if (z_start >= (GetTileZ(tile) + _settings_game.construction.max_bridge_height)) { + /* + * Disallow too high bridges. + * Properly rendering a map where very high bridges (might) exist is expensive. + * See http://www.tt-forums.net/viewtopic.php?f=33&t=40844&start=980#p1131762 + * for a detailed discussion. z_start here is one heightlevel below the bridge level. + */ + return_cmd_error(STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN); + } + + if (IsBridgeAbove(tile)) { /* Disallow crossing bridges for the time being */ return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); } @@ -452,7 +487,7 @@ CommandCost CmdBuildBridge(TileIndex end_tile, DoCommandFlag flags, uint32 p1, u if (flags & DC_EXEC) { DiagDirection dir = AxisToDiagDir(direction); - Company *c = Company::GetIfValid(owner); + Company *c = Company::GetIfValid(company); switch (transport_type) { case TRANSPORT_RAIL: /* Add to company infrastructure count if required. */ @@ -475,13 +510,11 @@ CommandCost CmdBuildBridge(TileIndex end_tile, DoCommandFlag flags, uint32 p1, u RoadType new_rt; FOR_EACH_SET_ROADTYPE(new_rt, roadtypes ^ prev_roadtypes) { /* A full diagonal road tile has two road bits. */ - Company::Get(owner)->infrastructure.road[new_rt] += (bridge_len + 2) * 2 * TUNNELBRIDGE_TRACKBIT_FACTOR; + c->infrastructure.road[new_rt] += (bridge_len + 2) * 2 * TUNNELBRIDGE_TRACKBIT_FACTOR; } } - Owner owner_road = owner; - Owner owner_tram = owner; - if (HasBit(prev_roadtypes, ROADTYPE_ROAD)) owner_road = GetRoadOwner(tile_start, ROADTYPE_ROAD); - if (HasBit(prev_roadtypes, ROADTYPE_TRAM)) owner_tram = GetRoadOwner(tile_start, ROADTYPE_TRAM); + Owner owner_road = HasBit(prev_roadtypes, ROADTYPE_ROAD) ? GetRoadOwner(tile_start, ROADTYPE_ROAD) : company; + Owner owner_tram = HasBit(prev_roadtypes, ROADTYPE_TRAM) ? GetRoadOwner(tile_start, ROADTYPE_TRAM) : company; MakeRoadBridgeRamp(tile_start, owner, owner_road, owner_tram, bridge_type, dir, roadtypes); MakeRoadBridgeRamp(tile_end, owner, owner_road, owner_tram, bridge_type, ReverseDiagDir(dir), roadtypes); break; @@ -498,11 +531,8 @@ CommandCost CmdBuildBridge(TileIndex end_tile, DoCommandFlag flags, uint32 p1, u } /* Mark all tiles dirty */ - TileIndexDiff delta = (direction == AXIS_X ? TileDiffXY(1, 0) : TileDiffXY(0, 1)); - for (TileIndex tile = tile_start; tile <= tile_end; tile += delta) { - MarkTileDirtyByTile(tile); - } - DirtyCompanyInfrastructureWindows(owner); + MarkBridgeDirty(tile_start, tile_end, AxisToDiagDir(direction), z_start); + DirtyCompanyInfrastructureWindows(company); } if ((flags & DC_EXEC) && transport_type == TRANSPORT_RAIL) { @@ -918,7 +948,7 @@ static CommandCost DoClearBridge(TileIndex tile, DoCommandFlag flags) if (height < minz) SetRoadside(c, ROADSIDE_PAVED); } ClearBridgeMiddle(c); - MarkTileDirtyByTile(c); + MarkTileDirtyByTile(c, height - TileHeight(c)); } if (rail) { @@ -1178,7 +1208,12 @@ static void DrawTile_TunnelBridge(TileInfo *ti) /* PBS debugging, draw reserved tracks darker */ if (_game_mode != GM_MENU && _settings_client.gui.show_track_reservation && HasTunnelBridgeReservation(ti->tile)) { - DrawGroundSprite(DiagDirToAxis(tunnelbridge_direction) == AXIS_X ? rti->base_sprites.single_x : rti->base_sprites.single_y, PALETTE_CRASH); + if (rti->UsesOverlay()) { + SpriteID overlay = GetCustomRailSprite(rti, ti->tile, RTSG_OVERLAY); + DrawGroundSprite(overlay + RTO_X + DiagDirToAxis(tunnelbridge_direction), PALETTE_CRASH); + } else { + DrawGroundSprite(DiagDirToAxis(tunnelbridge_direction) == AXIS_X ? rti->base_sprites.single_x : rti->base_sprites.single_y, PALETTE_CRASH); + } } if (HasCatenaryDrawn(GetRailType(ti->tile))) { @@ -1288,11 +1323,20 @@ static void DrawTile_TunnelBridge(TileInfo *ti) } /* PBS debugging, draw reserved tracks darker */ - if (_game_mode != GM_MENU &&_settings_client.gui.show_track_reservation && HasTunnelBridgeReservation(ti->tile)) { - if (HasBridgeFlatRamp(ti->tileh, DiagDirToAxis(tunnelbridge_direction))) { - AddSortableSpriteToDraw(DiagDirToAxis(tunnelbridge_direction) == AXIS_X ? rti->base_sprites.single_x : rti->base_sprites.single_y, PALETTE_CRASH, ti->x, ti->y, 16, 16, 0, ti->z + 8); + if (_game_mode != GM_MENU && _settings_client.gui.show_track_reservation && HasTunnelBridgeReservation(ti->tile)) { + if (rti->UsesOverlay()) { + SpriteID overlay = GetCustomRailSprite(rti, ti->tile, RTSG_OVERLAY); + if (HasBridgeFlatRamp(ti->tileh, DiagDirToAxis(tunnelbridge_direction))) { + AddSortableSpriteToDraw(overlay + RTO_X + DiagDirToAxis(tunnelbridge_direction), PALETTE_CRASH, ti->x, ti->y, 16, 16, 0, ti->z + 8); + } else { + AddSortableSpriteToDraw(overlay + RTO_SLOPE_NE + tunnelbridge_direction, PALETTE_CRASH, ti->x, ti->y, 16, 16, 8, ti->z); + } } else { - AddSortableSpriteToDraw(rti->base_sprites.single_sloped + tunnelbridge_direction, PALETTE_CRASH, ti->x, ti->y, 16, 16, 8, ti->z); + if (HasBridgeFlatRamp(ti->tileh, DiagDirToAxis(tunnelbridge_direction))) { + AddSortableSpriteToDraw(DiagDirToAxis(tunnelbridge_direction) == AXIS_X ? rti->base_sprites.single_x : rti->base_sprites.single_y, PALETTE_CRASH, ti->x, ti->y, 16, 16, 0, ti->z + 8); + } else { + AddSortableSpriteToDraw(rti->base_sprites.single_sloped + tunnelbridge_direction, PALETTE_CRASH, ti->x, ti->y, 16, 16, 8, ti->z); + } } } @@ -1435,6 +1479,16 @@ void DrawBridgeMiddle(const TileInfo *ti) AddSortableSpriteToDraw(surface + axis, PAL_NONE, x, y, 16, 16, 0, bridge_z, IsTransparencySet(TO_BRIDGES)); } } + + if (_game_mode != GM_MENU && _settings_client.gui.show_track_reservation && !IsInvisibilitySet(TO_BRIDGES) && HasTunnelBridgeReservation(rampnorth)) { + if (rti->UsesOverlay()) { + SpriteID overlay = GetCustomRailSprite(rti, ti->tile, RTSG_OVERLAY); + AddSortableSpriteToDraw(overlay + RTO_X + axis, PALETTE_CRASH, ti->x, ti->y, 16, 16, 0, bridge_z, IsTransparencySet(TO_BRIDGES)); + } else { + AddSortableSpriteToDraw(axis == AXIS_X ? rti->base_sprites.single_x : rti->base_sprites.single_y, PALETTE_CRASH, ti->x, ti->y, 16, 16, 0, bridge_z, IsTransparencySet(TO_BRIDGES)); + } + } + EndSpriteCombine(); if (HasCatenaryDrawn(GetRailType(rampsouth))) { diff --git a/src/vehicle.cpp b/src/vehicle.cpp index e733652c30..28e5afc484 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -206,7 +206,7 @@ uint Vehicle::Crash(bool flooded) /* We do not transfer reserver cargo back, so TotalCount() instead of StoredCount() */ if (IsCargoInClass(v->cargo_type, CC_PASSENGERS)) pass += v->cargo.TotalCount(); v->vehstatus |= VS_CRASHED; - MarkSingleVehicleDirty(v); + v->MarkAllViewportsDirty(); } /* Dirty some windows */ @@ -809,7 +809,7 @@ Vehicle::~Vehicle() /* sometimes, eg. for disaster vehicles, when company bankrupts, when removing crashed/flooded vehicles, * it may happen that vehicle chain is deleted when visible */ - if (!(this->vehstatus & VS_HIDDEN)) MarkSingleVehicleDirty(this); + if (!(this->vehstatus & VS_HIDDEN)) this->MarkAllViewportsDirty(); Vehicle *v = this->Next(); this->SetNext(NULL); @@ -1473,67 +1473,62 @@ void VehicleEnterDepot(Vehicle *v) /** * Update the position of the vehicle. This will update the hash that tells * which vehicles are on a tile. - * @param v The vehicle to update. */ -void VehicleUpdatePosition(Vehicle *v) +void Vehicle::UpdatePosition() { - UpdateVehicleTileHash(v, false); + UpdateVehicleTileHash(this, false); } /** * Update the vehicle on the viewport, updating the right hash and setting the * new coordinates. - * @param v The vehicle to update. * @param dirty Mark the (new and old) coordinates of the vehicle as dirty. */ -void VehicleUpdateViewport(Vehicle *v, bool dirty) +void Vehicle::UpdateViewport(bool dirty) { - int img = v->cur_image; - Point pt = RemapCoords(v->x_pos + v->x_offs, v->y_pos + v->y_offs, v->z_pos); + int img = this->cur_image; + Point pt = RemapCoords(this->x_pos + this->x_offs, this->y_pos + this->y_offs, this->z_pos); const Sprite *spr = GetSprite(img, ST_NORMAL); pt.x += spr->x_offs; pt.y += spr->y_offs; - UpdateVehicleViewportHash(v, pt.x, pt.y); + UpdateVehicleViewportHash(this, pt.x, pt.y); - Rect old_coord = v->coord; - v->coord.left = pt.x; - v->coord.top = pt.y; - v->coord.right = pt.x + spr->width + 2 * ZOOM_LVL_BASE; - v->coord.bottom = pt.y + spr->height + 2 * ZOOM_LVL_BASE; + Rect old_coord = this->coord; + this->coord.left = pt.x; + this->coord.top = pt.y; + this->coord.right = pt.x + spr->width + 2 * ZOOM_LVL_BASE; + this->coord.bottom = pt.y + spr->height + 2 * ZOOM_LVL_BASE; if (dirty) { if (old_coord.left == INVALID_COORD) { - MarkSingleVehicleDirty(v); + this->MarkAllViewportsDirty(); } else { - MarkAllViewportsDirty( - min(old_coord.left, v->coord.left), - min(old_coord.top, v->coord.top), - max(old_coord.right, v->coord.right) + 1 * ZOOM_LVL_BASE, - max(old_coord.bottom, v->coord.bottom) + 1 * ZOOM_LVL_BASE - ); + ::MarkAllViewportsDirty( + min(old_coord.left, this->coord.left), + min(old_coord.top, this->coord.top), + max(old_coord.right, this->coord.right), + max(old_coord.bottom, this->coord.bottom)); } } } /** * Update the position of the vehicle, and update the viewport. - * @param v The vehicle to update. */ -void VehicleUpdatePositionAndViewport(Vehicle *v) +void Vehicle::UpdatePositionAndViewport() { - VehicleUpdatePosition(v); - VehicleUpdateViewport(v, true); + this->UpdatePosition(); + this->UpdateViewport(true); } /** * Marks viewports dirty where the vehicle's image is. - * @param v vehicle to mark dirty */ -void MarkSingleVehicleDirty(const Vehicle *v) +void Vehicle::MarkAllViewportsDirty() const { - MarkAllViewportsDirty(v->coord.left, v->coord.top, v->coord.right + 1 * ZOOM_LVL_BASE, v->coord.bottom + 1 * ZOOM_LVL_BASE); + ::MarkAllViewportsDirty(this->coord.left, this->coord.top, this->coord.right, this->coord.bottom); } /** @@ -2381,6 +2376,61 @@ static const int8 _vehicle_smoke_pos[8] = { 1, 1, 1, 0, -1, -1, -1, 0 }; +/** + * Call CBID_VEHICLE_SPAWN_VISUAL_EFFECT and spawn requested effects. + * @param v Vehicle to create effects for. + */ +static void SpawnAdvancedVisualEffect(const Vehicle *v) +{ + uint16 callback = GetVehicleCallback(CBID_VEHICLE_SPAWN_VISUAL_EFFECT, 0, Random(), v->engine_type, v); + if (callback == CALLBACK_FAILED) return; + + uint count = GB(callback, 0, 2); + bool auto_center = HasBit(callback, 13); + bool auto_rotate = !HasBit(callback, 14); + + int8 l_center = 0; + if (auto_center) { + /* For road vehicles: Compute offset from vehicle position to vehicle center */ + if (v->type == VEH_ROAD) l_center = -(int)(VEHICLE_LENGTH - RoadVehicle::From(v)->gcache.cached_veh_length) / 2; + } else { + /* For trains: Compute offset from vehicle position to sprite position */ + if (v->type == VEH_TRAIN) l_center = (VEHICLE_LENGTH - Train::From(v)->gcache.cached_veh_length) / 2; + } + + Direction l_dir = v->direction; + if (v->type == VEH_TRAIN && HasBit(Train::From(v)->flags, VRF_REVERSE_DIRECTION)) l_dir = ReverseDir(l_dir); + Direction t_dir = ChangeDir(l_dir, DIRDIFF_90RIGHT); + + int8 x_center = _vehicle_smoke_pos[l_dir] * l_center; + int8 y_center = _vehicle_smoke_pos[t_dir] * l_center; + + for (uint i = 0; i < count; i++) { + uint32 reg = GetRegister(0x100 + i); + uint type = GB(reg, 0, 8); + int8 x = GB(reg, 8, 8); + int8 y = GB(reg, 16, 8); + int8 z = GB(reg, 24, 8); + + if (auto_rotate) { + int8 l = x; + int8 t = y; + x = _vehicle_smoke_pos[l_dir] * l + _vehicle_smoke_pos[t_dir] * t; + y = _vehicle_smoke_pos[t_dir] * l - _vehicle_smoke_pos[l_dir] * t; + } + + if (type >= 0xF0) { + switch (type) { + case 0xF1: CreateEffectVehicleRel(v, x_center + x, y_center + y, z, EV_STEAM_SMOKE); break; + case 0xF2: CreateEffectVehicleRel(v, x_center + x, y_center + y, z, EV_DIESEL_SMOKE); break; + case 0xF3: CreateEffectVehicleRel(v, x_center + x, y_center + y, z, EV_ELECTRIC_SPARK); break; + case 0xFA: CreateEffectVehicleRel(v, x_center + x, y_center + y, z, EV_BREAKDOWN_SMOKE_AIRCRAFT); break; + default: break; + } + } + } +} + /** * Draw visual effects (smoke and/or sparks) for a vehicle chain. * @pre this->IsPrimaryVehicle() @@ -2401,7 +2451,9 @@ void Vehicle::ShowVisualEffect() const return; } - uint max_speed = this->vcache.cached_max_speed; + /* Use the speed as limited by underground and orders. */ + uint max_speed = this->GetCurrentMaxSpeed(); + if (this->type == VEH_TRAIN) { const Train *t = Train::From(this); /* For trains, do not show any smoke when: @@ -2410,21 +2462,28 @@ void Vehicle::ShowVisualEffect() const */ if (HasBit(t->flags, VRF_REVERSING) || (IsRailStationTile(t->tile) && t->IsFrontEngine() && t->current_order.ShouldStopAtStation(t, GetStationIndex(t->tile)) && - t->cur_speed >= t->Train::GetCurrentMaxSpeed())) { + t->cur_speed >= max_speed)) { return; } - - max_speed = min(max_speed, t->gcache.cached_max_track_speed); - max_speed = min(max_speed, this->current_order.GetMaxSpeed()); } - if (this->type == VEH_ROAD || this->type == VEH_SHIP) max_speed = min(max_speed, this->current_order.GetMaxSpeed() * 2); const Vehicle *v = this; do { + bool advanced = HasBit(v->vcache.cached_vis_effect, VE_ADVANCED_EFFECT); int effect_offset = GB(v->vcache.cached_vis_effect, VE_OFFSET_START, VE_OFFSET_COUNT) - VE_OFFSET_CENTRE; - byte effect_type = GB(v->vcache.cached_vis_effect, VE_TYPE_START, VE_TYPE_COUNT); - bool disable_effect = HasBit(v->vcache.cached_vis_effect, VE_DISABLE_EFFECT); + VisualEffectSpawnModel effect_model = VESM_NONE; + if (advanced) { + effect_offset = VE_OFFSET_CENTRE; + effect_model = (VisualEffectSpawnModel)GB(v->vcache.cached_vis_effect, 0, VE_ADVANCED_EFFECT); + if (effect_model >= VESM_END) effect_model = VESM_NONE; // unknown spawning model + } else { + effect_model = (VisualEffectSpawnModel)GB(v->vcache.cached_vis_effect, VE_TYPE_START, VE_TYPE_COUNT); + assert(effect_model != (VisualEffectSpawnModel)VE_TYPE_DEFAULT); // should have been resolved by UpdateVisualEffect + assert_compile((uint)VESM_STEAM == (uint)VE_TYPE_STEAM); + assert_compile((uint)VESM_DIESEL == (uint)VE_TYPE_DIESEL); + assert_compile((uint)VESM_ELECTRIC == (uint)VE_TYPE_ELECTRIC); + } /* Show no smoke when: * - Smoke has been disabled for this vehicle @@ -2433,9 +2492,9 @@ void Vehicle::ShowVisualEffect() const * - The vehicle is on a depot tile * - The vehicle is on a tunnel tile * - The vehicle is a train engine that is currently unpowered */ - if (disable_effect || + if (effect_model == VESM_NONE || v->vehstatus & VS_HIDDEN || - (MayHaveBridgeAbove(v->tile) && IsBridgeAbove(v->tile)) || + IsBridgeAbove(v->tile) || IsDepotTile(v->tile) || IsTunnelTile(v->tile) || (v->type == VEH_TRAIN && @@ -2443,33 +2502,20 @@ void Vehicle::ShowVisualEffect() const continue; } - /* The effect offset is relative to a point 4 units behind the vehicle's - * front (which is the center of an 8/8 vehicle). Shorter vehicles need a - * correction factor. */ - if (v->type == VEH_TRAIN) effect_offset += (VEHICLE_LENGTH - Train::From(v)->gcache.cached_veh_length) / 2; - - int x = _vehicle_smoke_pos[v->direction] * effect_offset; - int y = _vehicle_smoke_pos[(v->direction + 2) % 8] * effect_offset; - - if (v->type == VEH_TRAIN && HasBit(Train::From(v)->flags, VRF_REVERSE_DIRECTION)) { - x = -x; - y = -y; - } - - switch (effect_type) { - case VE_TYPE_STEAM: + EffectVehicleType evt = EV_END; + switch (effect_model) { + case VESM_STEAM: /* Steam smoke - amount is gradually falling until vehicle reaches its maximum speed, after that it's normal. * Details: while vehicle's current speed is gradually increasing, steam plumes' density decreases by one third each * third of its maximum speed spectrum. Steam emission finally normalises at very close to vehicle's maximum speed. * REGULATION: * - instead of 1, 4 / 2^smoke_amount (max. 2) is used to provide sufficient regulation to steam puffs' amount. */ if (GB(v->tick_counter, 0, ((4 >> _settings_game.vehicle.smoke_amount) + ((this->cur_speed * 3) / max_speed))) == 0) { - CreateEffectVehicleRel(v, x, y, 10, EV_STEAM_SMOKE); - sound = true; + evt = EV_STEAM_SMOKE; } break; - case VE_TYPE_DIESEL: { + case VESM_DIESEL: { /* Diesel smoke - thicker when vehicle is starting, gradually subsiding till it reaches its maximum speed * when smoke emission stops. * Details: Vehicle's (max.) speed spectrum is divided into 32 parts. When max. speed is reached, chance for smoke @@ -2487,13 +2533,12 @@ void Vehicle::ShowVisualEffect() const } if (this->cur_speed < (max_speed >> (2 >> _settings_game.vehicle.smoke_amount)) && Chance16((64 - ((this->cur_speed << 5) / max_speed) + power_weight_effect), (512 >> _settings_game.vehicle.smoke_amount))) { - CreateEffectVehicleRel(v, x, y, 10, EV_DIESEL_SMOKE); - sound = true; + evt = EV_DIESEL_SMOKE; } break; } - case VE_TYPE_ELECTRIC: + case VESM_ELECTRIC: /* Electric train's spark - more often occurs when train is departing (more load) * Details: Electric locomotives are usually at least twice as powerful as their diesel counterparts, so spark * emissions are kept simple. Only when starting, creating huge force are sparks more likely to happen, but when @@ -2502,13 +2547,34 @@ void Vehicle::ShowVisualEffect() const * - in Chance16 the last value is 360 / 2^smoke_amount (max. sparks when 90 = smoke_amount of 2). */ if (GB(v->tick_counter, 0, 2) == 0 && Chance16((6 - ((this->cur_speed << 2) / max_speed)), (360 >> _settings_game.vehicle.smoke_amount))) { - CreateEffectVehicleRel(v, x, y, 10, EV_ELECTRIC_SPARK); - sound = true; + evt = EV_ELECTRIC_SPARK; } break; default: - break; + NOT_REACHED(); + } + + if (evt != EV_END && advanced) { + sound = true; + SpawnAdvancedVisualEffect(v); + } else if (evt != EV_END) { + sound = true; + + /* The effect offset is relative to a point 4 units behind the vehicle's + * front (which is the center of an 8/8 vehicle). Shorter vehicles need a + * correction factor. */ + if (v->type == VEH_TRAIN) effect_offset += (VEHICLE_LENGTH - Train::From(v)->gcache.cached_veh_length) / 2; + + int x = _vehicle_smoke_pos[v->direction] * effect_offset; + int y = _vehicle_smoke_pos[(v->direction + 2) % 8] * effect_offset; + + if (v->type == VEH_TRAIN && HasBit(Train::From(v)->flags, VRF_REVERSE_DIRECTION)) { + x = -x; + y = -y; + } + + CreateEffectVehicleRel(v, x, y, 10, evt); } } while ((v = v->Next()) != NULL); diff --git a/src/vehicle_base.h b/src/vehicle_base.h index 004132718e..fa75b79089 100644 --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -87,11 +87,22 @@ enum VisualEffect { VE_TYPE_ELECTRIC = 3, ///< Electric sparks VE_DISABLE_EFFECT = 6, ///< Flag to disable visual effect + VE_ADVANCED_EFFECT = VE_DISABLE_EFFECT, ///< Flag for advanced effects VE_DISABLE_WAGON_POWER = 7, ///< Flag to disable wagon power VE_DEFAULT = 0xFF, ///< Default value to indicate that visual effect should be based on engine class }; +/** Models for spawning visual effects. */ +enum VisualEffectSpawnModel { + VESM_NONE = 0, ///< No visual effect + VESM_STEAM, ///< Steam model + VESM_DIESEL, ///< Diesel model + VESM_ELECTRIC, ///< Electric model + + VESM_END +}; + /** * Enum to handle ground vehicle subtypes. * This is defined here instead of at #GroundVehicle because some common function require access to these flags. @@ -687,6 +698,11 @@ public: void UpdateVisualEffect(bool allow_power_change = true); void ShowVisualEffect() const; + void UpdatePosition(); + void UpdateViewport(bool dirty); + void UpdatePositionAndViewport(); + void MarkAllViewportsDirty() const; + inline uint16 GetServiceInterval() const { return this->service_interval; } inline void SetServiceInterval(uint16 interval) { this->service_interval = interval; } @@ -1058,14 +1074,12 @@ struct SpecializedVehicle : public Vehicle { */ inline void UpdateViewport(bool force_update, bool update_delta) { - extern void VehicleUpdateViewport(Vehicle *v, bool dirty); - /* Explicitly choose method to call to prevent vtable dereference - * it gives ~3% runtime improvements in games with many vehicles */ if (update_delta) ((T *)this)->T::UpdateDeltaXY(this->direction); SpriteID old_image = this->cur_image; this->cur_image = ((T *)this)->T::GetImage(this->direction, EIT_ON_MAP); - if (force_update || this->cur_image != old_image) VehicleUpdateViewport(this, true); + if (force_update || this->cur_image != old_image) this->Vehicle::UpdateViewport(true); } }; @@ -1076,28 +1090,6 @@ struct SpecializedVehicle : public Vehicle { */ #define FOR_ALL_VEHICLES_OF_TYPE(name, var) FOR_ALL_ITEMS_FROM(name, vehicle_index, var, 0) if (var->type == name::EXPECTED_TYPE) -/** - * Disasters, like submarines, skyrangers and their shadows, belong to this class. - */ -struct DisasterVehicle FINAL : public SpecializedVehicle { - SpriteID image_override; ///< Override for the default disaster vehicle sprite. - VehicleID big_ufo_destroyer_target; ///< The big UFO that this destroyer is supposed to bomb. - - /** We don't want GCC to zero our struct! It already is zeroed and has an index! */ - DisasterVehicle() : SpecializedVehicleBase() {} - /** We want to 'destruct' the right class. */ - virtual ~DisasterVehicle() {} - - void UpdateDeltaXY(Direction direction); - bool Tick(); -}; - -/** - * Iterate over disaster vehicles. - * @param var The variable used to iterate over. - */ -#define FOR_ALL_DISASTERVEHICLES(var) FOR_ALL_VEHICLES_OF_TYPE(DisasterVehicle, var) - /** Generates sequence of free UnitID numbers */ struct FreeUnitIDGenerator { bool *cache; ///< array of occupied unit id numbers diff --git a/src/vehicle_func.h b/src/vehicle_func.h index 757f1b6e6d..9eb6b91219 100644 --- a/src/vehicle_func.h +++ b/src/vehicle_func.h @@ -67,11 +67,6 @@ void CheckVehicleBreakdown(Vehicle *v); void AgeVehicle(Vehicle *v); void VehicleEnteredDepotThisTick(Vehicle *v); -void VehicleUpdatePosition(Vehicle *v); -void VehicleUpdateViewport(Vehicle *v, bool dirty); -void VehicleUpdatePositionAndViewport(Vehicle *v); -void MarkSingleVehicleDirty(const Vehicle *v); - UnitID GetFreeUnitNumber(VehicleType type); void VehicleEnterDepot(Vehicle *v); diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index 16813cea5d..4ace090dda 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -98,6 +98,30 @@ const StringID BaseVehicleListWindow::vehicle_depot_name[] = { STR_VEHICLE_LIST_SEND_AIRCRAFT_TO_HANGAR }; +/** + * Get the number of digits the biggest unit number of a set of vehicles has. + * @param vehicles The list of vehicles. + * @return The number of digits to allocate space for. + */ +uint GetUnitNumberDigits(VehicleList &vehicles) +{ + uint unitnumber = 0; + for (const Vehicle **v = vehicles.Begin(); v != vehicles.End(); v++) { + unitnumber = max(unitnumber, (*v)->unitnumber); + } + + if (unitnumber >= 10000) return 5; + if (unitnumber >= 1000) return 4; + if (unitnumber >= 100) return 3; + + /* + * When the smallest unit number is less than 10, it is + * quite likely that it will expand to become more than + * 10 quite soon. + */ + return 2; +} + void BaseVehicleListWindow::BuildVehicleList() { if (!this->vehicles.NeedRebuild()) return; @@ -106,21 +130,7 @@ void BaseVehicleListWindow::BuildVehicleList() GenerateVehicleSortList(&this->vehicles, this->vli); - uint unitnumber = 0; - for (const Vehicle **v = this->vehicles.Begin(); v != this->vehicles.End(); v++) { - unitnumber = max(unitnumber, (*v)->unitnumber); - } - - /* Because 111 is much less wide than e.g. 999 we use the - * wider numbers to determine the width instead of just - * the random number that it seems to be. */ - if (unitnumber >= 1000) { - this->unitnumber_digits = 4; - } else if (unitnumber >= 100) { - this->unitnumber_digits = 3; - } else { - this->unitnumber_digits = 2; - } + this->unitnumber_digits = GetUnitNumberDigits(this->vehicles); this->vehicles.RebuildDone(); this->vscroll->SetCount(this->vehicles.Length()); @@ -655,7 +665,7 @@ struct RefitWindow : public Window { break; case WID_VR_VEHICLE_PANEL_DISPLAY: - size->height = GetVehicleHeight(Vehicle::Get(this->window_number)->type); + size->height = ScaleGUITrad(GetVehicleHeight(Vehicle::Get(this->window_number)->type)); break; case WID_VR_INFO: @@ -752,7 +762,7 @@ struct RefitWindow : public Window { } if (left != right) { - DrawFrameRect(left, r.top + WD_FRAMERECT_TOP, right, r.top + WD_FRAMERECT_TOP + 13, COLOUR_WHITE, FR_BORDERONLY); + DrawFrameRect(left, r.top + WD_FRAMERECT_TOP, right, r.top + WD_FRAMERECT_TOP + ScaleGUITrad(14) - 1, COLOUR_WHITE, FR_BORDERONLY); } left = INT32_MIN; @@ -1278,6 +1288,9 @@ static void DrawSmallOrderList(const Vehicle *v, int left, int right, int y, Veh const Order *order = v->GetOrder(start); if (order == NULL) return; + bool rtl = _current_text_dir == TD_RTL; + int l_offset = rtl ? 0 : ScaleGUITrad(6); + int r_offset = rtl ? ScaleGUITrad(6) : 0; int i = 0; VehicleOrderID oid = start; @@ -1286,7 +1299,7 @@ static void DrawSmallOrderList(const Vehicle *v, int left, int right, int y, Veh if (order->IsType(OT_GOTO_STATION)) { SetDParam(0, order->GetDestination()); - DrawString(left + 6, right - 6, y, STR_TINY_BLACK_STATION); + DrawString(left + l_offset, right - r_offset, y, STR_TINY_BLACK_STATION); y += FONT_HEIGHT_SMALL; if (++i == 4) break; @@ -1330,7 +1343,7 @@ void DrawVehicleImage(const Vehicle *v, int left, int right, int y, VehicleID se uint GetVehicleListHeight(VehicleType type, uint divisor) { /* Name + vehicle + profit */ - uint base = GetVehicleHeight(type) + 2 * FONT_HEIGHT_SMALL; + uint base = ScaleGUITrad(GetVehicleHeight(type)) + 2 * FONT_HEIGHT_SMALL; /* Drawing of the 4 small orders + profit*/ if (type >= VEH_SHIP) base = max(base, 5U * FONT_HEIGHT_SMALL); @@ -1354,13 +1367,13 @@ void BaseVehicleListWindow::DrawVehicleListItems(VehicleID selected_vehicle, int int width = right - left; bool rtl = _current_text_dir == TD_RTL; - int text_offset = GetDigitWidth() * this->unitnumber_digits + WD_FRAMERECT_RIGHT; + int text_offset = max(GetSpriteSize(SPR_PROFIT_LOT).width, GetDigitWidth() * this->unitnumber_digits) + WD_FRAMERECT_RIGHT; int text_left = left + (rtl ? 0 : text_offset); int text_right = right - (rtl ? text_offset : 0); bool show_orderlist = this->vli.vtype >= VEH_SHIP; - int orderlist_left = left + (rtl ? 0 : max(100 + text_offset, width / 2)); - int orderlist_right = right - (rtl ? max(100 + text_offset, width / 2) : 0); + int orderlist_left = left + (rtl ? 0 : max(ScaleGUITrad(100) + text_offset, width / 2)); + int orderlist_right = right - (rtl ? max(ScaleGUITrad(100) + text_offset, width / 2) : 0); int image_left = (rtl && show_orderlist) ? orderlist_right : text_left; int image_right = (!rtl && show_orderlist) ? orderlist_left : text_right; @@ -1486,7 +1499,7 @@ public: case WID_VL_SORT_ORDER: { Dimension d = GetStringBoundingBox(this->GetWidget(widget)->widget_data); - d.width += padding.width + WD_SORTBUTTON_ARROW_WIDTH * 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; *size = maxdim(*size, d); break; @@ -1896,7 +1909,7 @@ struct VehicleDetailsWindow : Window { uint desired_height; if (v->HasArticulatedPart()) { /* An articulated RV has its text drawn under the sprite instead of after it, hence 15 pixels extra. */ - desired_height = WD_FRAMERECT_TOP + 15 + 3 * FONT_HEIGHT_NORMAL + 2 + WD_FRAMERECT_BOTTOM; + desired_height = WD_FRAMERECT_TOP + ScaleGUITrad(15) + 3 * FONT_HEIGHT_NORMAL + 2 + WD_FRAMERECT_BOTTOM; /* Add space for the cargo amount for each part. */ for (const Vehicle *u = v; u != NULL; u = u->Next()) { if (u->cargo_cap != 0) desired_height += FONT_HEIGHT_NORMAL + 1; @@ -1953,7 +1966,7 @@ struct VehicleDetailsWindow : Window { } case WID_VD_MATRIX: - resize->height = WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM; + resize->height = max(ScaleGUITrad(14), WD_MATRIX_TOP + FONT_HEIGHT_NORMAL + WD_MATRIX_BOTTOM); size->height = 4 * resize->height; break; @@ -2080,7 +2093,9 @@ struct VehicleDetailsWindow : Window { case WID_VD_MIDDLE_DETAILS: { /* For other vehicles, at the place of the matrix. */ bool rtl = _current_text_dir == TD_RTL; - uint sprite_width = max(UnScaleByZoom(GetSprite(v->GetImage(rtl ? DIR_E : DIR_W, EIT_IN_DETAILS), ST_NORMAL)->width, ZOOM_LVL_GUI), 70U) + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT; + uint sprite_width = UnScaleGUI( + max(GetSprite(v->GetImage(rtl ? DIR_E : DIR_W, EIT_IN_DETAILS), ST_NORMAL)->width, 70U)) + + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT; uint text_left = r.left + (rtl ? 0 : sprite_width); uint text_right = r.right - (rtl ? sprite_width : 0); @@ -2832,7 +2847,7 @@ int GetVehicleWidth(Vehicle *v, EngineImageType image_type) bool rtl = _current_text_dir == TD_RTL; SpriteID sprite = v->GetImage(rtl ? DIR_E : DIR_W, image_type); const Sprite *real_sprite = GetSprite(sprite, ST_NORMAL); - vehicle_width = UnScaleByZoom(real_sprite->width, ZOOM_LVL_GUI); + vehicle_width = UnScaleGUI(real_sprite->width); break; } diff --git a/src/vehiclelist.h b/src/vehiclelist.h index 03bfb07748..c96fb692ae 100644 --- a/src/vehiclelist.h +++ b/src/vehiclelist.h @@ -55,5 +55,6 @@ typedef SmallVector VehicleList; bool GenerateVehicleSortList(VehicleList *list, const VehicleListIdentifier &identifier); void BuildDepotVehicleList(VehicleType type, TileIndex tile, VehicleList *engine_list, VehicleList *wagon_list, bool individual_wagons = false); +uint GetUnitNumberDigits(VehicleList &vehicles); #endif /* VEHICLELIST_H */ diff --git a/src/video/allegro_v.cpp b/src/video/allegro_v.cpp index c75bcfb2e9..01628f99cd 100644 --- a/src/video/allegro_v.cpp +++ b/src/video/allegro_v.cpp @@ -388,22 +388,10 @@ static void PollEvent() } /* Mouse movement */ - int dx = mouse_x - _cursor.pos.x; - int dy = mouse_y - _cursor.pos.y; - if (dx != 0 || dy != 0) { - if (_cursor.fix_at) { - _cursor.delta.x = dx; - _cursor.delta.y = dy; - position_mouse(_cursor.pos.x, _cursor.pos.y); - } else { - _cursor.delta.x = dx; - _cursor.delta.y = dy; - _cursor.pos.x = mouse_x; - _cursor.pos.y = mouse_y; - _cursor.dirty = true; - } - mouse_action = true; + if (_cursor.UpdateCursorPosition(mouse_x, mouse_y, false)) { + position_mouse(_cursor.pos.x, _cursor.pos.y); } + if (_cursor.delta.x != 0 || _cursor.delta.y) mouse_action = true; static int prev_mouse_z = 0; if (prev_mouse_z != mouse_z) { diff --git a/src/video/cocoa/cocoa_v.mm b/src/video/cocoa/cocoa_v.mm index 5665abb5bc..4df7cb0035 100644 --- a/src/video/cocoa/cocoa_v.mm +++ b/src/video/cocoa/cocoa_v.mm @@ -1088,6 +1088,140 @@ static const char *Utf8AdvanceByUtf16Units(const char *str, NSUInteger count) return 0; } +/** Delete single character left of the cursor. */ +- (void)deleteBackward:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_BACKSPACE, 0); +} + +/** Delete word left of the cursor. */ +- (void)deleteWordBackward:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_BACKSPACE | WKC_CTRL, 0); +} + +/** Delete single character right of the cursor. */ +- (void)deleteForward:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_DELETE, 0); +} + +/** Delete word right of the cursor. */ +- (void)deleteWordForward:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_DELETE | WKC_CTRL, 0); +} + +/** Move cursor one character left. */ +- (void)moveLeft:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_LEFT, 0); +} + +/** Move cursor one word left. */ +- (void)moveWordLeft:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_LEFT | WKC_CTRL, 0); +} + +/** Move cursor one character right. */ +- (void)moveRight:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_RIGHT, 0); +} + +/** Move cursor one word right. */ +- (void)moveWordRight:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_RIGHT | WKC_CTRL, 0); +} + +/** Move cursor one line up. */ +- (void)moveUp:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_UP, 0); +} + +/** Move cursor one line down. */ +- (void)moveDown:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_DOWN, 0); +} + +/** MScroll one line up. */ +- (void)moveUpAndModifySelection:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_UP | WKC_SHIFT, 0); +} + +/** Scroll one line down. */ +- (void)moveDownAndModifySelection:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_DOWN | WKC_SHIFT, 0); +} + +/** Move cursor to the start of the line. */ +- (void)moveToBeginningOfLine:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_HOME, 0); +} + +/** Move cursor to the end of the line. */ +- (void)moveToEndOfLine:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_END, 0); +} + +/** Scroll one page up. */ +- (void)scrollPageUp:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_PAGEUP, 0); +} + +/** Scroll one page down. */ +- (void)scrollPageDown:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_PAGEDOWN, 0); +} + +/** Move cursor (and selection) one page up. */ +- (void)pageUpAndModifySelection:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_PAGEUP | WKC_SHIFT, 0); +} + +/** Move cursor (and selection) one page down. */ +- (void)pageDownAndModifySelection:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_PAGEDOWN | WKC_SHIFT, 0); +} + +/** Scroll to the beginning of the document. */ +- (void)scrollToBeginningOfDocument:(id)sender +{ + /* For compatibility with OTTD on Win/Linux. */ + [ self moveToBeginningOfLine:sender ]; +} + +/** Scroll to the end of the document. */ +- (void)scrollToEndOfDocument:(id)sender +{ + /* For compatibility with OTTD on Win/Linux. */ + [ self moveToEndOfLine:sender ]; +} + +/** Return was pressed. */ +- (void)insertNewline:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_RETURN, '\r'); +} + +/** Escape was pressed. */ +- (void)cancelOperation:(id)sender +{ + if (EditBoxInGlobalFocus()) HandleKeypress(WKC_ESC, 0); +} + /** Invoke the selector if we implement it. */ - (void)doCommandBySelector:(SEL)aSelector { diff --git a/src/video/cocoa/event.mm b/src/video/cocoa/event.mm index 78785f8d0c..c8d10717e3 100644 --- a/src/video/cocoa/event.mm +++ b/src/video/cocoa/event.mm @@ -290,6 +290,17 @@ static bool QZ_KeyEvent(unsigned short keycode, unsigned short unicode, BOOL dow VideoDriver::GetInstance()->ToggleFullscreen(!_fullscreen); } break; + + case QZ_v: + if (down && EditBoxInGlobalFocus() && (_current_mods & (NSCommandKeyMask | NSControlKeyMask))) { + HandleKeypress(WKC_CTRL | 'V', unicode); + } + break; + case QZ_u: + if (down && EditBoxInGlobalFocus() && (_current_mods & (NSCommandKeyMask | NSControlKeyMask))) { + HandleKeypress(WKC_CTRL | 'U', unicode); + } + break; } if (down) { @@ -297,7 +308,8 @@ static bool QZ_KeyEvent(unsigned short keycode, unsigned short unicode, BOOL dow static bool console = false; - if (pressed_key == WKC_BACKQUOTE && unicode == 0) { + /* The second backquote may have a character, which we don't want to interpret. */ + if (pressed_key == WKC_BACKQUOTE && (console || unicode == 0)) { if (!console) { /* Backquote is a dead key, require a double press for hotkey behaviour (i.e. console). */ console = true; @@ -310,7 +322,7 @@ static bool QZ_KeyEvent(unsigned short keycode, unsigned short unicode, BOOL dow console = false; /* Don't handle normal characters if an edit box has the focus. */ - if (!EditBoxInGlobalFocus() || ((pressed_key & ~WKC_SPECIAL_KEYS) <= WKC_TAB) || IsInsideMM(pressed_key & ~WKC_SPECIAL_KEYS, WKC_F1, WKC_PAUSE + 1)) { + if (!EditBoxInGlobalFocus() || IsInsideMM(pressed_key & ~WKC_SPECIAL_KEYS, WKC_F1, WKC_PAUSE + 1)) { HandleKeypress(pressed_key, unicode); } DEBUG(driver, 2, "cocoa_v: QZ_KeyEvent: %x (%x), down, mapping: %x", keycode, unicode, pressed_key); @@ -350,22 +362,8 @@ static void QZ_DoUnsidedModifiers(unsigned int newMods) static void QZ_MouseMovedEvent(int x, int y) { - if (_cursor.fix_at) { - int dx = x - _cursor.pos.x; - int dy = y - _cursor.pos.y; - - if (dx != 0 || dy != 0) { - _cursor.delta.x += dx; - _cursor.delta.y += dy; - - QZ_WarpCursor(_cursor.pos.x, _cursor.pos.y); - } - } else { - _cursor.delta.x = x - _cursor.pos.x; - _cursor.delta.y = y - _cursor.pos.y; - _cursor.pos.x = x; - _cursor.pos.y = y; - _cursor.dirty = true; + if (_cursor.UpdateCursorPosition(x, y, false)) { + QZ_WarpCursor(_cursor.pos.x, _cursor.pos.y); } HandleMouseEvents(); } @@ -527,7 +525,7 @@ static bool QZ_PollEvent() break; #endif - case NSKeyDown: + case NSKeyDown: { /* Quit, hide and minimize */ switch ([ event keyCode ]) { case QZ_q: @@ -539,22 +537,20 @@ static bool QZ_PollEvent() break; } + chars = [ event characters ]; + unsigned short unicode = [ chars length ] > 0 ? [ chars characterAtIndex:0 ] : 0; if (EditBoxInGlobalFocus()) { - if (QZ_KeyEvent([ event keyCode ], 0, YES)) { + if (QZ_KeyEvent([ event keyCode ], unicode, YES)) { [ _cocoa_subdriver->cocoaview interpretKeyEvents:[ NSArray arrayWithObject:event ] ]; } } else { - chars = [ event characters ]; - if ([ chars length ] == 0) { - QZ_KeyEvent([ event keyCode ], 0, YES); - } else { - QZ_KeyEvent([ event keyCode ], [ chars characterAtIndex:0 ], YES); - for (uint i = 1; i < [ chars length ]; i++) { - QZ_KeyEvent(0, [ chars characterAtIndex:i ], YES); - } + QZ_KeyEvent([ event keyCode ], unicode, YES); + for (uint i = 1; i < [ chars length ]; i++) { + QZ_KeyEvent(0, [ chars characterAtIndex:i ], YES); } } break; + } case NSKeyUp: /* Quit, hide and minimize */ diff --git a/src/video/cocoa/fullscreen.mm b/src/video/cocoa/fullscreen.mm index 4d2b1c5884..860866b336 100644 --- a/src/video/cocoa/fullscreen.mm +++ b/src/video/cocoa/fullscreen.mm @@ -70,7 +70,7 @@ struct OTTD_QuartzGammaTable { - (void) setFrame:(NSRect)frame { /* The 64 bits libraries don't seem to know about _frame, so this hack won't work. */ -#if !__LP64__ +#ifndef __LP64__ _frame = frame; #endif } diff --git a/src/video/sdl_v.cpp b/src/video/sdl_v.cpp index d59ab20d4c..ea68c21656 100644 --- a/src/video/sdl_v.cpp +++ b/src/video/sdl_v.cpp @@ -545,20 +545,8 @@ int VideoDriver_SDL::PollEvent() switch (ev.type) { case SDL_MOUSEMOTION: - if (_cursor.fix_at) { - int dx = ev.motion.x - _cursor.pos.x; - int dy = ev.motion.y - _cursor.pos.y; - if (dx != 0 || dy != 0) { - _cursor.delta.x = dx; - _cursor.delta.y = dy; - SDL_CALL SDL_WarpMouse(_cursor.pos.x, _cursor.pos.y); - } - } else { - _cursor.delta.x = ev.motion.x - _cursor.pos.x; - _cursor.delta.y = ev.motion.y - _cursor.pos.y; - _cursor.pos.x = ev.motion.x; - _cursor.pos.y = ev.motion.y; - _cursor.dirty = true; + if (_cursor.UpdateCursorPosition(ev.motion.x, ev.motion.y, true)) { + SDL_CALL SDL_WarpMouse(_cursor.pos.x, _cursor.pos.y); } HandleMouseEvents(); break; diff --git a/src/video/win32_v.cpp b/src/video/win32_v.cpp index a7487bfb54..4dcc9eb703 100644 --- a/src/video/win32_v.cpp +++ b/src/video/win32_v.cpp @@ -747,25 +747,11 @@ static LRESULT CALLBACK WndProcGdi(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lP SetTimer(hwnd, TID_POLLMOUSE, MOUSE_POLL_DELAY, (TIMERPROC)TrackMouseTimerProc); } - if (_cursor.fix_at) { - int dx = x - _cursor.pos.x; - int dy = y - _cursor.pos.y; - if (dx != 0 || dy != 0) { - _cursor.delta.x = dx; - _cursor.delta.y = dy; - - pt.x = _cursor.pos.x; - pt.y = _cursor.pos.y; - - ClientToScreen(hwnd, &pt); - SetCursorPos(pt.x, pt.y); - } - } else { - _cursor.delta.x = x - _cursor.pos.x; - _cursor.delta.y = y - _cursor.pos.y; - _cursor.pos.x = x; - _cursor.pos.y = y; - _cursor.dirty = true; + if (_cursor.UpdateCursorPosition(x, y, true)) { + pt.x = _cursor.pos.x; + pt.y = _cursor.pos.y; + ClientToScreen(hwnd, &pt); + SetCursorPos(pt.x, pt.y); } MyShowCursor(false); HandleMouseEvents(); @@ -1045,7 +1031,7 @@ static bool AllocateDibSection(int w, int h, bool force) { BITMAPINFO *bi; HDC dc; - int bpp = BlitterFactory::GetCurrentBlitter()->GetScreenDepth(); + uint bpp = BlitterFactory::GetCurrentBlitter()->GetScreenDepth(); w = max(w, 64); h = max(h, 64); @@ -1105,7 +1091,7 @@ static void FindResolutions() DEVMODEA dm; /* Check modes for the relevant fullscreen bpp */ - int bpp = _support8bpp != S8BPP_HARDWARE ? 32 : BlitterFactory::GetCurrentBlitter()->GetScreenDepth(); + uint bpp = _support8bpp != S8BPP_HARDWARE ? 32 : BlitterFactory::GetCurrentBlitter()->GetScreenDepth(); /* XXX - EnumDisplaySettingsW crashes with unicows.dll on Windows95 * Doesn't really matter since we don't pass a string anyways, but still diff --git a/src/viewport.cpp b/src/viewport.cpp index d1eb8f449c..a1bb2c81d1 100644 --- a/src/viewport.cpp +++ b/src/viewport.cpp @@ -26,6 +26,42 @@ * \endverbatim */ +/** + * @defgroup vp_column_row Rows and columns in the viewport + * + * Columns are vertical sections of the viewport that are half a tile wide. + * The origin, i.e. column 0, is through the northern and southern most tile. + * This means that the column of e.g. Tile(0, 0) and Tile(100, 100) are in + * column number 0. The negative columns are towards the left of the screen, + * or towards the west, whereas the positive ones are towards respectively + * the right and east. + * With half a tile wide is meant that the next column of tiles directly west + * or east of the centre line are respectively column -1 and 1. Their tile + * centers are only half a tile from the center of their adjoining tile when + * looking only at the X-coordinate. + * + * \verbatim + * ╳ * + * ╱ ╲ * + * ╳ 0 ╳ * + * ╱ ╲ ╱ ╲ * + * ╳-1 ╳ 1 ╳ * + * ╱ ╲ ╱ ╲ ╱ ╲ * + * ╳-2 ╳ 0 ╳ 2 ╳ * + * ╲ ╱ ╲ ╱ ╲ ╱ * + * ╳-1 ╳ 1 ╳ * + * ╲ ╱ ╲ ╱ * + * ╳ 0 ╳ * + * ╲ ╱ * + * ╳ * + * \endverbatim + * + * + * Rows are horizontal sections of the viewport, also half a tile wide. + * This time the nothern most tile on the map defines 0 and + * everything south of that has a positive number. + */ + #include "stdafx.h" #include "landscape.h" #include "viewport_func.h" @@ -47,14 +83,23 @@ #include "window_gui.h" #include "linkgraph/linkgraph_gui.h" #include "viewport_sprite_sorter.h" +#include "bridge_map.h" + +#include #include "table/strings.h" -#include "table/palettes.h" +#include "table/string_colours.h" #include "safeguards.h" Point _tile_fract_coords; + +static const int MAX_TILE_EXTENT_LEFT = ZOOM_LVL_BASE * TILE_PIXELS; ///< Maximum left extent of tile relative to north corner. +static const int MAX_TILE_EXTENT_RIGHT = ZOOM_LVL_BASE * TILE_PIXELS; ///< Maximum right extent of tile relative to north corner. +static const int MAX_TILE_EXTENT_TOP = ZOOM_LVL_BASE * MAX_BUILDING_PIXELS; ///< Maximum top extent of tile relative to north corner (not considering bridges). +static const int MAX_TILE_EXTENT_BOTTOM = ZOOM_LVL_BASE * (TILE_PIXELS + 2 * TILE_HEIGHT); ///< Maximum bottom extent of tile relative to north corner (worst case: #SLOPE_STEEP_N). + struct StringSpriteToDraw { StringID string; Colours colour; @@ -205,8 +250,8 @@ void InitializeWindowViewport(Window *w, int x, int y, vp->overlay = NULL; w->viewport = vp; - vp->virtual_left = 0;//pt.x; - vp->virtual_top = 0;//pt.y; + vp->virtual_left = 0; // pt.x; + vp->virtual_top = 0; // pt.y; } static Point _vp_move_offs; @@ -354,9 +399,10 @@ ViewPort *IsPtInWindowViewport(const Window *w, int x, int y) * @param vp Viewport that contains the (\a x, \a y) screen coordinate * @param x Screen x coordinate * @param y Screen y coordinate + * @param clamp_to_map Clamp the coordinate outside of the map to the closest tile within the map. * @return Tile coordinate */ -static Point TranslateXYToTileCoord(const ViewPort *vp, int x, int y) +Point TranslateXYToTileCoord(const ViewPort *vp, int x, int y, bool clamp_to_map) { Point pt; int a, b; @@ -374,11 +420,15 @@ static Point TranslateXYToTileCoord(const ViewPort *vp, int x, int y) a = y - x; b = y + x; - /* we need to move variables in to the valid range, as the - * GetTileZoomCenterWindow() function can call here with invalid x and/or y, - * when the user tries to zoom out along the sides of the map */ - a = Clamp(a, -4 * (int)TILE_SIZE, (int)(MapMaxX() * TILE_SIZE) - 1); - b = Clamp(b, -4 * (int)TILE_SIZE, (int)(MapMaxY() * TILE_SIZE) - 1); + if (clamp_to_map) { + /* Bring the coordinates near to a valid range. This is mostly due to the + * tiles on the north side of the map possibly being drawn too high due to + * the extra height levels. So at the top we allow a number of extra tiles. + * This number is based on the tile height and pixels. */ + int extra_tiles = CeilDiv(_settings_game.construction.max_heightlevel * TILE_HEIGHT, TILE_PIXELS); + a = Clamp(a, -extra_tiles * TILE_SIZE, MapMaxX() * TILE_SIZE - 1); + b = Clamp(b, -extra_tiles * TILE_SIZE, MapMaxY() * TILE_SIZE - 1); + } /* (a, b) is the X/Y-world coordinate that belongs to (x,y) if the landscape would be completely flat on height 0. * Now find the Z-world coordinate by fix point iteration. @@ -395,8 +445,13 @@ static Point TranslateXYToTileCoord(const ViewPort *vp, int x, int y) for (int malus = 3; malus > 0; malus--) z = GetSlopePixelZ(Clamp(a + max(z, malus) - malus, min_coord, MapMaxX() * TILE_SIZE - 1), Clamp(b + max(z, malus) - malus, min_coord, MapMaxY() * TILE_SIZE - 1)) / 2; for (int i = 0; i < 5; i++) z = GetSlopePixelZ(Clamp(a + z, min_coord, MapMaxX() * TILE_SIZE - 1), Clamp(b + z, min_coord, MapMaxY() * TILE_SIZE - 1)) / 2; - pt.x = Clamp(a + z, min_coord, MapMaxX() * TILE_SIZE - 1); - pt.y = Clamp(b + z, min_coord, MapMaxY() * TILE_SIZE - 1); + if (clamp_to_map) { + pt.x = Clamp(a + z, min_coord, MapMaxX() * TILE_SIZE - 1); + pt.y = Clamp(b + z, min_coord, MapMaxY() * TILE_SIZE - 1); + } else { + pt.x = a + z; + pt.y = b + z; + } return pt; } @@ -1022,91 +1077,133 @@ draw_inner: } } +/** + * Returns the y coordinate in the viewport coordinate system where the given + * tile is painted. + * @param tile Any tile. + * @return The viewport y coordinate where the tile is painted. + */ +static int GetViewportY(Point tile) +{ + /* Each increment in X or Y direction moves down by half a tile, i.e. TILE_PIXELS / 2. */ + return (tile.y * (int)(TILE_PIXELS / 2) + tile.x * (int)(TILE_PIXELS / 2) - TilePixelHeightOutsideMap(tile.x, tile.y)) << ZOOM_LVL_SHIFT; +} + +/** + * Add the landscape to the viewport, i.e. all ground tiles and buildings. + */ static void ViewportAddLandscape() { - int x, y, width, height; - TileInfo ti; - bool direction; + assert(_vd.dpi.top <= _vd.dpi.top + _vd.dpi.height); + assert(_vd.dpi.left <= _vd.dpi.left + _vd.dpi.width); - _cur_ti = &ti; + Point upper_left = InverseRemapCoords(_vd.dpi.left, _vd.dpi.top); + Point upper_right = InverseRemapCoords(_vd.dpi.left + _vd.dpi.width, _vd.dpi.top); - /* Transform into tile coordinates and round to closest full tile */ - x = ((_vd.dpi.top >> (1 + ZOOM_LVL_SHIFT)) - (_vd.dpi.left >> (2 + ZOOM_LVL_SHIFT))) & ~TILE_UNIT_MASK; - y = ((_vd.dpi.top >> (1 + ZOOM_LVL_SHIFT)) + (_vd.dpi.left >> (2 + ZOOM_LVL_SHIFT)) - TILE_SIZE) & ~TILE_UNIT_MASK; + /* Transformations between tile coordinates and viewport rows/columns: See vp_column_row + * column = y - x + * row = x + y + * x = (row - column) / 2 + * y = (row + column) / 2 + * Note: (row, columns) pairs are only valid, if they are both even or both odd. + */ - /* determine size of area */ - { - Point pt = RemapCoords(x, y, 241); - width = (_vd.dpi.left + _vd.dpi.width - pt.x + 96 * ZOOM_LVL_BASE - 1) >> (6 + ZOOM_LVL_SHIFT); - height = (_vd.dpi.top + _vd.dpi.height - pt.y) >> (5 + ZOOM_LVL_SHIFT) << 1; - } + /* Columns overlap with neighbouring columns by a half tile. + * - Left column is column of upper_left (rounded down) and one column to the left. + * - Right column is column of upper_right (rounded up) and one column to the right. + * Note: Integer-division does not round down for negative numbers, so ensure rounding with another increment/decrement. + */ + int left_column = (upper_left.y - upper_left.x) / (int)TILE_SIZE - 2; + int right_column = (upper_right.y - upper_right.x) / (int)TILE_SIZE + 2; - assert(width > 0); - assert(height > 0); + int potential_bridge_height = ZOOM_LVL_BASE * TILE_HEIGHT * _settings_game.construction.max_bridge_height; - direction = false; + /* Rows overlap with neighbouring rows by a half tile. + * The first row that could possibly be visible is the row above upper_left (if it is at height 0). + * Due to integer-division not rounding down for negative numbers, we need another decrement. + */ + int row = (upper_left.x + upper_left.y) / (int)TILE_SIZE - 2; + bool last_row = false; + for (; !last_row; row++) { + last_row = true; + for (int column = left_column; column <= right_column; column++) { + /* Valid row/column? */ + if ((row + column) % 2 != 0) continue; - do { - int width_cur = width; - uint x_cur = x; - uint y_cur = y; + Point tilecoord; + tilecoord.x = (row - column) / 2; + tilecoord.y = (row + column) / 2; + assert(column == tilecoord.y - tilecoord.x); + assert(row == tilecoord.y + tilecoord.x); - do { - TileType tt = MP_VOID; + TileType tile_type; + TileInfo tile_info; + _cur_ti = &tile_info; + tile_info.x = tilecoord.x * TILE_SIZE; // FIXME tile_info should use signed integers + tile_info.y = tilecoord.y * TILE_SIZE; - ti.x = x_cur; - ti.y = y_cur; + if (IsInsideBS(tilecoord.x, 0, MapSizeX()) && IsInsideBS(tilecoord.y, 0, MapSizeY())) { + /* This includes the south border at MapMaxX / MapMaxY. When terraforming we still draw tile selections there. */ + tile_info.tile = TileXY(tilecoord.x, tilecoord.y); + tile_type = GetTileType(tile_info.tile); + } else { + tile_info.tile = INVALID_TILE; + tile_type = MP_VOID; + } - ti.z = 0; + if (tile_type != MP_VOID) { + /* We are inside the map => paint landscape. */ + tile_info.tileh = GetTilePixelSlope(tile_info.tile, &tile_info.z); + } else { + /* We are outside the map => paint black. */ + tile_info.tileh = GetTilePixelSlopeOutsideMap(tilecoord.x, tilecoord.y, &tile_info.z); + } - ti.tileh = SLOPE_FLAT; - ti.tile = INVALID_TILE; + int viewport_y = GetViewportY(tilecoord); - if (x_cur < MapMaxX() * TILE_SIZE && - y_cur < MapMaxY() * TILE_SIZE) { - TileIndex tile = TileVirtXY(x_cur, y_cur); + if (viewport_y + MAX_TILE_EXTENT_BOTTOM < _vd.dpi.top) { + /* The tile in this column is not visible yet. + * Tiles in other columns may be visible, but we need more rows in any case. */ + last_row = false; + continue; + } - if (!_settings_game.construction.freeform_edges || (TileX(tile) != 0 && TileY(tile) != 0)) { - if (x_cur == ((int)MapMaxX() - 1) * TILE_SIZE || y_cur == ((int)MapMaxY() - 1) * TILE_SIZE) { - uint maxh = max(TileHeight(tile), 1); - for (uint h = 0; h < maxh; h++) { - AddTileSpriteToDraw(SPR_SHADOW_CELL, PAL_NONE, ti.x, ti.y, h * TILE_HEIGHT); - } - } + int min_visible_height = viewport_y - (_vd.dpi.top + _vd.dpi.height); + bool tile_visible = min_visible_height <= 0; - ti.tile = tile; - ti.tileh = GetTilePixelSlope(tile, &ti.z); - tt = GetTileType(tile); + if (tile_type != MP_VOID) { + /* Is tile with buildings visible? */ + if (min_visible_height < MAX_TILE_EXTENT_TOP) tile_visible = true; + + if (IsBridgeAbove(tile_info.tile)) { + /* Is the bridge visible? */ + TileIndex bridge_tile = GetNorthernBridgeEnd(tile_info.tile); + int bridge_height = ZOOM_LVL_BASE * (GetBridgePixelHeight(bridge_tile) - TilePixelHeight(tile_info.tile)); + if (min_visible_height < bridge_height + MAX_TILE_EXTENT_TOP) tile_visible = true; } + + /* Would a higher bridge on a more southern tile be visible? + * If yes, we need to loop over more rows to possibly find one. */ + if (min_visible_height < potential_bridge_height + MAX_TILE_EXTENT_TOP) last_row = false; + } else { + /* Outside of map. If we are on the north border of the map, there may still be a bridge visible, + * so we need to loop over more rows to possibly find one. */ + if ((tilecoord.x <= 0 || tilecoord.y <= 0) && min_visible_height < potential_bridge_height + MAX_TILE_EXTENT_TOP) last_row = false; } - _vd.foundation_part = FOUNDATION_PART_NONE; - _vd.foundation[0] = -1; - _vd.foundation[1] = -1; - _vd.last_foundation_child[0] = NULL; - _vd.last_foundation_child[1] = NULL; + if (tile_visible) { + last_row = false; + _vd.foundation_part = FOUNDATION_PART_NONE; + _vd.foundation[0] = -1; + _vd.foundation[1] = -1; + _vd.last_foundation_child[0] = NULL; + _vd.last_foundation_child[1] = NULL; - _tile_type_procs[tt]->draw_tile_proc(&ti); - - if ((x_cur == (int)MapMaxX() * TILE_SIZE && IsInsideMM(y_cur, 0, MapMaxY() * TILE_SIZE + 1)) || - (y_cur == (int)MapMaxY() * TILE_SIZE && IsInsideMM(x_cur, 0, MapMaxX() * TILE_SIZE + 1))) { - TileIndex tile = TileVirtXY(x_cur, y_cur); - ti.tile = tile; - ti.tileh = GetTilePixelSlope(tile, &ti.z); - tt = GetTileType(tile); + _tile_type_procs[tile_type]->draw_tile_proc(&tile_info); + if (tile_info.tile != INVALID_TILE) DrawTileSelection(&tile_info); } - if (ti.tile != INVALID_TILE) DrawTileSelection(&ti); - - y_cur += 0x10; - x_cur -= 0x10; - } while (--width_cur); - - if ((direction ^= 1) != 0) { - y += 0x10; - } else { - x += 0x10; } - } while (--height); + } } /** @@ -1212,8 +1309,9 @@ static void ViewportAddSigns(DrawPixelInfo *dpi) * @param center the (preferred) center of the viewport sign * @param top the new top of the sign * @param str the string to show in the sign + * @param str_small the string to show when zoomed out. STR_NULL means same as \a str */ -void ViewportSign::UpdatePosition(int center, int top, StringID str) +void ViewportSign::UpdatePosition(int center, int top, StringID str, StringID str_small) { if (this->width_normal != 0) this->MarkDirty(); @@ -1226,6 +1324,9 @@ void ViewportSign::UpdatePosition(int center, int top, StringID str) this->center = center; /* zoomed out version */ + if (str_small != STR_NULL) { + GetString(buffer, str_small, lastof(buffer)); + } this->width_small = VPSM_LEFT + Align(GetStringBoundingBox(buffer, FS_SMALL).width, 2) + VPSM_RIGHT; this->MarkDirty(); @@ -1561,8 +1662,97 @@ void Window::DrawViewport() const dpi->top -= this->top; } +/** + * Continue criteria for the SearchMapEdge function. + * @param iter Value to check. + * @param iter_limit Maximum value for the iter + * @param sy Screen y coordinate calculated for the tile at hand + * @param sy_limit Limit to the screen y coordinate + * @return True when we should continue searching. + */ +typedef bool ContinueMapEdgeSearch(int iter, int iter_limit, int sy, int sy_limit); + +/** Continue criteria for searching a no-longer-visible tile in negative direction, starting at some tile. */ +static inline bool ContinueLowerMapEdgeSearch(int iter, int iter_limit, int sy, int sy_limit) { return iter > 0 && sy > sy_limit; } +/** Continue criteria for searching a no-longer-visible tile in positive direction, starting at some tile. */ +static inline bool ContinueUpperMapEdgeSearch(int iter, int iter_limit, int sy, int sy_limit) { return iter < iter_limit && sy < sy_limit; } + +/** + * Searches, starting at the given tile, by applying the given offset to iter, for a no longer visible tile. + * The whole sense of this function is keeping the to-be-written code small, thus it is a little bit abstracted + * so the same function can be used for both the X and Y locations. As such a reference to one of the elements + * in curr_tile was needed. + * @param curr_tile A tile + * @param iter Reference to either the X or Y of curr_tile. + * @param iter_limit Upper search limit for the iter value. + * @param offset Search in steps of this size + * @param sy_limit Search limit to be passed to the criteria + * @param continue_criteria Search as long as this criteria is true + * @return The final value of iter. + */ +static int SearchMapEdge(Point &curr_tile, int &iter, int iter_limit, int offset, int sy_limit, ContinueMapEdgeSearch continue_criteria) +{ + int sy; + do { + iter = Clamp(iter + offset, 0, iter_limit); + sy = GetViewportY(curr_tile); + } while (continue_criteria(iter, iter_limit, sy, sy_limit)); + + return iter; +} + +/** + * Determine the clamping of either the X or Y coordinate to the map. + * @param curr_tile A tile + * @param iter Reference to either the X or Y of curr_tile. + * @param iter_limit Upper search limit for the iter value. + * @param start Start value for the iteration. + * @param other_ref Reference to the opposite axis in curr_tile than of iter. + * @param other_value Start value for of the opposite axis + * @param vp_value Value of the viewport location in the opposite axis as for iter. + * @param other_limit Limit for the other value, so if iter is X, then other_limit is for Y. + * @param vp_top Top of the viewport. + * @param vp_bottom Bottom of the viewport. + * @return Clamped version of vp_value. + */ +static inline int ClampXYToMap(Point &curr_tile, int &iter, int iter_limit, int start, int &other_ref, int other_value, int vp_value, int other_limit, int vp_top, int vp_bottom) +{ + bool upper_edge = other_value < _settings_game.construction.max_heightlevel / 4; + + /* + * First get an estimate of the tiles relevant for us at that edge. Relevant in the sense + * "at least close to the visible area". Thus, we don't look at exactly each tile, inspecting + * e.g. every tenth should be enough. After all, the desired screen limit is set such that + * the bordermost tiles are painted in the middle of the screen when one hits the limit, + * i.e. it is no harm if there is some small error in that calculation + */ + + other_ref = upper_edge ? 0 : other_limit; + iter = start; + int min_iter = SearchMapEdge(curr_tile, iter, iter_limit, upper_edge ? -10 : +10, vp_top, upper_edge ? ContinueLowerMapEdgeSearch : ContinueUpperMapEdgeSearch); + iter = start; + int max_iter = SearchMapEdge(curr_tile, iter, iter_limit, upper_edge ? +10 : -10, vp_bottom, upper_edge ? ContinueUpperMapEdgeSearch : ContinueLowerMapEdgeSearch); + + max_iter = min(max_iter + _settings_game.construction.max_heightlevel / 4, iter_limit); + min_iter = min(min_iter, max_iter); + + /* Now, calculate the highest heightlevel of these tiles. Again just as an estimate. */ + int max_heightlevel_at_edge = 0; + for (iter = min_iter; iter <= max_iter; iter += 10) { + max_heightlevel_at_edge = max(max_heightlevel_at_edge, (int)TileHeight(TileXY(curr_tile.x, curr_tile.y))); + } + + /* Based on that heightlevel, calculate the limit. For the upper edge a tile with height zero would + * get a limit of zero, on the other side it depends on the number of tiles along the axis. */ + return upper_edge ? + max(vp_value, -max_heightlevel_at_edge * (int)(TILE_HEIGHT * 2 * ZOOM_LVL_BASE)) : + min(vp_value, (other_limit * TILE_SIZE * 4 - max_heightlevel_at_edge * TILE_HEIGHT * 2) * ZOOM_LVL_BASE); +} + static inline void ClampViewportToMap(const ViewPort *vp, int &x, int &y) { + int original_y = y; + /* Centre of the viewport is hot spot */ x += vp->virtual_width / 2; y += vp->virtual_height / 2; @@ -1572,9 +1762,14 @@ static inline void ClampViewportToMap(const ViewPort *vp, int &x, int &y) int vx = -x + y * 2; int vy = x + y * 2; - /* clamp to size of map */ - vx = Clamp(vx, 0, MapMaxX() * TILE_SIZE * 4 * ZOOM_LVL_BASE); - vy = Clamp(vy, 0, MapMaxY() * TILE_SIZE * 4 * ZOOM_LVL_BASE); + /* Find out which tile corresponds to (vx,vy) if one assumes height zero. The cast is necessary to prevent C++ from + * converting the result to an uint, which gives an overflow instead of a negative result... */ + int tx = vx / (int)(TILE_SIZE * 4 * ZOOM_LVL_BASE); + int ty = vy / (int)(TILE_SIZE * 4 * ZOOM_LVL_BASE); + + Point curr_tile; + vx = ClampXYToMap(curr_tile, curr_tile.y, MapMaxY(), ty, curr_tile.x, tx, vx, MapMaxX(), original_y, original_y + vp->virtual_height); + vy = ClampXYToMap(curr_tile, curr_tile.x, MapMaxX(), tx, curr_tile.y, ty, vy, MapMaxY(), original_y, original_y + vp->virtual_height); /* Convert map coordinates to viewport coordinates */ x = (-vx + vy) / 2; @@ -1640,6 +1835,10 @@ void UpdateViewportPosition(Window *w) */ static void MarkViewportDirty(const ViewPort *vp, int left, int top, int right, int bottom) { + /* Rounding wrt. zoom-out level */ + right += (1 << vp->zoom) - 1; + bottom += (1 << vp->zoom) - 1; + right -= vp->virtual_left; if (right <= 0) return; @@ -1664,10 +1863,10 @@ static void MarkViewportDirty(const ViewPort *vp, int left, int top, int right, /** * Mark all viewports that display an area as dirty (in need of repaint). - * @param left Left edge of area to repaint - * @param top Top edge of area to repaint - * @param right Right edge of area to repaint - * @param bottom Bottom edge of area to repaint + * @param left Left edge of area to repaint. (viewport coordinates, that is wrt. #ZOOM_LVL_NORMAL) + * @param top Top edge of area to repaint. (viewport coordinates, that is wrt. #ZOOM_LVL_NORMAL) + * @param right Right edge of area to repaint. (viewport coordinates, that is wrt. #ZOOM_LVL_NORMAL) + * @param bottom Bottom edge of area to repaint. (viewport coordinates, that is wrt. #ZOOM_LVL_NORMAL) * @ingroup dirty */ void MarkAllViewportsDirty(int left, int top, int right, int bottom) @@ -1699,17 +1898,33 @@ void ConstrainAllViewportsZoom() /** * Mark a tile given by its index dirty for repaint. * @param tile The tile to mark dirty. + * @param bridge_level_offset Height of bridge on tile to also mark dirty. (Height level relative to north corner.) * @ingroup dirty */ -void MarkTileDirtyByTile(TileIndex tile) +void MarkTileDirtyByTile(TileIndex tile, int bridge_level_offset) { - Point pt = RemapCoords(TileX(tile) * TILE_SIZE, TileY(tile) * TILE_SIZE, GetTilePixelZ(tile)); + Point pt = RemapCoords(TileX(tile) * TILE_SIZE, TileY(tile) * TILE_SIZE, TilePixelHeight(tile)); MarkAllViewportsDirty( - pt.x - 31 * ZOOM_LVL_BASE, - pt.y - 122 * ZOOM_LVL_BASE, - pt.x - 31 * ZOOM_LVL_BASE + 67 * ZOOM_LVL_BASE, - pt.y - 122 * ZOOM_LVL_BASE + 154 * ZOOM_LVL_BASE - ); + pt.x - MAX_TILE_EXTENT_LEFT, + pt.y - MAX_TILE_EXTENT_TOP - ZOOM_LVL_BASE * TILE_HEIGHT * bridge_level_offset, + pt.x + MAX_TILE_EXTENT_RIGHT, + pt.y + MAX_TILE_EXTENT_BOTTOM); +} + +/** + * Mark a (virtual) tile outside the map dirty for repaint. + * @param x Tile X position. + * @param y Tile Y position. + * @ingroup dirty + */ +void MarkTileDirtyByTileOutsideMap(int x, int y) +{ + Point pt = RemapCoords(x * TILE_SIZE, y * TILE_SIZE, TilePixelHeightOutsideMap(x, y)); + MarkAllViewportsDirty( + pt.x - MAX_TILE_EXTENT_LEFT, + pt.y, // no buildings outside of map + pt.x + MAX_TILE_EXTENT_RIGHT, + pt.y + MAX_TILE_EXTENT_BOTTOM); } /** @@ -1785,15 +2000,15 @@ static void SetSelectionTilesDirty() /* the 'x' coordinate of 'top' and 'bot' is the same (and always in the same distance from tile middle), * tile height/slope affects only the 'y' on-screen coordinate! */ - int l = top.x - (TILE_PIXELS - 2) * ZOOM_LVL_BASE; // 'x' coordinate of left side of dirty rectangle - int t = top.y; // 'y' coordinate of top side -//- - int r = top.x + (TILE_PIXELS - 2) * ZOOM_LVL_BASE; // right side of dirty rectangle - int b = bot.y; // bottom -//- + int l = top.x - TILE_PIXELS * ZOOM_LVL_BASE; // 'x' coordinate of left side of the dirty rectangle + int t = top.y; // 'y' coordinate of top side of the dirty rectangle + int r = top.x + TILE_PIXELS * ZOOM_LVL_BASE; // 'x' coordinate of right side of the dirty rectangle + int b = bot.y; // 'y' coordinate of bottom side of the dirty rectangle - static const int OVERLAY_WIDTH = 4 * ZOOM_LVL_BASE; // part of selection sprites is drawn outside the selected area + static const int OVERLAY_WIDTH = 4 * ZOOM_LVL_BASE; // part of selection sprites is drawn outside the selected area (in particular: terraforming) /* For halftile foundations on SLOPE_STEEP_S the sprite extents some more towards the top */ - MarkAllViewportsDirty(l - OVERLAY_WIDTH, t - OVERLAY_WIDTH - TILE_HEIGHT * ZOOM_LVL_BASE, r + OVERLAY_WIDTH, b + OVERLAY_WIDTH * ZOOM_LVL_BASE); + MarkAllViewportsDirty(l - OVERLAY_WIDTH, t - OVERLAY_WIDTH - TILE_HEIGHT * ZOOM_LVL_BASE, r + OVERLAY_WIDTH, b + OVERLAY_WIDTH); /* haven't we reached the topmost tile yet? */ if (top_x != x_start) { @@ -2007,7 +2222,14 @@ void RebuildViewportOverlay(Window *w) bool ScrollWindowTo(int x, int y, int z, Window *w, bool instant) { /* The slope cannot be acquired outside of the map, so make sure we are always within the map. */ - if (z == -1) z = GetSlopePixelZ(Clamp(x, 0, MapSizeX() * TILE_SIZE - 1), Clamp(y, 0, MapSizeY() * TILE_SIZE - 1)); + if (z == -1) { + if ( x >= 0 && x <= (int)MapSizeX() * (int)TILE_SIZE - 1 + && y >= 0 && y <= (int)MapSizeY() * (int)TILE_SIZE - 1) { + z = GetSlopePixelZ(x, y); + } else { + z = TileHeightOutsideMap(x / (int)TILE_SIZE, y / (int)TILE_SIZE); + } + } Point pt = MapXYZToViewport(w->viewport, x, y, z); w->viewport->follow_vehicle = INVALID_VEHICLE; @@ -2919,6 +3141,13 @@ EventState VpHandlePlaceSizingDrag() return ES_HANDLED; } +/** + * Change the cursor and mouse click/drag handling to a mode for performing special operations like tile area selection, object placement, etc. + * @param icon New shape of the mouse cursor. + * @param pal Palette to use. + * @param mode Mode to perform. + * @param w %Window requesting the mode change. + */ void SetObjectToPlaceWnd(CursorID icon, PaletteID pal, HighLightStyle mode, Window *w) { SetObjectToPlace(icon, pal, mode, w->window_class, w->window_number); @@ -2926,6 +3155,14 @@ void SetObjectToPlaceWnd(CursorID icon, PaletteID pal, HighLightStyle mode, Wind #include "table/animcursors.h" +/** + * Change the cursor and mouse click/drag handling to a mode for performing special operations like tile area selection, object placement, etc. + * @param icon New shape of the mouse cursor. + * @param pal Palette to use. + * @param mode Mode to perform. + * @param window_class %Window class of the window requesting the mode change. + * @param window_num Number of the window in its class requesting the mode change. + */ void SetObjectToPlace(CursorID icon, PaletteID pal, HighLightStyle mode, WindowClass window_class, WindowNumber window_num) { if (_thd.window_class != WC_INVALID) { @@ -2970,6 +3207,7 @@ void SetObjectToPlace(CursorID icon, PaletteID pal, HighLightStyle mode, WindowC } +/** Reset the cursor and mouse mode handling back to default (normal cursor, only clicking in windows). */ void ResetObjectToPlace() { SetObjectToPlace(SPR_CURSOR_MOUSE, PAL_NONE, HT_NONE, WC_MAIN_WINDOW, 0); diff --git a/src/viewport_func.h b/src/viewport_func.h index 7d86dda989..cbdcc5019a 100644 --- a/src/viewport_func.h +++ b/src/viewport_func.h @@ -25,6 +25,7 @@ void SetSelectionRed(bool); void DeleteWindowViewport(Window *w); void InitializeWindowViewport(Window *w, int x, int y, int width, int height, uint32 follow_flags, ZoomLevel zoom); ViewPort *IsPtInWindowViewport(const Window *w, int x, int y); +Point TranslateXYToTileCoord(const ViewPort *vp, int x, int y, bool clamp_to_map = true); Point GetTileBelowCursor(); void UpdateViewportPosition(Window *w); @@ -77,7 +78,9 @@ void UpdateAllVirtCoords(); extern Point _tile_fract_coords; -void MarkTileDirtyByTile(TileIndex tile); +void MarkTileDirtyByTile(TileIndex tile, int bridge_level_offset = 0); + +void MarkTileDirtyByTileOutsideMap(int x, int y); Point GetViewportStationMiddle(const ViewPort *vp, const Station *st); diff --git a/src/viewport_type.h b/src/viewport_type.h index 800c8b4952..07485c3243 100644 --- a/src/viewport_type.h +++ b/src/viewport_type.h @@ -14,6 +14,7 @@ #include "zoom_type.h" #include "strings_type.h" +#include "table/strings.h" class LinkGraphOverlay; @@ -50,7 +51,7 @@ struct ViewportSign { uint16 width_normal; ///< The width when not zoomed out (normal font) uint16 width_small; ///< The width when zoomed out (small font) - void UpdatePosition(int center, int top, StringID str); + void UpdatePosition(int center, int top, StringID str, StringID str_small = STR_NULL); void MarkDirty(ZoomLevel maxzoom = ZOOM_LVL_MAX) const; }; diff --git a/src/void_cmd.cpp b/src/void_cmd.cpp index ea918b96a7..ffe54df992 100644 --- a/src/void_cmd.cpp +++ b/src/void_cmd.cpp @@ -13,6 +13,7 @@ #include "tile_cmd.h" #include "command_func.h" #include "viewport_func.h" +#include "slope_func.h" #include "table/strings.h" #include "table/sprites.h" @@ -21,7 +22,7 @@ static void DrawTile_Void(TileInfo *ti) { - DrawGroundSprite(SPR_SHADOW_CELL, PAL_NONE); + DrawGroundSprite(SPR_FLAT_BARE_LAND + SlopeToSpriteOffset(ti->tileh), PALETTE_ALL_BLACK); } diff --git a/src/void_map.h b/src/void_map.h index 53ca068b2c..5ccc4e9d7d 100644 --- a/src/void_map.h +++ b/src/void_map.h @@ -27,7 +27,7 @@ static inline void MakeVoid(TileIndex t) _m[t].m3 = 0; _m[t].m4 = 0; _m[t].m5 = 0; - _m[t].m6 = 0; + _me[t].m6 = 0; _me[t].m7 = 0; } diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp index 7b5272a411..4392eb2103 100644 --- a/src/water_cmd.cpp +++ b/src/water_cmd.cpp @@ -109,8 +109,7 @@ CommandCost CmdBuildShipDepot(TileIndex tile, DoCommandFlag flags, uint32 p1, ui return_cmd_error(STR_ERROR_MUST_BE_BUILT_ON_WATER); } - if ((MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) || - (MayHaveBridgeAbove(tile2) && IsBridgeAbove(tile2))) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile) || IsBridgeAbove(tile2)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); if (!IsTileFlat(tile) || !IsTileFlat(tile2)) { /* Prevent depots on rapids */ @@ -264,8 +263,6 @@ static CommandCost DoBuildLock(TileIndex tile, DiagDirection dir, DoCommandFlag cost.AddCost(ret); /* lower tile */ - WaterClass wc_lower = IsWaterTile(tile - delta) ? GetWaterClass(tile - delta) : WATER_CLASS_CANAL; - if (!IsWaterTile(tile - delta)) { ret = DoCommand(tile - delta, 0, 0, flags, CMD_LANDSCAPE_CLEAR); if (ret.Failed()) return ret; @@ -275,10 +272,9 @@ static CommandCost DoBuildLock(TileIndex tile, DiagDirection dir, DoCommandFlag if (!IsTileFlat(tile - delta)) { return_cmd_error(STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION); } + WaterClass wc_lower = IsWaterTile(tile - delta) ? GetWaterClass(tile - delta) : WATER_CLASS_CANAL; /* upper tile */ - WaterClass wc_upper = IsWaterTile(tile + delta) ? GetWaterClass(tile + delta) : WATER_CLASS_CANAL; - if (!IsWaterTile(tile + delta)) { ret = DoCommand(tile + delta, 0, 0, flags, CMD_LANDSCAPE_CLEAR); if (ret.Failed()) return ret; @@ -288,10 +284,9 @@ static CommandCost DoBuildLock(TileIndex tile, DiagDirection dir, DoCommandFlag if (!IsTileFlat(tile + delta)) { return_cmd_error(STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION); } + WaterClass wc_upper = IsWaterTile(tile + delta) ? GetWaterClass(tile + delta) : WATER_CLASS_CANAL; - if ((MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) || - (MayHaveBridgeAbove(tile - delta) && IsBridgeAbove(tile - delta)) || - (MayHaveBridgeAbove(tile + delta) && IsBridgeAbove(tile + delta))) { + if (IsBridgeAbove(tile) || IsBridgeAbove(tile - delta) || IsBridgeAbove(tile + delta)) { return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); } diff --git a/src/water_map.h b/src/water_map.h index cfec9cc38b..ab249a8279 100644 --- a/src/water_map.h +++ b/src/water_map.h @@ -360,7 +360,7 @@ static inline void MakeShore(TileIndex t) _m[t].m3 = 0; _m[t].m4 = 0; _m[t].m5 = WBL_TYPE_NORMAL << WBL_TYPE_BEGIN | 1 << WBL_COAST_FLAG; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } @@ -380,7 +380,7 @@ static inline void MakeWater(TileIndex t, Owner o, WaterClass wc, uint8 random_b _m[t].m3 = 0; _m[t].m4 = random_bits; _m[t].m5 = WBL_TYPE_NORMAL << WBL_TYPE_BEGIN; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } @@ -433,7 +433,7 @@ static inline void MakeShipDepot(TileIndex t, Owner o, DepotID did, DepotPart pa _m[t].m3 = 0; _m[t].m4 = 0; _m[t].m5 = WBL_TYPE_DEPOT << WBL_TYPE_BEGIN | part << WBL_DEPOT_PART | a << WBL_DEPOT_AXIS; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } @@ -455,7 +455,7 @@ static inline void MakeLockTile(TileIndex t, Owner o, LockPart part, DiagDirecti _m[t].m3 = 0; _m[t].m4 = 0; _m[t].m5 = WBL_TYPE_LOCK << WBL_TYPE_BEGIN | part << WBL_LOCK_PART_BEGIN | dir << WBL_LOCK_ORIENT_BEGIN; - SB(_m[t].m6, 2, 4, 0); + SB(_me[t].m6, 2, 4, 0); _me[t].m7 = 0; } diff --git a/src/waypoint_cmd.cpp b/src/waypoint_cmd.cpp index 3c2701270d..efa48003f2 100644 --- a/src/waypoint_cmd.cpp +++ b/src/waypoint_cmd.cpp @@ -133,7 +133,7 @@ static CommandCost IsValidTileForWaypoint(TileIndex tile, Axis axis, StationID * return_cmd_error(STR_ERROR_FLAT_LAND_REQUIRED); } - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); return CommandCost(); } @@ -289,7 +289,7 @@ CommandCost CmdBuildRailWaypoint(TileIndex start_tile, DoCommandFlag flags, uint CommandCost CmdBuildBuoy(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text) { if (tile == 0 || !HasTileWaterGround(tile)) return_cmd_error(STR_ERROR_SITE_UNSUITABLE); - if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + if (IsBridgeAbove(tile)) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); if (!IsTileFlat(tile)) return_cmd_error(STR_ERROR_SITE_UNSUITABLE); diff --git a/src/waypoint_gui.cpp b/src/waypoint_gui.cpp index 3400a7df47..fa4deaac68 100644 --- a/src/waypoint_gui.cpp +++ b/src/waypoint_gui.cpp @@ -67,7 +67,7 @@ public: } this->FinishInitNested(window_number); - if (this->wp->owner != OWNER_NONE) this->owner = this->wp->owner; + this->owner = this->wp->owner; this->flags |= WF_DISABLE_VP_SCROLL; NWidgetViewport *nvp = this->GetWidget(WID_W_VIEWPORT); @@ -78,13 +78,7 @@ public: ~WaypointWindow() { - Owner owner = this->owner; - - /* Buoys have no owner and can be used by everyone. Show only 'our' vehicles */ - if (!Company::IsValidID(owner)) owner = _local_company; - - /* Well, spectators otoh */ - if (Company::IsValidID(owner)) DeleteWindowById(GetWindowClassForVehicleType(this->vt), VehicleListIdentifier(VL_STATION_LIST, this->vt, owner, this->window_number).Pack(), false); + DeleteWindowById(GetWindowClassForVehicleType(this->vt), VehicleListIdentifier(VL_STATION_LIST, this->vt, this->owner, this->window_number).Pack(), false); } virtual void SetStringParameters(int widget) const diff --git a/src/widget.cpp b/src/widget.cpp index 77d163c81b..3b50f710d4 100644 --- a/src/widget.cpp +++ b/src/widget.cpp @@ -22,13 +22,10 @@ #include "table/sprites.h" #include "table/strings.h" -#include "table/palettes.h" +#include "table/string_colours.h" #include "safeguards.h" -static const char *UPARROW = "\xEE\x8A\xA0"; ///< String containing an upwards pointing arrow. -static const char *DOWNARROW = "\xEE\x8A\xAA"; ///< String containing a downwards pointing arrow. - /** * Compute the vertical position of the draggable part of scrollbar * @param sb Scrollbar list data @@ -344,10 +341,10 @@ static inline void DrawVerticalScrollbar(const Rect &r, Colours colour, bool up_ /* draw up/down buttons */ DrawFrameRect(r.left, r.top, r.right, r.top + height - 1, colour, (up_clicked) ? FR_LOWERED : FR_NONE); - DrawString(r.left + up_clicked, r.right + up_clicked, r.top + up_clicked, UPARROW, TC_BLACK, SA_HOR_CENTER); + DrawSprite(SPR_ARROW_UP, PAL_NONE, r.left + 1 + up_clicked, r.top + 1 + up_clicked); DrawFrameRect(r.left, r.bottom - (height - 1), r.right, r.bottom, colour, (down_clicked) ? FR_LOWERED : FR_NONE); - DrawString(r.left + down_clicked, r.right + down_clicked, r.bottom - (height - 1) + down_clicked, DOWNARROW, TC_BLACK, SA_HOR_CENTER); + DrawSprite(SPR_ARROW_DOWN, PAL_NONE, r.left + 1 + down_clicked, r.bottom - (height - 2) + down_clicked); int c1 = _colour_gradient[colour & 0xF][3]; int c2 = _colour_gradient[colour & 0xF][7]; @@ -525,13 +522,11 @@ static inline void DrawResizeBox(const Rect &r, Colours colour, bool at_left, bo * Draw a close box. * @param r Rectangle of the box. * @param colour Colour of the close box. - * @param str Cross to draw (#STR_BLACK_CROSS or #STR_SILVER_CROSS). */ -static inline void DrawCloseBox(const Rect &r, Colours colour, StringID str) +static inline void DrawCloseBox(const Rect &r, Colours colour) { - assert(str == STR_BLACK_CROSS || str == STR_SILVER_CROSS); // black or silver cross - DrawFrameRect(r.left, r.top, r.right, r.bottom, colour, FR_NONE); - DrawString(r.left, r.right, r.top + WD_CLOSEBOX_TOP, str, TC_FROMSTRING, SA_HOR_CENTER); + if (colour != COLOUR_WHITE) DrawFrameRect(r.left, r.top, r.right, r.bottom, colour, FR_NONE); + DrawSprite(SPR_CLOSEBOX, (colour != COLOUR_WHITE ? TC_BLACK : TC_SILVER) | (1 << PALETTE_TEXT_RECOLOUR), r.left + WD_CLOSEBOX_LEFT, r.top + WD_CLOSEBOX_TOP); } /** @@ -543,10 +538,12 @@ static inline void DrawCloseBox(const Rect &r, Colours colour, StringID str) */ void DrawCaption(const Rect &r, Colours colour, Owner owner, StringID str) { - DrawFrameRect(r.left, r.top, r.right, r.bottom, colour, FR_BORDERONLY); - DrawFrameRect(r.left + 1, r.top + 1, r.right - 1, r.bottom - 1, colour, (owner == INVALID_OWNER) ? FR_LOWERED | FR_DARKENED : FR_LOWERED | FR_DARKENED | FR_BORDERONLY); + bool company_owned = owner < MAX_COMPANIES; - if (owner != INVALID_OWNER) { + DrawFrameRect(r.left, r.top, r.right, r.bottom, colour, FR_BORDERONLY); + DrawFrameRect(r.left + 1, r.top + 1, r.right - 1, r.bottom - 1, colour, company_owned ? FR_LOWERED | FR_DARKENED | FR_BORDERONLY : FR_LOWERED | FR_DARKENED); + + if (company_owned) { GfxFillRect(r.left + 2, r.top + 2, r.right - 2, r.bottom - 2, _colour_gradient[_company_colours[owner]][4]); } @@ -571,17 +568,19 @@ static inline void DrawButtonDropdown(const Rect &r, Colours colour, bool clicke { int text_offset = max(0, ((int)(r.bottom - r.top + 1) - FONT_HEIGHT_NORMAL) / 2); // Offset for rendering the text vertically centered - int dd_width = NWidgetLeaf::dropdown_dimension.width; + int dd_width = NWidgetLeaf::dropdown_dimension.width; + int dd_height = NWidgetLeaf::dropdown_dimension.height; + int image_offset = max(0, ((int)(r.bottom - r.top + 1) - dd_height) / 2); if (_current_text_dir == TD_LTR) { DrawFrameRect(r.left, r.top, r.right - dd_width, r.bottom, colour, clicked_button ? FR_LOWERED : FR_NONE); DrawFrameRect(r.right + 1 - dd_width, r.top, r.right, r.bottom, colour, clicked_dropdown ? FR_LOWERED : FR_NONE); - DrawString(r.right - dd_width + (clicked_dropdown ? 2 : 1), r.right, r.top + (clicked_dropdown ? 2 : 1), DOWNARROW, TC_BLACK, SA_HOR_CENTER); + DrawSprite(SPR_ARROW_DOWN, PAL_NONE, r.right - (dd_width - 2) + clicked_dropdown, r.top + image_offset + clicked_dropdown); if (str != STR_NULL) DrawString(r.left + WD_DROPDOWNTEXT_LEFT + clicked_button, r.right - dd_width - WD_DROPDOWNTEXT_RIGHT + clicked_button, r.top + text_offset + clicked_button, str, TC_BLACK); } else { DrawFrameRect(r.left + dd_width, r.top, r.right, r.bottom, colour, clicked_button ? FR_LOWERED : FR_NONE); DrawFrameRect(r.left, r.top, r.left + dd_width - 1, r.bottom, colour, clicked_dropdown ? FR_LOWERED : FR_NONE); - DrawString(r.left + (clicked_dropdown ? 2 : 1), r.left + dd_width, r.top + (clicked_dropdown ? 2 : 1), DOWNARROW, TC_BLACK, SA_HOR_CENTER); + DrawSprite(SPR_ARROW_DOWN, PAL_NONE, r.left + 1 + clicked_dropdown, r.top + image_offset + clicked_dropdown); if (str != STR_NULL) DrawString(r.left + dd_width + WD_DROPDOWNTEXT_LEFT + clicked_button, r.right - WD_DROPDOWNTEXT_RIGHT + clicked_button, r.top + text_offset + clicked_button, str, TC_BLACK); } } @@ -642,11 +641,22 @@ void Window::DrawSortButtonState(int widget, SortButtonState state) const assert(this->nested_array != NULL); const NWidgetBase *nwid = this->GetWidget(widget); + /* Sort button uses the same sprites as vertical scrollbar */ + Dimension dim = NWidgetScrollbar::GetVerticalDimension(); int offset = this->IsWidgetLowered(widget) ? 1 : 0; - int base = offset + nwid->pos_x + (_current_text_dir == TD_LTR ? nwid->current_x - WD_SORTBUTTON_ARROW_WIDTH : 0); - int top = nwid->pos_y; + int x = offset + nwid->pos_x + (_current_text_dir == TD_LTR ? nwid->current_x - dim.width : 0); + int y = offset + nwid->pos_y + (nwid->current_y - dim.height) / 2; - DrawString(base, base + WD_SORTBUTTON_ARROW_WIDTH, top + 1 + offset, state == SBS_DOWN ? DOWNARROW : UPARROW, TC_BLACK, SA_HOR_CENTER); + DrawSprite(state == SBS_DOWN ? SPR_ARROW_DOWN : SPR_ARROW_UP, PAL_NONE, x, y); +} + +/** + * Get width of up/down arrow of sort button state. + * @return Width of space required by sort button arrow. + */ +int Window::SortButtonWidth() +{ + return NWidgetScrollbar::GetVerticalDimension().width + 1; } @@ -805,8 +815,8 @@ NWidgetResizeBase::NWidgetResizeBase(WidgetType tp, uint fill_x, uint fill_y) : */ void NWidgetResizeBase::SetMinimalSize(uint min_x, uint min_y) { - this->min_x = min_x; - this->min_y = min_y; + this->min_x = max(this->min_x, min_x); + this->min_y = max(this->min_y, min_y); } /** @@ -1979,24 +1989,6 @@ NWidgetScrollbar::NWidgetScrollbar(WidgetType tp, Colours colour, int index) : N { assert(tp == NWID_HSCROLLBAR || tp == NWID_VSCROLLBAR); this->SetIndex(index); - - switch (this->type) { - case NWID_HSCROLLBAR: - this->SetMinimalSize(0, NWidgetScrollbar::GetHorizontalDimension().height); - this->SetResize(1, 0); - this->SetFill(1, 0); - this->SetDataTip(0x0, STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST); - break; - - case NWID_VSCROLLBAR: - this->SetMinimalSize(NWidgetScrollbar::GetVerticalDimension().width, 0); - this->SetResize(0, 1); - this->SetFill(0, 1); - this->SetDataTip(0x0, STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST); - break; - - default: NOT_REACHED(); - } } void NWidgetScrollbar::SetupSmallestSize(Window *w, bool init_array) @@ -2005,6 +1997,27 @@ void NWidgetScrollbar::SetupSmallestSize(Window *w, bool init_array) assert(w->nested_array_size > (uint)this->index); w->nested_array[this->index] = this; } + this->min_x = 0; + this->min_y = 0; + + switch (this->type) { + case NWID_HSCROLLBAR: + this->SetMinimalSize(NWidgetScrollbar::GetHorizontalDimension().width * 3, NWidgetScrollbar::GetHorizontalDimension().height); + this->SetResize(1, 0); + this->SetFill(1, 0); + this->SetDataTip(0x0, STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST); + break; + + case NWID_VSCROLLBAR: + this->SetMinimalSize(NWidgetScrollbar::GetVerticalDimension().width, NWidgetScrollbar::GetVerticalDimension().height * 3); + this->SetResize(0, 1); + this->SetFill(0, 1); + this->SetDataTip(0x0, STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST); + break; + + default: NOT_REACHED(); + } + this->smallest_x = this->min_x; this->smallest_y = this->min_y; } @@ -2096,11 +2109,12 @@ Dimension NWidgetLeaf::dropdown_dimension = {0, 0}; * @param data Data of the widget. * @param tip Tooltip of the widget. */ -NWidgetLeaf::NWidgetLeaf(WidgetType tp, Colours colour, int index, uint16 data, StringID tip) : NWidgetCore(tp, colour, 1, 1, data, tip) +NWidgetLeaf::NWidgetLeaf(WidgetType tp, Colours colour, int index, uint32 data, StringID tip) : NWidgetCore(tp, colour, 1, 1, data, tip) { assert(index >= 0 || tp == WWT_LABEL || tp == WWT_TEXT || tp == WWT_CAPTION || tp == WWT_RESIZEBOX || tp == WWT_SHADEBOX || tp == WWT_DEFSIZEBOX || tp == WWT_DEBUGBOX || tp == WWT_STICKYBOX || tp == WWT_CLOSEBOX); if (index >= 0) this->SetIndex(index); - this->SetMinimalSize(0, 0); + this->min_x = 0; + this->min_y = 0; this->SetResize(0, 0); switch (tp) { @@ -2124,12 +2138,9 @@ NWidgetLeaf::NWidgetLeaf(WidgetType tp, Colours colour, int index, uint16 data, this->SetFill(0, 0); break; - case WWT_EDITBOX: { - Dimension sprite_size = GetSpriteSize(_current_text_dir == TD_RTL ? SPR_IMG_DELETE_RIGHT : SPR_IMG_DELETE_LEFT); - this->SetMinimalSize(30 + sprite_size.width, sprite_size.height); + case WWT_EDITBOX: this->SetFill(0, 0); break; - } case WWT_CAPTION: this->SetFill(1, 0); @@ -2171,7 +2182,7 @@ NWidgetLeaf::NWidgetLeaf(WidgetType tp, Colours colour, int index, uint16 data, case WWT_CLOSEBOX: this->SetFill(0, 0); this->SetMinimalSize(WD_CLOSEBOX_WIDTH, WD_CAPTION_HEIGHT); - this->SetDataTip(STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW); + this->SetDataTip(STR_NULL, STR_TOOLTIP_CLOSE_WINDOW); break; case WWT_DROPDOWN: @@ -2271,9 +2282,12 @@ void NWidgetLeaf::SetupSmallestSize(Window *w, bool init_array) size = maxdim(size, NWidgetLeaf::resizebox_dimension); break; } - case WWT_EDITBOX: - size.height = max(size.height, GetStringBoundingBox("_").height + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM); + case WWT_EDITBOX: { + Dimension sprite_size = GetSpriteSize(_current_text_dir == TD_RTL ? SPR_IMG_DELETE_RIGHT : SPR_IMG_DELETE_LEFT); + size.width = max(size.width, 30 + sprite_size.width); + size.height = max(sprite_size.height, GetStringBoundingBox("_").height + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM); /* FALL THROUGH */ + } case WWT_PUSHBTN: { static const Dimension extra = {WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM}; padding = &extra; @@ -2306,7 +2320,7 @@ void NWidgetLeaf::SetupSmallestSize(Window *w, bool init_array) static const Dimension extra = {WD_CLOSEBOX_LEFT + WD_CLOSEBOX_RIGHT, WD_CLOSEBOX_TOP + WD_CLOSEBOX_BOTTOM}; padding = &extra; if (NWidgetLeaf::closebox_dimension.width == 0) { - NWidgetLeaf::closebox_dimension = maxdim(GetStringBoundingBox(STR_BLACK_CROSS), GetStringBoundingBox(STR_SILVER_CROSS)); + NWidgetLeaf::closebox_dimension = GetSpriteSize(SPR_CLOSEBOX); NWidgetLeaf::closebox_dimension.width += extra.width; NWidgetLeaf::closebox_dimension.height += extra.height; } @@ -2357,7 +2371,7 @@ void NWidgetLeaf::SetupSmallestSize(Window *w, bool init_array) if (this->index >= 0) w->SetStringParameters(this->index); Dimension d2 = GetStringBoundingBox(this->widget_data); d2.width += extra.width; - d2.height += extra.height; + d2.height = max(d2.height, NWidgetLeaf::dropdown_dimension.height) + extra.height; size = maxdim(size, d2); break; } @@ -2476,7 +2490,7 @@ void NWidgetLeaf::Draw(const Window *w) break; case WWT_CLOSEBOX: - DrawCloseBox(r, this->colour, this->widget_data); + DrawCloseBox(r, this->colour); break; case WWT_DROPDOWN: @@ -2510,10 +2524,10 @@ void NWidgetLeaf::Draw(const Window *w) bool NWidgetLeaf::ButtonHit(const Point &pt) { if (_current_text_dir == TD_LTR) { - int button_width = this->pos_x + this->current_x - 12; + int button_width = this->pos_x + this->current_x - NWidgetLeaf::dropdown_dimension.width; return pt.x < button_width; } else { - int button_left = this->pos_x + 12; + int button_left = this->pos_x + NWidgetLeaf::dropdown_dimension.width; return pt.x >= button_left; } } diff --git a/src/widget_type.h b/src/widget_type.h index 6d8b32bc9c..39efbb4637 100644 --- a/src/widget_type.h +++ b/src/widget_type.h @@ -769,7 +769,7 @@ private: */ class NWidgetLeaf : public NWidgetCore { public: - NWidgetLeaf(WidgetType tp, Colours colour, int index, uint16 data, StringID tip); + NWidgetLeaf(WidgetType tp, Colours colour, int index, uint32 data, StringID tip); /* virtual */ void SetupSmallestSize(Window *w, bool init_array); /* virtual */ void Draw(const Window *w); @@ -856,7 +856,7 @@ static inline uint ComputeMaxSize(uint base, uint max_space, uint step) * @ingroup NestedWidgetParts */ struct NWidgetPartDataTip { - uint16 data; ///< Data value of the widget. + uint32 data; ///< Data value of the widget. StringID tooltip; ///< Tooltip of the widget. }; @@ -1011,7 +1011,7 @@ static inline NWidgetPart EndContainer() * @param tip Tooltip of the widget. * @ingroup NestedWidgetParts */ -static inline NWidgetPart SetDataTip(uint16 data, StringID tip) +static inline NWidgetPart SetDataTip(uint32 data, StringID tip) { NWidgetPart part; diff --git a/src/widgets/autoreplace_widget.h b/src/widgets/autoreplace_widget.h index a302eea29f..7a98b6cd72 100644 --- a/src/widgets/autoreplace_widget.h +++ b/src/widgets/autoreplace_widget.h @@ -16,6 +16,11 @@ enum ReplaceVehicleWidgets { WID_RV_CAPTION, ///< Caption of the window. + /* Sort dropdown at the right. */ + WID_RV_SORT_ASCENDING_DESCENDING, ///< Ascending/descending sort order button. + WID_RV_SHOW_HIDDEN_ENGINES, ///< Toggle whether to display the hidden vehicles. + WID_RV_SORT_DROPDOWN, ///< Dropdown for the sort criteria. + /* Left and right matrix + details. */ WID_RV_LEFT_MATRIX, ///< The matrix on the left. WID_RV_LEFT_SCROLLBAR, ///< The scrollbar for the matrix on the left. diff --git a/src/widgets/build_vehicle_widget.h b/src/widgets/build_vehicle_widget.h index 6acad3f814..ae548587e2 100644 --- a/src/widgets/build_vehicle_widget.h +++ b/src/widgets/build_vehicle_widget.h @@ -15,13 +15,15 @@ /** Widgets of the #BuildVehicleWindow class. */ enum BuildVehicleWidgets { WID_BV_CAPTION, ///< Caption of window. - WID_BV_SORT_ASSENDING_DESCENDING, ///< Sort direction. + WID_BV_SORT_ASCENDING_DESCENDING, ///< Sort direction. WID_BV_SORT_DROPDOWN, ///< Criteria of sorting dropdown. WID_BV_CARGO_FILTER_DROPDOWN, ///< Cargo filter dropdown. + WID_BV_SHOW_HIDDEN_ENGINES, ///< Toggle whether to display the hidden vehicles. WID_BV_LIST, ///< List of vehicles. WID_BV_SCROLLBAR, ///< Scrollbar of list. WID_BV_PANEL, ///< Button panel. WID_BV_BUILD, ///< Build panel. + WID_BV_SHOW_HIDE, ///< Button to hide or show the selected engine. WID_BV_BUILD_SEL, ///< Build button. WID_BV_RENAME, ///< Rename button. }; diff --git a/src/widgets/dropdown.cpp b/src/widgets/dropdown.cpp index e83772799b..aecfc6b2f0 100644 --- a/src/widgets/dropdown.cpp +++ b/src/widgets/dropdown.cpp @@ -82,7 +82,7 @@ static const NWidgetPart _nested_dropdown_menu_widgets[] = { static WindowDesc _dropdown_desc( WDP_MANUAL, NULL, 0, 0, WC_DROPDOWN_MENU, WC_NONE, - 0, + WDF_NO_FOCUS, _nested_dropdown_menu_widgets, lengthof(_nested_dropdown_menu_widgets) ); diff --git a/src/widgets/genworld_widget.h b/src/widgets/genworld_widget.h index 2048851fff..877efbb921 100644 --- a/src/widgets/genworld_widget.h +++ b/src/widgets/genworld_widget.h @@ -27,6 +27,10 @@ enum GenerateLandscapeWidgets { WID_GL_GENERATE_BUTTON, ///< 'Generate' button. + WID_GL_MAX_HEIGHTLEVEL_DOWN, ///< Decrease max. heightlevel + WID_GL_MAX_HEIGHTLEVEL_TEXT, ///< Max. heightlevel + WID_GL_MAX_HEIGHTLEVEL_UP, ///< Increase max. heightlevel + WID_GL_START_DATE_DOWN, ///< Decrease start year. WID_GL_START_DATE_TEXT, ///< Start year. WID_GL_START_DATE_UP, ///< Increase start year. diff --git a/src/widgets/newgrf_debug_widget.h b/src/widgets/newgrf_debug_widget.h index b719bcfc59..22a5cda40e 100644 --- a/src/widgets/newgrf_debug_widget.h +++ b/src/widgets/newgrf_debug_widget.h @@ -25,19 +25,21 @@ enum NewGRFInspectWidgets { /** Widgets of the #SpriteAlignerWindow class. */ enum SpriteAlignerWidgets { - WID_SA_CAPTION, ///< Caption of the window. - WID_SA_PREVIOUS, ///< Skip to the previous sprite. - WID_SA_GOTO, ///< Go to a given sprite. - WID_SA_NEXT, ///< Skip to the next sprite. - WID_SA_UP, ///< Move the sprite up. - WID_SA_LEFT, ///< Move the sprite to the left. - WID_SA_RIGHT, ///< Move the sprite to the right. - WID_SA_DOWN, ///< Move the sprite down. - WID_SA_SPRITE, ///< The actual sprite. - WID_SA_OFFSETS, ///< The sprite offsets. - WID_SA_PICKER, ///< Sprite picker. - WID_SA_LIST, ///< Queried sprite list. - WID_SA_SCROLLBAR, ///< Scrollbar for sprite list. + WID_SA_CAPTION, ///< Caption of the window. + WID_SA_PREVIOUS, ///< Skip to the previous sprite. + WID_SA_GOTO, ///< Go to a given sprite. + WID_SA_NEXT, ///< Skip to the next sprite. + WID_SA_UP, ///< Move the sprite up. + WID_SA_LEFT, ///< Move the sprite to the left. + WID_SA_RIGHT, ///< Move the sprite to the right. + WID_SA_DOWN, ///< Move the sprite down. + WID_SA_SPRITE, ///< The actual sprite. + WID_SA_OFFSETS_ABS, ///< The sprite offsets (absolute). + WID_SA_OFFSETS_REL, ///< The sprite offsets (relative). + WID_SA_PICKER, ///< Sprite picker. + WID_SA_LIST, ///< Queried sprite list. + WID_SA_SCROLLBAR, ///< Scrollbar for sprite list. + WID_SA_RESET_REL, ///< Reset relative sprite offset }; #endif /* WIDGETS_NEWGRF_DEBUG_WIDGET_H */ diff --git a/src/widgets/settings_widget.h b/src/widgets/settings_widget.h index a9015b1ee3..661f788cd7 100644 --- a/src/widgets/settings_widget.h +++ b/src/widgets/settings_widget.h @@ -23,6 +23,7 @@ enum GameOptionsWidgets { WID_GO_LANG_DROPDOWN, ///< Language dropdown. WID_GO_RESOLUTION_DROPDOWN, ///< Dropdown for the resolution. WID_GO_FULLSCREEN_BUTTON, ///< Toggle fullscreen. + WID_GO_GUI_ZOOM_DROPDOWN, ///< Dropdown for the GUI zoom level. WID_GO_BASE_GRF_DROPDOWN, ///< Use to select a base GRF. WID_GO_BASE_GRF_STATUS, ///< Info about missing files etc. WID_GO_BASE_GRF_TEXTFILE, ///< Open base GRF readme, changelog (+1) or license (+2). diff --git a/src/widgets/sign_widget.h b/src/widgets/sign_widget.h index 676e6741b1..f390793ceb 100644 --- a/src/widgets/sign_widget.h +++ b/src/widgets/sign_widget.h @@ -34,4 +34,4 @@ enum QueryEditSignWidgets { WID_QES_NEXT, ///< Next button. }; -#endif /* */ +#endif /* SIGN_WIDGET_H */ diff --git a/src/window.cpp b/src/window.cpp index 5b3511573f..18e8f35881 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -87,12 +87,10 @@ static SmallVector *_window_descs = NULL; char *_windows_file; /** Window description constructor. */ -WindowDesc::WindowDesc(WindowPosition def_pos, const char *ini_key, int16 def_width, int16 def_height, +WindowDesc::WindowDesc(WindowPosition def_pos, const char *ini_key, int16 def_width_trad, int16 def_height_trad, WindowClass window_class, WindowClass parent_class, uint32 flags, const NWidgetPart *nwid_parts, int16 nwid_length, HotkeyList *hotkeys) : default_pos(def_pos), - default_width(def_width), - default_height(def_height), cls(window_class), parent_cls(parent_class), ini_key(ini_key), @@ -102,7 +100,9 @@ WindowDesc::WindowDesc(WindowPosition def_pos, const char *ini_key, int16 def_wi hotkeys(hotkeys), pref_sticky(false), pref_width(0), - pref_height(0) + pref_height(0), + default_width_trad(def_width_trad), + default_height_trad(def_height_trad) { if (_window_descs == NULL) _window_descs = new SmallVector(); *_window_descs->Append() = this; @@ -113,6 +113,26 @@ WindowDesc::~WindowDesc() _window_descs->Erase(_window_descs->Find(this)); } +/** + * Determine default width of window. + * This is either a stored user preferred size, or the build-in default. + * @return Width in pixels. + */ +int16 WindowDesc::GetDefaultWidth() const +{ + return this->pref_width != 0 ? this->pref_width : ScaleGUITrad(this->default_width_trad); +} + +/** + * Determine default height of window. + * This is either a stored user preferred size, or the build-in default. + * @return Height in pixels. + */ +int16 WindowDesc::GetDefaultHeight() const +{ + return this->pref_height != 0 ? this->pref_height : ScaleGUITrad(this->default_height_trad); +} + /** * Load all WindowDesc settings from _windows_file. */ @@ -752,7 +772,7 @@ static void DispatchRightClickEvent(Window *w, int x, int y) if (w->OnRightClick(pt, wid->index)) return; } - if (_settings_client.gui.hover_delay == 0 && wid->tool_tip != 0) GuiShowTooltips(w, wid->tool_tip, 0, NULL, TCC_RIGHT_CLICK); + if (_settings_client.gui.hover_delay_ms == 0 && wid->tool_tip != 0) GuiShowTooltips(w, wid->tool_tip, 0, NULL, TCC_RIGHT_CLICK); } /** @@ -1059,7 +1079,16 @@ Window::~Window() free(this->nested_array); // Contents is released through deletion of #nested_root. delete this->nested_root; - this->window_class = WC_INVALID; + /* + * Make fairly sure that this is written, and not "optimized" away. + * The delete operator is overwritten to not delete it; the deletion + * happens at a later moment in time after the window has been + * removed from the list of windows to prevent issues with items + * being removed during the iteration as not one but more windows + * may be removed by a single call to ~Window by means of the + * DeleteChildWindows function. + */ + const_cast(this->window_class) = WC_INVALID; } /** @@ -2879,7 +2908,7 @@ void HandleMouseEvents() static uint32 hover_time = 0; static Point hover_pos = {0, 0}; - if (_settings_client.gui.hover_delay > 0) { + if (_settings_client.gui.hover_delay_ms > 0) { if (!_cursor.in_window || click != MC_NONE || mousewheel != 0 || _left_button_down || _right_button_down || hover_pos.x == 0 || abs(_cursor.pos.x - hover_pos.x) >= MAX_OFFSET_HOVER || hover_pos.y == 0 || abs(_cursor.pos.y - hover_pos.y) >= MAX_OFFSET_HOVER) { @@ -2887,7 +2916,7 @@ void HandleMouseEvents() hover_time = _realtime_tick; _mouse_hovering = false; } else { - if (hover_time != 0 && _realtime_tick > hover_time + _settings_client.gui.hover_delay * 1000) { + if (hover_time != 0 && _realtime_tick > hover_time + _settings_client.gui.hover_delay_ms) { click = MC_HOVER; _input_events_this_tick++; _mouse_hovering = true; @@ -3264,6 +3293,9 @@ void ReInitAllWindows() NWidgetLeaf::InvalidateDimensionCache(); // Reset cached sizes of several widgets. NWidgetScrollbar::InvalidateDimensionCache(); + extern void InitDepotWindowBlockSizes(); + InitDepotWindowBlockSizes(); + Window *w; FOR_ALL_WINDOWS_FROM_BACK(w) { w->ReInit(); @@ -3385,7 +3417,7 @@ void RelocateAllWindows(int neww, int newh) continue; case WC_MAIN_TOOLBAR: - ResizeWindow(w, min(neww, w->window_desc->default_width) - w->width, 0, false); + ResizeWindow(w, min(neww, _toolbar_width) - w->width, 0, false); top = w->top; left = PositionMainToolbar(w); // changes toolbar orientation @@ -3397,14 +3429,15 @@ void RelocateAllWindows(int neww, int newh) break; case WC_STATUS_BAR: - ResizeWindow(w, min(neww, w->window_desc->default_width) - w->width, 0, false); + ResizeWindow(w, min(neww, _toolbar_width) - w->width, 0, false); top = newh - w->height; left = PositionStatusbar(w); break; case WC_SEND_NETWORK_MSG: - ResizeWindow(w, Clamp(neww, 320, 640) - w->width, 0, false); + ResizeWindow(w, min(neww, _toolbar_width) - w->width, 0, false); + top = newh - w->height - FindWindowById(WC_STATUS_BAR, 0)->height; left = PositionNetworkChatWindow(w); break; diff --git a/src/window_gui.h b/src/window_gui.h index bf8500f0f3..b81b06e391 100644 --- a/src/window_gui.h +++ b/src/window_gui.h @@ -136,8 +136,6 @@ enum WidgetDrawDistances { WD_DROPDOWNTEXT_TOP = 1, ///< Top offset of the dropdown widget string. WD_DROPDOWNTEXT_BOTTOM = 1, ///< Bottom offset of the dropdown widget string. - WD_SORTBUTTON_ARROW_WIDTH = 11, ///< Width of up/down arrow of sort button state. - WD_PAR_VSEP_NORMAL = 2, ///< Normal amount of vertical space between two paragraphs of text. WD_PAR_VSEP_WIDE = 8, ///< Large amount of vertical space between two paragraphs of text. }; @@ -169,15 +167,13 @@ struct HotkeyList; */ struct WindowDesc : ZeroedMemoryAllocator { - WindowDesc(WindowPosition default_pos, const char *ini_key, int16 def_width, int16 def_height, + WindowDesc(WindowPosition default_pos, const char *ini_key, int16 def_width_trad, int16 def_height_trad, WindowClass window_class, WindowClass parent_class, uint32 flags, const NWidgetPart *nwid_parts, int16 nwid_length, HotkeyList *hotkeys = NULL); ~WindowDesc(); WindowPosition default_pos; ///< Preferred position of the window. @see WindowPosition() - int16 default_width; ///< Preferred initial width of the window. - int16 default_height; ///< Preferred initial height of the window. WindowClass cls; ///< Class of the window, @see WindowClass. WindowClass parent_cls; ///< Class of the parent window. @see WindowClass const char *ini_key; ///< Key to store window defaults in openttd.cfg. \c NULL if nothing shall be stored. @@ -190,13 +186,16 @@ struct WindowDesc : ZeroedMemoryAllocator { int16 pref_width; ///< User-preferred width of the window. Zero if unset. int16 pref_height; ///< User-preferred height of the window. Zero if unset. - int16 GetDefaultWidth() const { return this->pref_width != 0 ? this->pref_width : this->default_width; } - int16 GetDefaultHeight() const { return this->pref_height != 0 ? this->pref_height : this->default_height; } + int16 GetDefaultWidth() const; + int16 GetDefaultHeight() const; static void LoadFromConfig(); static void SaveToConfig(); private: + int16 default_width_trad; ///< Preferred initial width of the window (pixels at 1x zoom). + int16 default_height_trad; ///< Preferred initial height of the window (pixels at 1x zoom). + /** * Dummy private copy constructor to prevent compilers from * copying the structure, which fails due to _window_descs. @@ -273,7 +272,7 @@ struct Window : ZeroedMemoryAllocator { protected: void InitializeData(WindowNumber window_number); void InitializePositionSize(int x, int y, int min_width, int min_height); - void FindWindowPlacementAndResize(int def_width, int def_height); + virtual void FindWindowPlacementAndResize(int def_width, int def_height); SmallVector scheduled_invalidation_data; ///< Data of scheduled OnInvalidateData() calls. @@ -509,6 +508,7 @@ public: void DrawWidgets() const; void DrawViewport() const; void DrawSortButtonState(int widget, SortButtonState state) const; + static int SortButtonWidth(); void DeleteChildWindows(WindowClass wc = WC_INVALID) const; @@ -849,14 +849,17 @@ Window *FindWindowFromPt(int x, int y); /** * Open a new window. + * @tparam Wcls %Window class to use if the window does not exist. * @param desc The pointer to the WindowDesc to be created * @param window_number the window number of the new window - * @return see Window pointer of the newly created window + * @param return_existing If set, also return the window if it already existed. + * @return %Window pointer of the newly created window, or the existing one if \a return_existing is set, or \c NULL. */ template -Wcls *AllocateWindowDescFront(WindowDesc *desc, int window_number) +Wcls *AllocateWindowDescFront(WindowDesc *desc, int window_number, bool return_existing = false) { - if (BringWindowToFrontById(desc->cls, window_number)) return NULL; + Wcls *w = static_cast(BringWindowToFrontById(desc->cls, window_number)); + if (w != NULL) return return_existing ? w : NULL; return new Wcls(desc, window_number); } diff --git a/src/window_type.h b/src/window_type.h index a8a8128f58..809e81d485 100644 --- a/src/window_type.h +++ b/src/window_type.h @@ -446,7 +446,7 @@ enum WindowClass { /** * Generate landscape (newgame); %Window numbers: * - GLWM_SCENARIO = #CreateScenarioWidgets - * - #GenenerateLandscapeWindowMode = #GenerateLandscapeWidgets + * - #GenerateLandscapeWindowMode = #GenerateLandscapeWidgets */ WC_GENERATE_LANDSCAPE, diff --git a/src/zoom_func.h b/src/zoom_func.h index 5f1bf830d9..1cb3d0c486 100644 --- a/src/zoom_func.h +++ b/src/zoom_func.h @@ -64,4 +64,24 @@ static inline int UnScaleByZoomLower(int value, ZoomLevel zoom) return value >> zoom; } +/** + * Short-hand to apply GUI zoom level. + * @param value Pixel amount at #ZOOM_LVL_BEGIN (full zoom in). + * @return value Pixel amount at #ZOOM_LVL_GUI. + */ +static inline int UnScaleGUI(int value) +{ + return UnScaleByZoom(value, ZOOM_LVL_GUI); +} + +/** + * Scale traditional pixel dimensions to GUI zoom level. + * @param value Pixel amount at 1x zoom level. + * @return value Pixel amount at #ZOOM_LVL_GUI. + */ +static inline int ScaleGUITrad(int value) +{ + return UnScaleGUI(value * ZOOM_LVL_BASE); +} + #endif /* ZOOM_FUNC_H */ diff --git a/src/zoom_type.h b/src/zoom_type.h index 37ffc153cd..c29f136cf3 100644 --- a/src/zoom_type.h +++ b/src/zoom_type.h @@ -33,7 +33,6 @@ enum ZoomLevel { /* Here we define in which zoom viewports are */ ZOOM_LVL_VIEWPORT = ZOOM_LVL_OUT_4X, ///< Default zoom level for viewports. - ZOOM_LVL_GUI = ZOOM_LVL_OUT_4X, ///< Default zoom level for GUI sprites. ZOOM_LVL_NEWS = ZOOM_LVL_OUT_4X, ///< Default zoom level for the news messages. ZOOM_LVL_INDUSTRY = ZOOM_LVL_OUT_8X, ///< Default zoom level for the industry view. ZOOM_LVL_TOWN = ZOOM_LVL_OUT_8X, ///< Default zoom level for the town view. @@ -53,4 +52,7 @@ DECLARE_POSTFIX_INCREMENT(ZoomLevel) /** Type for storing the zoom level in a byte. */ typedef SimpleTinyEnumT ZoomLevelByte; +extern ZoomLevelByte _gui_zoom; +#define ZOOM_LVL_GUI (_gui_zoom) + #endif /* ZOOM_TYPE_H */